返回主站|会员中心|保存桌面

雷诺尔综合服务商    

雷诺尔低压软启动,雷诺尔低压变频器,防爆电器,马达保护器,EPS应急电源

新闻分类
  • 暂无分类
联系方式
  • 联系人:吴经理
  • 电话:18576370666
站内搜索
 
首页 > 新闻中心 > FX3U用FX2N-232IF和RM3544电阻计通讯读取数据!
新闻中心
FX3U用FX2N-232IF和RM3544电阻计通讯读取数据!
发布时间:2025-09-24        浏览次数:0        返回列表

要实现三菱 FX3U PLC 通过 FX2N-232IF 模块与 RM3544 电阻计的通讯,需通过串口 FX 协议设置、硬件连接和 PLC 程序编写三个关键步骤。以下是详细实现方案:

一、硬件连接与参数匹配

1. 硬件接线(FX2N-232IF ↔ RM3544)

FX2N-232IF 模块的引脚定义(9 针 D-sub)与 RM3544 电阻计的串口接口需按以下方式连接:

FX2N-232IF 引脚功能RM3544 引脚功能
2(RXD)接收数据TXD发送数据
3(TXD)发送数据RXD接收数据
5(SG)信号地GND信号地

注:需使用交叉线(RXD-TXD 交叉连接),并确保屏蔽层单端接地,减少干扰。

2. 通讯参数统一

RM3544 电阻计与 FX2N-232IF 需设置相同的通讯参数(通过 RM3544 的面板或软件预设):

  • 波特率:9600bps(默认常用值,可修改为 19200 等)

  • 数据格式:8 位数据位,1 位停止位,无校验(8N1)

  • 协议:Modbus RTU(RM3544 默认支持 Modbus 协议)

二、FX2N-232IF 模块参数设置

通过 PLC 程序初始化模块,确保与 RM3544 参数一致。使用FROM/TO指令写入模块控制寄存器:

  • 模块编号:假设 FX2N-232IF 插在 FX3U 的扩展位置 0(根据实际安装位置调整)

  • 设置内容:波特率 9600,8N1,无流控

初始化程序示例(梯形图指令):

// FX3U与RM3544电阻计通讯程序

// 功能:初始化FX2N-232IF,发送Modbus指令读取电阻值并解析


// 初始化模块(首次上电执行)

LD     M8002               // 初始化脉冲

MOV    K1     M0           // 触发初始化


// 设置FX2N-232IF参数(模块编号0)

LD     M0

TO     K0      K0      H0000      K1  // 复位模块

TO     K0      K1      H0002      K1  // 波特率9600bps

TO     K0      K2      H0000      K1  // 数据格式8N1

RST    M0                           // 清除初始化标志


// 定时发送读取指令(每1秒读取一次)

LD     M8013               // 1秒脉冲

MOV    K1     M10          // 触发发送


// 配置Modbus发送帧(读取地址1,寄存器0x0000)

LD     M10

MOV    K8      D0          // 发送长度8字节

MOV    H01     D1          // 从机地址

MOV    H03     D2          // 功能码03

MOV    H00     D3          // 起始地址高

MOV    H00     D4          // 起始地址低

MOV    H00     D5          // 长度高

MOV    H01     D6          // 长度低

MOV    H840A   D7          // CRC校验码


// 执行发送接收

RS     K0      D1      D0      D11     D10     M11     M12

// K0:模块号; D1:发送首地址; D0:发送长度;

// D11:接收首地址; D10:接收长度; M11:接收完成; M12:错误


// 解析接收数据(成功接收时)

LD     M11

MOV    D13     D30         // 测量值高8位

MOV    D14     D31         // 测量值低8位

MUL    D30     K256        D32     // 高8位转换

ADD    D32     D31         D33     // 组合16位值(电阻值,单位需转换)

RST    M10                           // 清除发送标志

RST    M11                           // 清除接收标志


// 错误处理(通讯失败时)

LD     M12

MOV    K1      D50         // 错误代码存储

RST    M12                           // 清除错误标志

三、RM3544 数据读取(Modbus RTU 协议)

