基于Modbus协议的串口通讯程序_RS485总线系统应用
扫描二维码
随时随地手机看文章
本文在遵循Modbus协议的基础上,阐述了Modbus的两种传输模式和串口通讯程序的设计实例,并给出了VB语言的程序清单。
基于Modbus协议的串口通讯程序----Modbus协议简介MODBUS协议支持传统的RS-232、RS-422、RS-485和以太网设备。许多工业设备,包括PLC,DCS,智能仪表等都在使用Modbus协议作为他们之间的通讯标准。
Modbus 协议是应用于电子控制器上的一种通用语言。通过此协议,控制器相互之间、控制器经由网络(例如以太网)和其它设备之间可以通信。Modbus 协议定义了一个控制器能认识使用的消息结构,而不管它们是经过何种网络进行通信的。它描述了一控制器请求访问其它设备的过程,如果回应来自其它设备的请求,以及怎样侦测错误并记录。它制定了消息域格局和内容的公共格式。
基于Modbus协议的串口通讯程序----RS485总线简介
rs-485采用半双工工作方式,支持多点数据通信。rs-485总线网络拓扑一般采用终端匹配的总线型结构。即采用一条总线将各个节点串接起来,不支持环形或星型网络。
rs-485采用平衡发送和差分接收,因此具有抑制共模干扰的能力。加上总线收发器具有高灵敏度,能检测低至200mv的电压,故传输信号能在千米以外得到恢复。 有些rs-485收发器修改输入阻抗以便允许将多达8倍以上的节点数连接到相同总线。rs-485最常见的应用是在工业环境下可编程逻辑控制器内部之间的通信。
串口通讯程序设计实例为了便于理解,下面列举一种采用RTU模式通讯的应用实例。这个实例的硬件由一台计算机和分布在10个房间的10块温湿度表组成RS485网络架构。温湿度表的地址分别设定为01H至0AH。计算机读各温湿度表数据的命令消息帧包含8个字节:
被点名的温湿度表接收到上述命令消息后,向计算机发送温湿度数据,该消息帧包含11个字节: