st语言 数组的常用方法_ST语言入门基础
一、结构化文本(ST 语言)
结构化文本(Structured Text)简称 ST 语言,是 IEC61131-3 所规定的 PLC 编程语言之一,
用于工业控制的高级语言。由于其编写方式与一般计算机语言相似,多用于较为复杂的控制
场合和复杂的控制算法中。
1、特点:
编程语言采用高度简化的表达形式,使得程序紧凑,结构清晰;
带有多种控制语句,便于实现复杂的控制逻辑,如IF、 CASE条件语句和FOR、WHILE、 REPEAT循环语句;
程序结构清晰,便于阅读。
2、ST程序结构
ST语言的程序由语句组成,语句由表达式和关键字组成,表达式由操作数和操作符组成。
ST结构
二、语法基础
1、表达式
表达式的构成
ST语言的程序中,表达式由操作数和操作符组成。
一个表达式可包含一个或多个操作符、变量和函数
语法1
操作数
操作数可以是表示数据的数据文字、字符串文字、时间文字、变量元素、函数调用和其他表达式;
例如: 15、 TRUE、 T#20S、 ARRAY1[1]、 SIN(A)、(A>B) &(C=D)。
操作符
在一个表达式中使用多个操作符时,按优先级从高到低依次执行。 相同优先级的操作符按照书写顺序从左向右依次执行。
操作符
2、语句
赋值语句
赋值语句用于将赋值符号(:=)右侧的表达式计算的值赋给左侧的变量。
格式
赋值语句的一般形式如下, 其中“:=”为赋值操作符, 且要用分号“;”结尾。
格式 变量 := 表达式 ;
例子
变量1 := 100 ; //对变量1赋值100
变量2 := TRUE; //对变量2赋值TRUE
变量3 := 变量1 *2 ; //将变量1乘以2后得到结果赋值给变量3
变量4 := SIN(变量3); //将变量3做正弦运算后的结果赋给变量4
数组A[1] := 1.5; //对数组A下标为1的元素赋值1.5
变量5 := 1; 变量6 := 1.5; 变量7 := FALSE; //一行中可以同时存在多条赋值语句
函数调用
u 函数(FC)调用后将其返回值作为表达式的值赋值给其他变量,其一般格式如下:
变量 := 函数名(参数表) ;
参数表有两种书写方式:
方式1: 变量 := 函数名 ( 函数输入参数1 := 输入变量1 ,函数输入参数2 := 输入变量2 , … );
方式2: 变量 := 函数名 (输入变量1 , 输入变量2 , … );
例如:通过函数MAX(取最大值)选取变量1和变量2中的最大值,并将该最大值赋值给变量3,两种调用方式如下:
方式1:变量3: =MAX(IN1:=变量1, IN2:=变量2);
方式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的实例名TIMER1对TON进行调用:
方式1:
TIMER1( EN:= 变量1 , IN:= 变量2 , PT:= T#1S,
ENO =>变量4, Q =>变量5, ET=>变量6 );
或
方式2:
Timer1(变量1 , 变量2 , T#1S, 变量4, 变量5, 变量6 );
直接赋值与间接赋值
直接赋值
通过功能块TON的实例名Timer1对TON进行调用:
Timer1( EN:= 变量1 ,
IN:= 变量2 ,
PT:= T#1S,
ENO =>变量4,
Q =>变量5,
ET=>变量6 );
间接赋值
Timer1 .EN:= 变量1; //对TON的输入参数EN进行赋值
Timer1 . IN:= 变量2; //对TON的输入参数IN进行赋值
Timer1 . PT:= T#1S; //对TON的输入参数PT进行赋值
Timer1 ( );//调用TON功能块执行
变量4 := Timer1 .ENO; //将TON功能块输出参数ENO的状态输出到变量4
变量5 := Timer1 .Q; //将TON功能块输出参数Q的状态输出到变量5
变量6 := Timer1 .ET; //将TON功能块输出参数ET的状态输出到变量6
这次先讲到这里,下一篇我们继续学习ST里面常用的语句。
st语言 数组的常用方法_ST语言入门基础相关推荐
- st语言 数组的常用方法_ST语言编程手册
ST 语言编程手册 目录 1. ST 基本原理 ............................................................................ ...
- C语言 数组长度计算 - C语言零基础入门教程
目录 一.计算数组长度 1.经典案例 2.计算数组长度 二.猜你喜欢 零基础 C/C++ 学习路线推荐 : C/C++ 学习目录 >> C 语言基础入门 一.计算数组长度 1.经典案例 / ...
- C语言 数组内存溢出 - C语言零基础入门教程
目录 一.数组内存溢出简介 二.数组内存溢出实例 三.猜你喜欢 零基础 C/C++ 学习路线推荐 : C/C++ 学习目录 >> C 语言基础入门 一.数组内存溢出简介 溢出:想象一个桶, ...
- c语言数组最大元调换,c语言数组元素交换有关问题,请高手过来看看
c语言数组元素交换问题,请高手过来看看 主要问题是数组元素交换不正确,以下是代码: #include #include #define PI 3.1415926 #define MAX 512 dou ...
- c语言数组转bin,C语言数组转换为BIN文件工具
C2B转换助手是一款可以将C语言数组转换为BIN文件工具,可以将十六进制的数组进行转换,支持大的数组进行转换,降低对MCU的FLASH占用.转换是数组不要添加多余的符号,否则影响转换! 输入数组最好遵 ...
- c语言数组常见错误,C语言数组在使用中常见的几种错误.pdf
S C i 卜NOL & TE Q 月N创,)<白Y INI: 口书明A T I仁别 T 技 术 C 语言数组在使用 中常见 的几种错误 刘莉娜 (包头农牧学校 0 14030) 摘 要 ...
- st语言 数组的常用方法_欧姆龙cp1h常用指令学习(九)结构化语言ST
结构化语言ST是作用于功能块编程中. 这门语言对于梯形图中不善于处理的数值运算等逻辑算法,采用类似于高级语言的语法,使其变得简单. 下面先从功能块的相关知识说起: CP1H的功能块规格: 功能块定义数 ...
- st语言 数组的常用方法_LINEST函数使用方法介绍
下面要和大家讲解的EXCEL函数是一个较为常用的函数,它的功能是通过使用"最小二乘法"计算最符合您的数据的直线来计算直线的统计值,并返回描述该直线的数组.此函数的特点是,因为它返回 ...
- C语言访问数组的常用方法,C语言数组基本知识点详解
数组基本知识点: 1,数组初始化,命名 2.数组大小,数组类型 3.数组访问方法 4.字符数组 5.数组下标越界 6.数组作为函数参数问题 7.二维数组基本概念以及多维数组 以后还会有关于指针数组问题 ...
- c语言数组求素数,C语言入门:一维数组求素数
/* Note:Your choice is C IDE */ #include "stdio.h" void main() { //素数 //已知有数组int a[10]={1, ...
最新文章
- 多租户系统技术实现mysql_SaaS “可配置”和“多租户”架构的几种技术实现方式...
- PostgreSQL参数优化对比性能测试
- 如何使用Key User Tool扩展SAP S/4HANA Fiori UI
- 【每日SQL打卡】​​​​​​​​​​​​​​​DAY 6丨寻找用户推荐人【难度简单】
- apimac版 java_jdk1.8 mac官方下载-Java SE Development Kit 8 mac下载8u181 官方最新版__西西软件下载...
- 设计灵感|色彩叠加在海报设计中的妙用!
- NFC Enable 过程分析(三)
- 微软为何能一直向安卓厂商收费?
- 如何使用代码给菜单增加图标
- OpenGL ES简介(一)
- 自定义TextView显示指定行数
- 算法导论第三版 第30章习题答案
- ArcGIS农村土地承包经营权辅助建库软件说明书
- windows平台HTTP代理服务器搭建(CCproxy)
- 科里奥利力的物理理解、推导与加速度变换
- mysql用户名密码忘了怎么办_mysql用户密码忘了怎么办
- 便便教你玩转流程引擎Snaker
- 英仕曼235年传奇之路从CTA策略鼻祖到全球最大上市对冲基金
- 类同属性不为null 拷贝赋值
- 支持向量机(SVM)算法原理