Modbus协议和CAN总线
扫描二维码
随时随地手机看文章
Modbus和CAN做为两种工业上常用的总线协议在仪器仪表,汽车,轨道交通设备上获得了广泛的使用.
CAN总线由德国BOSCH公司开发,设计初衷是为汽车上电子设备提供互联,经过多年的发展,现在几乎所有的汽车级MCU都包含有CAN控制器(已然是各种MCU的标配外设)
CAN总线是一种对等的总线或者是多主总线,总线上的每一个设备都可以是主设备.CAN总线根据ID的大小来竞争获取总线控制权.
现在一般使用的CAN2.0B标准,有标准桢和扩展桢的2种格式,扩展桢支持29位ID,数据长度最大是8个字节,最大线速率是1M bps,接收端可以设置滤波器过滤总线上的数据包
CAN总线只是一种数据链路层的标准(ISO 7层协议中的第二层)所以对数据帧中payload的含义并没有规定,应用程序需要自己定义payload数据的具体含义.
Modbus最初由莫迪康(后被施奈德电气收购)公司开发的一种应用层的协议,Modbus协议定义了应用层的桢的格式,数据长度.寄存器地址,读写控制,桢间隔时间等信息.在物理层可以使用RS232/485/422 和Ethernet等传输介质.
Modbus是一种主从式协议或者Client/Server模式协议.Master发送读写等请求,Slave端做出响应.
modbus协议在工业自动化设备,仪器仪表行业应用非常广泛,比如PLC设备上, Modbus poll是一个非常好用的modbus 解析软件,常作为Master来使用,在调试slave端软件时很有帮助.