我们这几期都在介绍SoftPLC软PLC相关的内容,当然,我们可以通过CODESYS平台并且购买相关授权就可以开发这类型的PLC了。关于具体费用可以参考:CODESYS免费吗?
除了CODESYS,那么还有没有一些开源免费的PLC资源可以供大家学习和参考呢?
Beremiz
Beremiz 是一个用于机器自动化集成开发环境。它是免费软件,符合 IEC-61131 标准等其他标准。
它依赖于开放标准,使其独立于目标设备,并允许将任何处理器转换为 PLC。Beremiz 包括创建 HMI 的工具,以及将您的 PLC 程序连接到现有监控、数据库或现场总线。
- 核心架构:
- 分为开发环境(IDE)和运行时两部分。IDE(Beremiz.py)运行于用户计算机,支持IEC 61131-3标准的五种语言(梯形图、结构化文本等),将程序编译为C代码,再通过GCC生成机器码。
- 运行时(Beremiz_service.py)基于Python或C实现,负责执行程序并与I/O设备通信,支持Linux/Windows/macOS。
- 关键特性:
- 多协议支持:集成ModBus、EtherCAT、CANopen、OPC UA等工业总线协议。
- HMI工具:内置SVGUI工具,可基于SVG构建人机界面。
- 跨平台编译:通过MatIEC编译器将IEC代码转为C语言,适配不同硬件(如Cortex-M微控制器)。
- 适用场景:机械自动化、复杂控制逻辑开发及教学研究。
- 官网:https://beremiz.org/
OpenPLC
OpenPLC 是一个基于易于使用的软件的开源可编程逻辑控制器。它是第一个全功能的标准开源 PLC,无论是软件还是硬件。OpenPLC 项目根据 IEC 61131-3 标准创建,该标准定义了 PLC 的基本软件架构和编程语言。
- 核心架构:
- 包含运行时Runtime(执行程序)、编辑器Editor(开发程序)和HMI构建器(ScadaBR)三部分。
- 运行时支持Linux/Windows,通过Modbus/TCP与ScadaBR通信,实现Web端监控。
- 关键特性:
- 轻量化设计:资源占用低,适合嵌入式设备和物联网边缘节点。
- 安全研究友好:广泛用于工业控制系统(ICS)网络安全攻防演练。
- 适用场景:家庭自动化、SCADA系统集成及低成本工业控制器。
- 平台支持:目前,OpenPLC Runtime 正式支持以下平台:
- Arduino Uno / Nano / Leonardo / Micro
- Arduino Mega / Due
- Arduino Nano Every / IoT / BLE
- Arduino RB2040 Connect
- Arduino Mkr / Zero / WiFi
- Arduino Pro (Machine Control and EDGE)
Arduino Pro(机器控制和 EDGE)
- Controllino Maxi / Automation / Mega / Mini
Controllino Maxi / 自动化 / Mega / Mini
- Productivity Open P1AM 产品开放 P1AM
- ESP8266 (nodemcu)
- ESP32
- Raspberry Pi 2 / 3 / 4
- PiXtend
- UniPi Industrial Platform
UniPi 工业平台
- Neuron PLC 神经 PLC
- FreeWave Zumlink
- FreeWave ZumIQ
- Windows (generic target as a soft-PLC)
Windows(通用目标作为软 PLC)
- Linux (generic target as a soft-PLC)
Linux(通用目标作为软 PLC)
- 官网:https://autonomylogic.com/
OpenPLC 编辑器是运行在计算机上的软件,正如前面提到的,它用于创建 PLC 程序。它非常易于使用,并支持 IEC 61131-3 标准中定义的五种语言:梯形图(LD)、功能块图(FBD)、指令列表(IL)、结构化文本(ST)和顺序功能图(SFC)。
当然,除了上述这两种开源的PLC软件
参考链接:
- https://beremiz.org/
- https://autonomylogic.com/
- https://control.com/technical-articles/plc-ladder-logic-on-an-arduino-introduction-to-openplc/
- https://eci.intel.com/docs/3.3/components/openplc.html