线下实训
HOME
线下实训
正文内容
比较电路plc编程 PLC编程知多少?有人用5种语言来编写一小段代码来比较
发布时间 : 2025-04-21
作者 : 小编
访问数量 : 23
扫码分享至微信

PLC编程知多少?有人用5种语言来编写一小段代码来比较

图片来源:宏德自动化

作者:Frank Lamb

梯形图逻辑通常是PLC使用最多的图形编程语言,但在某些特定的编程应用中其他语言可能更适合。

在美国,大多数参与可编程逻辑控制器 (PLC)编程和维护的人员都倾向于认为:梯形图逻辑是PLC唯一的编程语言。这种理念在很大程度上是由PLC的历史、以及美国的工业控制市场是被以梯形图逻辑为主要语言的品牌统治所造成的。

在计算机和便携式计算机广泛应用于PLC编程之前,经常使用手持式编程器将程序输入到 PLC中。在此之前,通常需要绘制用于不同指令的电气图。这就像在PLC出现之前,如何连接原始继电器逻辑一样。在手持设备上,有时会用符号表示不同指令,但是在图形设计的背后,是基于文本的语言。

1994年,国际电工委员会(IEC)制定了一个可用于定义和规范PLC编程系统的标准 IEC 61131-3。除了形式化定义诸如计时器和计数器之类的指令外, 该标准还定义了5种编程语言。

指令表(IL) 是基于文本的语言,梯形图逻辑经常被转换成相同的语言。有些厂商仅将其用作机器代码的过渡,最终会编译成在处理器中执行的语言。另外有一些厂商则使用指令列表作为主要语言,并添加了无法用梯形图逻辑表示的其它指令(例如语句列表)。

图 1 :指令列表通常用于复杂的数学任务和搜索

梯形图逻辑(LAD) ,是PLC使用得最多的图形编程语言。它是从继电器逻辑电路图演变而来。梯形图逻辑是在常用的继电器与接触器逻辑控制基础上简化了符号演变而来的,具有形象、直观、实用等特点。

图 2 :梯形图逻辑是最常用的PLC编程 , 与继电器电路图最为相似。

功能块图(FBD) 是另一种图形编程语言, 可用于包括PLC和分布式控制系统(DCS)在内的一些控制器。它使用不同类型的块(例如与、或、比较、数学计算、计时器和计数器), 来描述输入和输出变量之间的功能。输入从 设备或其它模块的输出馈入一个模块 ;输出将数据传送到下一个块或变量。

图 3 :功能框图非常适合安全电路 / 安全PLC

结构化文本(ST) 是一种类似于计算机语言(例如Pascal)的高级语言。ST语言中的表达式由运算符和操作数组成。操作数可以是常量、变量、函数调用或另一个表达式。表达式的计算通过执行具有不同优先级的运算符完成。有最高优先级的运算符先被执行, 然后依次执行下一个优先级的运算符,直到所有的运算符被处理完。有相同优先级的运算符按从左到右的顺序执行。

图 4 :结构化文本可以帮助完成复杂的数学任务和搜索。

顺序功能图(SFC) 语言是基于一种被称为Grafcet的古老逻辑语言,该语言基于二进制Petri网络。它可用于编制复杂的顺控程序,又称为状态转移图或功能表图,是描述控制系统的控制过程、功能和特性的一种图形,也是设计顺序控制程序的工具。它是一种被称为步的块语言,带有相关逻辑条件切换。语言中的步可以是活动或不活动的,并且逻辑可以并行运行。利用这种先进的编程方法, 初学者也很容易编出复杂的顺控程序,大大提高了工作效率,也为调试、试运行带来许多言传的方便。

图 5 :顺序功能图对于分段逻辑很有用。

几年前,我突发奇想 :如果用所有5种语言,来编写一小段代码进行比较,将会非常有趣。逻辑建立自动和手动模式,然后在3秒钟后激活“循环”位。它是通用的,但是基于我使用的PLC平台(图1至图5)。语法和代码显示方式会因软件品牌和平台而异。

指令和注释,通常使用带颜色的编码, 以便于阅读。通常,语言包会额外收费或包含在编程软件的“专业”版本中。

不同语言有不同的用途。梯形图仍然适用于直接的“位操作”逻辑。指令列表和结构化文本通常用于更复杂的数学任务和搜索。功能块图可以很好地用于安全电路/ 安全 PLC。顺序功能图对于分段逻辑很有用。

