一句话结论:开源的软PLC运行时,符合IEC61131-3标准,支持在普通PC/树莓派上运行PLC程序,自带仿真和Web监控,是学习PLC和低成本控制的首选。
OpenPLC
开源 完全免费开源(GPL) 开源软PLCPLC仿真IEC61131-3教育
★★★☆☆
综合 3.7 / 5
多维评分
| 易用性 | ★★★☆☆ 3.0 |
| 稳定性 | ★★★★☆ 4.0 |
| 性能 | ★★★★☆ 4.0 |
| 生态 | ★★★☆☆ 3.0 |
| 性价比 | ★★★★★ 5.0 |
| 国产化 | ★★★☆☆ 3.0 |
技术属性
| 运行平台 | Windows、Linux、macOS、ARM嵌入式 |
|---|---|
| 开发语言 | C/C++、Python |
| 支持协议 | Modbus TCP、Modbus RTU、DNP3、EtherNet/IP |
| 授权方式 | 开源(完全免费开源(GPL)) |
适用场景
- PLC学习与实验
- 低成本控制方案
- 软PLC替代硬件
- Modbus设备控制
- 教育科研
不适用场景
- 高实时性运动控制
- 需要原厂技术支持的商业项目
- 复杂大型PLC程序
- 安全相关控制
它是什么
OpenPLC 是一个完全开源的软 PLC 项目,符合 IEC 61131-3 标准,支持 LD(梯形图)、FBD(功能块)、ST(结构化文本)等编程语言。它可以在普通 PC、树莓派、Linux 设备上运行,把通用计算机变成一个 PLC,自带 Web 监控界面和 Modbus 通信能力。
核心能力
- 完全开源免费:GPL 协议,可自由使用、修改、部署,无授权费。
- IEC 61131-3 标准:支持梯形图、功能块图、结构化文本、指令表、顺序功能图,与主流 PLC 编程思路一致。
- 跨平台:Windows、Linux、macOS、树莓派均可运行,可部署在嵌入式设备上做实际控制。
- 自带 HMI 监控:Web 界面可查看变量状态、强制变量、查看运行日志。
- Modbus 通信:支持 Modbus TCP/RTU 主从站,可连接真实 IO 模块和仪表。
- 配套 OpenPLC Editor:图形化编程环境,基于 Matiec 编译器,可直接编译下载到 OpenPLC Runtime。
使用要点(实战经验)
- 学习 PLC 的最佳入口:不用买硬件,电脑上装 OpenPLC Editor + Runtime 就能写程序、仿真、监控,零成本入门。
- 树莓派 + OpenPLC 做实际控制:在树莓派上运行 OpenPLC,通过 Modbus 模块接真实 IO,可做低成本小型控制系统。
- 实时性有限:软 PLC 运行在通用操作系统上,扫描周期受系统负载影响,不适合高实时性运动控制。
- 与 Arduino 结合:OpenPLC 支持通过 USB 连接 Arduino 作为远程 IO,适合实验和原型验证。
常见问题 FAQ
和商业 PLC 比差在哪?
OpenPLC 是软 PLC,运行在通用 OS 上,实时性和可靠性不如硬件 PLC;但在学习、原型、低成本非关键控制场景,性价比极高。
能用来做真实项目吗?
非关键、可停机的小型控制项目可以用;涉及安全、连续生产、高实时性的场景建议用硬件 PLC。
中文资料多吗?
中文资料相对有限,但 IEC 61131-3 标准通用,学会后迁移到商业 PLC 很容易。