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

依必安派特风机中国区域服务商    

离心风机,紧凑型风机,鼓风机,轴流风机

新闻分类
  • 暂无分类
站内搜索
 
友情链接
  • 暂无链接
首页 > 新闻中心 > 2个FX3U互刷数据RS指令!
新闻中心
2个FX3U互刷数据RS指令!
发布时间:2025-10-17        浏览次数:3        返回列表

两个三菱 FX3U PLC 通过 RS 指令实现 RS 指令是三菱 PLC 中用于串行通信的基本指令,可实现两个 FX3U 之间的异步串行数据交换(如 RS-232C 或 RS-485 接口)。以下是具体实现步骤,包括硬件连接、参数设置和程序编写:

一、硬件准备与连接

  1. 通信接口

    • 若使用 RS-232C:需 FX3U-232-BD 通信板(或 FX3U-CF-ADP+CF-232),通过交叉串口线连接两个 PLC 的 RS-232C 接口;

    • 若使用 RS-485:需 FX3U-485-BD 通信板(支持差分信号,抗干扰性强),通过双绞线连接(A-A、B-B、屏蔽层接地)。

  2. 接线示意图

    • RS-485 连接(推荐,适合远距离):PLC1 的 485 接口(A)→ PLC2 的 485 接口(A)PLC1 的 485 接口(B)→ PLC2 的 485 接口(B)两端屏蔽层连接后单端接地(避免共模干扰)。

二、通信参数设置(双方必须一致)

通过 PLC 的D8120寄存器设置通信参数(断电重启后生效):

参数设定值(示例)说明
波特率K9600可选:2400、4800、9600、19200 等
数据长度K88 位数据
停止位K11 位停止位
校验方式K2偶校验(0 = 无校验,1 = 奇校验,2 = 偶校验)
协议模式K0无协议(RS 指令自定义格式)

设置程序(双方均需执行)

ladder

// 初始化通信参数(仅上电执行一次)
LD     M8002          // 初始脉冲
MOV    K9600          D8120  // 波特率9600,数据长8,停止位1,偶校验,无协议

三、RS 指令格式与功能

RS 指令用于发送 / 接收数据,格式如下:

plaintext

RS D100 D200 D300 M0
  • D100:发送数据首地址(存放待发送的数据);

  • D200:接收数据首地址(存放接收到的数据);

  • D300:控制字(D300 = 发送长度,D301 = 接收长度);

  • M0:通信状态标志(M0=1:发送请求;M1=1:发送完成;M2=1:接收完成)。

四、互刷数据程序设计(示例:双向交换 10 字节数据)

假设需求:

  • PLC1 发送 D0~D4(5 个寄存器,10 字节)到 PLC2;

  • PLC2 接收后,返回 D10~D14(5 个寄存器,10 字节)到 PLC1。

PLC1 程序(发送 + 接收)

ladder

// 1. 发送数据到PLC2(每1秒触发一次)
LD     M8013          // 1秒脉冲
MOV    K10            D300   // 发送长度10字节(5个寄存器)
MOV    D0             D100   // 待发送数据:D0→D100,D1→D101...
MOV    D1             D101
MOV    D2             D102
MOV    D3             D103
MOV    D4             D104
SET    M0             // 触发发送请求

// 2. 发送完成后,等待接收PLC2返回的数据
LD     M1             // 发送完成标志(M1由RS指令自动置1)
RST    M0             // 清除发送请求
MOV    K10            D301   // 接收长度10字节
SET    M20            // 允许接收(自定义标志)

// 3. 接收完成后,将数据存入D50~D54
LD     M2             // 接收完成标志(M2由RS指令自动置1)
RST    M20            // 清除接收允许
MOV    D200           D50   // 接收数据:D200→D50,D201→D51...
MOV    D201           D51
MOV    D202           D52
MOV    D203           D53
MOV    D204           D54
RST    M2             // 清除接收标志

// 4. 调用RS指令(放在程序末尾,持续扫描)
RS     D100           D200   D300 M0

PLC2 程序(接收 + 返回)

ladder

// 1. 等待接收PLC1的数据(持续允许接收)
LD     M8000          // 运行标志
MOV    K10            D301   // 接收长度10字节
SET    M20            // 允许接收

// 2. 接收完成后,将数据存入D0~D4,并准备返回数据
LD     M2             // 接收完成标志
RST    M20            // 清除接收允许
MOV    D200           D0    // 接收PLC1的数据:D200→D0...
MOV    D201           D1
MOV    D202           D2
MOV    D203           D3
MOV    D204           D4
RST    M2             // 清除接收标志

// 3. 发送返回数据到PLC1(接收完成后立即发送)
MOV    K10            D300   // 发送长度10字节
MOV    D10            D100   // 待返回数据:D10→D100...
MOV    D11            D101
MOV    D12            D102
MOV    D13            D103
MOV    D14            D104
SET    M0             // 触发发送请求

// 4. 发送完成后清除标志
LD     M1             // 发送完成标志
RST    M0             // 清除发送请求

// 5. 调用RS指令(放在程序末尾,持续扫描)
RS     D100           D200   D300 M0

五、关键说明与调试

  1. 数据长度:RS 指令中 “字节数”= 寄存器数 ×2(1 个 16 位寄存器 = 2 字节),示例中 5 个寄存器对应 10 字节。

  2. 状态标志

    • M0:发送请求(置 1 触发发送,发送完成后自动复位);

    • M1:发送完成(数据发送结束后自动置 1,需手动复位);

    • M2:接收完成(接收到指定长度数据后自动置 1,需手动复位)。

  3. 抗干扰处理

    • 可在数据帧中加入校验位(如校验和),接收端验证后再处理数据;

    • 增加发送间隔(如用 T0 延时),避免数据冲突。

  4. 调试工具

    • 用 FX-PCS/WIN 或 GX Works2 监控 D 寄存器,观察发送 / 接收数据是否正确;

    • 若通信失败,检查参数(D8120)是否一致、接线是否正确、波特率是否匹配。

通过以上方式,两个 FX3U 可通过 RS 指令实现双向数据互刷,适用于中小型设备间的简单数据交换(如生产线工位协同、数据备份等)。若需更高可靠性,可考虑使用 CC-link 等工业总线。

收缩
  • QQ咨询

  • 电话咨询

  • 18576370666
  • 添加微信客服