首页 > 全部分类 > 技术问答 > 帖子内容

用永宏clink的md2模式一直收不到数据,感觉plc那边程序没写好,请问有大佬指点一下吗

联系人:16219333803995

电话/手机:联系客服

发布时间:2025-10-07 20:19

浏览:131次

我之前试着接收的时候好像只有rx亮,通讯参数应该没问题,不知道是不是通讯命令表格没写对?

上一条: ASD-A2-0221-F伺服无法模拟量控制转速 2025-10-07 20:01

下一条: NT31触摸屏启动后白屏 2025-10-07 22:47

明扬工控技术客服2025-10-07 20:39:37
答复内容:永宏(FATEK)C-LINK|MD2模式“只RX亮、收不到数据”一页式排查(HTML版)

你的现场描述


用永宏 C-LINK 的 MD2 模式一直收不到数据,只有 RX 指示灯亮,感觉 PLC 那边程序没写好。通讯参数看起来没问题,怀疑是 通讯命令表没写对。


结论(先看这3条):

  1. MD2=主站轮询模式:只有当你的设备“发出命令帧”时,对端才会回。只亮RX多半说明你没发帧,或你实际上处在从站状态
  2. “通讯参数一致”不等于“协议一致”。请先确认 对端到底是 C-LINK 还是 Modbus RTU。两者帧格式完全不同。
  3. 90% 的问题出在 命令表未启用/未下载、站号错、设备码与地址写法不符。按本文“黄金示例”写一条最小命令先通,再扩展。

一、开始前的三个判断(非常关键)

  1. 谁是主站? MD2 供主站使用。如果对端才是主站,你这端就不该用 MD2;应换从站/自由口/Modbus从站模式。
  2. 协议是什么? C-LINK ≠ Modbus RTU。请与对端确认协议与站号。若对端只支持 Modbus,请改用“Modbus 主站”。
  3. 指示灯含义
    • 只亮 RX:你在“听”,几乎没在“发”。主站应先发,正常应先看到 TX。
    • RX乱闪无数据:485无偏置/极性反/串扰,属于物理层问题。

二、硬件层 & 串口层快速自检(3分钟)

硬件(RS-485/232)

  • A/B 极性对、两端120Ω终端,母线仅一侧上偏置。
  • 屏蔽层单端接地,分支尽量短;长线先降波特率。
  • 用 USB-RS485 回环自测:TX↔RX 能否自收自发。

串口参数

  • 波特率/数据位/奇偶/停止位 完全一致(如 9600-8-E-1)。
  • 站号一致(主站命令表里的站号=对端站号)。
  • 超时先设 300–500ms,重试 2–3 次。

三、先判协议:C-LINK 还是 Modbus?

  1. 临时用串口工具发一帧 Modbus RTU 03(读保持寄存器)到对端:
    请求:01 03 00 00 00 01 CRClo CRChi
    期望响应:01 03 02 xx xx CRClo CRChi
    • 若有响应 → 对端是 Modbus:改用 Modbus 主站,别再折腾 MD2。
    • 若无响应 → 对端可能是 C-LINK 或站号/参数不对,继续看下文。

四、C-LINK(MD2)最小可行“黄金命令表”

下列字段名称因机型/软件略有差异,请按你的编程软件对应项填写;思路一致即可。

字段 示例值 说明
功能启用 命令表项必须勾选启用并已下载到PLC/模块
站号 1 与对端站号一致
命令类型 读数据(C-LINK 读指令) 选择“读”以便先看回包
设备码 D 示例读数据寄存器(按对端开放的区)
起始地址 0000 从地址 0 开始
长度 0010 读16字(按“字”或“字节”单位,依软件而定)
周期 100 ms 先短周期便于观察
超时/重试 300 ms / 2 连通性阶段先放宽
本机缓冲 R1000~ 回包落地到本PLC寄存器,在线监看

下载后,在线监看R1000~是否刷新:刷新=收到了回包;无刷新则看下一节排错。

五、命令表最常见 8 个错误

  1. 未启用/未下载:表格写了但没勾启用或没写入模块。
  2. 站号错:对端站号=2,你写了1。
  3. 设备码/地址格式错:如写了D0000,但对端开放的是R区;或地址以十六进制/十进制搞混。
  4. 长度单位错:软件按“字节”,你以为是“字”。
  5. 帧校验/BCC/CRC模式不符(旧固件易见)。
  6. TX线断/DE控制不当:半双工485需正确驱动收发方向。
  7. 周期太快:对端忙/缓冲满导致不回;先调慢周期。
  8. 混协议:你发 C-LINK,对端在等 Modbus(或相反)。

六、“只有 RX 亮”的三种典型含义

场景 含义 处理
你是从站,只有RX 主站在发你在听,但你不回(站号/帧/程序应答出错) 核对站号与协议;先做最小应答(哪怕回异常)验证链路
你是主站,只有RX 你其实没发帧;看到的是对端广播或总线噪声 抓包/示波确认TX是否真正发送;检查命令表启用与下载
RX乱闪无有效数据 485悬空/无偏置/串扰 加偏置与终端、缩短分支、先降波特率

七、若对端其实是 Modbus:改用 Modbus 主站更快

  1. 口模式改 Modbus Master (RTU),参数一致(例:9600-8-E-1、站号1)。
  2. 加一条读命令:功能码 03,地址 0x0000,长度按需。
  3. 抓包应看到:01 03 00 00 00 0A CRC→01 03 14 … CRC。

八、最小化连通流程(10–20分钟定位)

  1. USB-RS485 + 串口工具,单机自发自收,确认本端硬件OK。
  2. 对端用 Modbus 试探一帧(第 3 节)。有回应=Modbus;无回应再走 C-LINK。
  3. 在 PLC 端:命令表只保留一条“读16字”,周期100ms,超时300ms。
  4. 在线看R1000~是否刷新;不刷新就抓包看 TX 是否真的发,再按“第5节八条”逐项核对。
愿意的话现在就发我这些信息,我直接回你“能复制的命令表/帧”:
  • 你这端设备型号 & 口(RS-232/485),主站还是从站
  • 对端设备/协议(C-LINK or Modbus)及站号
  • 波特率/数据位/奇偶/停止位;
  • 你想读/写的寄存器类型与地址范围;
  • 一张抓包或示波截图(若有)。

对不起,请登录后再发表评论!

触屏端
扫一扫手机也能发信息
明扬工控商城-工控网-工控自动化真品,一站式专业服务!