zhengf1989
级别: 略有小成
精华主题: 0
发帖数量: 142 个
工控威望: 273 点
下载积分: 686 分
在线时间: 486(小时)
注册时间: 2012-11-28
最后登录: 2024-11-11
查看zhengf1989的 主题 / 回贴
楼主  发表于: 2018-10-27 16:01
最近一直在研究通讯,突然感觉懂了一点,写写自己对于modbus 通讯的体会:
1.    经常听说的485,232,422,是指的是物理端口,modbus是通讯协议,也就是通讯的规则,就好象社会上有很多潜规则,服从这些规则才能混下去。
2.    modbus通讯分为主站和很多编了号的从站,例如主站对从站说,3号从站你家的第三个房间里住着谁?话音刚落,1号,2号,4号从站心里想:反正没有喊我,不关我的事,就通通装          死,3号从站听到后,回答说,我家的第三个房间里住着一条狗,这样一个通讯过程就完成了,跟主站读取从站某个寄存器的内容很类似。如果是广播命令,就是每个从站都要听着,不需要作出回答。
3.   通讯主要是通过 报文发送出去执行的。 地址+功能码。。。。。。西门子plc中有通讯库,三菱台达plc有通讯的方便指令,我通过串口调试工具测试,最终还是发出来标准的 报文,只是方便大家使用的。通讯的具体地址要看每种设备原件的厂家是怎样定义的,会应用就可以了。
4.   crc校验就是为了防止在通讯过程中会出现数据的丢失或者出错。就好象在生活中,甲对乙说:我还你5个硬币你数一数,乙收到钱后数了一下硬币,只有四个,乙就说你给的不对。
如果有能力用plc自己写个自由口通讯的块,或者单片机开发个通讯那就是大神了。
受不了了
级别: 家园常客
精华主题: 0
发帖数量: 598 个
工控威望: 727 点
下载积分: 1673 分
在线时间: 404(小时)
注册时间: 2015-06-17
最后登录: 2024-12-05
查看受不了了的 主题 / 回贴
1楼  发表于: 2018-10-30 11:05
单片机写MODBUS-RTU其实很简单的,现在的工具这么多,随便找个触摸屏,设置到MODBUS-RTU模式,用电脑去抓通讯数据,看别人怎么写的,依葫芦画瓢照着标准协议很容易写出来,不说半天,两三天应该很容易搞定的。我七八年前写的通讯部分,一直就没修改过,常见品牌的触摸屏连上去,比绝大部分PLC反应快太多了