- 1、本文档共11页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
modbus协议modbus协议精选
深入理解Modbus基于串口的Modbus软件开发----------------------八股--------------------一、开发背景:2、GAT垃圾项目的DCS要通过Modbus与PLC进行通讯,我们的DCS仅进行过简单的测试。要连鬼子的炉排PLC,还需进行更正式的测试,秦SUN为了体现ABB的软件水平,特决定自己写一个ABoBo公司的MB测试软件。1、已经有好多个测试软件了,但是没有开源。如modbusscan 7.0(ModScan32.exe),Modbus Poll version, 4.3.1, Modbustester.exe,ModLink,ModbusSimulator2、协议比较老了,但是很管用。----------------------八股------------------------------------------N步走--------------------第一步:图书馆借N本VC串口编程的书第二步:上网下N个源代码第三步:上网下个虚拟串口的程序。(/cn/sn/download.htm)第四步:学习Modbus协议
主从方式,主站初始化传输。从站根据主设备查询提供的数据作出反应。
主站查询格式:站(或广播)地址、功能代码、要发送的数据、错误检测域。
从站回应格式:确认要行动的域、返回的数据、错误检测域。如果在消息接收过程中发生错误,或从站不能执行其命令,从站将建立错误消息并把它作为回应发送出去。
从站地址是0...247,0为广播地址
ASCII模式
: 地址 功能代码 数据数量 数据1 ... 数据n LRC高字节 LRC低字节 回车 换行 代码系统:
十六进制,ASCII字符0...9,A...F
消息中的每个ASCII字符都是一个十六进制字符组成
每个字节的位:
1个起始位
7个数据位,最小的有效位先发送
1个奇偶校验位,无校验则无
1个停止位(有校验时),2个Bit(无校验时)
错误检测域
LRC(纵向冗长检测)
使用ASCII模式,消息以冒号(:)字符(ASCII码 3AH)开始,以回车换行符结束(ASCII码 0DH,0AH)。
其它域可以使用的传输字符是十六进制的0...9,A...F。网络上的设备不断侦测“:”字符,当有一个冒号接收到时,每个设备都解码下个域(地址域)来判断是否发给自己的。
消息中字符间发送的时间间隔最长不能超过1秒,否则接收的设备将认为传输错误。
RTU模式
地址 功能代码 数据数量 数据1 ... 数据n CRC低字节 CRC高字节 ? ? 代码系统:
8位二进制,十六进制数0...9,A...F
消息中的每个8位域都是一个两个十六进制字符组成
每个字节的位:
1个起始位
8个数据位,最小的有效位先发送
1个奇偶校验位,无校验则无
1个停止位(有校验时),2个Bit(无校验时)
错误检测域
CRC(循环冗长检测)
深入理解ModBus功能码
Modbus主要功能码功能码 名称 注释 01 Read Coil Status (线圈状态0x)(读PLC的开出状态)??????? bit 读位??? ,与5对应, 可读可写DO 02 Read Input Status (输入状态1x) (读PLC的开入状态)?????? bit 读位,只读DI 03 Read Holding Register (保持寄存器4x HR) (读模出状态) 读整形、状态字、浮点型、字符型,与16对应 04 Read Input Register (输入寄存器3x AR) (读PLC模入状态) 读整形、状态字、浮点型 只读AI 05 Write Single Coil (强制单路开出,给PLC写数据) 写单个位? 可读可写DO 06 Write Single Register (强制单路模出,给PLC写数据) 写单个整形、状态字、浮点型、字符型,写HR4x的地址区 15 Write Multiple Coil (强制多路开出,给PLC写数据) 写多个位 16(0x10H) Write Multiple Register (强制多路模出,给PLC写数据) 写多个整形、状态字、浮点型、字符型 15和16可能是用于一次写一串数据的,不允许单个写。如时间的世纪、年、月、日、时、分、秒要一次写下去
设备和Modbus 地址范围对应表 设备地址 Modbus地址 描述 功能 R/W 1...10000* address - 1 Coils (outputs) 0 Read/Write 10001...20000* address - 10001 Discrete Inputs 01 R
您可能关注的文档
最近下载
- 必威体育精装版最完整的的厂房设施确认实施方案.pdf
- 工程造价专业大学生职业生涯规划书.docx VIP
- 档案管理10号令解读(网).ppt
- 重庆《轻质隔墙条板应用技术标准》DBJ50T 338-2019.pdf
- (冀人版)科学五年级上册全册知识点.docx
- 电子工业版信息科技七年级上册3-1 “互联网+”在学习中的应用 教案.pdf VIP
- 2024-2025学年高中生物 第4章 种群和群落 第4节 群落的演替说课稿 新人教版必修3.docx
- 10 数学史问题与一元一次方程(含答案析) -七年级数学之专攻一元一次方程各种类型题的解法(人教版).docx
- 锅炉本体焊接作业指导书.pdf
- 钣金加工:折弯工艺手册.doc VIP
文档评论(0)