学生联盟网为您提供优质参考范文! 体会工作报告法律咨询精彩演讲各类材料
当前位置: 学生联盟网 > 学习资料 > 日语学习 > 昆仑通态莫迪康ModbusRTU讲解

昆仑通态莫迪康ModbusRTU讲解

时间:2021-10-12 00:29:09 来源:学生联盟网

硬件配置 参数设置 设备命令 故障分析莫迪康 ModbusRTU1设备简介本驱动构件用J* MCGS软件通过ModbusRTU协议读写Modicou PLC设备的族种 寄存器的数据;同时也M用対支持ModbusRTU标准协议的各类PLC、仪衣、控制器数据的读写。本驱动支持01、02、03、04、05、06、15、16常用功能码,对功能码支持请参见驱动类型串II子设备,须挂接在“通用串II父设备”卜才能工作通讯协议采用英迪康ModbusRTU协议通讯方式一主一从、一主多从方式.驱动构件为主,设备为从。2、硬件连接MCGS软件与设备通讯Z前,必须保证通讯连接止确。通讯连接方式TPC与设备Z间采用标准的RS485或RS232通讯。1Data |2Data- 1P戊端 圆8针公头PLC端圆8针公头Modicon TSX系列和Twido系列PLC的编程通讯I I Terminal Port的通讯电缆图如卜TPC端RS485 ARS485 B-英他设备的通讯连接,具体请参考对应设备于册。3、设备通讯参数“通用串I I父设备”通讯参数设置如卜 设置项 | 参数项返冋顶部通讯波特率9600(默认值)、19200、38400数据位位数7、8(默认值)停止位位数1(默认值)、2奇偶校验位奇校验、偶校验(默认值)、无校验苴中父设备通讯参数设置应与设备的通讯参数相同.否则无法正常通讯。

  设备通讯参数的具体设置请参见对应设备手册。4、设备构件参数设置“英迪康ModbusRTU”子设备参数设置如卜 内部属性m击“查看设备内部属性”,点击按钮进入内部属性,具体设宜请参看内部属性 最小采集周期MCGS对设备进行操作的时间周期,单位为ms.默认为100ms,根据采集数据彊的人小,设胃值町适当训整。

  设备地址必须和实际设备的地址相一致,范阳为0.255,默认值为0。

  通讯等待时间通讯数据接收等待时间,默认设置为200ms,根据采集数据乗的 人小,设置值町适当调整。

  快速采集次数对选择了快速采集的通道进行快采的频率(已不使用,为与老驱动兼容,故保留,无需设置)。16位整数解码顺序调整字元件的解码顺序,対f Modicon PLC及标Hli PLC设备,使用默认值即町。16位整数解码顺序举例0 x0001012表示字元件高低字比不颠倒(默认值)表示1121表示字元件高低字节颠倒表示25632位整数解码顺序调整双元件的解码顺序,对J -Modicon PLC,请设豐为“2-3412”顺序解码.32位整数解码顺序举例0 x0000 000101234衷示双字元件不做处理直接解码(默认值)表示112143农示双字元件高低字不颠倒,但字内高低字节 颠倒表示25623412表示双字元件高低字颠倒,但字内高低字节不 颠倒表示6553634321表示双字元件内4个字节全部煎倒表示 1677 721632位浮点数解码顺序调整双字元件的解码顺序,对J-ModiconPLC,请设置为“2-3412”顺序解码。32位浮点数解码顺序举例0X3F80 000001234表示双字元件不做处理肖接解码(默认值)表示1.012143表示双字元件高低字不颠倒,但字内高低字节 颠倒表示-5.78564e-03923412表示双字元件高低字颠倒,但字内高低字节不 颠倒表示 2.27795e-04134321表示双字元件内4个字节全部颠倒表示 4 60060e-041 校验方式选择LRC校验值的组介方式,对J Modicon PLC及标准PLC设备.使用默认设置即可。O-LH低字节,高字节校验结杲为2个字节,低字节在前,高字节在后。1-HL高字低字节校验结果为2个字恢高字节在前,低字节在后。

  分块采集方式驱动采集数据分块的方式,对Modicon PLC及标准PLC设 备,使用默认设置可以提离采集效率。0按最大长度分块采集分块按垠人块长处理,对地址不连 续但地址相近的多个分块,分为一块一次性读取,以优化采集效 率。1-按连续地址分块采集分块按地址连续性处理,对地址不连 续的多个分块,每次只采集连续地址,不做优化处理。例如何4区寄存器地址分别为15,7,912的数据需采 集,如果选样“0按最人长度分块”,则两块町优化为地址 1-12的数据打包1次完成采集如果选择“1 一按连续地址 分块”,则需耍采集3次。

  4区16位写功能码选择写4区单字时功能码的选择,这个属性主要是针对门 己制作设备的用户而设置的,这样的设备4区单字写可能只支持0 x10功能码,而不支持0 x06功能码。00 x06单字写功能码使用0 x06c10 x10单字写功能码使用OxlOo注意1.“解码顺序”及“校验方式”设置主耍是针对卄标准ModbusRTU协议的不同 解码及校验顺序。当用户通过本驱动软件与设备通讯时,如果出现解析数据值不对,或 者通讯校验错谋(通讯状态为3),町与厂家咨询后对以上两项进彳j设置。而对J- Modicon PLC及支持标准ModbusRTU的PLC及控制器等设备,-般需将“32位整数解码顺序” 和“32位浮点数解码顺序”设置为“2 3412”。另外,在使用本驱动与“Modbus串I I 数据转发设备”构件通讯时,“解码顺序”及“校验方式”均石按默认值设置,否则会 导致通讯失败或解析数据错误。2“分块采集方式”设置主耍是针对非标准ModbusRTU协议设备。当用户通过 本驱动软件与设备通讯时,如果按默认“0按址人长度分块”时,出现读取连续地址 正常,而不连续地址不正常时,可与厂家咨询,并设置为“1 一按连续地址分块方式” 尝试是否町正常通讯。而对J Modicon PLC及支持标准ModbusRTU的PLC及控制器等 设备,直接便用默认设置即叮,这样可以提高采集效率。5、采集通道a、通讯状态通讯状态值代表意义0表示当前通讯正常1表示采集初始化错误2表示采集无数据返回错误3表示采集数据校验错谋4表示设备命令读写操作失败错谋5表示设备命令格式或参数错误6表示设备命令数据变琏取值或賦值错谋6、内部属性用户町通过内部屈性,添加通道.本驱动构件町支持ModbusRTU寄存器类熨及对应功能码如下寄存器数据类舉读取功能码写入功能码操作方式通道举例1区输入继电器BT02只读只读10001表示1区地址10区输出 继电器BT0105、15读写读写00001表示0区地址13区输入寄存器BT.WUB、WB、WDDUB、DB、DD、DF、STR04只读只读30001表示3区地址14区输出 寄存器BT、WUB、WB、WDDUB、DB、DD、DF、STR0306、16读写读写40001表示4区地址1说明功能码1区、3区不支持写操作4区在双字(32位)数据写操作或批杲写入务个 数据时,使用16功能码。数据类型“STR”数据类熨是专用和MCGS “Modbus串I I数据转发设备”骡动构件 配合使用的,并且只能通过写通道的方式來改变“Modbus串I I数据转发设备”从设备的值。

  J1体数据类型说明请参见附录2注意在内部属性屮添加通道时,起始地址均为1,这是遵从Modbus协议的,即所谓的“协议地址”,对部分寄存器起始地址为0的设备,通道添加时,地址应加1处理。7、设备命令本设备构件提供设备命令,具体格式如F设备命令命令格式命令举例读取命令Read(寄存器名称,例1.1SetDevice设备0,6,Read寄存器地址,数据HRead0,l 3T00Data00; 1J0,BT00Data01 H类型二返回值)读取0区地址为1,1区地址10的继电器值,放入MCGS 变量 Data00,Data01 中。例1.2SetDence设备0,6,Read4,10、WUBData00;4,40,DFData01”读取寄存器4区地址1的16位无符号值,和地址40的浮点数值,放入MCGS变量DataOO.DataO 1中.写入命令Write(寄存器名称,例1.3SetDence设备0,6,Write寄存器地址,数据HWnte4,l0AVUBData00;4,40,DFData01 H类樂二写入值)将DataOOQataOl的值分别以16位无符号和浮点数写入4区寄存器地址10和40中。32位读命令Read32(寄存器名例2.1SetDence设备06Read32称,奇存益地址,nRead324,104UBstiData n数据类型字符返读取4区寄存器中地址10的32位无符号值,放入回值)字符变量strData中。32位写命令Wnte32(寄存器名例2.2SetDevice设备0,6,Wnte32称,寄存器地址,HWnte32DM,10,DUBstrData H数据类型字符写将字符变ft strData的值,以32位无符号格式写入4入值)区寄存器地址1中。批最读取AReadP(寄存器名例3.1SetDevice设备ReadP称,起始地址,数0,6,”ReadP4,10,WUB,2,Data00,Data01,nRetum”据类空,数据个数表示读取4区寄存器从地址10开始的两个16位无n,数据1,数据符号数值,放入n ,返回状态MCGS变量DataOOQataOl中,执行结果存入变量 iiRetiim 中 o批最读取BReadPVReadPV寄存器名 称,起始地址,数 据类熨,数据个数 n,数据1 ,返回状 态例3.2SetDevice设备0,6,“ReadPV4,10,WUB,5,Data00,返回值”表示读取4区寄存器从地址10开始的5个16位无 符号数值,放入MCGS变彊DataOO为起始,连续5个 变鼠即DataOO,DataOl,DataO2,DataO3,DataO4中,结果存入变最“返回值”中。批量读取CReadBlockReadBlock 寄存器 名称,起始地址,数据类型 1数据 类型,读取数量 n,字符数据,返 回状态说明读取数彊是指读取N个数据类型屮指泄的数 据段到字符变鈕中,数据类型可以有多个,之间用中 括号分隔。实际连续读取个数读取数届D 数据类型1数 据类型n返回数据“字符数据”格式为123,456,xxx的 csv方式,每次读取时以回车换行结見。例3.3SetDevice设备0,6,ReadBlock4,10,WUBDF,3,strDataM表示读取4区寄存器从地址10开始,按WBU,DF格 式连续读収3组数据即数据格式为 WUB,DF,WUB,DF,WUB,DF,并以相应格式解析并 以逗W用隔的CSV格式存入字符变鼠StrData中。批量读取DReadMutiRegReadMutiReg寄存 器名称,起始地址,数据个数n,数据 类型,字符数据说明按指定数据类型批彊读取起始地址开始连续 地址的n个数据到字符变量数据中擞据间以逗号间 隔。例 3.4 SetDevice设备 0,6,” ReadMutiReg 4,10,5,DF,strData”表示读取4区寄存器从地址10开始的5个32位浮 点数值,并以逗号间隔形式,放入MCGS字符串变量 strData 中 例如字符变量strData “123.4,234 5345 6,456 7,567.8”。批量写入AWnteP寄存器名例4.1SetDevice设备0,6,WnteP称,起始地址,数HWriteP4,10 WUBDataOODataO 1、nRetum”据类熨,数据个数表示将MCGS变最DataOOPataOl的值,以16位无n,数据1,数据符号形式写入4区寄器从地址10起始的两个寄存n ,返回状态器中,执行结果存入变最nRetum中。批最写入BWnteP寄存器名例4.2SetDence设备0,6、WntePV称,起始地址,数“WnteP4,10,WUB,5Qata00jiRetuni”据类型,数据个数表示将以MCGS变DataOl为起始,连续5个变帚n,数据1 ,返回状的值即DataOO,DataOl,DataO2,DataO3,Data04,以态16位无符号形式写入4区寄存器从地址10起始的 两个寄存器中,执行结果存入变杲nRetum中。批量写入cWnteBlock 寄存说明写入的数据在指定的字符数据对象中,格式WnteBlock器名称,起始地址,为XXX,XXX,XXX的CSV方式,每次读取时换行数据类熨1数据以冋乍换行结用。It他貝体格式参见ReadBlock.类型,读取数量例4.3SetDence设备06n,字符数据,返nWnteBlock4,10,WUBDF,3strDataH回状态表示将strData字符变彊小的CSV格式的数据,按 指定格式,写入4区寄存器从地址10开始的连续地 址中.批量写入DWnteMutiReg寄说明按指定数据类型将字符数据中以逗号间隔的WnteMutiReg存器名称,起始地n个数据,批届写入起始地址开始连续地址的n个址,数据个数n,数据到字符变駅数据中,数据间以逗号间隔。数据类型,字符数例 4.4 SetDevice设备 0、6J WnteMutiReg 4,10,5,据DF,strData1其 中 字 符 变杲strData“123.4,234.5,345.6,456.7,567.8”,表示将字符串变量 strData屮以逗号间隔形式的123.4等5个数据,以浮点数形式写入4区寄存器从地址10开始连续5 个地址中。通讯日志SetHiddenPro1,属性值开启通讯日志SetDevice设备0,6,SetHiddenProCl,1M开启错误日志SetDevice设备0,6,MSetHiddenProl,2 ”关闭通讯日志SetDevice设备0,6,SetHiddenProl,0 ”属性获取GetHiddenPro1,属性值读取通讯日志状态,SetDevice(设备0,6,GetHiddenPro(l,DataOl)”)DataOl为1时,表示通讯日志开启;为0时,表示 通讯口志关闭。读取 PLC 延时SetDevice(没备 0,6,nGetHiddenPro(2,DataOl)”)读取PLC实际的响丿“延迟时间,存入变最DataOl 中。读取最小采集耗时SetDevice(设备0,6,GetHiddenPro(3,DataOl)”)读取采集最小数据(1字长数据)所用耗时,存入变 S DataOl 中。注通常情况卜,驱动口志功能默认为关闭的参数说明寄存器名称7符型变吊,衷示当前操作的寄存器,值为T”,”0“,”3”,”4”,分别对应1区 输入继电器、0区输出继电器、3区输入寄存器、4区输出寄存器。寄存器地址数值型变罠,农示当询操作的寄心器地址,不同的设备地址范用不同,査 阅相关手册确定。数据类型字符型变駅,表示当前操作的寄存器数据类型鯉2数据数值型变处、开关届,它足用來存储设备命令数据的MCGS变駅。返回状态返冋批駅读写设备命令的执行状态(为设备命令格式错谋时无效),具体返冋 值意义请参见通讯状态说明、返回状态为可选参数(以标记),用户也可通过通讯状态通道 判断返回结果。批量读写说明1批量读写操作(包括ReadP、ReadPW WnteP、WntePl),为対同类寄存器连 续地址的一次性读写操作。使用时要注意变届对应寄存器地址的连续性。2批量读写操作(包括ReadP、ReadPV.WnteP.WntePf),数据个数最人为512 个。建议一次批吊操作数据駅不耍过人,否则会影响正常采集效果。3批最读写ReadPV和WritePV为对连续变最的操作,使用时耍注意保证变最命 名的索引累加的连续性。典体町参看相应“命令举例”部分。4批駅读写ReadBlock和WriteBlock为対连续地址的读写操作,英字符变績格式 为特定的CSV格式,在写入及读取解析时一定要注意符合格式婆求。通讯日志功能说明设备命令中提供的通讯日志功能是为了方便用户现场调试,默认为不开启状态。正常时 无碍开启,否则彩响速度。当现场仃疑难无法正常通讯时,町开心通讯口,忐功能,记录口忐 信息,将通讯过程记录以供技术人员分析。对J通讯跳变等不稳定状态,nJ以开启通讯错误 日志记录(即当通讯不正常时,记录通讯错误的日志,而正常通讯时不记录日志)。通讯H志 既认保存为 CModbusRTU.log (TPC 卜为 harddiskModbusRTU.log)。当文件人 T 6M 时门 动消空。LL忐格式举例说明如F设备地址行号操作时间发/收时发/收次数字 节 长 度耗时发送或接收内容AddressLmeO2007-1212899SendO/Rev820010200000001B901010561eOBytemsCA162151属性获取功能说明使用设备命令中提供的属性获取功能,町以获街通讯口志状态、PLC延时、故小采集 耗时等数据。其屮通讯日志状态读冋值为1时,表示通讯II,忐开启;读回值为2时,表示开 启错误日志;为0时,表示通讯日志关闭。PLC延时为PLC实际的响应延迟时间,即驱动读写指令帧发出后到PLC响应并开始返回数据帧所用的时间。最小采集耗时为采集最少数据(1字长数据)所耗费的时间,最小采集耗吋发指令帧耗时 PLC延时接收数据帧耗时。用户在调试时,可根据PLC延时、最小采集耗时判断PLC的实际响应时间,并结合驱动通讯11,忐判断采集速度是否正常。如数据值过人,说明PLC町能因程序过人而导致响应时间过K,影响采集速度。解决方法为优化PLC程序,提高PLC响应时间。8、常见故障分析故障现彖分析处理建议通讯状态为1或2采集初始化错误或采集无数据返回(通讯破件连接、参数设置问题)1、检査串II父役备参数设宣是否正确2、检査串II是否被苴他程序占用3、检査通讯电缆是否正确连接4、检测设备,并便用厂家测试程序确保通讯正常。并确认役备设置项与帮助中耍求相同。5、检査“设备地址”与PLC设置是否一致6、适当延长“通讯等待时间”7、读取数据地址超范阳通讯状态为3采集数据校验错 误(包播应答数拯 不完整或校验错 谋两种情况)1、检查父设备串II校验位设置是否正确2、适当延长“通讯等待时间”3、设备斷电,重新上电,使初始化设备4、通讯电缆太长,做短距离测试5、现场干扰A人,避免周用环境干扰6、通讯信号变弱,使用冇源RS232/485模块通讯状态在0与非0 Z间跳变通讯不稳定或读取地址超范H;l1、同通讯状态为3的处理2、读取数据地址超范用(典型情况为,添加某通道后,导致通讯状态变罪0)通讯状态为0.数据不正确组态工程错误1、新建工程测试驱动2、检测通道是否连接变晨3、检测工程是否对数据进行处理通讯速度太慢通讯数据最过人 或采集周期设置 过长1、将“采集优化”属性设置为“1 优化”2、减小父设备及子设备的最小采集周期(绘小可设置为20ms)3、使用设备命令,减少实时采集的数据4、通过设备命令获取PLC延时,判断是否因PLC 响应时间过长而影响采集速度。通讯次数过女5、将数据放到连续的地址块中,提高块读效率6、将不同寄存器的数据放到同一寄心器连续的地 址块中,减少采集块数,提高采集效率9、特殊应用的开发本设备构件目前只实现部分通讯功能,如岛耍用作其它用途或本构件不能满足要求时,町门行进行开发,MCGS用户拆南中仃关丁开发设备构件的详细说明,也可以提出 其体的技术要求,由我们亲自为您定制。附表本驱动构件支持的寄存器及功能码说明如下寄存器读取功能码写入功能码功能码说明1区输入继电器0202读取输入状态0区输岀继电器01051501读取线圈状态05强制单个线圈15强制多个线圈3区输入寄存器0404读输入寄存器4区输出寄存器03061603读保持寄存器06预置单个寄存器16预置命个寄存器说明1.本驱动构件支持01、02、03、04、05、06、15、16等常用功能码,对于其它非数据 通讯用功能码暂不支持。2.以上功能码均以10进制标注。功能码15和16分别刈应16进制的OxOF和0 x10。3.“1区输入寄存器”和“3区输入寄存器”不支持写功能码。4.“0区输出继电器”在批量写入多个继电器时,使用15功能码。5.“4区输出寄存器”在双7(32位)数据写操作或批彊写入多个数据时,使用16功能 码。6.对只支持16功能码,而不支持06功能码写4区单个寄存器的设备,町以老遐使 用批缺写操作函数实现。例如耍用16功能码対4寄存器地址10进行单字写操作,可以用以卜设备命令实现 SetDevice(设备 0,6,”WnteP(4,10,WUB,l,Data00))。注意添加寄存器通道时,起始地址均为1,这是遵从Modbus协议的,即所谓的“协 议地址”,对于部分寄存器起始地址为0的设备,通道添加时,地址应加1处理。附录2数据类型表BTdd位(dd 范围00-15)BUB8位无符号二进制BB8位有符号二进制BD8位2位BCDWUB16位无符号二进制WB16位有符号二进制WD16位4位BCDDUB32位无符号二进制DB32位有符号二进制DD32位8位BCDDF32位浮点数STR字符串1)数据类型的第一个字母表示数据的长度,B表示是字节数据,W表示是字数据,D表 示是双字数据2)最后一个或两个字母表示数据类型、B表示二进制数,D表示BCD码,F表示浮点 数;3 )字符中二进制数中带U表示无符号数,不带U的表示仃符兮数4)字符串数据类型是专用J和MCGS “Modbus串I I数据转发设备”驱动构件配合 使用的,并且只能通过坷通道的方式來改变“Modbus出丨1数据转发设备”从设 备的值。字符串的增加如卜图所示设备展性设置二--设备叩基本属性I通道连接I设备调试I数据处理设备属性名设备属性值ud内部属性设置啜备內部属性站采集优化优化线帮助查看伏备在线帮助设备名称设备D设备注释莫迪康ModbusRTU初始工作状态1 启动最小采集周朋ms100设备地址1通讯等待时间200快速采集次数016位整数解码顺序0123Z位整数解码顺序0-1234Lj检查凶确认凶取消(Q帮助凹注意在使用字符串时,要保证主站和从站中增加的字符串通道完全一样,并且 写字符串时,长度尽量不要超过规定的字节数(汉字占两个字节,其余字符占一 个字节)例主站中的通道是4STR0012_20,那么从站中的通道也必须是4STR0012_20,并且写字符串的长度尽量不要超过20个字节。