modbus通讯协议
33页1、Modbus通讯协议图片: 图片: 图片: Modbus协议最初由Modicon公司开发出来,在1979年末该公司成为施耐德自动化(Schneider Automation)部门的一部分,现在Modbus已经是工业领域全球最流行的协议。此协议支持传统的RS-232、RS-422、RS-485和以太网设备。许多工业设备,包括PLC,DCS,智能仪表等都在使用Modbus协议作为他们之间的通讯标准。有了它,不同厂商生产的控制设备可以连成工业网络,进行集中监控。 当在网络上通信时,Modbus协议决定了每个控制器须要知道它们的设备地址,识别按地址发来的消息,决定要产生何种行动。如果需要回应,控制器将生成应答并使用Modbus协议发送给询问方。 Modbus协议包括ASCII、RTU、TCP等,并没有规定物理层。此协议定义了控制器能够认识和使用的消息结构,而不管它们是经过何种网络进行通信的。标准的Modicon控制器使用RS232C实现串行的Modbus。Modbus的ASCII、RTU协议规定了消息、数据的结构、命令和就答的方式,数据通讯采用Maser/Slave方式,Master端发出数据
2、请求消息,Slave端接收到正确消息后就可以发送数据到Master端以响应请求;Master端也可以直接发消息修改Slave端的数据,实现双向读写。 Modbus协议需要对数据进行校验,串行协议中除有奇偶校验外,ASCII模式采用LRC校验,RTU模式采用16位CRC校验,但TCP模式没有额外规定校验,因为TCP协议是一个面向连接的可靠协议。另外,Modbus采用主从方式定时收发数据,在实际使用中如果某Slave站点断开后(如故障或关机),Master端可以诊断出来,而当故障修复后,网络又可自动接通。因此,Modbus协议的可靠性较好。 下面我来简单的给大家介绍一下,对于Modbus的ASCII、RTU和TCP协议来说,其中TCP和RTU协议非常类似,我们只要把RTU协议的两个字节的校验码去掉,然后在RTU协议的开始加上5个0和一个6并通过TCP/IP网络协议发送出去即可。所以在这里我仅介绍一下Modbus的ASCII和RTU协议。 下表是ASCII协议和RTU协议进行的比较: 通过比较可以看到,ASCII协议和RTU协议相比拥有开始和结束标记,因此在进行程序处理时能更加方便,而且由于
3、传输的都是可见的ASCII字符,所以进行调试时就更加的直观,另外它的LRC校验也比较容易。但是因为它传输的都是可见的ASCII字符,RTU传输的数据每一个字节ASCII都要用两个字节来传输,比如RTU传输一个十六进制数0xF9,ASCII就需要传输F9的ASCII码0x39和0x46两个字节,这样它的传输的效率就比较低。所以一般来说,如果所需要传输的数据量较小可以考虑使用ASCII协议,如果所需传输的数据量比较大,最好能使用RTU协议。下面对两种协议的校验进行一下介绍。1、 LRC校验LRC域是一个包含一个8位二进制值的字节。LRC值由传输设备来计算并放到消息帧中,接收设备在接收消息的过程中计算LRC,并将它和接收到消息中LRC域中的值比较,如果两值不等,说明有错误。LRC校验比较简单,它在ASCII协议中使用,检测了消息域中除开始的冒号及结束的回车换行号外的内容。它仅仅是把每一个需要传输的数据按字节叠加后取反加1即可。下面是它的VC代码: BYTE GetCheckCode(const char * pSendBuf, int nEnd)/获得校验码 BYTE byLrc = 0;
4、char pBuf4; int nData = 0; for(i=1; iend; i+=2) /i初始为1,避开“开始标记”冒号 /每两个需要发送的ASCII码转化为一个十六进制数 pBuf 0 = pSendBuf ; pBuf 1 = pSendBuf i+1; pBuf 2 = 0; sscanf(pBuf,%x,& nData); byLrc += nData; byLrc = byLrc; byLrc +; return byLrc; 2、CRC校验 CRC域是两个字节,包含一16位的二进制值。它由传输设备计算后加入到消息中。接收设备重新计算收到消息的CRC,并与接收到的CRC域中的值比较,如果两值不同,则有误。CRC是先调入一值是全“1”的16位寄存器,然后调用一过程将消息中连续的8位字节各当前寄存器中的值进行处理。仅每个字符中的8Bit数据对CRC有效,起始位和停止位以及奇偶校验位均无效。CRC产生过程中,每个8位字符都单独和寄存器内容相或(OR),结果向最低有效位方向移动,最高有效位以0填充。LSB被提取出来检测,如果LSB为1,寄存器单独和预置的值或一下,如果LSB
《modbus通讯协议》由会员枫**分享,可在线阅读,更多相关《modbus通讯协议》请在金锄头文库上搜索。
高等职业教育产学合作实现机制及对策
物业保洁年度工作计划标准模板(3篇).doc
北师大版七年级数学下册全册教案(共93页)
学生顶岗实习总结范文(2篇).doc
中学生备战期末考试演讲稿三篇
健康教育处方
荆州模式动物技术创新项目可行性研究报告_参考模板
精校版高中人教B版数学必修1同步练习-2.1.4 函数的奇偶性 Word版含答案
消毒隔离技术规范(无附录)(DOC 11页)
大学学生会自荐书模板
川农22春《动物生产新技术与应用》补考试题库答案参考48
明珠渠改造施工组织设计
公路工程施工安全技术规范JTGF90
无车日倡议书4篇
福建师范大学22春《环境生物学》离线作业一及答案参考11
轴对称复习提纲
2023最新人力资源部工作计划格式版(3篇).doc
2011年中考政治总复习 七年级下第三单元 做意志坚强的人
强直性脊柱炎的护理查房
小学体育课跨越式跳高教案范文.doc
2024-01-25 5页
2023-01-10 53页
2022-12-03 9页
2023-08-22 10页
2023-10-06 16页
2023-09-03 2页
2022-12-14 17页
2023-05-28 44页
2022-11-09 10页
2023-05-07 2页