当前位置: 首页 > news >正文

广州建设工程造价管理网站汕头建站培训

广州建设工程造价管理网站,汕头建站培训,能注册账号的网站模板,wordpress 百度文库文章目录Modbus技术背景Modbus OSI分布Moudbus分类通讯过程Moudbus协议通信过程以及报文解析RTU 与 ASCII 收发数据区别Modbus技术背景 Modbus是一种串行通信协议。 1971年#xff0c;Modicon公司首次退出Modbus协议#xff0c;ModbusRTU和Modbus ASCII诞生于此。 后来施耐德… 文章目录Modbus技术背景Modbus OSI分布Moudbus分类通讯过程Moudbus协议通信过程以及报文解析RTU 与 ASCII 收发数据区别Modbus技术背景 Modbus是一种串行通信协议。 1971年Modicon公司首次退出Modbus协议ModbusRTU和Modbus ASCII诞生于此。 后来施耐德电气SchneiderElectric收购了Modicon公司并在1997年推出了ModbusTCP协议。2004年中国国家标准委员会正式把Modbus作为了国家标准。 Modbus成为工业领域通信协议的业界标准并且现在是工业电子设备之间常用的连接方式。 Modbus OSI分布 Moudbus工作在osi的应用层、数据链路层、物理层 Moudbus分类 Moudbus-RTU、Moudbus-ASCII、Moudbus-TCP ModbusRTU和ModbusASCII主要用于串行通信领域。 ModbusTCP则常用于以太网通信。 Moudbus规定Moudbus-RTU是设备必须支持的协议也是默认选项。 通讯过程 Modbus是主从方式通讯不能同步进行通信总线上每次只有一个数据进行传输。 主机发送从机应答主机不发送总线上就没有数据通讯。 MODBUS 协议允许在各种网络体系结构内进行简单通信。 每种设备PLC、HMI、控制面板、驱动程序、动作控制、输入/输出设备都能使用 MODBUS协议来启动远程操作。 Moudbus协议 Modbus使用一种简单的MasterandSlave主从协议客户机/服务器协议进行通信。客户机作为主站向服务器发送请求服务器从站接到请求后对请求进行分析并作出应答。 其中使用的通信帧被称为应用数据单元Application Data UnitADU它包括通信地址段、功能代码段、数据段和校验段。 通讯格式Address8 bit Function8 bit DataN x 8 bit CRC check16 bit 通讯地址 占用一个字节8bit 通信地址范围0-255。其中有效范围是1-247。 01-247248-255广播地址子节点单独地址保留 一般0地址为主机1-247地址为从机地址。 功能码 MODBUS 功能码分为三类公共功能码、用户定义功能码、保留功能码 公共功能码定义 占用一个字节不同功能码对应不同功能。常用功能码 功能码功能含义寄存器地址01读单个或多个位状态00001-0999905写单个位状态00001-0999915写多个位状态00001-0999903读单个或多个寄存器40001-4999906写单个寄存器40001-4999916写多个寄存器40001-49999 数据根据功能码不同有不同结构 CRC check CRC校验CRC-16 低位在前高位在后。为了保证数据不错误增加这个然后再把前面的数据进行计算看数据是否一致。 MODBUS 使用一个‘big-Endian’ 表示地址和数据项。这意味着当发射多个字节时首先发送最高有效位。例如寄存器大小 值16 – 比特 0x1234 发送的第一字节为 0x12 然后 0x34 通信过程以及报文解析 发送 从机的地址我要干嘛的功能码我要查的寄存器的地址我要查的寄存器地址的个数校验码 回复 从机的地址主机发我的功能码要发送给主机数据的字节数数据校验码 查询报文解析 主机发送: 01 03 00 00 00 01 84 0A 从机回复: 01 03 02 19 98 B2 7E 主机发送报文解析 01-地址也就是你传感器的地址 03-功功能码03代表查询功能查询传感器的数据 00 00-代表查询的起始寄存器地址.说明从0x0000开始查询。这里需要说明以下Modbus把数据存放在寄存器中通过查询寄存器来得到不同变量的值一个寄存器地址对应2字节数据 00 01-代表查询了一个寄存器.结合前面的00 00,意思就是查询从0开始的1个寄存器值 84 0A-循环冗余校验,是modbus的校验公式,从首个字节开始到84前面为止; 从机回复报文解析 01-地址也就是你传感器的地址 03-功功能码03代表查询功能查询传感器的数据。这里要注意的是注意发给从机的功能码是啥从机就要回复同样的功能码如果不一样说明这一帧数据有错误 02-代表后面数据的字节数,因为上面说到,一个寄存器有2个字节,所以后面的字节数肯定是2*查询的寄存器个数; 19 98-寄存器的值是19 98,结合发送的数据看出,01这个寄存器的值为19 98 B2 7E-循环冗余校验 修改功能报文解析 主机发送: 01 06 00 00 00 01 48 0A 从机回复: 01 06 00 00 00 01 48 0A 主机发送报文解析 01-主机要查询的从机地址 06-功能码,06代表修改单个寄存器功能,修改有些不同,有修改一个寄存器和修改多个寄存器; 00 00-代表修改的起始寄存器地址.说明从0x0000开始. 00 01-代表修改的值为00 01.结合前面的00 00,意思就是修改0号寄存器值为00 01; 48 0A-循环冗余校验,是modbus的校验公式,从首个字节开始到48前面为止; 从机回复报文解析 01-从机返回给主机自己的地址,说明这就是主机查的从机 06-功能码,代表修改单个寄存器功能主机发啥功能码从机就必须回什么功能码; 00 00-代表修改的起始寄存器地址.说明是0x0000. 00 01-代表修改的值为00 01.结合前面的00 00,意思就是修改0号寄存器值为00 01; 48 0A-循环冗余校验,是modbus的校验公式,从首个字节开始到48前面为止; RTU 与 ASCII 收发数据区别 1、发送数值方式不同 用RTU方式也叫16进制方式要发0x03数据RTU方式就发送00000011。 用ASCII发送0x03就要发送0的ASCII码0x30和3的ASCII码0x33对应到2进制也就是发送00110000和00110011。 2、发送时序位数不同 RTU方式只需要发送8位就可以了(加上起始位和停止位就是10位数据)。 ASCII码方式发送就需要两个8位(每个8位分别加上起始位和停止位就是20位数据)。 因此ASCII码发送数据量是RTU方式的2倍所以ASCII码效率更低。但是ASCII更符合串口打印查看因为串口发送的数据一般都是文本模式(ASCII 可见字符是从32—126)。而采用RTU方式(16进制发送)会出现乱码如果是串口助手的话就会显示□□□□。
http://www.hkea.cn/news/14270973/

