CoDeSys是一种与设备无关的PLC编程系统。
CoDeSys不仅支持所有符合IEC 61131-3标准的编程语言,还支持
⇘
C语言与CoDeSys与CoDeSys实时系统结合,可以在一个工程中对多个控制器设备进行配置。
使用CoDeSys编程时,请注意以下基本概念:
-
面向对象:: 面向对象的编程思想不仅适用于功能块和普通元素的编程,而且也适用于结构体和版本管理的编程,在CoDeSys中引入了“多设备和多应用” 的编程思想,可以通过CoDeSys联合、实例化等操作实现
⇘
工程 。因此,可以在同一个设备上运行多个应用、也可以对应用进行拷贝,或者可以在一个工程中混合配置参数型和可编程型的设备。
-
基于组件的编程系统结构:: 用户界面中的(编辑,菜单等命令)功能取决于目前使用的组件。
⇘
插件)定义在
⇘
文件中。其中系统组件是必须的,另外还有其他可选组件以及3S公司的提供的其他组件,以及运用Automation Platform开发包创建的用户自定义的组件。
-
版本管理:如果同时安装几个版本CoDeSys 不同的版本和不同的组件进行组合是可以的。这也适用于相同的设备在不同的编译器下进行编译。个别的函数可以直接进行添加,而不需要对整个版本进行更新。
-
工程的组织方式也同样采用了面向对象的方法:
在CoDeSys
⇘
工程 中,包含了含各种编程对象组成的PLC程序,以及
⇘
资源对象,这些资源是定义目标系统(设备,PLC)的运行程序(应用程序)所必须的。
综上所述,在一个工程的对象实例中主要有两种类型:
-
⇘
编程对象 (POUs):
编程对象POU包括程序、函数、功能块、方法、接口、动作、数据类型定义等。
在 POUs 窗口中管理的编程对象,在整个工程范围内都有效,可以被工程中的所有应用通过
⇘
任务配置来进行调用,即 实例化。
在 设备窗口中管理的设备对象(针对特定应用的编程对象),智能被本应用调用,或者被本应用的“子应”用实例化后使用。
-
⇘
资源对象 (设备树):
设备对象,应用程序,任务配置,函数库管理等,都是在设备树中进行管理,例如,当我们在设备树中添加对象时,要被控制的硬件必须按照一定的
⇘
规则做好映射。 对于适用的对象范围,像函数库,GLV以及由此定义的应用程序和设备对象等会根据不同的层次结构进行使用。
-
代码生成:通过使用集成的编译器和机器代码,在较短的执行时间里实现。
-
数据转化 :对控制设备,CoDeSys 设备之间进行数据转化,是通过 gateway (元件)和 runtime system实现的。提供了完善的在线功能对设备程序进行实时监控。
-
预定义功能:在一个标准用户模式下只支持部分功能,而在专业用户模式下可以支持所有的功能。当软件第一次在安装机器上启动时,首先要进行设置的选择。 当然安装完软件之后同样可以选择设置或者进行用户的切换,从而能够使用某些功能。对于标准版和专业版的更多不同之处,请参阅:
⇘
功能选项。