===CTU===
【CU】计数器+1
【RESET】复位计数值
【PV】设定计数值
【Q】输出,数值到达设定值后,导通
【CV】当前计数值
===CTD===
【CD】计数器-1
【LOAD】复位计数值
【PV】设定计数值
【Q】输出,数值到达设定值后,导通
【CV】当前计数值
(二)通电延时、断电延时定时器。TON通电延迟、TOF断电延迟
TON和TOF所需的参数一样,TON通电延时是:设定时间到才通电。TOF断电延时是:设定时间内一直通电,设定时间到断电
我的模板可以实现LED闪烁0.5秒/次
===TON/TOF===
【IN】定时器开始工作
【PT】设定时间:开头以T#,后面接时间,单位S/MS
【Q】定时时间到,通电/断电
【ET】当前计时时间(需要创建一个Time的数据类型,用于保存时间)
ST语言常用命令
这一部分就和c语言非常类似了,一样用if、for、while等函数,如果有编程语言基础,应该很快上手
(一)赋值
C语言中的赋值是 "=",在ST语言是 ":=",注意要加个英文的冒号 ":"
对于PLC来说,我们可以直接将灯、按钮、辅助继电器等元器件直接赋值0或1,相当于控制开启或关闭,非常的方便
(二)IF判断语句
注意IF语句的判断语句中,不用c语言的"=="而是用一个"="即可
执行语句后要加分号";"
还有一个区别是判断语句后面要加 "THEN",末尾则是 "END_IF"
可以参考我的模板,可以实现按下按钮X001,Y001灯亮,抬起按钮则Y001灯灭
(二)FOR循环语句
FOR语句,首先定义一个数的初值,如D50:=0,TO是结束值,BY是每次增加的数,DO是固定加在最后的
我的模板实现,每次D100会自己加101,因为每次循环由D50从1加到100的过程,D100在100次循环就从1加到101,所以FOR完整一次循环D100会加101每次
(三)WHILE循环语句
WHILE语句相对来说比较简单,但是注意WHILE循环不能进入死循环,否则PLC会报错不执行
模板程序可以实现M10 = 1时,D10自加到5000则跳出循环
(四)注释
注释对于写代码来说,非常重要,程序多起来,可能前面写了什么都忘光了
ST语言的注释 (*注释注释*)
总结
通过本文,可以对新手朋友们对ST语言有个大概的了解,当然ST语言的内容有非常多,一篇文章肯定讲不完,里面很多函数都和C语言类似,稍微变通一下就可以学会
ST语言、SFC、梯形图各有各的优缺点,大家可以根据自己的需求和项目开发要求,选择合适自己的语言
我推荐大家是先入门简单的梯形图、SFC后再学习ST语言,这样可以更好的了解PLC,更好的完成项目
作者: 小恶魔owo, 来源:面包板社区
链接: https://mbb.eet-china.com/blog/uid-me-4067534.html
版权声明:本文为博主原创,未经本人允许,禁止转载!
文章评论(0条评论)
登录后参与讨论