在下一次编写复杂程序时,请尝试考虑使用某些“其它”类型的 PLC语言,因为这可能会使工作变得更容易。

关键概念:

■ 在美国, 梯形图逻辑是最常用的 PLC编程语言。

■ 指令列表、功能块图、结构化文本和顺序功能图都是有用的编程语言,也可能比梯形图更合适,这都取决于具体的应用程序。

思考一下:

除了梯形图逻辑外, 您还使用过哪种其它编程语言,为什么会使用它?

- END -

本文来自于控制工程中文版(CONTROL ENGINEERING China)2020年01-02月刊《封面》栏目,原标题为:你使用什么语言编程 PLC ?

PLC编程很难吗?其实用对方法,就很容易!附5大PLC编程技术方法

根据下图的三相交流电动机正反转控制的主电路,设计一个PLC控制电动机正停反的控制系统。控制要求如下:

(1)正常情况下,按启动按钮SB1,电机正转,按下反转启动按钮SB2,电机反转。

(2)电机启动后,按下停止按钮SB3并等待5秒钟之后,才可以改变电动机的旋转方向;

(3)如果SB1和SB2同时按下,电动机停止转动,并且不起动,同时报警灯L1亮1秒暗1秒不断闪烁。此时按SB3停止按钮进行复位。

首先我们先确定一下按钮、KM的使用辅助触点情况,这里是正反转的主回路,主回路必须有互锁电路,其他的按钮用常开触点。

下面是PLC的输入输出点表:

根据题意(1) 编程:这里根据题意1,只需2个自保持电路即可。

题意(2) 要求按停止按钮5秒后才能改变电机方向,所以这里需设置一个标志位,这里用M0.0。

并且加上程序互锁电路,具体如下:

首先在2个自保持回路中加入互锁电路——网络1的Q0.1常闭点和网络2的Q0.0常闭点。题意2说按下停止按钮后5秒,才能按启动按钮,所以网络3按下I0.2停止按钮后,M0.0得电自保持,计时器T37计时5s后,将M0.0的自保持回路停掉。并且在网络1和网络2中加M0.0的常闭点,使M0.0得电时网络1和网络2即使按了正转按钮或者反转按钮也不会使Q0.0或Q0.1得电。

题意(3) 要求SB1和SB2同时按下,电动机停止转动,并且不起动,同时报警灯L1亮1秒暗1秒不断闪烁。编程如下:

这次增加了网络4/5/6,网络5和6就是利用2个计时器产生一个一秒脉冲的小程序,SM0.0为特殊位,其功能为一直得电。网络4就是利用M0.1将网络1/2/3锁死,也就是说M0.1得电网络1.2.3是不起作用的。其原理与上一小结的M0.0一样。

以上就是这个实例的全部编程。

正所谓万丈高楼平地起,如果你叫小编一口气编出来,小编也是很为难的。但是,将题意一点点拆分,一点点地把所需的功能写入,最后一定可以合你心意。最后你看看编完的程序与最初的程序差了多少?

接下来,小编给大家介绍5种PLC编程方法:经验法、解析法、图解法、技巧法及计算机辅助设计法。

(1)经验法 :

运用已掌握的成功设计经验,结合实际的情况,选择与实际情况类似的一个或若干个成功的程序,或具有一些典型功能的标准程序作为“样机”,对“样机”逐一修改,直至满足新的任务要求。在工作过程中,应多收集与积累这些“样机”,从而不断丰富自己的经验。

(2)解析法 :

PLC用于逻辑控制的编程方法可根据组合逻辑或时序逻辑的理论,并运用相应的解析方法,对其进行逻辑关系的求解。然后,再根据求解的结果,或画成梯形图,或直接编写指令表。解析法比较严密,可以运用一定的标准,使程序优化与算法化,并可避免编程的盲目性,是一种比较有效的方法。

(3)图解法:

图解法是靠画图进行PLC程序设计。

常见的主要有3种方法:梯形图法、波形图法以及流程图法。

梯形图法是最基本的方法。无论是经验法,还是解析法,若用梯形图编写PLC程序,就要用到梯形图法。

波形图法很适合于时序控制电路。它先把对应信号的波形画出,再根据时间用逻辑关系去组合,就可以很容易地把电路设计出来。

