新闻中心

EEPW首页 > 嵌入式系统 > 设计应用 > 基于linux 的多功能网关的设

基于linux 的多功能网关的设

作者: 时间:2013-11-30 来源:网络 收藏


  4 软件设计

  4.1 modbus tcp 与modbus rtu 协议转换

  由上可知,modbus tcp 与modbus rtu 的协议转换的核心即为数据帧的解封装与封装。 Modbus 最初在串行链路上的实现(最大RS485ADU=256 字节)限制了Modbus PDU 的长度。 因此,对串行链路通信来说,Modbus PDU=256-服务器地址(1 字节)-CRC(2 字节)=253字节。从而:RS232 / RS485 ADU = 253 字节+服务器地址(1 字节) + CRC (2 字节)= 256 字节。 TCP Modbus ADU = 253 字节+ MBAP (7 字节) = 260 字节。如图3 所示为modbus RTU 为 master 时的软件流程图,部分代码摘录如下:








  4.2 modbus tcp 与自定义串口协议转换

  自定义串口协议与 modbus rtu 类似,但由于其协议为自定义的,导致ADU 的格式并不 固定,这就需要定制该函数。本文目前只针对单一设备的情况,因此采取将串口数据帧直接 作为modbus tcp 的PDU,而MBAP 采用固定格式处理,完成了对单一串口单台设备连接的 透明处理。

  5 结束语

  Frenic-Mini 为富士的一款变频器,支持简易的modbus 的协议。本设计利用Frenic-mini 连接三相异步电机,采用modbus rtu 与moxa 7402-LX 通信,成功地实现了远程变频器停启 及频率读取。如下图4 所示,为测试连接图。

linux操作系统文章专题:linux操作系统详解(linux不再难懂)

tcp/ip相关文章:tcp/ip是什么



上一页 1 2 下一页

评论


相关推荐

技术专区

关闭