考研复试《PLC入门》不知道怎么学?重要知识点抓不住?小编今天给大家带来的干货一定会让大家眼前一亮!我们自动化考研的小伙伴千万不能错过的PLC入门重点汇总!记得多多点赞收藏哦!
一.PLC入门
1.什么是PLC?
PLC(Programmable Logic Controller)可编程逻辑控制器,可编程逻辑控制器是种专门为在工业环境下应用而设计的数字运算操作电子系统。它采用一种可编程的存储器,在其内部存储执行逻辑运算、顺序控制、定时、计数和算术运算等操作的指令,通过数字式或模拟式的输入输出来控制各种类型的机械设备或生产过程。
从PLC的定义来看,可以总结出PLC的三个特点:
1)PLC直接应用于工业环境,所以必须具有很强的抗干扰能力、广泛的适应能力和应用范围。
2)PLC是“数字运算操作的电子系统”,也是一种计算机,它是“专为在工业环境下应用而设计的”工业计算机。
3)这种工业计算机采用“面向用户的指令”,因此编程更方便。他能完成逻辑运算、顺序控制、定时、计数和算术运算等操作,它还具有“数字量和模拟量输入和输出”的功能,并且非常容易与“工业控制系统联成一体”,易于“实现其预期功能”。
2.PLC的基本结构
1)电源
电源用于将交流电转换成PLC内部所需的直流电,大部分PLC采用开关式稳压电源供电。
2)中央处理单元
(CPU)是PLC的控制中枢,也是PLC的核心部件,其性能决定了PLC的性能。
中央处理器由控制器、运算器和寄存器组成,这些电路都集中在一块芯片上,通过地址总线、控制总线与存储器的输入/输出接口电路相连。中央处理器的作用是处理和运行用户程序,进行逻辑和数学运算,控制整个系统使之协调。
3)存储器
存储器是具有记忆功能的半导体电路,它的作用是存放系统程序、用户程序、逻辑变量和其他一些信息。其中系统程序是控制PLC实现各种功能的程序,由PLC生产厂家编写,并固化到只读存储器(ROM)中,用户不能访问。
4)输入单元
输入单元是PLC与被控设备相连的输入接口,是信号进入PLC的桥梁,它的作用是接收主令元件、检测元件传来的信号。输入的类型有直流输入、交流输入、交直流输入。
5)输出单元
输出单元也是PLC与被控设备之间的连接部件,它的作用是把PLC的输出信号传送给被控设备,即将中央处理器送出的弱电信号转换成电平信号,驱动被控设备的执行元件。输出的类型有继电器输出、晶体管输出、晶闸门输出。
3.PLC的工作原理
当可编程逻辑控制器投入运行后,其工作过程一般分为三个阶段,即输入采样、用户程序执行和输出刷新三个阶段。完成上述三个阶段称作一个扫描周期。在整个运行期间,可编程逻辑控制器的CPU以一定的扫描速度重复执行上述三个阶段。
1)输入采样
在输入采样阶段,可编程逻辑控制器以扫描方式依次地读入所有输入状态和数据,并将它们存入I/O映象区中的相应的单元内。输入采样结束后,转入用户程序执行和输出刷新阶段。在这两个阶段中,即使输入状态和数据发生变化,I/O映象区中的相应单元的状态和数据也不会改变。因此,如果输入是脉冲信号,则该脉冲信号的宽度必须大于一个扫描周期,才能保证在任何情况下,该输入均能被读入。
2)用户程序执行
在用户程序执行阶段,可编程逻辑控制器总是按由上而下的顺序依次地扫描用户程序(梯形图)。在扫描每一条梯形图时,又总是先扫描梯形图左边的由各触点构成的控制线路,并按先左后右、先上后下的顺序对由触点构成的控制线路进行逻辑运算,然后根据逻辑运算的结果,刷新该逻辑线圈在系统RAM存储区中对应位的状态;或者刷新该输出线圈在I/O映象区中对应位的状态;或者确定是否要执行该梯形图所规定的特殊功能指令。
即,在用户程序执行过程中,只有输入点在I/O映象区内的状态和数据不会发生变化,而其他输出点和软设备在I/O映象区或系统RAM存储区内的状态和数据都有可能发生变化,而且排在上面的梯形图,其程序执行结果会对排在下面的凡是用到这些线圈或数据的梯形图起作用;相反,排在下面的梯形图,其被刷新的逻辑线圈的状态或数据只能到下一个扫描周期才能对排在其上面的程序起作用。
3)输出刷新
当扫描用户程序结束后,可编程逻辑控制器就进入输出刷新阶段。在此期间,CPU按照I/O映象区内对应的状态和数据刷新所有的输出锁存电路,再经输出电路驱动相应的外设。这时,才是可编程逻辑控制器的真正输出。
二.PLC梯形图编程入门
1.什么是梯形图
1)梯形图是一种PLC编程语言,也被称为梯形逻辑(Ladder Logic)。之所以称为梯形图,是因为这种程序由一条条水平线构成,看起来很像梯子。
2)梯形图是为电气工程师发明的,它是一种图形化的编程语言,这意味着编程的过程不是采用文本,而是组合各种不同的图形符号,由于目标用户是电气工程师,因此采用的符号非常类似于电路符号,以便于电气工程师理解。
3)梯形图主要用于位逻辑操作,其规范有PLCOpen负责制定,因此梯形图是标准化的PLC编程语言,该标准为IEC 61131-3。
2.如何阅读梯形图
梯形图和电路图的一个区别在于编制绘制方法不同。梯形图通常从左到右、从上到下编制,原因在于:
1)更容易读图
我们的眼睛自然地从左向右读图,然后继续到下一行,就像你阅读的时候一样。
2)易于在计算机上编制
当在计算机上编制梯形图时,你可以一次编制一行。当绘制出越来越多的行时,它们将叠加在一起,看起来就像一个梯子。查看一个行数众多的梯形图的最佳方式,就是沿着屏幕上下滚动。
3)执行的顺序
最后一个原因在执行的顺序,也就是PLC运行梯形图的先后顺序,更确切的说,就是梯形图中的指令如何依次执行:PLC总是从梯形图顶部开始,然后依次向下执行。
梯形图看起来非常像电路图。大多数人也是这样开始学习编制梯形逻辑图的。
但是还是有一些不同之处,主要的差异在于:
- PLC每次执行梯形图的一行,然后才继续下一行
- 电气系统则是许多回路同时激活
3.梯形图基础
创建梯形图时,你首先看到的就是两条竖线,就是在这两条竖线之间进行梯形图的编制,其中每一条水平线被称为一个Rung(横线):

