高效学习PLC编程,使用ST语言编写控制程序无压力
大家都知道PLC编程有很多语言可选择,在学习 CoDeSys 的过程中常会问一个问题,哪种编程语言最好?
其实,没有哪种编程语言是绝对的好或不好,不同的工程应用具有不同的最佳编程方式,每种编程语言都具有其不同的特点,可根据实际工程应用的需求选用合适的编程语言。
涉及到算法部分建议选择 ST 语言,编写的程序往往简洁而高效。
简单介绍
结构化文本(ST-Struct Text)是一种高级的文本语言,在西门子中称为SCL(Structured Control Language)语言,不要与STL混淆,可以用来描述功能,功能块和程序的行为,还可以在顺序功能流程图中描述步、动作和转变的行为。
结构化文本编程语言是一种高级语言,是 CoDeSys 中最常用的一种语言,对于熟悉计算机高级语言开发的人员来说,结构化文本语言更是易学易用,它可以实现选择、迭代、跳转语句等功能。在复杂控制系统中,结构化文本可以大大减少其代码量,使复杂系统问题变得简单。
当你的14寸电脑界面装不下一行梯形图,当你做一个算术运算洋洋洒洒几十步,那个时候发现用ST还是挺香的,只是看逻辑没有梯形图直观,编译速度相对较慢。大意了,有得必有失嘛,如果你不介意那就一起了解一下吧。
程序执行顺序
使用结构化文本的程序执行顺序根据“行号”依次从上至下开始顺序执行,每个周期开始,先执行行号较小的程序行。这是PLC的特性,从上至下循环扫描,周期性执行,在PLC配置中可以分配每段程序的扫描周期。同一段程序中被赋值两次,第一次的赋值将被覆盖。
这是PLC的特性,从上至下循环扫描,周期性执行,在PLC配置中可以分配每段程序的扫描周期。同一段程序中被赋值两次,第一次的赋值将被覆盖。
表达式执行顺序
表达式中包括操作符和操作数,操作数按照操作符指定的规则进行运算,得到结果并返回。操作数可以为变量、常量、寄存器地址、函数等。
在做算术运算时,根据表格中的表达式优先级运算,小括号的优先级最高,可以将你想要先执行的表达式写在小括号内。
指令语句
结构化文本语句表主要有 5 种类型,即赋值语句、函数和功能块控制语句、选择语句、迭代(循环)语句、跳转语句。
转发是最大的鼓励!谢谢您的支持!
小贴士
PLC专属资料: 含有从入门到高级所有PLC学习资料(三菱/西门子/欧姆龙) ,电气经典18本大全书,历年电气考试真题、电气必备实训仿真软件、电气自动化行业各类型技术手册!
西门子PLC结构化编程详解,电气小白建议收藏!
作为一个自动化行业的从业者,你或多或少应该听过结构化编程。那么什么是结构化编程呢?它是将复杂自动化任务分割成与过程工艺功能相对应或可重复使用的更小的子任务,将更易于对这些复杂任务进行处理和管理。这些子任务在用户程序中以块来表示。因此,每个块是用户程序的独立部分。
在进行PLC编程的时候,我们常用的方式有,线性化编程、模块化编程以及结构化编程。线性化编程只使用一个主程序,所有的程序指令都在主程序中执行,适合小型自动化项目。模块化编程是将一个自动化项目分割成不同的功能模块,比如一个自动化项目可以分成手动、自动、报警等不同的功能,这些不同的功能然后再统一被主程序调用。结构化编程与模块化有些类似,都是使用多个子程序,但是结构化编程将某些可重复性的任务,做成可复用的程序块,方便移植使用。为了直观的理解这三种编程方式的区别,下面以两条流水线的起保停控制作为举例说明。使用的硬件信号表1所示:
表1:IO信号表
01线性化编程
线性化的编程方式,所有的程序都在OB1中,如图1所示:
▲ 图1 线性化编程
02模块化编程
模块化的编程方式,将两条流水线分别在不同的子程序中进行调用,如图2、图3所示:
▲ 图2 主程序调用子程序
▲ 图3 流水线1执行程序
▲ 图4 流水线2执行程序
03结构化编程
结构化编程,则是通过建立FB程序块,内部的功能在FB中实现,该FB块可重复使用,当进行FB程序块调用的时候,会自动生产对应的DB数据块,程序进行控制的时候,定义具体的管脚即可。具体的结构化编程如图所示:
▲ 图5 OB1的程序调用
▲ 图6 流水线1的程序
▲ 图7 流水线2的程序
▲ 图8 流水线功能的背景块
总结
在上文中,对两个流水线的起保停控制,分别用不同的编程方式进行了举例。每种编程方式大致有了一定的认识,由于举例的程序比较简单,所以程序的优缺点不是那么的明显,但是随着项目的程序越来越复杂,编程的工作量越来越大,结构化的编程方式优势会更加明显,它的易读性、复用性可以提高工作的效率。在PLC的编程过程中,推荐大家使用结构化和模块化的混合编程方式。
来源:技成培训网,作者:技成-刘郴,未经授权不得转载!
评论处大家可以补充文章解释不对或欠缺的部分,这样下一个看到的人会学到更多,你知道的正是大家需要的。
如何获取 电气热门资料?
操作指引如下!
相关问答
三菱plc编程框架流程?
三菱PLC编程框架流程一般包括以下几个步骤:1.确定需求:明确需要实现的功能和要达到的目标。2.设计程序结构:根据需求确定PLC程序的整体结构,包括输入输出模...
简易plc怎么编程?
1.编程简易PLC是可以的。2.因为简易PLC相对于复杂的PLC而言,功能较为简单,编程也相对容易上手。它通常具有简单的指令集和易于理解的编程界面,不需要过多的...
PLC编程提高效率和准确率的方法?
系统判断该提问价值不高,回答后预期流量较低!!呵呵,这种问题判断价值不高?那什么问题判断价值高??是零基础如何快速学会PLC,还是本人精通S7-1200,多久能...既...
plc标准化程序框架?
有标准化程序框架。因为PLC(可编程逻辑控制器)在工业自动化领域中被广泛应用,为了提高开发效率和系统可维护性,制定了一些标准化程序框架。这些框架包括了一...
三菱plcFX系列怎样用ST方式编程?
使用GXIECDeveloper软件或者GXWorks软件。;使用GXWorks2编程软件可以用ST语言编程。;补充:本书主要内容包括15章,详细讲述了三菱FX2N系列PLC的结构原理、...
plc编程知识点?
1、低压电器是指工作电压在直流1500V或交流1200V以下的各种电器。2、触器按其主触头通过电流的种类,可分为直流接触器和交流接触器。3、继电接触器控...
什么是三菱结构化编程?
1.就是三菱模仿欧美系PLC编程软件做的一种图形界面。2.简单点说。放一个块。有输出有输出。有EN。什么的。3.就是像西门子的S7-300。不是有三种模式么。梯...
plc的内部系统配置?
1.PLC的基本组成PLC专为工业场合设计,采用了典型的计算机结构,主要是由CPU、电源、存储器和专门设计的输入输出接口电路等组成。按钮继电器触点输入单元...
plc指令集架构?
PLC的指令集是通过编程语言实现的,主要包括:梯形图语言(LD)、指令表语言(IL)、功能模块图语言(FBD)、顺序功能流程图语言(SFC)及结构化文本语言(ST)...PLC的...
plc分支结构怎么写?
下折线,之后和非分支写法相同。下折线,之后和非分支写法相同。