0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

PLC Ladder logic语言的基础知识

得捷电子DigiKey 来源:得捷电子DigiKey 2024-07-11 10:32 次阅读

文章概述

PLC作为工业自动化中不可或缺的重要组成部分,在生产过程中发挥着关键的作用。特别是Ladder Logic语言作为PLC编程的重要工具,为工业系统的控制提供了精准而可靠的支持。 本文详细阐述了PLC编程的基本原理和功能,深入介绍了Ladder Logic语言的定义、特点、基本语法及其在实际工业系统中的应用。此外,还探讨了PLC特殊块功能和用户定义功能块的概念及其作用。

‍在当今自动化产业中,可编程逻辑控制器(PLC)扮演着至关重要的角色。而Ladder logic(梯形逻辑)语言可以被视为基于规则而非过程的语言,被广泛用于编程PLC中,特别是需要顺序控制过程或复杂的自动化系统。

本文讲述关于PLC -Ladder logic语言基础,希望能帮助你更好的理解PLC的逻辑。

PLC是什么?

PLC(Programmable Logic Controller),即可编程逻辑控制器,是一种专为工业环境设计的数字运算操作电子系统。它使用可编程存储器存储执行各种操作(如逻辑运算、顺序控制、定时、计数和算术运算)的指令,并通过数字或模拟输入输出来控制各类机械设备或生产过程。

a08960aa-3f22-11ef-a4c8-92fbcf53809c.png

图 1 :这台集成显示屏的 Crouzet EM4 PLC正在运行经典的 “Hello World!” 计划。

PLC的基本功能是通过逻辑将输入信号转换为设备输出。这类似于键盘输入字符后在屏幕上显示输出。在工业环境中,PLC用于控制各种设备和过程,例如根据传感器信号使机器人执行复杂动作。

什么是Ladder Logic语言?我们先来了解一下PLC编程语言的种类,根据IEC61131-3定义。这包括:

梯形逻辑(LL,Ladderlogic)

功能框图(FBD,FunctionBlock Diagram)

顺序流程图(SFC,SequentialFlow Chart)

结构化文本(ST,StructuredText)

指令列表(IL,InstructionList)

其中Ladder logic语言应用很广,他可以快速理清PLC的逻辑规则。Ladder logic语言的排列方式类似于梯子

举例:如下图所示的一个梯形图。这个是 Modicon PLC 程序用于单个按钮控制过程。

a0ba403a-3f22-11ef-a4c8-92fbcf53809c.png

图 2 :在Schneider Modicon PLC上实现的梯形逻辑程序

创建一个新的梯形图时,首先可以看到两条竖线(如图中橙色线),我们就是在这两条竖线之间进行梯形图的编写程序。

什么是Rung?

如图2梯形图中,每一条水平线被称为一个Rung。Ladder logic符号就放置在这些水平线上。每条Rung代表一条规则,我们可以从左到右、从上到下阅读这些逻辑和规则。

Ladder logic语言基本语法

在对PLC进行编程之前,请先查看以下编程的基本符号。符号还附带地址或值,可用于指定输入、输出、定时器、计数器和其他特定指令。

Ladder logic符号

Rung 输入

a10bb276-3f22-11ef-a4c8-92fbcf53809c.png

Rung输出

a121f108-3f22-11ef-a4c8-92fbcf53809c.png

为了更好理解,你可以想象“Rung 输入”是一个按钮/开关,而“Rung输出”是一个灯泡/负载。内部的斜线表示常开/常闭状态。

逻辑 “与”(AND)

a136518e-3f22-11ef-a4c8-92fbcf53809c.png

上述实现了功能:电机开门= “开关 1 触发“与 ”开关 2触发“,即当开关 1与开关 2同时触发的时候,电机开门。

可以想象成,两个安保人员,各拿一把银行金库的钥匙。只有两个人同时转动钥匙时,金库门的电机运作,把门打开。

