您好!欢迎光临工博士商城

ABB工业机器人服务商

产品:75    
联系我们
联系方式
  • 联系人:王青慧
  • 电话:18616260662
  • 邮件:wqh@gongboshi.com
  • 手机:18616260662
新闻分类
首页 > ABB机器人新闻中心 > ABB工业机器人Modbus/TCP 通讯
ABB机器人新闻中心
ABB工业机器人Modbus/TCP 通讯
发布时间:2020-07-24        浏览次数:1589        返回列表
 
 1. modbus由MODICON公司于1979年开发,是一种工业现场总线协议标准。1996年施耐德公司推出基于以太网TCP/IP的modbus协议:modbusTCP。采用master/slave方式通信。

2. MODBUS/TCP基于以太网,故ABB机器人在使用时需要有616-1 PCINTERFACE选项
ABB机器人


3. ABB并没有提供标准的MODBUS相关处理函数,要使用modbus/tcp,可以使用普通socket收发,结合modbus定义对数据进行处理。

4. 机器人与PLC之间的modbus通讯,通过相关功能码实现功能,功能码如下图(使用16进制表示)
ABB机器人


5. modbusTCP数据帧解释如下:

ABB机器人

ABB机器人

6. 此处举例机器人向PLC请求读取地址20-38线圈状态,发送代码如下,其中(所有信息为16进制)

0x00,0x01,0x00,0x00,0x00,0x06,0x01,0x01,0x00,0x14,0x00,0x13

红色部分为**到第七字节:

**第二字节:事务处理标识,PLC会返回相同值

第三第四字节:00,00 ModbusTCP协议

第五第六字节,表示从第7字节开始总共字节数

第七字节:设备地址

黑色部分为具体内容:

第八字节为功能码,此处请求读取线圈状态,故为0x01

第九、十字节:起始地址(此处均为16进制)地址20,对应16进制0x14

第十一、十二字节:从起始地址开始的线圈个数,一共19个,对应16进制0x13

7. 可以下载modbusSlave软件进行仿真,点击setup完成设置如下并运行:
ABB机器人
ABB机器人
上图的数据设置为0xCD,0x6B, 0x05

8. 机器人向PLC发送以上数据内容后,会接收到如下信息:

0x00,0x01,0x00,0x00,0x00,0x06,0x01,0x01,0x03,0xCD,0x6B,0x05

红色部分解释同6中的发送部分

第8字节,功能为读取线圈

第9字节,0x03表示从第10字节开始的字节数

第10字节,对27-20位线圈11001101

第11字节,对35-28位线圈01101011

第12字节,对43-36位线圈00000101(获取38-36位,43-39位数据用0补齐)

9. 机器人代码如下:
ABB机器人


运行后机器人接收到数据如下:

ABB机器人

由于机器人此处显示为10进制,205对应0xCD,107对应0x6B, 5对应0x05

10.若要对地址20-29共10个线圈进行写入值,参考步骤4中的功能码为0x0F,发送数据如下:

0x00,0x01,0x00,0x00,0x00,0x09,0x01,0x0F,0x00,0x14,0x00,0x0A,0x02,0xFF,0x03

红色部分为**到第七字节:

**第二字节:事务处理标识,PLC会返回相同值

第三第四字节:00,00 ModbusTCP协议

第五第六字节,表示从第7字节开始总共字节数

第七字节:设备地址

黑色部分为具体内容:

第八字节为功能码,此处请求写入线圈状态,故为0x0F

第九、十字节:起始地址(此处均为16进制)地址20,对应16进制0x14

第十一、十二字节:从起始地址开始的线圈个数,一共10个,对应16进制0x0A

第十三字节:表示从第14字节开始的剩余总共字节数

第十四、十五字节:写入值,若10个线圈均设为1,则27-20位11111111对应16进制0xFF,35-28位00000011对应16进制0x03.

11. 发送以上内容后,机器人会接收到如下数据:

0x00, 0x01, 0x00, 0x00, 0x00, 0x06, 0x01, 0x0F, 0x00,0x14,0x00, 0x0A

红色部分与10中相同,

黑色部分为具体内容:

第八字节为功能码,此处请求写入线圈状态,故为0x0F

第九、十字节:起始地址(此处均为16进制)地址20,对应16进制0x14

第十一、十二字节:从起始地址开始的线圈个数,一共10个,对应16进制0x0A

12. 机器人代码如下:

ABB机器人

13. 运行后,可以在仿真软件看到29-20位均被设置为1

ABB机器人

14. 机器人接受数据如下(机器人侧以10进制显示):

ABB机器人

十进制15对应0xFF,十进制20对应0x14,十进制10对应0x0A



更多资讯:ABB工业机器人



 

联系热线:18616260662 联系人:王青慧 联系地址:上海市宝山区富联一路98弄6号

技术和报价服务:星期一至星期六8:00-22:00 ABB工业机器人服务商

返回
顶部