ST(结构化文本)-IEC61131-3编程语言之四

[复制链接]
chenqiang | 2008-4-18 01:42:00 | 显示全部楼层

ST(结构化文本)-IEC61131-3编程语言之四

结构化文本(ST)是一种高级的文本语言,可以用来描述功能,功能块和程序的行为,还可以在顺序功能流程图中描述步、动作和转变的行为。
结构化文本(ST)语言表面上与PASCAL语言很相似,但它是一个专门为工业控制应用开发的编程语言,具有很强的编程能力用于对变量赋值、回调功能和功能块、创建表达式、编写条件语句和迭代程序等。结构化文本(ST)非常适合应用在有复杂的算术计算的应用中。
结构化文本(ST)程序格式自由,可以在关键词与标识符之间任何地方插入制表符、换行字符和注释。对于熟悉计算机高级语言开发的人员来说,结构化(ST)语言更是易学易用。此外,结构化文本(ST)语言还易读易理解,特别是用有实际意义的标识符、批注来注释时,更是这样。
3.5.1 操作符
结构化文本(ST)定义了一系列操作符用于实现算术和逻辑运算,如逻辑运算符:AND,&,XOR,OR; 算术运算符:<, >, <=, >=, =, <>, +, -, MOD, / 等,此外,还定义了这些操作符的优先级。如下是操作符预算的两个例子:
Start := Oilpress AND Stream AND Pump;
V : = K*(-W*T)
3.5.2 赋值语句
结构化文本(ST)程序既支持很简单的赋值语句,如 X:=Y, 也支持很复杂的数组或结构赋值,如Profile[3]:=10.3+SQRT((Rate+2.0)), Alarm.TimeOn:=RCT1.CDT。 字串9
3.5.3在程序中调用功能块
在结构化文本(ST)程序中可以直接调用功能块。功能块在被调用以前,输入参数被分配为缺省值;在调用后,输入参数值保留为最后一次调用的值。功能块调用的格式如下:
FunctionBlockInstance(
InputParameter1:=ValueExpression1,
InputParameter2:=ValueExpression2, …);
ValueExpression1……ValueExpressionN是符合功能块数据类型输入变量,InputParameter1……InputParameterN功能块的输入参数。FunctionBlockInstance是要调用的功能块。
3.5.4结构化文本(ST)程序中的语句
条件语句的功能是,某一条件满足时执行相应的选择语句。结构化文本(ST)有如下的条件语句:
迭代语句适用于需要一条或多条语句重复执行许多次的情况,迭代语句的执行取决于某一变量或条件的状态。应用迭代语句应避免迭代死循环的情况。
ST 语句 字串7

关键字 字串6  说明 字串8  示例 字串2  说明 字串5 
:= 字串7  赋值 字串8  d := 10 字串9  将右边的一个供计算的数值赋值给左边的标识符 字串3 
  字串7  调用 FB 字串9  FB Name( 字串9 Par1 := 10, 字串5 Par2 := 20); 字串9  调用另一个类型为 FB 的 POU,包括其参数 字串6 
RETURN 字串4  返回 字串4  RETURN 字串1  脱离当前的 POU 和返回到调用 POU 字串4 
IF 字串5  选择 字串3  IF d < e THEN f :=1; 字串5 ELSEIF d = e THEN f := 2; 字串6 ELSE f := 3; 字串3 END_IF 字串2  通过布尔表达式选择替代值 字串7 
CASE 字串8  多重选择 字串4  CASE f OF 字串8 1:    g := 11; 字串3 2:    g := 12; 字串8 ELSE g := FunName(); 字串1 END_CASE 字串2  根据表达式”f”的值选择一个语句块 字串3 
FOR 字串3  跌代 (1) 字串1  FOR h:=1 TO 10 BY 2 DO 字串9 F[h/2] := h; 字串9 END_FOR 字串8  一个多循环语句块,带有起始和结束条件以及一个增量值 字串3 
WHILE 字串6  跌代 (2) 字串2  WHILE m > 1 DO 字串2 N := n / 2; 字串9 END_WHILE 字串2  一个多循环语句块,具有在开始端的结束条件 字串9 
REPEAT 字串4  跌代 (3) 字串8    字串1  一个多循环语句块,具有在结束端的结束条件 字串5 
EXIT 字串2  循环的结束 字串2  EXIT; 字串1  一个迭代语句的结束条件。 字串5 


 

您需要登录后才可以回帖 登录 | 注册哦

本版积分规则