codesys modbustcp-CODESYS资源下载区-酷德网 - CoDeSys软件教程下载,CoDeSys工控资讯门户 

酷德网

HSC6490-cn中国制造,中国芯~
查看: 1120|回复: 0

codesys modbustcp

[复制链接]
  • TA的每日心情
    开心
    2017-11-20 22:07
  • 签到天数: 2 天

    [LV.1]初来乍到

    发表于 2024-8-9 23:26:34 | 显示全部楼层 |阅读模式
    我们都知道在以太网上可以使用modbusTCP来进行通讯。以太网通讯需要有服务器和客户端。一般的PLC是在控制器上建立一个服务器器。像上位机及高一层的设备可以连接PLC,最常用的是用modbusTCP的功能4读取输入寄存器的内容,用功能3读取保持寄存器的内容。也可以写PLC的内容。但是,在codesys当中的配置和常规的想法不一样,可能造成混淆。

    codesys建立服务器
    在控制器侧建立服务器按常规想法是建立一个modbus_TCP_master. 但在实际应用中,我们需要在设备树上添加modbus_TCP_slave_device. 这是在建立服务器最容易混淆的部分。正确的做法如下:


    30043609_665791b99216936204.jpg


    各部分设置如下。

    通用设置
    总线从站端口:常规设置为502.
    保持寄存器:这里可以设置要使用的保持寄存器的多少,占用的地址为%IW
    输入寄存器:这里是输入寄存器的地址的多少,占用的地址为%QW。
    设置是否有要设置输入和输出离散量的地址。
    串口网关
    在这里是否使用串口网关。

    modbus_TCP_slave_device的映射
    这一部分设置于控制器中的地址的映射。

    将设置的保持寄存器和输入寄存器于具体的地址关联起来。这里我们设定了10各保持寄存器和10各输入寄存器。映射关系在这里设置。


    30043609_665791b9af62c87426.jpg


    下面是modbus_TCP_Slave_Device IEC对象,状态和信息项没有设置的部分。

    服务器功能实验
    在GVL全局变量库中建立一个变量:

    [AppleScript] 纯文本查看 复制代码
    VAR_GLOBAL
    	IO_QW0 AT %QW0 : INT;
    END_VAR


    增加一段数据增加的程序,然后下载运行程序。


    30043609_665791b9c425891409.jpg


    在外部计算机上运行多功能调试助手


    30043609_665791b9e287731585.jpg


    选择端口为502,连接服务器。显示连接服务器成功。在发送区输入modbusTCP读取输入寄存器的内容,我们读取10个输入寄存器的内容。命令16进制码如下:

    00 01 00 00 00 06 05 04 03 E8 00 0A

    返回帧如下,分别是两次的返回帧:

    返回帧1:

    00 01 00 00 00 17 05 04 14 21 03 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00

    返回帧2:

    00 01 00 00 00 17 05 04 14 21 DA 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00

    其中的字节9和字节10是程序中的输入寄存器1的内容是在程序中不断递增的。

    总结
    使用modbusTCP可以方便的实现外部于codesys控制器的的数据通讯。但在配置时容易产生混淆,我认为codesys是以外部设备的角度来看服务器和从站设备。
    在ModbusTCP通讯中应当注意,每个报文的最大长度应该是有限制的,应该每次读取的数量在254个字节,127个寄存器的内容,如果超出这个范围会失败。在这里记录下来供大家参考。



    +10
    不赞一个?
    打赏鼓励一下!
    回复

    使用道具 举报

    您需要登录后才可以回帖 登录 | 立即注册 新浪微博登陆

    本版积分规则

    
    顶部qrcode底部
    关注酷德网订阅号,获取更多资讯!

    QQ|Archiver|手机版|小黑屋|酷德论坛 ( 苏ICP备16065247号-1 )|网站地图

    GMT+8, 2026-11-10 20:51 , Processed in 0.149068 second(s), 50 queries .

    酷德网

    © 2001-2013 Hicodesys. 技术支持 by 酷德网

    快速回复 返回顶部 返回列表