PLC编程是什么
PLC编程是一种数字运算操作的电子系统,专为在工业环境下应用而设计。它采用可编程序的存储器,用来在其内部存储执行逻辑运算、顺序控制、定时、计数和算术运算等操作的指令,并通过数字式、模拟式的输入和输出,控制各种类型的机械或生产过程。可编程序控制器及其有关设备,都应按易于使工业控制系统形成一个整体,易于扩充其功能的原则设计。
随着微处理器、计算机和数字通信技术的飞速发展,计算机控制已扩展到了几乎所有的工业领域。现代社会要求制造业对市场需求作出迅速的反应,生产出小批量、多品种、多规格、低成本和高质量的产品,为了满足这一要求,生产设备和自动生产线的控制系统必须具有极高的可靠性和灵活性,PLC编程正是顺应这一要求出现的,它是以微处理器为基础的通用工业控制装置。
PLC编程的七大特点
1、编程方法浅显易懂,容易学习
梯形图是使用得最多的PLC的编程语言,其电路符号和表达方式与继电器电路原理图相似,梯形图语言形象直观,易学易懂,熟悉继电器电路图的电气技术人员只需花几天时间就可以熟悉梯形图语言,并用来编制用户程序。
梯形图语言实际上是一种面向用户的高级语言,PLC在执行梯形图程序时,将它“翻译”成汇编语言后再去执行。
2、硬件配套齐全,用户使用方便,适应性强
PLC产品已经标准化、系列化、模块化,配备有品种齐全的各种硬件装置供用户选用,用户能灵活方便地进行系统配置,组成不同功能、不同规模的系统。PLC的安装接线也很方便,一般用接线端子连接外部接线。PLC带负载能力,可以直接驱动一般的电磁阀和中小型交流接触器。
硬件配置确定后,通过修改用户程序,就可以方便快速地适应工艺条件的变化。
3、功能强,性能价格比高
一台小型PLC内有成百上千个可供用户使用的编程元件,有很强的功能,可以实现非常复杂的控制功能。与相同功能的继电器系统相比,具有很高的性能价格比。PLC可以通过通信联网,实现分散控制,集中管理。
4、系统的设计、安装、调试工作量少
PLC用软件功能取代了继电器控制系统中大量的中间继电器、时间继电器、计数器等器件,使控制柜的设计、安装、接线工作量大大减少。
PLC的梯形图程序可以用顺序控制设计法来设计。这种编程方法很有规律,很容易掌握。对于复杂的控制系统,如果掌握了正确的设计方法,设计梯形图的时间比设计继电器系统电路图的时间要少得多。
可以在实验室模拟调试PLC的用户程序,输入信号用小开关来模拟,可通过PLC发光二极管观察输出信号的状态。完成了系统的安装和接线后,在现场的统调过程中发现的问题一般通过修改程序就可以解决,系统的调试时间比继电器系统少得多。
5、可靠性高,抗干扰能力强
传统的继电器控制系统中使用了大量的中间继电器、时间继电器。由于触点接触不良,容易出现故障。PLC用软件代替大量的中间继电器和时间继电器,仅剩下与输入和输出有关的少量硬件元件,接线可减少到继电器控制系统的十分之一到百分之一,因触点接触不良造成的故障大为减少。
PLC使用了一系列硬件和软件抗干扰措施,具有很强的抗干扰能力,平均无故障时间达到数万小时以上,可以直接用于有强烈干扰的工业生产现场,PLC大用户公认为最可靠的工业控制设备之一。
6、体积小,能耗低
对于复杂的控制系统,使用PLC后,可以减少大量的中间继电器和时间继电器,小型PIC的体积仅相当于几个继电器的大小,因此可将开关柜的体积缩小到原来的l/2~1/10。
PLC控制系统的配线比继电器控制系统的少得多,故可以省下大量的配线和附件,减少很多安装接线工时,加上开关柜体积的缩小,可以节省大量的费用。
7、维修工作量小,维修方便
PLC的故障率很低,且有完善的自诊断和显示功能。PLC或外部的输入装置和执行机构发生故障时,可以根据PLC上的发光二极管或编程器提供的信息方便地查明故障的原因,用更换模块的方法可以迅速地排除故障。
plc编程的应用面广、功能强大、使用方便,已经成为当代工业自动化的主要装置之一,在工业生产的所有领域得到了广泛的使用,在其他领域(例如民用和家庭自动化)的应用也得到了迅速的发展。
PLC编程工作原理
PLC是采用“顺序扫描,不断循环”的方式进行工作的。即在PLC运行时,CPU根据用户按控制要求编制好并存于用户存储器中的程序,按指令步序号(或地址号)作周期性循环扫描,如无跳转指令,则从第一条指令开始逐条顺序执行用户程序,直至程序结束,然后重新返回第一条指令,开始下一轮新的扫描,在每次扫描过程中,还要完成对输入信号的采样和对输出状态的刷新等工作。
PLC的一个扫描周期必经输入采样、程序执行和输出刷新三个阶段。
PLC在输入采样阶段:首先以扫描方式按顺序将所有暂存在输入锁存器中的输入端子的通断状态或输入数据读入,并将其写入各对应的输入状态寄存器中,即刷新输入,随即关闭输入端口,进入程序执行阶段。
PLC在程序执行阶段:按用户程序指令存放的先后顺序扫描执行每条指令,经相应的运算和处理后,其结果再写入输出状态寄存器中,输出状态寄存器中所有的内容随着程序的执行而改变。
输出刷新阶段:当所有指令执行完毕,输出状态寄存器的通断状态在输出刷新阶段送至输出锁存器中,并通过一定的方式(继电器、晶体管或晶间管)输出,驱动相应输出设备工作。
PLC的五种标准编程语言
1、梯形图语言(LD)
梯形图语言是PLC程序设计中最常用的编程语言。它是与继电器线路类似的一种编程语言。由于电气设计人员对继电器控制较为熟悉,因此,梯形图编程语言得到了广泛的欢迎和应用。
梯形图编程语言的特点是:与电气操作原理图相对应,具有直观性和对应性;与原有继电器控制相一致,电气设计人员易于掌握。
梯形图编程语言与原有的继电器控制的不同点是,梯形图中的能流不是实际意义的电流,内部的继电器也不是实际存在的继电器,应用时,需要与原有继电器控制的概念区别对待。
图1是典型的交流异步电动机直接启动控制电路图。图2是采用PLC控制的程序梯形图。
图1交流异步电动机直接启动电路图
2、指令表语言(IL)
指令表编程语言是与汇编语言类似的一种助记符编程语言,和汇编语言一样由操作码和操作数组成。在无计算机的情况下,适合采用PLC手持编程器对用户程序进行编制。同时,指令表编程语言与梯形图编程语言图一一对应,在PLC编程软件下可以相互转换。图3就是与图2PLC梯形图对应的指令表。
图3指令表
指令表表编程语言的特点是:采用助记符来表示操作功能,具有容易记忆,便于掌握;在手持编程器的键盘上采用助记符表示,便于操作,可在无计算机的场合进行编程设计;与梯形图有一一对应关系。其特点与梯形图语言基本一致。
3、功能模块图语言(FBD)
功能模块图语言是与数字逻辑电路类似的一种PLC编程语言。采用功能模块图的形式来表示模块所具有的功能,不同的功能模块有不同的功能。图4是对应图1交流异步电动机直接启动的功能模块图编程语言的表达方式。
图4功能模块图
功能模块图编程语言的特点:功能模块图程序设计语言的特点是:以功能模块为单位,分析理解控制方案简单容易;功能模块是用图形的形式表达功能,直观性强,对于具有数字逻辑电路基础的设计人员很容易掌握的编程;对规模大、控制逻辑关系复杂的控制系统,由于功能模块图能够清楚表达功能关系,使编程调试时间大大减少。
4、顺序功能流程图语言(SFC)
顺序功能流程图语言是为了满足顺序逻辑控制而设计的编程语言。编程时将顺序流程动作的过程分成步和转换条件,根据转移条件对控制系统的功能流程顺序进行分配,一步一步的按照顺序动作。每一步代表一个控制功能任务,用方框表示。在方框内含有用于完成相应控制功能任务的梯形图逻辑。这种编程语言使程序结构清晰,易于阅读及维护,大大减轻编程的工作量,缩短编程和调试时间。用于系统的规模校大,程序关系较复杂的场合。图5是一个简单的功能流程编程语言的示意图。
图5
顺序功能流程图编程语言的特点:以功能为主线,按照功能流程的顺序分配,条理清楚,便于对用户程序理解;避免梯形图或其他语言不能顺序动作的缺陷,同时也避免了用梯形图语言对顺序动作编程时,由于机械互锁造成用户程序结构复杂、难以理解的缺陷;用户程序扫描时间也大大缩短。
5、结构化文本语言(ST)
结构化文本语言是用结构化的描述文本来描述程序的一种编程语言。它是类似于高级语言的一种编程语言。在大中型的PLC系统中,常采用结构化文本来描述控制系统中各个变量的关系。主要用于其他编程语言较难实现的用户程序编制。
结构化文本编程语言采用计算机的描述方式来描述系统中各种变量之间的各种运算关系,完成所需的功能或操作。大多数PLC制造商采用的结构化文本编程语言与BASIC语言、PASCAL语言或C语言等高级语言相类似,但为了应用方便,在语句的表达方法及语句的种类等方面都进行了简化。
PLC编程入门教程
PLC的基本功能依赖于所使用的控制逻辑或编程技术。编程可以使用流程图或使用梯形图逻辑或使用语句逻辑或助记符来完成。
将所有这些相互关联,让我们看看我们如何在PLC中编写一个程序。
一、计算流程图
流程图是指令的符号表示。这是控制逻辑的最基本和最简单的形式,只涉及逻辑决策。不同的符号如下所示:
1、写入不同逻辑的布尔表达式。布尔表达式通常涉及逻辑运算,如AND,OR,NOT,NAND和NOR。不同的符号是:
+OR运算符
。AND运算符
!NOT运算符。
2、用简单的语句形式写下说明:
IF输入1AND输入2然后SET输出1ELSESET输出。
二、编写梯形逻辑程序
这是PLC编程最重要的部分。在解释关于梯形逻辑编程之前,让我们了解一些符号和术语。
Rung:在梯子上的一步叫做梯级。简而言之,基本语句或者一个控制逻辑被称为Rung。
Y-常规输出信号
M-电机符号
T-定时器
C-计数器
符号:
使用梯形逻辑的基本逻辑功能
三、写助记符
助记符是用符号形式写成的指令。它们也被称为操作码,用于手持式编程设备。不同的符号如下所示:
Ldi-负载反相
Ld-负载
AND-和逻辑
OR-或逻辑
ANI-与非逻辑
ORI-或非逻辑
OUT-输出
评论
查看更多