主题
2.4 MCGS 触摸屏连接 PLC
问题场景
现场普遍使用 MCGS 触摸屏(昆仑通态)。需要在触摸屏上通过按钮控制 LPPLC 设备的输出点,并显示 D 寄存器中的实时数据。
做完之后能得到什么
MCGS 触摸屏画面上有按钮和数值框:点一下就能置位 Y0,往 D0 写入 888 并在屏上看到回读值。
需要准备
- MCGS 嵌入版组态软件(本文用 7.7)
- LPPLC 设备一台,已接入局域网(见 1.4 从 FX3U 串口迁移到网口/WIFI)
- 网线
预计耗时:25 分钟
为什么用网口而不是串口?
MCGS 走网口 Modbus TCP 比 RS485 快得多,也不用纠结波特率和终端电阻。本文以网口 Modbus TCP 为主线。 串口方案(编程口协议 / MC 协议)见文末的其它连接方式。
动手做
第 1 步 · 打开 MCGS 组态软件

第 2 步 · 新建工程



第 3 步 · 添加网口父设备和 Modbus TCP 子设备
打开设备工具箱,增加"通用 TCP/IP 父设备",并在其下添加 Modbus TCP 子设备。


第 4 步 · 在父设备属性里填 PLC 地址和端口
远程端口号填 502(Modbus TCP 标准端口),远程 IP 填 PLC 的实际 IP。

| 属性 | 示例值 |
|---|---|
| 网络类型 | 1 - TCP |
| 服务器/客户设置 | 0 - 客户 |
| 本地 IP 地址 | 电脑/触摸屏 IP,如 192.168.0.200 |
| 远程 IP 地址 | PLC 的 IP,如 192.168.0.150 |
| 远程端口号 | 502 |
| 最小采集周期(ms) | 1000 |
第 5 步 · 打开子设备,增加两个通道
一个通道对应 Y0,一个对应 D0。



Modbus 地址是从 1 开始的
4x1 代表 D0,0x1 代表 Y0。不是从 0 开始!这是最容易读不到数据的原因。
第 6 步 · 新建画面,放入两个标签

第 7 步 · 把第一个标签组态到 Y0



第 8 步 · 把第二个标签组态到 D0



第 9 步 · 模拟运行工程


第 10 步 · 验证:置位 Y0,写入 D0 = 888


验证成功
- 触摸屏上置位
Y0→ PLC 对应输出点指示灯亮 - 往
D0写入888→ 屏上回读到888
注意事项
WARNING
1. 大小端必须转换(最隐蔽的一项)
MCGS 嵌入版基于 WinCE、通用版/网络版基于 Windows NT,都是小端模式;而所有 PLC 是大端模式。所以驱动里要做大小端转换:32 位浮点数的解码顺序要由 0-1234 改为 2-3412。

2. Modbus 地址从 1 开始:4x1 = D0,0x1 = Y0,对照 Modbus 地址表填写
3. 端口号写错:Modbus TCP 固定 502,不是 3000(3000 是本地端口)
4. IP 网段不一致:PLC、触摸屏、电脑必须在同一网段
5. 采集周期太快:建议不低于 500ms,过快会占满 PLC 通信
其它连接方式
还有这些连接方案的完整截图步骤,需要时可参考 PLC 编程 · 组态软件触摸屏连接总览:
- MCGS 嵌入版 · 网口 FX3_ETHERNET(MC 协议):需先在 PLC 里把一个网口连接切换到
FX3U ENET MC TCP模式(步骤) - MCGS 嵌入版 · 串口编程口协议:PLC 串口默认即为编程口协议,无需设定,MCGS 里选
FX3UCPU(步骤) - MCGS 嵌入版 · 串口 MC 协议:PLC 串口设为 MC 协议,MCGS 选「三菱_FX系列串口」(步骤)
- MCGS 通用版 6.2 · 网口 Modbus
- 组态王 6.53 / 6.55、三菱 GS2107(GT Designer3)、威纶通 EasyBuilder8000、VT Designer / OP320
MCGS 驱动里找不到 FX3U?
选 FX2N 可以兼容,只是 FX3U 独有的元件访问不到。组态王 6.53 同理。
举一反三
- 同样方式适配威纶通、组态王、三菱 GS 系列等(都支持 Modbus TCP)
- 多台 PLC 用不同 IP,一屏监控整条产线
- 想让 GX Works2 也连上?看 2.3 用 GX Works2 远程编辑设备