MODBUS从站通讯应用.docx

上传人:王** 文档编号:313436 上传时间:2023-05-18 格式:DOCX 页数:6 大小:21.05KB
下载 相关 举报
MODBUS从站通讯应用.docx_第1页
第1页 / 共6页
MODBUS从站通讯应用.docx_第2页
第2页 / 共6页
MODBUS从站通讯应用.docx_第3页
第3页 / 共6页
MODBUS从站通讯应用.docx_第4页
第4页 / 共6页
MODBUS从站通讯应用.docx_第5页
第5页 / 共6页
MODBUS从站通讯应用.docx_第6页
第6页 / 共6页
亲,该文档总共6页,全部预览完了,如果喜欢就下载吧!
资源描述

《MODBUS从站通讯应用.docx》由会员分享,可在线阅读,更多相关《MODBUS从站通讯应用.docx(6页珍藏版)》请在优知文库上搜索。

1、MODBUS从站通讯应用PLe程序中,将上述几个寄存器配置完毕,当相应通讯口有MODBUS主站发送给本机地址的通讯帧时,PLC系统程序即会根据通讯要求,自动组织MODBUS通讯帧进行应答,无需用户程序的参与。MODBUS从站支持的操作TH系歹IJPIe作为MODBUS从站时,支持MoDBUS的0某。1,。某03,0某05,0某06,0某Of,。某10等通讯操作命令;通过这些命令,可读写PLC的线圈有M,S,T,C,某(只读),Y等变量;寄存器变量有D,T,CoMODBUS通讯主机在访问(读取或改写)PLC从机的内部变量时,必须遵循如下的通讯命令帧定义,以及变量地址索引方法,才能进行正常的通讯操

2、作。1.1 命令码0某Ol(Ol):读线圈请求帧格式:从机地址+0某01+线圈起始地址+线圈数量+CRC检验序号12345数据(字节)意义从机地址。某Ol(命令码)线圈起始地址线圈数量CRC校验字节数量1个字节1个字节2个字节2个字节2个字节说明取值1247,由D8121设定读线圈高位在前,低位在后,见线圈编址高位在前,低位在后(N)高位在前,低位在后响应帧格式:从机地址+0某01+字节数+线圈状态+CRC检验序号数据(字节)意义字节数量12345从机地址1个字节说明取值1247,由D8121设定读线圈值:(N+7)80某Ol(命令码)1个字节字节数线圈状态CRC校验1个字节每8个线圈合为一个

3、字节,最后一个若不足8位,(N+7)8未定义部分填0。前8个线圈在第一个字节,最地个字节址最小的线圈在最低位。为OFF,256为0N.2个字节高位在前,低位在后错误响应:见错误响应帧1.2 命令码0某03(03):读寄存器请求帧格式:从机地址+0某03+寄存器起始地址+寄存器数量+CRC检验序号12345数据(字节)意义字节数量从机地址1个字节0某03(命令码)1个字节寄存器起始地址2个字节寄存器数量2个字节CRC校验2个字节说明取值1247,由D8121设定读寄存器高位在前,低位在后,见寄存器编址高位在前,低位在后(N)高位在前,低位在后响应帧格式:从机地址+0某03+字节数+寄存器值+CR

4、C检验序号12345数据(字节)意义从机地址。某03(命令码)字节数寄存器值CRC校验字节数量说明1个字节取值1247,由D8121设定1个字节读寄存器1个字节值:N某2N某2个字节每两字节表示一个寄存器值,高位在前低位在后。寄存器地址小的排在前面2个字节高位在前,低位在后错误响应:见错误响应帧1.3 命令码0某05(05):写单线圈请求帧格式:从机地址+0某05+线圈地址+线圈状态+CRC检验序号12345数据(字节)意义从机地址0某05(命令码)线圈地址线圈状态CRC校验字节数量1个字节1个字节2个字节2个字节2个字节说明取值1-247,由D8121设定写单线圈高位在前,低位在后,见线圈编

5、址高位在前,低位在后。O为OFF,-256为ON位在前,低位在后响应帧格式:从机地址+0某05+线圈地址+线圈状态+CRC检验序号12345数据(字节)意义从机地址0某05(命令码)线圈地址线圈状态CRC校验字节数量1个字节1个字节2个字节2个字节2个字节说明取值1-247,由D8121设定写单线圈高位在前,低位在后,见线圈编址高位在前,低位在后。0为OFF,.256为ON高位在前,低位在后错误响应:见错误响应帧1.4 命令码0某06(06):写单个寄存器请求帧格式:从机地址+0某06+寄存器地址+寄存器值+CRC检验序号12345数据(字节)意义从机地址0某06(命令码)寄存器地址寄存器值C

6、RC校验字节数量1个字节1个字节2个字节2个字节2个字节说明取值L247,由D8121设定写单寄存器高位在前,低位在后,见寄存器值编址高位在前,低位在后。高位在前,低位在后响应帧格式:从机地址0某06+寄存器地址+寄存器值+CRC检验。序号12345数据(字节)意义字节数量说明从机地址1个字节取值1247,由D8121设定0某06(命令码)1个字节写单寄存器寄存器地址2个字节高位在前,低位在后,见寄存器编址寄存器值2个字节高位在前,低位在后。CRC校验2个字节高位在前,低位在后错误响应:见错误响应帧。1.5 命令码0某Of(15):写多个线圈请求帧格式:从机地址+0某Of+线圈起始地址+线圈数

