小知识分享 - RS485接口与Modbus通信协议
文章内容来自于网络,如果侵犯著作权,请联系删除。
大家知道RS485是什么东西吗?RS485是美国电子工业协会(EIA)在1983年批准的一种用于串行通信的平衡传输标准。RS485作为一个电气标准,仅定义了使用平衡多点传输线的驱动器和接收器的电气特性;许多更高级别的标准将RS485规定为引用标准,其接口标准在物理层上参考了RS485,如Modbus、Profibus、DL/T645等。RS485是一种接口标准,RS232和RS422也是接口标准的一种,RS是Recommend Standard的缩写。对于串口通信,目前工业领域使用使用RS232和RS485这两种,RS422这个使用较少。RS485因为其抗干扰、传输距离远、支持多节点的优点,使用更为广泛。
挂接设备
一条RS485总线上可以挂载多少个RS485设备呢?
其实能挂载多少个设备是由RS485的负载能力决定的,正常来说,RS485芯片的负载能力有三个级别,这三个级别分别可以接入32台、128台、256台设备。RS485标准规定单位负载为12K,最多挂载32个负载,但是也不建议在一条RS485总线上挂载太多设备,挂载设备越多,出现问题处理就会越麻烦。
通过在一个总线引脚上将输入电压-7V扫到12V,另一个总线引脚保持接地,然后测量输入漏电电流,来确定单位负载参数;标准中的-7V和12V的电平范围是为了允许驱动器输出和接收器之间有高达±7V的地电势差(GPD),驱动器的输出电压在GND和5V之间变化。因此
-7V代表接收器是通过驱动器以-7V的GPD驱动总线的低电平;
而12V代表接收器是通过驱动器以7V的GDP驱动总线的高电平;
RS485多台设备接线方法:菊花链接法
从理论的角度来说,RS485在无中继的情况下,通信距离是1200米,但是这个是在理想状态(电缆优质、波特率9600bps、只有一个RS458设备并且允许偶尔通信终端)下。实际情况是伴随负载设备增多,通信电缆不达标,RS485设备转换器品质登因素影响,通信距离都会有所降低。正常来说,超过100米都需要考虑增加终端电阻,超过1000米,就要考虑增加RS485总线中继器。
ModbusRTU与RS485是什么关系?准确来说,ModbusRTU是应用层的一种通信协议,RS485是物理层的一种接口标准。
我们常说的ModbusRTU通信是指基于RS485.也可以基于RS232/RS422,甚至可以基于以太网TCP/UDP。
同时,RS485也不是Modbus的专属,任何协议都可以基于RS485传输,至于能不能实现一主多从,要看协议层面有没有设计设备地址。一主多从的实现有两个条件,第一是物理层支持,第二是应用层支持,两者缺一不可。比如,我们物理层使用RS232,即使应用层使用ModbusRTU协议,也无法实现一主多从。
通信速度主要受到两个因素的影响:数据量大小和硬件层的速度,数据量大小指的是需要传输的数据多少,而硬件层的速度则跟通信设备和网络基础息息相关,这两者共同决定了通信速度的快慢。
Modbus是一种通信协议,是没有速度的说法的。
其次,硬件层的速度,这个与波特率及通信距离都有关系,因此如果真的说慢,只能说是串口通信慢,但是不能说是通信协议慢。
上图是使用modbusTCP与各种PLC及板卡的通信结果和实测结果,没有好坏之分。
地址:广东省深圳市光明区汉海达科技创新园1栋A区701
电话:0755-27403635
文章内容来自于网络,如果侵犯著作权,请联系删除。