下载后可任意编辑 MODBUS协议、通讯格式、传输方式 MODBUS简介MODBUS 是一种单主站的主/从通信模式。MODBUS 网络上只能有一个主站存在,主站在 MODBUS 网络上没有地址,从站的地址范围为 0 - 247,其中 0 为广播地址,从站的实际地址范围为 1 - 247。 MODBUS 通信标准协议可以通过各种传输方式传播,如 RS232C、RS485、光纤、无线电等。 MODBUS 具有两种串行传输模式,ASCII 和 RTU。它们定义了数据如何打包、解码的不同方式。支持 MODBUS 协议的设备一般都支持 RTU 格式。 通信双方必须同时支持上述模式中的一种。实际也就是发送与接收双方商量一下,定好规则,发送方想要接收方做某件事,就发送某种格式的信息给接收方,接收方收到信息后,根据事先约定好的规则分析信息,执行命令。MODBUS 的通讯法律规范:下载后可任意编辑起始符 + 设备地址 + 功能代码 + 数据 + 校验和 + 结束符 通讯格式 通讯格式设置举例:9600,o,8,1 即: 波特率为9600; 校验方式为奇校验; 数据位为八位; 停止位为一位; ------------------------------------------------------------1、波特率:波特率是每秒钟传输的数据位数;什么是位数呢?计算机处理的语言是"0"和"1"组合而成的信息,即机器语言!一个"0"或是一个"1"就是一个位; 设置波特率的作用? 假如把波特率设为9600,即一秒钟之内能够传输9600个"0"或是"1",它决定了通讯的数据传输速度。常用的波特率数值有:下载后可任意编辑2400、4800、9600、19200、38400、57600、115200; 其值越大,通讯传输速度越高,那么是不是把波特率的数值设置的越大越好呢?当然不是,它要根据现场传输条件来决定,波特率设置的越大,要承担的通讯失败风险越大。----------------------------------------------------------- 2、数据位:前面说过,计算机处理的语言是"0"和"1"组合而成的信息,即机器语言!01000001 ,01000010 ,01000011 ,01000100 ,01000101,01000110 A B C D E F上面一组机器码分别代表的字符是 A,B,C,D,E,F;如A: 是用01000001表示,共八个"0"或"1",即数据位为八位;下载后可任意编辑数据位的含义:是一个字符可以用多少个位的组合来表示; 为什么要设置数据位呢? 其一,设置数据位后,我们就知道了数据长度,然后可以根据波特率(9600)计算出传输一个字符A需要多少时间。假如数据位设为8,则: 8/9600=0.00083秒即传输一个...