浙大中控 ST语言编程

浙大中控 ST语言编程

ID:42278201

大小:3.30 MB

页数:39页

时间:2019-09-11

浙大中控 ST语言编程_第1页
浙大中控 ST语言编程_第2页
浙大中控 ST语言编程_第3页
浙大中控 ST语言编程_第4页
浙大中控 ST语言编程_第5页
浙大中控 ST语言编程_第6页
浙大中控 ST语言编程_第7页
浙大中控 ST语言编程_第8页
浙大中控 ST语言编程_第9页
浙大中控 ST语言编程_第10页
资源描述:

《浙大中控 ST语言编程》由会员上传分享,免费在线阅读,更多相关内容在应用文档-天天文库

1、图形化组态浙江中控技术有限公司六、六、STST语言语言培训什么?•主要内容:1.ST语言概述2.ST语言的语法3.自定义函数和功能块4.ST语言中的模块调用5.ST语言在非ST段落中的应用示例ST语言Ø结构化文本语言ØIEC61131-3标准语言ØSCControl集成使用方法Ø在工程中加入ST段落编制函数和模块Ø在梯形图和功能块图中插入文本代码Ø在顺控图步的操作中使用=操作限定词Ø在顺控图转换条件中使用ST逻辑表达式数据类型变量类型关键字字节长度Ø数组布尔类型BOOL1字WORD2Ø结构双字DWOR

2、D4整数INT2无符号整数UINT2长整数LONG4无符号长整数ULONG4半浮点SFLOAT2浮点FLOAT4标识符Ø以英文字母开头Ø续以英文字母、数字或下划线Ø字符长度最多为24个字符关键字(1)关键字描述CASE…OF…ELSE…END_CASECASE语句BOOLWORDDWORDINTLONG数据类型UINTULONGSFLOATFLOATEXIT终止循环FALSE逻辑假FOR…TO…BY…DO…END_FORFOR语句FUNCTION…END_FUNCTION函数定义FUNCTION_BL

3、OCK功能块定义END_FUNCTION_BLOCKIF…THEN…ELSEIF…ELSE…END_IIF语句F关键字(2)ON逻辑真OFF逻辑假REPEAT…UNTIL…END_REPEAREPEAT语句TRETURN函数返回TRUE逻辑真VAR…END_VAR变量定义VAR_INPUT…END_VARVAR_OUTPUT…END_VARWHILE…DO…END_WHILEWHILE语句运算符(1)运算符描述类型优先级()表达式运算9.取结构成员8[]取数组成员8-单目负7NOT取反逻辑运算7*(M

4、UL)乘算术运算6/(DIV)除算术运算6MOD取余算术运算6+(ADD)加算术运算5-(SUB)减算术运算5运算符(2)>大于比较运算4>=大于等于比较运算4<=小于等于比较运算4<小于比较运算4=等于比较运算4<>不等于比较运算4AND与逻辑运算3XOR异或逻辑运算2OR或逻辑运算1表达式Ø表达式为变量、操作符、常量、函数的组合,求值结果为单个值Ø表达式的求值按运算符的优先级按顺序进行,优先级高的运算符先被处理。相同优先级的按从左到右的顺序执行实例A+B*(C-3)+FUNC1(2,D)八种常用语

5、句赋值语句Ø赋值语句将“=”右边表达式的值赋给左边的变量。Ø赋值时可使用“=”或“:=”作为运算符。举例:A=4;(*将变量A赋值为4*)B:=4;(*将变量B赋值为4*)IF语句规定了一组语句在规定的逻辑表达式为TRUE时执行。•IFA>0THEN•B=1;(*B:=1;亦可*)•ELSEIFA<-5THEN•B=2;•ELSE•B:=3;•END_IF;CASE语句CASE语句规定了整数类型的选择项,以及选择项在不同的值时的几组语句组。CASETWOF1:I=1;(*1:I:=1;亦可*)2:I=

6、2;ELSEI=3;END_CASE;FOR语句循环语句,规定了终止条件和一组语句,当终止条件没有成TRUE时,这组语句被循环执行。•FORK=1TO100BY2DO•DOSOMETHING();(*循环体*)•END_FOR;WHILE语句循环语句,规定了终止条件和一组语句,当终止条件没有成TRUE时,这组语句被循环执行。•J=1;•WHILEJ<=100DO•J=J+2;•END_WHILE;REPEAT语句终止条件的判断在语句组执行一次后才进行,所以规定的语句组至少会执行一次。当终止条件成TRU

7、E时,循环被终止。•J=1;•REPEAT•J=J+2;•UNTILJ=101•END_REPEAT;函数和功能块ST语言中可以调用程序模块:函数、功能块。Ø函数是个程序模块,只有一个输出,根据输入可以唯一确定输出。如:SFLOATADD_SFLOAT(SFLOATa,SFLOATb);Ø功能块是个程序模块,有多个输出,或输出不但和当前输入有关还和上次内部状态有关如:voidBSC(SFLOATPV,UINTN,[OUT]SFLOATMV);如何调用??函数调用语句•ret=Func(in1,in2)

8、;(*作为表达式返回值*)•Func(in1,in2);(*作为子程序处理,函数返回值为空类型*)功能块的调用语句•调用功能块时要严格按照输入输出顺序,先输入输入参数,再输入输出参数,参数顺序按照定义时的顺序。•输出参数必须是变量:FuncBlock(in1,in2,out1,out2)对于函数和功能块,系统中有已经定义好的标准库函数及标准功能块供我们使用,我们也可以使用ST语言来自己编制函数和功能块。函数定义FUNCTION(定义函数)FUNC3(函数

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。