逻辑“与非”(AND with NOT)

a1438714-3f22-11ef-a4c8-92fbcf53809c.png

上述实现了功能:电机开门= “开关触发”与非“障碍物触发”,即当开关触发,但是障碍物没有触发的时候,电机开门。

可以想象成,两个安保人员,一个有银行金库的钥匙,一个巡逻是否有坏人。只有当时转动钥匙并且没有坏人的时候,金库门的电机运作,把门打开。当然,障碍物也可以是某个停止按钮没有被按下。

逻辑“或”(OR)

a15e4d24-3f22-11ef-a4c8-92fbcf53809c.png

上述实现了功能:电机开门= “开关1触发”或“开关2触发”,即当开关1和开关2只要有一个触发的时候,电机开门。

可以想象成,两个安保人员,两个人都有银行金库的钥匙。任何一个人转动钥匙,金库门的电机运作,把门打开。

组合逻辑

a17876fe-3f22-11ef-a4c8-92fbcf53809c.png

上述实现了功能:电机开门= (“开关1触发”或“开关2触发”)与非“障碍物触发”,即当开关1和开关2只要有一个触发的时候,并且障碍物没有触发的时候,电机开门。

可以想象成,三个安保人员,两个人有银行金库的钥匙,一个人巡逻是否有坏人。任何一个人转动钥匙并且没有坏人的时候,金库门的电机运作,把门打开。

举个实际应用:空调系统

a18c8eb4-3f22-11ef-a4c8-92fbcf53809c.png

图3:空调系统

我们可以看到有两条规则:

Rung1:实现功能:空调打开 = “开关触发” 与 (“温度传感器触发” 或“湿度传感器触发“),即当开关触发并且温湿度传感器只要有一个触发的时候,空调打开。

Rung2: 实现功能:制冷打开=“空调触发”与非“制热触发”,即空调打开并且没有按下制热按钮的时候,执行制冷

注意:在第二条规则里,空调从规则一里的执行器变成了规则二里的一个检查器。规则二里的“制冷”,如果继续写下一条规则的时候,也可以变成一个检查器,馈送到另一个输出设备比如“压缩机”。这种系统允许将非常复杂的逻辑设计分解和评估。

PLC具有许多类型的特殊块。它们包括定时器、算术运算符和比较器、表查找、文本处理、PID控制和滤波等功能。

更强大的PLC可以在一组内部存储位置上操作,并在一定地址范围内执行操作,例如模拟物理顺序鼓控制器或有限状态机。在某些情况下,用户可以定义自己的特殊块,这实际上是子程序或宏。丰富的特殊块库以及高速执行使得PLC能够实现非常复杂的自动化系统。

用户定义功能块(UDFB)

用户定义功能块(UDFB)之于可编程逻辑控制器(PLC)就像功能之于微控制器一样。两者都是用于简化代码的结构,使其更容易编写,故障排除和维护。它们也是允许代码在将来被重用的基本结构。

UDFB实例:

我们在Arduino Opta 中使用的简单UDFB的构造。该UDFB采用Arduino PLC集成开发环境 (IDE) 1.0.3.0版本开发。

a1b06b54-3f22-11ef-a4c8-92fbcf53809c.png

图 4 :UDFB实例

如上图,我们将构建如图1中突出显示的UDFB。这个块被用作状态机的一部分。它的作用是充当看门人。如果机器的uiState状态变量等于1,并且启用了该块,则执行该行的其余部分。从C编程的角度来看,这就像一个以uiState为索引的开关语句。请注意,前缀ui是匈牙利语的无符号整数表示法。

这种特殊的构造导致了一个相对干净的梯形逻辑。Rung 3的英文描述是这样的:

如果UDFBFBuiEqual被启用并且机器状态(uiState)继续

另外,如果主开关是打开的

同样,如果瞬时选择开关处于前进位置,则切换到状态2

否则,如果瞬间选择开关处于反向位置,则切换到状态4

总结