RM3544 作为 Modbus 从机,需通过读取保持寄存器指令(0x03) 获取测量值,步骤如下:

1. RM3544 的 Modbus 地址与寄存器定义

  • 从机地址:默认 1(可通过电阻计设置修改)

  • 测量值寄存器:假设为寄存器 0x0000(16 位,存储电阻测量值,需参考 RM3544 手册确认)

  • 数据格式:16 位二进制,单位 Ω,可能需要除以系数(如 100 表示 1.00Ω)

2. PLC 发送读取指令(Modbus RTU 帧)

发送帧结构(Hex):[从机地址][功能码][起始寄存器高][起始寄存器低][长度高][长度低][CRC校验高][CRC校验低]

示例:读取地址 1 的寄存器 0x0000,长度 1(1 个寄存器)

  • 发送帧:01 03 00 00 00 01 84 0A

    • 01:从机地址

    • 03:读取保持寄存器功能码

    • 00 00:起始寄存器地址

    • 00 01:读取长度

    • 84 0A:CRC 校验码(需计算)

3. PLC 程序实现(使用 RS 指令)

通过 FX3U 的RS指令(串行数据发送接收)完成通讯,需定义发送 / 接收缓冲区:

plaintext

// 寄存器定义
D0: 发送数据长度(字节数)
D1-D7: 发送缓冲区(存储Modbus指令帧)
D10: 接收数据长度(字节数)
D11-D20: 接收缓冲区(存储RM3544返回数据)
M10: 发送请求标志(ON时触发发送)
M11: 接收完成标志(模块置位)

// 发送缓冲区设置
MOV K8 D0                // 发送8字节(Modbus帧长度)
MOV H01 D1               // 从机地址=1
MOV H03 D2               // 功能码=03
MOV H00 D3               // 起始寄存器高字节
MOV H00 D4               // 起始寄存器低字节
MOV H00 D5               // 长度高字节
MOV H01 D6               // 长度低字节
MOV H840A D7             // CRC校验码(高低字节)

// RS指令配置(端口0,发送缓冲区D1,接收缓冲区D11)
M10   ---[RS K0 D1 D0 D11 D10 M11 M12]
      // K0:模块编号0;D1:发送首地址;D0:发送长度;
      // D11:接收首地址;D10:接收长度;M11:接收完成;M12:错误标志

// 接收数据解析(当M11=ON时)
M11   ---+----[MOV D13 D30]  // 接收帧中第3-4字节为测量值(D13=高8位,D14=低8位)
         |
         +----[MOV D14 D31]
         |
         +----[MUL D30 K256 D32]  // 组合为16位数据:(高8位×256)+低8位
         |
         +----[ADD D32 D31 D33]   // D33=最终测量值(需根据手册转换单位)

四、关键问题与调试技巧

1. 通讯无响应

  • 检查接线:确保 RXD/TXD 交叉连接,SG 共地

  • 验证参数:用串口助手发送相同指令,确认 RM3544 是否返回数据

  • 校验 CRC:使用 Modbus CRC 计算器验证发送帧的校验码是否正确

2. 数据解析错误

  • 确认寄存器地址:参考 RM3544 手册,确保读取的是正确的测量值寄存器

  • 处理单位转换:若返回值为 16 位二进制,需确认是否需要除以系数(如 D33=1234 → 12.34Ω)

3. 干扰导致通讯不稳定

  • 缩短通讯线长度(建议<10 米)

  • 通讯线采用屏蔽双绞线,屏蔽层单端接地(PLC 侧)

  • 在程序中增加重试机制(如 3 次发送失败则报警)

总结

实现流程为:硬件交叉接线→统一通讯参数→发送 Modbus 读取指令→解析返回数据。核心是确保 Modbus 帧格式正确(尤其是 CRC 校验)和数据解析逻辑匹配 RM3544 的寄存器定义。调试时可先用串口助手验证通讯,再移植到 PLC 程序中,提高效率。

收缩
  • QQ咨询

  • 电话咨询

  • 18576370666
  • 添加微信客服