初学ST语言

最近想学习ST语言,想要ST语言以及功能块的相关内容?小编给大家分享一下现成的一些资料。

至于更多的ST资料,需要自己慢慢历练与积累。这话是论坛里版主说的。

结构化文本(ST-Strutured Text)是一种高级的文本语言,可以用来描述功能,功能块和程序的行为,还可以在顺序功能流程图中描述步、动作和转变的行为。

结构化文本语言表面上与 PASCAL语言很相似,但它是一个专门为工业控制应用开发的编程语言,具有很强的编程能力用于对变量赋值、回调功能和功能块、创建表达式、编写条件语句和迭代程序等。

初学ST语言_第1张图片

1、采用高级语言进行编程,可以完成较复杂的控制运算;

2、需要有一定的计算机高级程序设计语言的知识和编程技巧,对编程人员的技能要求较高,普通电气人员无法完成。

3、直观性和易操作性等性能较差;

4、常被用于采用功能模块等其他语言较难实现的一些控制功能的实施。

提示注意:不是所有的PLC都支持所有的编程语言(如功能块图、顺序功能图就有很多低档PLC不支持)

接下来就看看关于ST的专业讲解吧!

初学ST语言_第2张图片

初学ST语言_第3张图片

初学ST语言_第4张图片

初学ST语言_第5张图片

初学ST语言_第6张图片

初学ST语言_第7张图片

初学ST语言_第8张图片

初学ST语言_第9张图片

初学ST语言_第10张图片

初学ST语言_第11张图片

其中,需要说明的是:

LAD:梯形图----------日系称作为LD

STL:指令表---------日系称作为IL

SCL:结构文本-------日系称作为ST

GRAPH:图形编程-----日系称作为SFC

HIGRAPH:高级图形编程

CFC:连续功能编程

初学ST语言_第12张图片

初学ST语言_第13张图片

初学ST语言_第14张图片

初学ST语言_第15张图片

初学ST语言_第16张图片

初学ST语言_第17张图片

初学ST语言_第18张图片

初学ST语言_第19张图片

初学ST语言_第20张图片

初学ST语言_第21张图片

初学ST语言_第22张图片

初学ST语言_第23张图片

初学ST语言_第24张图片

初学ST语言_第25张图片

初学ST语言_第26张图片

初学ST语言_第27张图片

初学ST语言_第28张图片

初学ST语言_第29张图片

初学ST语言_第30张图片

初学ST语言_第31张图片

初学ST语言_第32张图片

初学ST语言_第33张图片

初学ST语言_第34张图片

初学ST语言_第35张图片

初学ST语言_第36张图片

初学ST语言_第37张图片

来源/网络

控制语句
  • 1> IF语句
    • 1.1> IF-END_IF
    • 1.2> IF-ELSE-END_IF
  • 3> CASE语句
  • 3> FOR循环
  • 4> WHILE循环
  • 5> REPEAT循环
  • 6> EXIT 和 CONTINUE语句

1> IF语句

1.1> IF-END_IF

IF <判断条件> THEN
   <执行语句>
END_IF

    
    
      
      
      
      
  • 1
  • 2
  • 3

1.2> IF-ELSE-END_IF

IF <判断条件> THEN
	<执行语句1>
ELSE
	<执行语句2>
END_IF

    
    
      
      
      
      
  • 1
  • 2
  • 3
  • 4
  • 5

3> CASE语句

CASE  <判断条件>  OF
	 <数值1> :
		 <执行语句1> ;
	 <数值2> :
		 <执行语句2> ;
	 <数值3> :
		 <执行语句3> ;
	ELSE
		 <执行语句4> ;
END_CASE;

    
    
      
      
      
      
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
data := 2;

CASE data OF
0 : Y0:= 1 ;
1: Y1:= 1;
2: Y2:= 1;

ELSE
Y7 := 1 ;
END_CASE;

  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10

3> FOR循环

适用:循环次数已知, 结果未知 的循环;

FOR  <循环控制变量 := 循环开始变量值>  TO  <循环结束变量>  BY  <步长控制变量值>  DO
	 <执行语句>
END_FOR;  

 
 
   
   
   
   
  • 1
  • 2
  • 3
FOR  j := 0 TO 10 BY 1   DO
	Data := Data + j;
END_FOR; 

j从0 加到10, 每次加1

  • 1
  • 2
  • 3
  • 4
  • 5

4> WHILE循环

适用:结果已知,循环次数未知 的循环

WHILE <判断条件>  DO
	 <执行语句> ;
END_WHILE;

 
 
   
   
   
   
  • 1
  • 2
  • 3
data := 0;
WHILE  (data  < 100 )  DO
	 data := data + 1;
END_WHILE;

 
 
   
   
   
   
  • 1
  • 2
  • 3
  • 4

5> REPEAT循环

相等于C语言中的, do-while语句;

REPEAT
	 <执行语句> ;
UNTIL  <判断条件>  
END_REPEAT;

 
 
   
   
   
   
  • 1
  • 2
  • 3
  • 4

6> EXIT 和 CONTINUE语句

EXIT :强制退出循环;
CONTINUE : 忽略本次循环;


你可能感兴趣的:(github)