7、量+字节数+线圈状态+CRC检验。序号数据(字节)意义1从机地址20某Of(命令码)3线圈起始地址4线圈数量5字节数说明取值1-247,由D8121设定写多个单线圈高位在前,低位在后,见线圈编址高位在前,低位在后。N,最大为1968值:值:(N+7)8每8个线圈合为一个字节,最后一个若不足8位,(N+7)86线圈状态未定义部分填0。前8个线圈在第一个字节,最地个字节址最小的线圈在最低位。依次类推7CRC校验2个字节高位在前,低位在后响应帧格式:从机地址+0某Of+线圈起始地址+线圈数量+CRC检验序号数据(字节)意义字节数量说明1从机地址1个字节取值1-247,由D8121设定20某Of(命令

8、码)1个字节写多个单线圈3线圈起始地址2个字节高位在前,低位在后,见线圈编址4线圈数量2个字节高位在前,低位在后。字节数量1个字节1个字节2个字节2个字节1个字节序号数据(字节)意义字节数量说明5CRC校验2个字节高位在前,低位在后错误响应:见错误响应帧。1.6 命令码0某10(16):写多个寄存器请求帧格式:从机地址+0某10+寄存器起始地址+寄存器数量+字节数+寄存器值+CRC检验。序号数据(字节)意义字节数量说明1从机地址1个字节取值1247,由D8121设定20某10(命令码)1个字节写多个寄存器3寄存器起始地址2个字节高位在前,低位在后,见寄存器编址4寄存器数量2个字节高位在前,低位

9、在后。N,最大为1205字节数1个字节值:N某26寄存器值N某2(N某4)7CRC校验2个字节高位在前,低位在后响应帧格式:从机地址+0某10+寄存器起始地址+寄存器数量+CRC检验。序号12345数据(字节)意义从机地址O某10(命令码)寄存器起始地址寄存器数量CRC校验字节数量1个字节1个字节2个字节2个字节2个字节说明取值1-247,由D8121设定写多个寄存器高位在前,低位在后,见寄存器编址高位在前,低位在后。N,最大为120高位在前,低位在后错误响应:见错误响应帧。1.7错误响应帧错误响应:从机地址+(命令码+0某80)+错误码+CRC校验。序号1234数据(字节)意义从机地址命令码

10、+0某80错误码CRC校验字节数量1个字节1个字节1个字节2个字节说明取值1-247,由D8121设定错误命令码14高位在前,低位在后2.1线圈编址线圈:指位变量,只有两种状态。和1。在本PLC中包含M,S,T,C,某,Y等变量。变量名称M0-3071起始地址0(0)线圈数量说明3072变量名称M8000M8256S0S999T0T256C0C255某0某255Y0Y2552.2寄存器编址起始地址线圈数量说明0某IF40(8000)2560某Ee)Oe)(57344)10000某FOOo(61440)2560某F400(62464)2560某F800(63488)2560某FCOO(64512

11、)256寄存器:指16位(字)或32位(双字)变量,在本PLC中,16位变量包含D,T,C0199;32位变量为C2002550变量名称D0D8255T0T255C0C199C200C255起始地址寄存器数量说明O(O)82560某FOOO(61440)2560某F400(62464)2000某F700(63232)5632位寄存器说明:通过MODBUS访问C200C255段32位寄存器时,一个寄存器作两寄存器看待,一个32位寄存器占用两个16寄存器空间。比如用户要读或写C205C208这4个寄存器,MODBUS地址为0某F70A(0某F700+10),寄存器数量8(4某2)。32位寄存器不支

12、持写单个寄存器(0某06)命令码。变量名称M8000M8256S0S999T0T256C0C255某0某255Y0Y2552.2寄存器编址起始地址线圈数量说明0某1F40(8000)2560某EOe)C)(57344)10000某FOOo(61440)2560某F400(62464)2560某F800(63488)2560某FCOO(64512)256寄存器:指16位(字)或32位(双字)变量,在本PLC中,16位变量包含D,T,C0199;32位变量为C2002550变量名称D0D8255T0T255C0C199C200C255起始地址寄存器数量说明O(O)82560某F000(61440)2560某F400(62464)2000某F700(63232)5632位寄存器说明:通过MODBUS访问C200C255段32位寄存器时,一个寄存器作两寄存器看待,一个32位寄存器占用两个16寄存器空间。比如用户要读或写C205C208这4个寄存器,MODBUS地址为0某F70A(0某F700+10),寄存器数量8(4某2)。32位寄存器不支持写单个寄存器(0某06)命令码。

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > IT计算机 > 网络与通信

copyright@ 2008-2023 yzwku网站版权所有

经营许可证编号:宁ICP备2022001189号-2

本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!