推广 热搜: csgo  vue  angelababy  2023  gps  新车  htc  落地  app  p2p 

ST语言入门基础

   2023-06-23 网络整理佚名2350
核心提示:ST语言的程序由语句组成,语句由表达式和关键字组成,表达式由操作数和操作符组成。ST语言的程序中,表达式由操作数和操作符组成。一个表达式可包含一个或多个操作符、变量和函数操作数可以是表示数据的数据文字、字符串文字、时间文字、变量元素、函数调用和其他表达式;例如:通过函数MAX(取最大值)选取变量1和变量2中的最大值,并将该最大值赋值给变量3,两种调用方式如下:

1.结构化文本(ST语言)

结构化文本(Text),简称ST语言,是-3中规定的PLC编程语言之一。

一种用于工业控制的高级语言。由于其编写方式与通用计算机语言类似,所以多用于较复杂的控制

场合和复杂的控制算法。

1、特点:

编程语言采用高度简化的表达形式,使得程序紧凑、结构清晰;

具有多种控制语句,可以轻松实现复杂的控制逻辑,如IF、CASE条件语句和FOR、WHILE、循环语句;

程序结构清晰,易于阅读。

2.ST程序结构

ST语言程序由语句组成,语句由表达式和关键字组成,表达式由操作数和运算符组成。

ST结构

2. 语法基础

1. 表达

表达式的构成

在ST语言程序中,表达式由操作数和运算符组成。

表达式可以包含一个或多个运算符、变量和函数

语法 1

操作数

操作数可以是数据文字、字符串文字、时间文字、变量元素、函数调用和其他表示数据的表达式;

例如:15、TRUE、T#20S、[1]、SIN(A)、(A>B) &(C=D)。

操作员

当表达式中使用多个运算符时,它们按优先级降序执行。 相同优先级的运算符按照写入的顺序从左到右执行。

操作员

2. 声明

赋值语句

赋值语句用于将赋值符号(:=)右侧的表达式计算出的值赋给左侧的变量。

格式

赋值语句的一般形式如下,其中“:=”是赋值运算符,必​​须以分号“;”结尾。

格式变量:=表达式;

例子

变量 1 := 100 ; //将100赋值给变量1

变量 2 := TRUE; //将 TRUE 赋给变量 2

变量 3 := 变量 1 *2 ; //将变量1乘以2并将结果赋给变量3

变量 4 := SIN(变量 3); //将变量3的正弦运算结果赋给变量4

数组 A[1] := 1.5; //将1.5赋给数组A中下标1的元素

变量 5 := 1; 变量 6 := 1.5; 变量 7 := FALSE; //一行中可以同时存在多个赋值语句

函数调用

u函数(FC)调用后,其返回值被赋给其他变量作为表达式的值,其一般格式如下:

变量:=函数名(参数列表);

参数表的写法有两种:

方法一:变量:=函数名(函数输入参数1:=输入变量1,函数输入参数2:=输入变量2,…);

方法二:变量:=函数名(输入变量1,输入变量2,...);

例如:通过函数MAX选择变量1和变量2的最大值(取最大值),并将最大值赋给变量3。两种调用方法如下:

方法一:变量3:=MAX(IN1:=变量1, IN2:=变量2);

方法二:变量3:=MAX(变量1,变量2);

注意:

通过方法2调用时,参数表中的变量从左到右对应函数的输入参数,所以不能留空;

某些二元运算符不能用作函数调用的函数名,例如 MOD、AND、NOT 等:

注意变量:=MOD(变量1,变量2); ×

变量: = 变量 1 MOD 变量 2; √

例子

函数调用

功能块调用

功能块(FB)调用需要实例化,通过实例名实现调用,其一般格式如下:

格式

功能块实例名称(参数列表);

参数表的写法有两种:

模式1:功能块实例名称(功能块输入参数1:=输入变量1,

功能块输入参数 2 := 输入变量 2 ,

……

功能块输出参数 1 => 输出变量 1,

功能块输出参数 2 => 输出变量 2,

...)

方法2:功能块实例名称(输入变量1,输入变量2,……,输出变量1,输出变量2,……);

例如:通过功能块TON的实例名调用TON:

方法一:

( EN:= 变量 1 , IN:= 变量 2 , PT:= T#1S,

ENO => 变量 4,Q => 变量 5,ET=> 变量 6 );

或者

方法二:

(变量1、变量2、T#1S、变量4、变量5、变量6);

直接和间接赋值

直接赋值

通过功能块TON的实例名调用TON:

( EN:= 变量1 ,

IN:= 变量2 ,

PT:= T#1S,

ENO => 变量 4,

Q => 变量 5,

ET => 变量 6 );

间接赋值

.EN:= 变量 1; //分配TON的输入参数EN

。 IN:=变量2; //对TON的输入参数IN进行赋值

.PT:= T#1S; //分配TON的输入参数PT

( ); //调用TON功能块执行

变量 4 := .ENO; //将TON功能块的输出参数ENO的状态输出到变量4

变量 5 := .Q; //将TON功能块输出参数Q的状态输出到变量5

变量 6 := .ET; //将TON功能块输出参数ET的状态输出到变量6

这次就到这里吧,下一篇我们将继续学习ST中的常用语句。

如果你喜欢这篇文章,可以转发并关注我。 如果您有什么好的建议或者意见,请留言告诉我。

下次见! !

我是气球! !

 
反对 0举报 0 收藏 0 打赏 0评论 0
 
更多>同类资讯
推荐图文
推荐资讯
点击排行
网站首页  |  关于我们  |  联系方式  |  使用协议  |  版权隐私  |  网站地图  |  排名推广  |  广告服务  |  积分换礼  |  网站留言  |  RSS订阅  |  违规举报
Powered By DESTOON