ImageVerifierCode 换一换
格式:DOCX , 页数:13 ,大小:164.84KB ,
资源ID:939782      下载积分:12 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bdocx.com/down/939782.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(MB3480学习心得.docx)为本站会员(b****1)主动上传,冰豆网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰豆网(发送邮件至service@bdocx.com或直接QQ联系客服),我们立即给予删除!

MB3480学习心得.docx

1、MB3480学习心得MB3480学习心得一、基础知识:1、什么是Modbus?Modbus是由Modicon(现为施耐德电气公司的一个品牌)在1979年发明的,是全球第一个真正用于工业现场的总线协议。2、主-从结构:主设备查询查询消息中的功能代码告之被选中的从设备要执行何种功能。数据段包含了从设备要执行功能的任何附加信息。例如功能代码03是要求从设备读保持寄存器并返回它们的内容。数据段必须包含要告之从设备的信息:从何寄存器开始读及要读的寄存器数量。错误检测域为从设备提供了一种验证消息内容是否正确的方法。从设备回应如果从设备产生正常的回应,在回应消息中的功能代码是在查询消息中的功能代码的回应。数

2、据段包括了从设备收集的数据:像寄存器值或状态。如果有错误发生,功能代码将被修改以用于指出回应消息是错误的,同时数据段包含了描述此错误信息的代码。错误检测域允许主设备确认消息内容是否可用。每个MODBUS帧都包括地址域功能域数据域错误检测域3、Modbus的三种通信协议:Modbus协议分为三种通信方式:Modbus RTU、Modbus ASCII以及Modbus TCP。首先,Modbus TCP的通信格式和Modbus RTU非常相似,唯一的差别只是Modbus RTU最后带两个字节的CRC校验,而Modbus TCP没有。其次,Modbus ASCII的通信格式与Modbus RTU其实

3、“神合貌离”,就是把Modbus RTU的每一个字节(例如:27H)高四位(2)和低四位(7)拆分为两个字节,并以ASCII码的方式表现出来(32 37),再给命令帧分别加上起始符和结束符便可以,当然Modbus RTU和Modbus ASCII的校验的方式不同,这里暂不详述,所以同一条命令用Modbus RTU方式和Modbus ASCII方式表现出来,虽然在命令长度的上有很大的区别,但其实际表达的意思却是一样。4、RTU方式:帧定界:MODBUS RTU方式下,每两个字符之间发送或者接收的时间间隔不能超过1.5倍 字符传输时间。如果两个字符时间间隔超过了3.5倍的字符传输时间,规约就认为一

4、帧数据已经接收,新的一帧数据传输开始。备注:NPort与MGate产品的区别就在于,MGate在每帧报文的之后,增加了3.5倍的字符传输时间,而NPort则没有。5、ASCII方式:帧定界:“:”帧起始“CR LF”帧结束ASCII方式用两个ASCII字符表示一个8位数据,比如16进制的3A用字符“3”和字符“A”表示。6、Modbus TCPModbus TCP数据帧包含报文头、功能代码和数据3个部分: MBAP报文头(MBAP:Modbus Application Protocol,Modbus应用协议)分4个域,共7个字节:1)主从模式的设定:以PC端作为Master、装置作为Slave

5、为例;2)设置串口状态:3)ID映射:说明:a)Modbus TCP通信标准端口号为502,所有的端口号都是502,串口通过ID好识别;a)ID表中设置情况:15:Port1;610:Port2;b)从站偏移量:可不设,以下为例子,假定偏移量为3;4、使用的软件:前提说明:两套软件:软件一:自己在网上找的Modbus Poll和Modbus Slave,注意:Modbus Poll:只作为Master(主端)(TCP Master和RTU Master都用它);Modbus Slave:只作为Slave(从端)(TCP Slave和RTU Slave都用它);软件二:刘丹提供的ModScan3

6、2和ModSim32,注意:ModScan32:只作为Master(主端)(TCP Master和RTU Master都用它);ModSim32:只作为Slave(从端)(TCP Slave和RTU Slave都用它);软件一:Modbus Poll(用于TCP Master)Modbus Slave(用于串口的Slave)1)打开Modbus Slave: 选择“Connectiong”注意:UPort 1150映射为主机的COM2口,使用这里选择Port2;ID号:1;功能码:3;2)打开Modbus Poll: 选择“Connection”,端口号为502; ID号:1;功能码:3;3)

