CoDeSys官方版是很容易操作的的PLC编程工具,CoDeSys官方版可以帮助使用者对各种设备的运行数据进行采集与转换输出,能够及时的发布各种控制命令。CoDeSys最新版支持IEC61131-3标准IL 、ST、 FBD 、LD、 CFC、 SFC等六种编程语言,并内置了强大的系统编辑器和调试器,拥有实时核控制,对各个元件的实时状态进行监控。
软件功能
CoDeSys官方版是一种实时计算机控制系统,软 PLC 也不例外。其中的执行程序部分对实时性有着很高的要求。如果不能在系统要求的时间内完成 PLC 程序的执行,会影响数据的采集和输出,无法完成控制任务。另外,作为工业控制系统,PLC 系统必须对工业现场的突发情况作出及时有效的响应,否则可能危机人身和设备安全。PLC 工作过程中,需要对各个元件的实时状态进行监控,所以 PLC系统运行在实时平台上。
CoDeSys官方版的实时核可以运行在各种主流 CPU 上(如 ARM、X86、PowerPC、TriCore 、DSP等),并支持 Windows XP、Windows CE、Windows XP Embedded、Windows 7、Linux、VxWorks 、QNX 等操作系统中。本节以 Windows 系统举例,对其系统的实时性进行详细分析。
1. Windows 实时性分析
由于 Windows本身不是实时系统,故不能直接作为软 PLC 的载体,具体分析如下,
1) Windows无法提供高精度的定时器,故不能保证程序运行的实时性;
2) Windows所有线程都是该系统的普通现场横,不能提供实时服务;。
3) 系统事件存在延迟。;
4) Windows对分页内存的访问时间不可预知。
2. Windows 实时性扩展技术
为了使 Windows 能用于实时控制系统,需要解决实时性问题,目前采用的解决方案主要有两种:1. 插卡方案(Windows 系统+硬件板卡);2. 实时扩展方案(Windows 系统+实时扩展),CoDeSys 采用的是实时扩展的方案。通过软件的方式对 Windows 进行实时性能的改造,使其具有实时性。系统的实时任务和非实时任务都由软件完成,硬件板卡只实现简单的输入输出功能,因此只需廉价的通用的 I/O 板卡,脉冲板卡,大大减少了软 PLC系统的成本。
3. Windows 实时性问题 的解决方案
CoDeSys RTE 即实现了这样的技术,它对 Windows 的内核进行了恰当了实时性改造,使其保证具有微妙级抖动量的确定性,且不需增加其他硬件。最终实现“硬实时”的功能。通过实时核进行任务的管理和调度,降低了实时控制系统的设计和难度,提高了实时性和可维护性,当使用 PC实现软 PLC 时,使用 CoDeSys 实时核,其内部结构如图 1.9 所示。
故只要在 PC机上安装软 PLC CoDeSys RTE 软件,那么根据 PC机的功能,他就会变成一台先进的高性能可编程控制器。PLC CoDeSys RTE 可以运行在装有 Windows NT、Windows2000 或Windows XP/7等操作系统的标准工业 PC上。此外,CoDeSys 也能针对其他非 Windows 操作系统安装实时核,如嵌入式控制器,嵌入式控制器也能进行 I/O 扩展,现场总线扩展等功能,只需要在 CoDeSys 开发平台中相应设置即能实现扩展功能。CoDeSys 实时核被预先安装在嵌入式控制器内,只需要在上位CoDeSys 开发系统中将事先写完的程序直接下载到设备中,CoDeSys 就已将用户代码转换为二进制代码存入嵌入式控制器内,实现实时控制。
软件优势
1. 应用开发层
PLC 编程系统,PLC Development System CoDeSys(具有完善的在线编程和离线编程功能)、编译器及其配件组件、可视化界面编程组件等,同时供用户可选的运动控制模块可使其功能更加完整和强大。
IEC61131-3 编辑器。CoDeSys 提供了所有 IEC61131-3 所以定义的五种编程语言:如结构化文本(ST)、顺序功能图(SFC)、功能块图(FBD)、梯形图(LD)和指令表,此外还支持连续功能图(CFC)的编程语言。
编译器。负责将 CoDeSys 中的应用程序转换为机器代码并且优化可编程控制器的性能。当用户输入了错误的应用程序代码时,立刻会接收到编译器发出的语法错误警告及错误信息,让编程人员可以迅速做出相应纠正。
硬件/现场总线配置器。针对不同制造商的硬件设备及不同现场总线协议,该部分负责在
CoDeSys 中对相应参数进行设定。
可视化界面编程。直接在 CoDeSys 中即可实现可视化编程(人机界面 HMI),系统已经集成了可视化编辑器。
运动控制模块。运动控制功能已经集成在 CoDeSys 中,形成了 SoftMotion(CNC)软件包。基于 PLCopen 的工具包可以实现单轴、多轴运动;电子凸轮传动;电子齿轮传动;复杂多轴 CNC控制等。
2. 通信层
应用开发层和设备层之间的通讯是由 CoDeSys 中的网关服务器来实现的,CoDeSys 网关服务器中安装了 OPC服务器。
CoDeSys 网关服务器。作用在应用开发层和硬件设备层之间,可以使用 TCP/IP 协议或通过CAN等总线实现远程访问,是 CoDeSys 开发工具包不可分割的一部分。
CoDeSys OPC 服务器。对基于 CoDeSys 进行编程的控制器,无需考虑所使用的硬件 CPU,已经集成并实现了 OPC V2.0 规范的多客户端功能,且能同时访问多个控制器。
3. 设备层
使用基于 IEC 61131-3 标准的编辑开发工具 CoDeSys 对一个硬件设备进行操作前,硬件供应商必须要在设备层预先安装 CoDeSys 的实时核。
CoDeSys 实时核系统。关于实时核的会在下节中会有详细介绍。
IEC 61131-3 应用程序。用户在开发层写完的程序通过以太网或串口下载至设备层中,最终该应用程序中的文件已经被转为二进制存放在目标设备中,根据用户设定的执行方式循环执行对应程序。