Skip to content

通讯协议与地址码

概述

纳博特 C2200 系列控制器支持多种工业通讯协议,便于与 PLC、视觉系统、上位机等设备集成。控制器内置标准协议栈,通过配置即可快速实现设备互联。

支持的通讯协议

Modbus RTU / Modbus TCP

Modbus 是工业领域最广泛使用的通讯协议之一。纳博特控制器同时支持 Modbus RTU(串口)和 Modbus TCP(以太网)两种形式。

典型应用场景:

  • 与 PLC 通讯(读取 IO 状态、写入控制指令)
  • 与变频器通讯(速度给定、运行状态)
  • 与传感器通讯(数据采集)

常用寄存器地址:

地址功能读/写
0x0000~0x001F数字输入 DI 状态(每 bit 一个 DI)只读
0x0100~0x011F数字输出 DO 状态(每 bit 一个 DO)读写
0x0200~0x02FF模拟输入 AI 值只读
0x0300~0x03FF模拟输出 AO 值读写
0x1000~0x100F全局变量 GI001~GI016读写
0x1100~0x110F全局变量 GD001~GD016读写
0x2000~0x200F机器人运行状态(运行=1/停止=0)只读
0x2001报警状态(无报警=0/有报警>0)只读

注意:以上地址为代表性地址,具体地址映射请参考控制器随附的 Modbus 地址映射表。不同软件版本地址可能有差异。

TCP/IP 自定义协议

纳博特控制器支持 TCP/IP 通讯,通过 SENDMSG、PARSEMSG 等指令可与任何支持 TCP 的设备进行数据交互。

通讯配置:

  1. 在"设置" - "网络设置"中配置 TCP 工艺号(ID)。
  2. 设置 IP 地址、端口号和通讯参数。
  3. 通过 OPENMSG 指令建立连接,CLOSEMSG 指令断开连接。

常用指令:

指令功能
OPENMSG打开 TCP 连接
CLOSEMSG关闭 TCP 连接
SENDMSG发送字符串数据,支持变量插入
PARSEMSG解析接收到的数据并存入变量
READCOMM读取点位数据存入位置变量

数据格式:

发送格式:$变量名$ 表示变量值,$$ 表示字符 $

示例:SENDMSG ID=1 #$D001# 表示发送变量 D001 的值。

EtherCAT

EtherCAT 是高速实时工业以太网总线,用于控制器与伺服驱动器之间的运动控制通讯。

  • 通讯速率:100Mbps(高速实时)
  • 同步精度:< 1µs
  • 轴数支持:最多 64 轴

CANopen

CANopen 是基于 CAN 总线的标准通讯协议,适用于中等速度的运动控制场景。

  • 通讯速率:最高 1Mbps
  • 协议标准:CiA 402(运动控制)

EtherNet/IP

EtherNet/IP 是通用的工业以太网协议,便于与 AB、西门子等主流 PLC 系统集成。

  • 适配器模式:控制器作为 EtherNet/IP 从站
  • 显式报文:支持标准 CIP 显式报文通讯
  • 配置方式:通过 EDS 文件配置

OPC-UA

OPC-UA(Open Platform Communications Unified Architecture)是新一代工业通讯标准,支持跨平台、安全可靠的数据交换。

纳博特控制器支持 OPC-UA 服务器模式,外部设备可通过 OPC-UA 读取控制器状态、写入控制指令。

通讯配置步骤

Modbus TCP 配置

  1. 在示教器"设置" - "网络设置"中,添加 Modbus TCP 工艺号。
  2. 配置 IP 地址、端口号(默认 502)。
  3. 设置通讯超时参数。
  4. 测试连接,确认读写正常。

TCP 自定义协议配置

  1. 在示教器"设置" - "网络设置"中,添加 TCP 工艺号。
  2. 配置目标设备 IP 地址和端口。
  3. 编写程序使用 OPENMSG 建立连接。
  4. 使用 SENDMSG/PARSEMSG 进行数据交互。

常见问题

  1. Modbus 通讯失败:检查 IP 地址、端口是否正确;确认防火墙未阻止通讯;检查网线连接。
  2. TCP 连接不稳定:增加心跳机制,定期发送数据保持连接;处理连接超时断开的情况。
  3. 数据解析错误:确认发送端和接收端的数据格式一致(字符串/二进制/分隔符)。

Q&A

Q:纳博特控制器支持哪些通讯协议?

A:支持 Modbus RTU(串口)、Modbus TCP(以太网)、TCP/IP 自定义协议、EtherCAT(高速运动控制)、CANopen、 EtherNet/IP 以及 OPC-UA 等多种工业通讯协议。

Q:如何通过 Modbus 读取机器人的运行状态?

A:可通过 Modbus TCP 读取特定寄存器地址。机器人运行状态(运行/停止)通常在地址 0x2000,报警状态在 0x2001。具体地址映射请参考控制器随附的 Modbus 地址映射表。

Q:控制器作为 TCP 服务器还是客户端?

A:默认作为客户端(主动连接目标设备)。也可以配置为服务器模式,等待外部设备连接。

Q:EtherCAT 和普通以太网有什么区别?

A:EtherCAT 是专为运动控制设计的实时工业以太网,通讯速率 100Mbps,同步精度 < 1µs,支持多达 64 轴高速同步控制。普通以太网(如 TCP/IP)用于非实时数据交换,优先级低于 EtherCAT 通讯。

Q:如何实现控制器与视觉系统的数据交互?

A:可通过 TCP 自定义协议或 Modbus TCP 与视觉系统通讯。视觉系统识别到目标位置后,通过 TCP 发送点位坐标,控制器接收后使用 POSSET 类指令更新目标位置,实现视觉引导抓取。