流程图法是用框图来表示PLC程序的执行过程及输入条件与输出间的关系。在步进控制中,用它进行设计是很方便的。

(4)技巧法

技巧法是在经验法及解析法的基础上,运用技巧进行编程,以提高进行编程的质量。巧妙地使用PLC所提供的多种功能指令进行编程,是对已有经验的“升华”,做到熟能生巧,实现创造性的编程。

(5)计算机辅助设计

PLC可通过上位连接单元与微型计算机连接,并运用微型机进行联机辅助编程。计算机辅助编程,应有相应的软件做支持。现有的编程软件可把梯形图翻译成指令表。编程时,可先在计算机屏幕上设计梯形图,然后再将该梯形图转换成对应的指令表。这种编程软件有现成的,例如,日本三菱公司的MEDOC和GPP等

总结以上5种编程方法是不能截然分开的。如经验法、解析法、技巧法都要用到图解法,而技巧法又是经验法的升华。

转发是最大的鼓励!谢谢您的支持!

小贴士

PLC专属资料: 含有从入门到高级所有PLC学习资料(三菱/西门子/欧姆龙) ,电气经典18本大全书,历年电气考试真题、电气必备实训仿真软件、电气自动化行业各类型技术手册!

相关问答

plc编程比较指令?

数据比较指令就是比较两个数据大小,真假等变量,具体那个数据是时间还是计数或者是采集自模拟口的模拟量,都是可以的。但前提是数据类型必须符合要求你要...

信捷plc计数+比较指令如何编程?

学习plc的话,首先要对整个目标系统有个比较清晰的了解,对动作流程,检测数据,控制节点了解详实,通过模拟或者实际测试,发现总结实际运行中的不足。另外,对...

在触摸屏上输入一个数和PLC内一个数比较,如何编程?

屏上建一下数字输入控件属性里填写参数,挂起对应PLC程序里的地址,VW、VD都可以,看你字节长度。就这样。。。屏上建一下数字输入控件属性里填写参数,挂起对...

plc比较指令能循环吗?

可以使用循环指令(LOOP)可以多次重复执行包括比较指令的程序段,由累加器1确定重复执行的次数,即以累加器1的低字为循环计数器。LOOP指令执行时,将累加器1字...

三菱plc中比较指令的具体用法?

比较指令是用在常开触点的指令,有LD>;LD<;LD>=;LD<=;LD==;LD<>(不等于);有这6条指令,OR和AND也同样有这6条指令,共18条比较指令,...

plc编程的“与、或、非”三者是什么意思?

与:两个触点的串联或:两个触点的并联非:取反也是三种逻辑电路的简称:与门AND,或门OR,非门NOT。PLC的基本概念:早期的可编程控制器称作可编程逻辑控制器...

plc编程比较指令用途?

机内数据的存取管理。在数据运算过程中,机内的数据传送是不可缺少的。运算可能要涉及不同的工作单元,数据需在他们之间传送;运算可能会产生一些中间数据,这...

三菱plc两个程序怎么比较?

1.可以比较2.三菱PLC的两个程序可以通过将它们导入到编程软件中,然后使用软件提供的比较功能进行比较。这样可以逐行比较两个程序的代码,找出差异之处。3...

plc编程用amd还是intel?

无所谓,取决于个人喜好和使用场景。因为PLC编程主要是针对工控领域的,而AMD和Intel是处理器品牌,对于PLC编程来说并没有哪个品牌更好或更适合。选择使用哪个品...

PLC(可编程序控制器)一共有几种编程方式?

你说的应该是编程语言分几种吧。一般有以下几种:梯形图(LD语言)也有叫LAD语言、顺序功能图(SFC)语言、功能块图(FBD)语言,指令表(IL)语言和结构文本(S...三、F...

 七星彩什么时候开奖  有没有成人网站 
王经理: 180-0000-0000(微信同号)
10086@qq.com
北京海淀区西三旗街道国际大厦08A座
©2025  上海羊羽卓进出口贸易有限公司  版权所有.All Rights Reserved.  |  程序由Z-BlogPHP强力驱动
网站首页
电话咨询
微信号

QQ

在线咨询真诚为您提供专业解答服务

热线

188-0000-0000
专属服务热线

微信

二维码扫一扫微信交流
顶部