发布于 2012-12-27 19:36:53
26楼
IEC 61131-3的程序结构
IEC 61131是PLC的国际标准,其中的第三部分(IEC 61131-3)是PLC的编程语言标准。IEC 61131-3是世界上第一个,也是至今为止唯一的工业控制系统的编程语言标准。
IEC 61131-3的程序组织单元(POU)是包含程序代码的PLC的独立软件单元。
IEC 61131-3有三种POU:程序、功能块和功能。
1.功能
功能是有多个输入参数和一个输出参数(返回值)的POU。调用带有相同输入值的功能总是返回相同的结果。功能可以调用另外的功能,但不能调用功能块或程序。返回值的名称与功能的名称相同。局部变量有VAR和VAR_INPUT。
2.功能块
功能块是带有多个输入/输出参数和内部存储单元的POU,功能块的返回值与其内部存储单元的值有关。功能块的内部变量对功能块的用户是隐藏的。
下面是标准IEC 61131-3功能块:
1) 双稳态元素,例如SR和RS;
2) 边沿检测,例如R_TRIG和F_TRIG;
3) 计数器,例如CTU和CTD;
4) 定时器,例如TON和TOF。
3.功能块的实例化
实例化是指一个功能块被定义一次而被使用多次。在调用功能块之前,必须在要调用功能块的POU中声明功能块的实例。
下面是实例声明的例子:功能块FB_exam的实例名称分别为drive1和drive2:
VAR
drive1 : FB_exam;
drive2 : FB_exam;
END_VAR
两次调用功能块FB_exam时,应分别使用不同的实例名称。在调用功能块时,每个实例名称被分配一个单独的存储区域,用来保存功能块的局部变量的值。
4.程序
程序通常包含了功能、功能块调用的一个逻辑组合。程序的行为和用途类似于功能块。程序具有输入和输出参数,而且可以具有内部存储区。
追求完美