【1】无论学习任何一种语言都需要从数据类型入手
- 学习过程中发现,在ST编程中涉及的的数据类型以及操符等等,与三菱、西门子、欧姆龙的大同小异,我在这里无需过多赘述。
- ST编程语言不同于C语言的一点就是,关键字不区分大小写
- 以下几张图片是操作符的描述及基本功能,可做了解。
- 在ST编程中,针对不同的数据类型,没有相应的操作符对其操作,都是通用的,例如:四则运算,不区分
int还是real。
- 取余的指令是
MOD。
- ST编程时注意:定义一个变量的数据类型的时候,要在变量名称后添加
:后再写上数据类型。
![]()
![]()
【2】基本的ST语言控制案例
- 例题:通过开关量K1的状态控制两个输入变量:IN_00、IN_01的计算方式并输出到OUT_00中。
(1)K1=OFF时,IN_00的数值给到输出中。
(2)K1=ON时,IN_00与IN_01的平均值给到输出中。
- 使用的编程平台为:
codesys
- 【第一步】在
codesys的application中添加POU,定义功能块名称,选择功能块。
- 【第二步】定义变量。
FUNCTION_BLOCK wangjw //定义变量
VAR_INPUT
IN_00:real;
IN_01:real;
K1:bool;
END_VAR
VAR_OUTPUT
OUT_00:real;
END_VAR
IF K1 THEN //条件判断语句:IF 条件语句 THEN 执行语句;
OUT:= IN_00;
else
OUT:= (IN_00+IN_01)/2;
END_IF
- 【第4步】在PLC_PRG主程序中对此功能块实例化,并定义所需变量。
PROGRAM PLC_PRG
VAR
wangjw_00:wangjw;
var_IN_00:real;
var_IN_01:real;
var_OUT_00:real;
var_IN_K1:bool;
END_VAR
wangjw_00(IN_00:=var_IN_00,IN_01:=var_IN_01,K1:=var_IN_k1);
var_OUT_00:= wangjw_00.OUT_00;
本节完成