作为工业自动化不可或缺的组成部分,PLC在现代工业中的应用越来越广泛。梯形逻辑已经发展成为一种编程语言,了解Ladder logic语言,可以帮助你更快理解PLC的逻辑。

小编的话

正如本文所介绍的,Ladder Logic语言以其直观、易懂、灵活的特点在PLC编程中占据重要地位。通过图形化的表示方法,它简化了复杂的控制逻辑,使得工程技术人员能够更快速地理解和编写PLC程序。因此,LadderLogic语言成为许多工程师的首选编程方式。您对PLC编程语言的特性及其应用有哪些经验或疑问?

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • plc
    plc
    +关注

    关注

    5008

    文章

    13166

    浏览量

    462126
  • 工业自动化
    +关注

    关注

    17

    文章

    2306

    浏览量

    67181
  • 可编程逻辑控制器

    关注

    4

    文章

    265

    浏览量

    25909

原文标题:谈PLC编程之前 先聊一下Ladder logic语言

文章出处:【微信号:得捷电子DigiKey,微信公众号:得捷电子DigiKey】欢迎添加关注!文章转载请注明出处。

收藏 人收藏

    评论

    相关推荐

    C语言基础知识科普

    C语言是单片机开发中的必备基础知识,本文列举了部分STM32学习中比较常见的一些C语言基础知识
    发表于 07-21 10:58 1877次阅读

    C语言基础知识(5)--循环语句

    C语言基础知识(5)--循环语句
    的头像 发表于 06-15 10:18 2107次阅读
    C<b class='flag-5'>语言</b><b class='flag-5'>基础知识</b>(5)--循环语句

    c语言基础知识

    c语言基础知识
    发表于 08-17 17:03

    PLC入门必看基础知识

    PLC基础知识(PLC入门必看)与C语言有什么关系_plc可以用c语言编程吗_
    发表于 09-09 08:39

    PLC可编程序控制器基础知识

    PLC可编程序控制器基础知识 PLC可编程序控制器:PLC英文全称Programmable Logic
    发表于 06-16 15:25 1.4w次阅读

    PLC基础知识简介

    PLC基础知识简介 在自动化控制领域,PLC是一种重要的控制设备。目前,世界上有200多厂家生产300多品种PLC产品,应用在汽车(23%)、粮
    发表于 06-20 11:52 1206次阅读

    《微机原理与汇编语言》微机基础知识

    《微机原理与汇编语言》微机基础知识
    发表于 12-14 15:07 0次下载

    免费教程PLC基础知识大全

    免费教程PLC基础知识大全
    发表于 12-17 17:22 32次下载

    PLC基础知识学习,不看后悔

    PLC基础知识学习,不看后悔
    发表于 09-09 08:43 103次下载
    <b class='flag-5'>PLC</b><b class='flag-5'>基础知识</b>学习,不看后悔

    三菱PLC分类及型号的基础知识

    三菱PLC分类及型号的基础知识
    发表于 01-02 16:20 2次下载

    C语言基础知识讲解

    C语言基础知识讲解
    发表于 05-19 17:39 13次下载

    单片机C语言基础知识

    单片机C语言基础知识
    发表于 10-08 09:30 7次下载

    plc编程入门基础知识

     PLC编程入门基础知识包括以下几个方面:   1. 了解PLC工作原理和结构:PLC是由中央处理器、存储器、输入/输出模块、编程设备等组成的专用计算机。应该掌握基本的结构及动作
    发表于 04-14 15:03 1.2w次阅读

    plc编程入门基础知识 plc编程语言有几种

    PLC(Programmable Logic Controller)是可以根据预设逻辑程序自动控制工业过程的电子设备。PLC编程语言是与PLC
    的头像 发表于 02-04 15:55 1544次阅读

    C++语言基础知识

    电子发烧友网站提供《C++语言基础知识.pdf》资料免费下载
    发表于 07-19 10:58 7次下载