7、注意事项:a)Modbus Poll和Modbus Slave设置的ID号、功能码必须一致;b)通信成功的判断:可从Modbus Poll软件本身、MGate Manager的“监控”来观察;注意:Mdobus Slave软件无法判断连接是否成功;通信成功的界面:Modbus Poll:Tx值不断增加,Err值为0(Err指响应的返回值);MGate Manager“监控”:通信不成功的界面:比如:将Modbus Slave的连接断开,则Modbus Poll会报错:正确的连接,则Err=0;MGate Manager“监控”:图中:TCP Req、RTU Req(通过MB3480转发到RTU

8、串口的),没有Resp。c)其他功能键的使用:Modbus Poll:Read/Write Definition:可设置ID号、功能码、地址;Reset Counters:充值计数器;其中:地址可自定义,但是Modbus Poll和Modbus Slave的地址设置都要一致;Modbus Slave:Slave Definition:可设置ID号、功能码、地址;软件二:ModScan32:用于TCP Master;ModSim32:用于RTU Slave;1)打开ModSim32软件:直接打开目录,点击“ModSim32.exe”即可; 点击“OK”; 等几秒钟,“OK”由灰色变为黑色即可点击

9、;等几秒钟,“OK”由灰色变为黑色即可点击;“File”“New”:“Connection”“Port2”-UPort 1150在笔记本上映射的端口号为COM;2)打开ModScan32软件:直接打开目录,点击“ModScan32.exe”即可;“Connection”“Remote TCP/IP Server”:3)注意事项:a)ModScan32和ModSim32的Address(地址)、Device Id(ID号)、MODBUS Point Type(功能码,为3)设置必须一致,其中:ID号:Port1为15;功能码:为3;Address:可自己设定,只要ModScan32和ModSim

10、32的一致就可以了;b)连接不成功的界面:比如:将Address一个设置为“0001”,另一个设置为“0100”,则会连接不成功,如下界面:而ModSim32则不会有报错信息;错误一:出现“*MODBUS Message TIME-OUT*”,如果正确的连接,则没有这行报错;错误二:Number of Polls的值一直在增加,而Valid Slave Responses的值不变,这说明TCP Master一直发送请求,却一直没有得到回应; 当正确连接后,点击“Reset Ctrs”后,这个计数值就会清零,重新累计,出现的数据应该是Number of Polls与Valid Slave Res

11、ponses一致;c)当修改设置后,参数会自动执行,不要重启软件或按键;d)如果所有设置都正确,但是连接却还是报错,这种情况下,只要将ModScan32和ModSim32软件重新开启就可以了,因为这个软件是没有经过注册的;5、监控和数据报文:1)一个完整的轮询过程:TCP Req(TCP请求)转为RTU Req(RTU请求)RTU Resp(RTU回应)TCP Resp(TCP回应);2)报文内容:分析如下:TCP Req:01 00 00 00 00 06 01 03 00 63 00 05TCP请求 MBAP报头 从设备ID 起始地址 读寄存器个数 7个Byte(字节) 功能码MBAP报头

12、格式:MBAP包含7个字节:01 00:处理标识ID,取决于设备的类型,取值一般为0000到FFFF;00 00:协议ID,0=Modbus协议;00 06:后面跟随的字节个数(包含从设备ID号),此例:后面跟随了6个字节;01:从设备的ID号;RTU Req:01 03 00 63 00 05 75 D7RTU请求 从设备ID 起始地址 读寄存器个数 功能码 CRC校验码(高低)-RTU方式;RTU Resp:01 03 0A 00 01 00 02 00 03 00 04 00 05 CF 24RTU回应 从设备ID 回复的数据 校验码 长度 CRC(高低) 功能码 TCP Resq:TC

13、P回应01 00 00 00 00 0D 01 03 0A 00 01 00 02 00 03 00 04 00 05 MBAP报头 从设备ID 长度 回复的数据 功能码MBAP:00 0D:13-后面跟随13个字节;6、较深入的报文内容:1)Modbus Poll向多个寄存器发送数据的报文分析:a)Modbus Poll中的设置:双击红框部分,界面:Value中填入要发送的数据,注意:这是十进制,对于“监控”中是十六进制;Slave ID:Port所接从设备的ID;Address:这是寄存器地址,第1个是0,第2个是1;b)多寄存器报文分析:监控中看到的数据:分析: 第一组:i)TCP Re

14、q:TCP发送请求;时间 数据0.000 03 36 00 00 00 06 01 03 00 00 00 0A MBAP报头 从设备ID 起始地址 读寄存器个数 功能码MBAP:03 36:处理标识ID;00 00:协议ID,0=Mdobus;00 06:后面跟随的字节个数;01:从设备ID;ii)RTU Req:通过MB3480转换到串口的请求;时间 数据0.000 01 03 00 00 00 0A C5 CD 从设备ID 起始地址 寄存器个数 CRC校验码 功能码注意:i)与ii)的起始地址、寄存器个数是一样的;ii)在i)的基础上,去掉了MBAP报头,并且增加了CRC校验码;iii)RTU Resp:从串口RTU回应的数据;时间 数据0.090 01 03 14 00 0F 00 10 00 11 00 12 00 00 00 00 00 00 00 00 00 00从设备ID 长度 15 16 17 18 00 00 11 69 功能码 校验码一共10个寄存器:00 0F:表示15;00 10:表示16;00 11:表示17;00 12:表示18;其余寄存器为00,没有发送数据;注意:第i)、ii)是请

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1