相关文章:

  • 金华高端网站建设公司网站建设的业务范围
  • 网站英文版是怎么做的wordpress浏览人数在哪里改
  • 站酷网在线官网静态网站建设规划
  • 网站设计费用志泰安焦点网络
  • 网站模板安全管理系统做网站月收入
  • 百度一下网页版网站优化待遇
  • 做网站需准备些什么问题网页被禁止访问
  • 如何用个门户网站做销售威海高新园区建设运营有限公司网站
  • 深圳网站 商城制作企业网站建设找外包公司做
  • 手机网站首页怎么做温州制作网站公司
  • 腾飞网站建设wordpress被改密码
  • 泉州市城乡和建设网站凉山州建设局网站
  • 公司网站建设高端网站建设网页设计三亚做网站多少钱一平方
  • 网站开发多久完成莞城微网站建设
  • 河南省建设监理协会新网站学校部门网站建设
  • 建设一个房产网站赚钱吗应不应该购买老域名建设新网站
  • 建设一个人才网站需要的人才企业网站建设太原网站建设
  • 电子商务网站开发费用入账长安响应式网站建设
  • 自助建网站不需要域名关于书店网站开发实例的书
  • 海南省建设培训与执业资格注册中心网站做最精彩的绳艺网站
  • 营销型网站功能网站建设渠道员
  • 哪里长沙网站开发专业的微网站公司
  • 在iis上部署的网站本机无法浏览解决方法上海网站建设公
  • 郑州网站制作汉狮做网站属于什么技术
  • 橱柜手机网站模板微信分销网站建设比较好
  • 做文库类网站佛山专业做淘宝网站
  • 网站备案主体变更德阳建设银行招聘网站
  • 青岛市建设局网站停工专业制作存单
  • 招商网站建设哪家好做全屏网站图片显示不全
  • 如何做美食网站城乡建设网站证件查询