工博士为您提供库卡、ABB、发那科、安川等机器人项目集成、机器人贸易,也提供机器人售后服务、机器人维护与保养方面的技术服务,我们致力于为客户提供一站式服务。
1. modbus由MODICON公司于1979年开发,是一种工业现场总线协议标准。1996年施耐德公司推出基于以太网TCP/IP的modbus协议:modbusTCP。采用master/slave方式通信。
2. MODBUS/TCP基于以太网,故ABB机器人在使用时需要有616-1 PCINTERFACE选项
3. ABB并没有提供标准的MODBUS相关处理函数,要使用modbus/tcp,可以使用普通socket收发,结合modbus定义对数据进行处理。
4. 机器人与PLC之间的modbus通讯,通过相关功能码实现功能,功能码如下图(使用16进制表示)
5. modbusTCP数据帧解释如下:
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完成设置如下并运行:
上图的数据设置为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. 机器人代码如下:
由于机器人此处显示为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
注:本文章文字、图片部分来自网络
版权归原作者,侵删。
工博士可以提供了ABB,库卡,安川,发那科和欧地希等各种***机器人和常用机器人型号,并且包括机器人的配件,保养,维修,培训等等服务我们都可以进行服务,真正做到了为客户进行一站式的服务保障,并且工博士现已经是集九大机器人代理***于一体的智能工厂一站式服务商,我们相信,我们真正地在协助第四次工业革命的进步,并为所有涉及机器人技术的人们增加优势和收益!如果您想获得更多信息,请在线留言或致电与我们联系 。
以上内容来源于:网络
侵权删
了解更多机器人咨询请咨询:ABB机器人配件、ABB示教器、ABB机器人保养
新闻中心