1. 项目背景与核心价值
最近在工控圈子里流传着一个很有意思的开源项目——有人把三菱FX3U系列PLC的运行时逻辑完整移植到了STM32平台上。这意味着我们能用成本不到百元的STM32F407开发板,实现原本需要数千元日系PLC才能完成的工作。更让人惊喜的是,烧录固件后居然可以直接使用三菱官方的GX Works2编程软件编写梯形图程序!
这个项目的核心突破点在于:
- 完整复刻了FX3U的指令执行引擎
- 实现了与GX Works2的通信协议兼容
- 在Cortex-M4内核上高效运行PLC运行时系统
我手头正好有块STM32F407 Discovery板,实测烧录后通过USB转串口连接电脑,GX Works2能正确识别为"FX3U-16MT"设备。下面分享我的完整实验过程和关键发现。
需要模型API调用? 免费领10W Token,多模型网关一键接入 Claude、DeepSeek 等主流模型。
2. 硬件准备与环境搭建
2.1 所需硬件清单
- STM32F407开发板(核心板需带USB_OTG接口)
- USB转RS422/485转换器(推荐使用FT232芯片方案)
- 24V开关电源(给输出点供电)
- 输入输出测试电路(按钮、LED等)
注意:虽然FX3U原生使用RS422接口,但实际测试发现用普通USB转TTL串口(3.3V电平)也能通信,只是抗干扰能力会下降。
2.2 开发环境配置
- 安装GX Works2(建议Version 1.91以上)
- 准备STM32CubeProgrammer
- 下载开源固件(项目地址后文会给出)
- 接线示意图:
code复制STM32F407 外围电路 PA9(TX) ---- USB转串口RX PA10(RX) ---- USB转串口TX GND ---- 共地 PB0-PB7 ---- 输出负载(加光耦隔离) PC0-PC7 ---- 输入信号(接按钮)
3. 固件烧录与配置
3.1 源码结构解析
下载的固件包包含以下关键部分:
code复制/FW # 预编译好的hex文件
/Src
/plc_os # PLC运行时核心
/drivers # 硬件抽象层
/gx_port # GX Works2通信协议栈
/Tools
