锐单电子商城 , 一站式电子元器件采购平台!
  • 电话:400-990-0325

PLC编程语言梯形图与结构化文本的比较

时间:2023-04-05 05:07:00 tp1608j继电器模块

陈世委

[摘 本文结合开化华埠污水厂自控编程中遇到的实际情况,研究了顺序控制逻辑和数据算法中常用梯形图语言和结构化文本的实现情况,分析总结了其优缺点。

[关键词]PLC编程语言;梯形图;结构化文本;

中图分类号:TP273 文献标识码:A 文章编号:1009-914X(2017)08-0179-02

0 引言

可编程控制器(Programmable Logic Controller)简称PLC,它是一种用编程改变控制功能的控制器。随着计算机技术、软件技术、芯片技术术、软件技术、芯片技术、互联网技术的发展,美国就率先研发成功,PLC软硬件性能大大提高。随着工业技术的发展,特别是中国制造业的兴起和机器更换等工业化进程的深化,PLC应用越来越广泛,经济价值越来越明显。

在PLC发展过程中,国际电工委员会(简称IEC)指定并公布于1993年PLC相关标准称为IEC61131。在IEC61131标准第三部分阐述规范PLC该部分的编程语言标准为IEC61131-3。标准规范PLC编程语言的五种类型是:顺序功能图(SFC)、梯形图(LAD)、功能块图(FBD)、指令表(IL)、结构化文本(ST),PLC编程语言各有优缺点。如何合理选择?PLC编程语言将直接影响PLC编辑和执行程序的效率。

1 PLC编程语言

IEC61131-3标准规范了PLC五种编程语言如下:

1.序列功能图为开关量控制系统的功能描述提供了一种组织程序的图形方法,可以轻松绘制序列控制梯形图程序。

2.梯形图使用最多。PLC图形编程语言。梯形图与继电器控制系统的电路图非常相似,直观易懂,工厂熟悉继电器控制的电气人员很容易掌握。

3.功能块图是一种类似于数字逻辑门电路的编程语言,有数字电路基础的人很容易掌握。

4.指令表是一种类似于微机汇编语言中指令的助记符表达式。指令表程序难以阅读,逻辑关系难以一目了然。早期使用手持式编程器应用较多。

5.结构化文本(ST)是IEC一种由6113-3标准创建的特殊高级编程语言。与梯形图相比,它可以实现复杂的数学操作,编写的程序非常简单和紧凑。

在水行业的PLC梯形图和结构化文本是控制功能编程过程中应用最广泛的语言。以下是两种编程语言的深入讨论。

1.1 梯形图

梯形图语言是PLC编程语言是程序设计中最早、最常用的语言。类似于继电器线路的编程语言。PLC其起源是替代维护和升级复杂的继电器电路。由于电气设计师熟悉继电器控制,梯形图编程语言得到了广泛的欢迎和应用。梯形图编程语言的特点是:与电气操作原理图对应,直观对应;与原继电器控制一致,电气设计师易于掌握。

1.2 结构化文本

结构化文本语言是一种编程语言,用结构化述程序的编程语言。它是一种类似于高级语言的编程语言。结构化文本编程语言与BASIC语言、PASCAL语言或C语言等高级语言相似,但为方便应用,简化了句子的表达方法和类型。结构化文本编程语言的特点:采用高级语言编程,可完成更复杂的控制操作;需要一定的计算机高级语言知识和编程技能,对工程设计师要求较高。

2 梯形图与结构化文本语言的比较

在PLC编程过程中选择的编程语言并不是绝对的。大多数程序控制功能梯形图和结构化文本都可以实现,但在不同的情况下,不同的编程语言将显示不同的优缺点,我们通过几个例子进行分析。本文PLC基于程序案例GE的PAC3i硬件环境为系列PAC3i的IC695CPE310 CPU编程环境为模块Proficy Machine Edition(简称ME)。

2.1 水泵自逻辑

水泵自锁启停逻辑是PLC编程学习过程中最常用的案例也是水处理行业设备控制中使用最广泛的逻辑。

具体要求为:当设备处于远程状态时,设备的运行状态可由上位机设置为中央控制或自动控制。在中央控制模式下,上位机鼠标操作设备在自动控制模式下启动或停止PLC逻辑程序控制设备的启停。

梯形图编程如图1所示:

如表1所示:

梯形图编程实现上述功能简单明了,程序逻辑在此不做分析。

结构化文本实现如下:

IF rem AND ((PC AND (start OR OutQ) AND NOT stop) OR (auto AND auto_start)) AND NOT fault THEN

OutQ:=1;

ELSE

OutQ:=0;

END_IF;

虽然结构化文本也实现了设备不同控制模式下的启停控制功能,但控制逻辑不够直观,甚至难以理解。当查询设备故障时,很难找到故障点。

可以发现,在设备的顺序控制逻辑中,梯形图更直观、更简单,更方便查询和处理故障。结构化文本更复杂,逻辑形式更抽象,查询和处理故障,难以开始,直观性和可操作性较差。

2.2 模拟量平均值信号处理

在信号采集过程中,由于各种因素的影响,模拟量信号波动。当信号波动时,除了消除硬件上的信号干扰外,各种滤波程序通常用于软件来实现信号采集的稳定性。平均值计算是一种常用的方法。

以流量为例,需要使用最近五次收集的瞬时流量的平均值作为瞬时流量的信号。

梯形图编程如图2所示:

如表2所示:

以上程序分为三部分:

1.每个扫描周期将存储的改变周期的流量值赋予上一个扫描周期的流量值MOVE REAL实现块功能;

2.累积五个扫描周期的流量值,并使用它们ADD REAL块功能实现;

3.计算五个扫描周期流量累加值的平均值DIV REAL 实现块功能。

结构化文本编程如下:

///将本扫描周期的流量值赋予上一个扫描周期

for i:=0 to 3 do

FET[i 1]:=FET[i];

end_for;

FET[0]:=FET_OR;

//计算总值

for i:=0 to 4 do

FET_SUM:=FET[i] FET_SUM;

end_for;

//计算平均值

FET_AVG:=FET_SUM/5.0;

结构化文本的逻辑与梯形图基本相似,但结构化文本使用高级计算机语言for循环实现,梯形图只能通过赋值、相加、相除等原始功能块来实现。由于现在PLC扫描周期为毫秒甚至微秒。如果要计算100个扫描周期的平均模拟量,则应不断叠加梯形图编程,程序将变得极其巨大和复杂。使用结构化文本只需简单修改for100个扫描周期的平均值平均值计算,不仅修改方便,程序长度几乎没有变化,计算逻辑简洁明了。

3 结论

通过以上两种PLC对于常用功能程序的分析,我们分别用梯形图和结构化文本进行编程和相关分析,可以清楚地区分:当实现顺序控制逻辑时,梯形图编程可以使程序逻辑清晰,维护方便;当实现数值计算和算法处理时,结构化文本的使用可以发挥先进计算语言的优势,简单明了地实现更复杂的数据计算和算法实现。

在实际应用过程中,只有熟悉和掌握不同PLC合理利用编程语言,深刻理解它们之间的优缺点PLC编程语言,结构简单,逻辑清晰,高效可靠PLC程序。

参考文献

[1] 娄勇.PLC比较常用的三种编程语言[J].魅力中国,2010,09(下):77.

[2] 邬建新.一种基于PLC梯形图的结构化程序设计方法[J].2006(8)电工技术:56.

锐单商城拥有海量元器件数据手册IC替代型号,打造电子元器件IC百科大全!

相关文章