梯形逻辑符号就放置在这些水平线上,正如你在上图中看到的,我在每一个水平线上标记了数字,以便于理解PLC是如何执行梯形逻辑的。你可能听说过PLC扫描时间或扫描周期,简单地说,PLC首先扫描其输入,然后执行程序,最后设置输出。
但是PLC如何执行我们的梯形逻辑?
一次一条水平线。
这可能是梯形逻辑的最重要的一条规则:PLC一次只能执行一条水平线,然后才是下一条。实际上,PLC只能一次执行一个逻辑符号。
4.编写梯形逻辑
梯形逻辑中的每个符号都是一个指令,初看起来这相当令人困惑。但是别担心,我将用简单的例子加以解释。让我给你一个简单的实例,在这个例子当中将引入两个梯形逻辑符号。
1)那么,这些符号或指令到底是什么?
它们是基本的逻辑指令,让你可以创建一小段逻辑,也就是你的PLC程序。如果你仔细看下面的示例,可以看到两个指令(符号):

5.闭路检查指令
这是一个条件指令,意思是说这个指令用来检查某个条件是否满足,例如检查某个数据位是否处于ON的状态。
闭路检查指令用来检查某个地址的特定位,在上图中指的是一个数字输入的特定位,它也可以是内存位,甚至是输出位。
闭路检查指令也被称为常开指令,基本上它类似于电路中的常开触点,因此可以对应于一个点动开关。
需要指出的是,每个闭路检查指令必须要设置PLC中的一个地址。
输入和输出都是PLC中的内存点位。在上面的示例中,闭路判断指令设置地址I0.0作为条件,这个地址属于PLC的第一个输入。
其工作原理如下:
当PLC扫描周期开始,PLC将首先检查所有输入的状态,然后将输入状态(0或1)写入内存中,如果输入是LOW,那么对应的内存位置位0,如果输入是HIGH,则对应的内存位置为1.
6.输出线圈指令
每个指令本身在PLC内存中也有个位置,PLC会将指令的结果存入。要了解PLC使用结果做什么,让我们看下一个指令:

输出线圈指令用来打开或关闭一个数据位。
正如你看到的,该符号位于水平线的右侧,意思是(同一水平线上)之前的指令作为该指令的条件。
在我们的示例中,之前的指令就是闭路检查指令。
让我们检查下该指令的最终结果,来了解其工作过程:
1)PLC 扫描 | 输入 -> I0 字节
2)程序执行 | I0.0 -> Xic结果
最后,让我们看这条线的输出:
XiC结果 -> 输出线圈
输出线圈 -> 输出字节
现在,输出线圈指令使用了前序指令的结果作为条件。这被称为RLO(逻辑操作结果)。逻辑操作结果保存在PLC内存中的特定位置。在西门子S7系列PLC中,这个位置被称为状态字。
在PLC术语中,一个WORD是16位,或2个字节。
输出线圈指令很简单,它只是将其结果设置为与条件相同的值。
在PLC中所有的数字输出也映射到内存地址。我们将其称为输出位,因此地址Q0对应Q0.0 - Q0.7.输出线圈指令的结果将被写入内存位Q0.0。
当PLC执行完整个程序,它将设置输出。每个输出被设置为与输出内存位一致的状态。
扫描周期这个概念非常重要,当你在编制梯形逻辑时一定要记住。否则你的程序可能会有奇怪的行为。我们将在下一个示例中展示这一点,同时引入3个新的梯形逻辑指令。
7.输出锁存
在前面的示例中,我们学会了如何读取数字输入的状态,并将数字输出设置为同样的状态。需要指出数字输入是一个暂态按钮,因为它内部有个弹簧,这意味着按钮只有在你一直按下时才会保持激活。
上面的梯形图可以正常工作,不过你可能注意到,只有输入激活时输出才会激活。因此你不得不用手指一直按住按钮,才能让输出保持激活。但是想一下,如果输出控制的是一个通风系统里的风机,那么要求操作员一直按着按钮就很不合理了。我们需要一个办法来保持输出激活,即使操作员已经释放了按钮。
在梯形逻辑中,有两种办法实现这一点:

如果你熟悉电路,就会发现这很类似,这杯称为锁存(Latching)或者自我保持(self holding)。
1)这个名称揭示了其工作原理:线圈简单的维持自己前一个扫描周期的状态。让我们单步分析一下:
当PLC第一次运行这个梯形逻辑程序时(按下按钮时),输出将被激活,就像前一个例子一样。
有趣的事情发生在后续运行逻辑的时候。因为这是一个暂态按钮,它不会一直激活。依赖于PLC程序的运行总时长,按钮可能在第二次、第三次或第四次运行时不再激活。
2)让我们进入按钮释放之后的第一个扫描周期。
输出还处于激活状态,因为上一个扫描周期按钮被按下。这时PLC将再次读取输入并存入对应的内存位。内存位I0.0”这次将存入“0”。因此I0.0的闭路判断指令结果为false或“0”。
但是你可以看到,还有另一个并行的闭路判断指令,不过该指令的条件是输出内存位,因此其结果为true或“1”,因为这是输出还处于激活状态。只要输出内存位是“1”,输出就会激活,它就像自己的条件一样。
自保持指令与其他指令并联的原因在于构造一个OR条件,在这个示例当中,I0.0或Q0.0中的一个为true都会激活输出。
8.开路检查指令
你刚学习了如何编制一个有用的PLC梯形图程序。一个激活输出的按钮。在我们的示例中,这个可能是连接到一个风机的触点,输出可以自保持。
1)但是这个程序有个问题,怎么关掉风机?
我们希望能够再次关掉风机。最简单的方法是添加一个停机按钮,该按钮将连接到PLC的第二个输入,因此其内存地址为I0.1。
问题是,我们为停机按钮使用什么指令?更重要的,我们应当将其放在梯形图的哪里?
第一个问题的答案是另一个梯形逻辑指令:开路检查指令,它看起来如下:

这个指令和闭路检查指令的工作方式恰恰相反,其结果是条件的反转。这意味着,如果条件为“0”,那么结果为“1”,反之亦然。
如果你考虑一下,就会发现这恰恰就是我们希望停机按钮做的事情。要关闭输出线圈,我们必须给出条件“0”。
现在是第二个问题,在哪里放置这个指令?
我们需要将其放在自锁指令之后,或者说,串联起来。否则当停机按钮按下时,还是会输出“1”。
现在,梯形逻辑如下:

你可以看到开路检查指令将其条件的反转结果传递给输出线圈。要再次激活输出,就需要再次按下启动按钮。
在上面的示例中,我使用了一个开路判断指令作为停机按钮。这不是好的实践!
我们最终遵循最佳实践,修改后的梯形图如下:

虽然我们修改了指令,梯形图的运行没有变化,这是因为我们同样修改了物理停机按钮的工作方式。
三.PLC基本逻辑指令
27条基本逻辑指令
1)取、与、或、反;脉冲点:
LD、LDI、AND、ANI、OR、ORI、LDP、LDF、ANDP、ANDF、ORP、ORF
2)块串、并;出;非运算:
ANB、ORB、OUT、INV
3)上、下脉;推、弹、读栈:
PLS、PLF、MPS、MPP、MRD
4)置;主;复位;空;结束:
SET、MC、RST、MCR、NOP、END
1.LD、LDI、OUT
LD:取指令。表示一个与输入母线相连的常开接点指令。
LDI:取反指令。表示一个与输入母线相连的常闭接点指令。
LD,LDI的目标元件是X,Y,M,S,T,C。
OUT:输出指令。
OUT指令的目标元件是Y,M,S,T,C。

2.AND、ANI
AND:与指令。用于单个常开接点的串联。
ANI :与非指令。用于单个常闭接点的串联。
这两条指令的目标元件为X,Y,M,S,T,C。

3.OR、ORI
OR:或指令。用于单个常开接点的并联。
ORI:或非指令。用于单个常闭接点的并联。
其目标元件是X,Y,M,S,T,C。

4.LDP、LDF、ANDP、ANDF、ORP、ORF
LDP、ANDP、ORP指令是进行上升沿检出的触点指令,仅在指定位元件的上升沿时(OFF→ON变化时)接通一个扫描周期;
LDF、ANDF、ORF指令是进行下降沿检出的触点指令,仅在指定位元件的下降沿时(ON→OFF变化时)接通一个扫描周期。

5.SET、RST
SET:置位指令,使动作保持
RST:复位指令,使操作保持复位

6.PLS、PLF
PLS:输入信号上升沿产生脉冲输出
PLF:输入信号下降沿产生脉冲输出
其目标元件为Y,M,但特殊辅助继电器不能作为目标元件。

7.INV
该指令用于运算结果的取反。当执行该指令时,将INV指令
之前存在的如LD、LDI等指令的运算结果反转。

8.NOP、END
NOP为空操作指令,该指令是一条无动作、无目标元件占一个程序步的指令。空操作指令使该步序作空操作。用NOP指令替代已写入指令,可以改变电路。在程序中加入NOP指令,在改动或追加程序时可以减少步序号的改变。执行完清除用户存储器的操作后,用户存储器的内容全部变为空操作指令。
END是一条无目标元件占一个程序步的指令。PLC反复进行输入处理、程序运算、输出处理,若在程序最后写入END指令,则END以后的程序步就不再执行,直接进行输出处理。在程序调试过程中,按段插入END指令,可以顺序扩大对各程序段动作的检查。采用END指令将程序划分为若干段,在确认处于前面电路块的动作正确无误之后,依次删去END指令。要注意的是在执行END指令时,也刷新监视时钟。

编程的基本原则
1)水平不垂直
梯形图的接点应画在水平线上,不能画在垂直分支。

2)线圈右边无接点

3)左大右小,上大下小
有串联电路并联时,应将接点最多的那个串联回路放在梯形图最上面。
有并联电路相串联时,应将接点最多的并联回路放在梯形图的最左边。
4)双线圈输出不可用
如果在同一程序中同一元件的线圈使用两次或多次,则称为双线圈输出。这时前面的输出无效,只有最后一次才有效,一般不应出现双线圈输出。

看到这里的你,一定超幸运~去学PLC技术
www.dzkfw.com.cn/Article/tixingtu/Index.html
www.dzkfw.com.cn/Article/plc/Index.html
www.dzkfw.com.cn/Article/MITSUBISHI/Index.html