使用 ST 语言编写 PLC 程序 (st语言常用语句)

ST

简介

ST 语言(Structured Text)是一种结构化的文本语言,用于编程可编程逻辑控制器(PLC)。它是一种标准化的语言,由 IEC 61131-3 标准定义。ST语言具有良好的可读性和可维护性,并且支持各种数据类型和控制结构。

ST 语言常用语句

ST 语言包含以下常用语句:赋值语句赋值语句用于将值存储在变量中。语法为:```变量名称 := 值;例如:```counter := 10;```输入/输出语句输入/输出语句用于与 PLC 的输入和输出设备进行交互。语法为:```读取设备名称;写入 设备名称, 值;```例如:```读取 输入1;写入 输出1, 1;```逻辑语句逻辑语句用于执行逻辑操作,如 AND、OR 和 NOT。语法为:```AND 逻辑操作数1, 逻辑操作数2;OR 逻辑操作数1, 逻辑操作数2;NOT 逻辑操作数;```例如:```IF (输入1 = 1) AND (输入2 = 0) THEN写入 输出1, 1;END_IF;```比较语句比较语句用于比较两个值。语法为:```逻辑操作数1 > 逻辑操作数2;逻辑操作数1 >= 逻辑操作数2;逻辑操作数1 < 逻辑操作数2;逻辑操作数1 <= 逻辑操作数2;逻辑操作数1 = 逻辑操作数2;逻辑操作数1 <> 逻辑操作数2;```例如:```IF counter > 10 THEN写入 输出1, 1;END_IF;```控制结构控制结构用于控制程序流。ST 语言支持以下控制结构:IF-END_IF 语句: 用于根据条件执行代码块。语法为:```IF 条件 THEN代码块1;ELSE代码块2;END_IF;```CASE-END_CASE 语句: 用于根据多个条件执行不同的代码块。语法为:```CASE 变量名称 OF值1:代码块1;值2:代码块2;...END_CASE;```FOR-END_FOR 语句: 用于重复执行一段代码。语法为:```FOR 变量名称 := 初始值 TO 结束值 BY 步长 DO代码块;END_FOR;```WHILE-END_WHILE 语句: 用于重复执行一段代码,直到条件为假。语法为:```WHILE 条件 DO代码块;END_WHILE;```REPEAT-UNTIL 语句: 用于重复执行一段代码,直到条件为真。语法为:```REPEAT代码块;UNTIL 条件;```数据类型ST 语言支持以下数据类型:布尔型(BOOL)整数型(INT)实数型(REAL)字符串型(STRING)数组型(ARRAY)结构体型(STRUCT)运算符ST 语言支持以下运算符:算术运算符(+、-、、/、%)逻辑运算符(AND、OR、NOT)比较运算符(>、>=、<、<=、=、<>)位运算符(AND、OR、XOR、NOT)实例程序以下是一个简单的 ST 语言程序示例:```PROGRAM MainVARcounter: INT;END_VARcounter := 0;WHILE counter < 10 DOcounter := counter + 1;写入 输出1, counter;END_WHILE;END_PROGRAM```总结ST 语言是一种功能强大且灵活的语言,用于编程 PLC。它具有良好的可读性和可维护性,并且支持各种数据类型和控制结构。通过了解 ST 语言的常用语句、运算符和数据类型,您可以编写出高效且可靠的 PLC 程序。

PLC的用户程序是设计人员根据控制系统的工艺控制要求,通过PLC编程语言的编制设计的。 根据国际电工委员会制定的工业控制编程语言标准(IEC1131-3)。 PLC的编程语言包括以下五种:梯形图语言(LD)、指令表语言(IL)、功能模块图语言(FBD)、顺序功能流程图语言(SFC)及结构化文本语言(ST)。 1、梯形图语言(LD)梯形图语言是PLC程序设计中最常用的编程语言。 它是与继电器线路类似的一种编程语言。 由于电气设计人员对继电器控制较为熟悉,因此,梯形图编程语言得到了广泛的欢迎和应用。 梯形图编程语言的特点是:与电气操作原理图相对应,具有直观性和对应性;与原有继电器控制相一致,电气设计人员易于掌握。 梯形图编程语言与原有的继电器控制的不同点是,梯形图中的能流不是实际意义的电流,内部的继电器也不是实际存在的继电器,应用时,需要与原有继电器控制的概念区别对待。 2、指令表语言(IL)指令表编程语言是与汇编语言类似的一种助记符编程语言,和汇编语言一样由操作码和操作数组成。 在无计算机的情况下,适合采用PLC手持编程器对用户程序进行编制。 同时,指令表编程语言与梯形图编程语言图一一对应,在PLC编程软件下可以相互转换。 图3就是与图2PLC梯形图对应的指令表。 指令表表编程语言的特点是:采用助记符来表示操作功能,具有容易记忆,便于掌握;在手持编程器的键盘上采用助记符表示,便于操作,可在无计算机的场合进行编程设计;与梯形图有一一对应关系。 其特点与梯形图语言基本一致。 3、功能模块图语言(FBD)功能模块图语言是与数字逻辑电路类似的一种PLC编程语言。 采用功能模块图的形式来表示模块所具有的功能,不同的功能模块有不同的功能。 图4是对应图1交流异步电动机直接启动的功能模块图编程语言的表达方式。 功能模块图编程语言的特点:功能模块图程序设计语言的特点是:以功能模块为单位,分析理解控制方案简单容易;功能模块是用图形的形式表达功能,直观性强,对于具有数字逻辑电路基础的设计人员很容易掌握的编程;对规模大、控制逻辑关系复杂的控制系统,由于功能模块图能够清楚表达功能关系,使编程调试时间大大减少。 4、 顺序功能流程图语言(SFC)顺序功能流程图语言是为了满足顺序逻辑控制而设计的编程语言。 编程时将顺序流程动作的过程分成步和转换条件,根据转移条件对控制系统的功能流程顺序进行分配,一步一步的按照顺序动作。 每一步代表一个控制功能任务,用方框表示。 在方框内含有用于完成相应控制功能任务的梯形图逻辑。 这种编程语言使程序结构清晰,易于阅读及维护,大大减轻编程的工作量,缩短编程和调试时间。 用于系统的规模校大,程序关系较复杂的场合。 顺序功能流程图编程语言的特点:以功能为主线,按照功能流程的顺序分配,条理清楚,便于对用户程序理解;避免梯形图或其他语言不能顺序动作的缺陷,同时也避免了用梯形图语言对顺序动作编程时,由于机械互锁造成用户程序结构复杂、难以理解的缺陷;用户程序扫描时间也大大缩短。 5、结构化文本语言(ST)结构化文本语言是用结构化的描述文本来描述程序的一种编程语言。 它是类似于高级语言的一种编程语言。 在大中型的PLC系统中,常采用结构化文本来描述控制系统中各个变量的关系。 主要用于其他编程语言较难实现的用户程序编制。 结构化文本编程语言采用计算机的描述方式来描述系统中各种变量之间的各种运算关系,完成所需的功能或操作。 大多数PLC制造商采用的结构化文本编程语言与BASIC语言、PASCAL语言或C语言等高级语言相类似,但为了应用方便,在语句的表达方法及语句的种类等方面都进行了简化。 结构化文本编程语言的特点:采用高级语言进行编程,可以完成较复杂的控制运算;需要有一定的计算机高级语言的知识和编程技巧,对工程设计人员要求较高。 直观性和操作性较差。 不同型号的PLC编程软件对以上五种编程语言的支持种类是不同的,早期的PLC仅仅支持梯形图编程语言和指令表编程语言。 目前的PLC对梯形图(LD)、指令表(STL)、功能模块图(FBD)编程语言都以支持。 比如,SIMATIC STEP7 MicroWIN V3.2。 在PLC控制系统设计中,要求设计人员不但对PLC的硬件性能了解外,也要了解PLC对编程语言支持的种类。

本文原创来源:电气TV网,欢迎收藏本网址,收藏不迷路哦!

相关阅读

添加新评论