IEC61499编程方式与传统PLC编程方式比较
- 什么是IEC 61499与IEC 61131-3
IEC 61499 是国际电工委员会(IEC)制定的一个工业自动化领域的国际标准,该标准旨在为分布式工业控制系统提供一种开放的、模块化的设计框架,支持可重构性、可互操作性、可移植性等特点,以事件驱动作为执行方式。
IEC 61131-3 是传统的PLC编程标准,定义了梯形图(Ladder Logic)、结构化文本(ST)、指令表、顺序功能图、功能块五种编程语言,以周期性扫描方式执行。
IEC 61499可以作为IEC61131-3的补充(不是替代IEC 61131-3),可以用IEC 61131-3的编程语言来封装IEC 61499功能块算法,且IEC 61499也支持高级语言编写功能块算法。
- 编程平台
- open61499: http://open61499.com.cn
open61499是基于IEC61499标准开发的工业编程平台,支持IT(c/c++、lua、python)和OT(结构化文本、梯形图)融合编程、云端部署、本地部署;适配了arm、x86处理器,windows、linux操作系统。
- codesys
codesys 是一款广泛应用于工业自动化领域的集成开发环境(IDE),主要用于编程可编程逻辑控制器(PLC)和自动化设备,它遵循 IEC 61131-3 国际标准(PLC编程语言标准)。
- 比较维度
- 项目创建
- open61499:创建应用程序,编写应用程序,添加设备(设备可以随时更换)。
- codesys:先要选定设备,再编写应用程序。
- 程序编写
- open61499:支持高级语言(C/C++、Lua)、梯形图、结构化文本编写功能块算法,且不同语言编写算法的功能块可以相互调用。
- Codesys:IEC61131-3的编程语言。
- 硬件组态
- open61499:执行codesys 硬件xml文件,操作方式与codesys一样。
- Codesys:通过xml文件描述硬件信息。
- 部署调试
- open61499:web环境,单个功能块调试,应用调试。
- Codesys:客户端环境,支持断点调试,仿真调试。
- 资源与任务
- open61499:功能块部署在资源上,资源与资源直接是隔离的,一个IEC61499设备可以创建多个资源,程序的执行以功能块上的事件是否触发。
- Codesys:逻辑部署在任务上,任务可以配置扫描周期,程序的执行从任务开始。
- 程序执行方式
- open61499:事件触发。
- Codesys:周期循环扫描。