PLC编程怎么从菜鸟变成高手
电工电气学习 2019年7月29日 22:22 科技 软件 原文地址

点击↑↑电工电气学习 ,关注并置顶即可长期免费订阅

50万+维修电工关注的微信平台:技术分享、学习交流、资料下载

plc编程软件由系统程序和用户程序两部分组成。系统程序包括监控程序、编译程序、诊断程序等,主要用于管理全机、将程序语言翻译成机器语言,诊断机器故障。plc编程软件系统由PLC厂家提供并已固化在EPROM中,不能直接存取和干预。用户程序是用户根据现场控制要求,用PLC的程序语言编制的应用程序(也就是逻辑控制)用来实现各种控制。

标准语言梯形图语言是最常用的一种语言,它有以下特点:

梯形图中接点(触点)只有常开和常闭,接点可以是PLC输入点接的开关也可以是PLC内部继电器的接点或内部寄存器、计数器等的状态。

PLC梯形图中的接点可以任意串、并联,但线圈只能并联不能串联。

内部继电器、计数器、寄存器等均不能直接控制外部负载,只能做中间结果供CPU内部使用。

PLC是按循环扫描事件,沿梯形图先后顺序执行,在同一扫描周期中的结果留在输出状态暂存器中所以输出点的值在用户程序中可以当做条件使用。

1、认识梯形图和继电器控制原理图符号的区别:




继电器控制原理图中的元件符号,有常开触点、常闭触点和线圈,为了区别它们,在有关符号边上标注如KM、KA、KT等以示不同的器件,但其触头的数量是受到限制。而PLC梯形图中,也有常开、常闭触点,在其边上同样可标注X、Y、M、S、T、C以示不同的软器件。它最大的优点是:同一标记的触点在不同的梯级中,可以反复的出现。而继电器则无法达到这一目的。而线圈的使用是相同的,即不同的线圈只能出现一次。

2、编程元件的分类:

编程元件分为八大类,X为输入继电器、Y为输出继电器、M为辅助继电器、S为状态继电器、T为定时器、C为计数器、D为数据寄存器和指针(P、I、N)。关于各类元件的功用,各种版本的PLC书籍均有介绍,故在此不介绍,但一定要清楚各类元件的功能。

3、编程元件的指令由二部分组成:

如 LD(功能含意)X000(元件地址),即 LD X000,LDI Y000......

4、熟识PLC基本指令:

(1) LD(取)、LDI取反)、OUT(输出)指令;LD(取)、LDI(取反)以电工的说法前者是常开、后者为常闭。这二条指令最常用于每条电路的第一个触点(即左母线第一个触点),当然它也可能在电路块与其它并联中的第一个触点中出现。



这是一张PLC梯形图(不会运行)。左边的纵线称为左母线,右母线可以不表示。该图有三个梯级;第1梯级;左边第一个触点为常开,上标为X000,X表示为输入继电器,其后的000数据,可以这样认为它使用的是输入继电器中的编号为第000的触点(下同)。其指令的正确表示应为(如右图程序所示):0、LD X000 (前头的0 即为从第0步开始,指令输入时无须理会,它会自动按顺序显示出)。第2梯级;左边的第一个触点为常闭触点,上标为T0,T表示定时器(有时间长短不同,应注意),0则表示定时器中的编号为0的触点。其指令的正确表示应为:2、LDI T0(如程序所示)。第3梯级;左边第一个触点为常闭,上标为M0, M为辅助继电器(该继电器有多种,注意类别),其指令的正确表示应为:4、LDI M0(如程序所示)。本梯级的第2行第一个触点为常开,上标为Y000,Y表示输出继电器,由于该触点与后面Y001触点呈串联关系,形成了所谓的电路"块",故而其触点的指令应为 5、LD Y000。总之LD与LDI指令从上面可以看出,它们均是左母线每一梯级第一触点所使用的指令。而梯级中的支路(即第3梯级的第2行)有二个或二个以上触点呈串联关系,其第一触点同样按LD或LDI指令。可使用LD、LDI指令的元件有:输入继电器X、输出继电器Y、辅助继电器M、定时器T、计数器C、状态继电器S。OUT为线圈驱动指令,该指令不能出现在左母线第一位。驱动线圈与驱动线圈不能串联,但可并联。同一驱动线圈只能出现一次,并安排在每一梯级的最后一位。如上图中的1、OUT Y000,3、OUT Y001,Y为输出继电器,其线圈一旦接获输出信号,可以这样认为,线圈将驱动其相应的触点而接通外部负载(外部负载多为接触器、中间继电器等)。而上图8、OUT T0 K40 为定时器驱动线圈指令,其中的K为常数40为设定值(类似电工对时间继电器的整定)。可使用OUT指令元件有:输出继电器Y、辅助继电器M、定时器T、计数器C、状态继电器S。

(2) 触点的串联指令AND(与)ANI(与非);前者为常开,后者为常闭。二者均用于单个触点的串联。二指令可重复出现,不受限制,。如下图所示。



由第1梯级来看;X000、T0、Y001三触点成串联关系,即T0的常闭串接于X000的后端,而Y001的常闭则串接于T0常闭的后端。由于都是常闭故用ANI指令。现来看第2梯级;X000、M0、Y001,同样三触点也是串联关系,M0的常闭接点串接于X001的后端,而Y000的常开接点则串接于M0的后端。故M0的指令用ANI,而Y000的指令则用AND(具体编程详上图),只要是串联后面是常开的用AND,是常闭的则用ANI。可使用AND、ANI指令元件有:输入继电器X、输出继电器Y、辅助继电器M、定时器T、计数器C、状态继电器S。

(3) 触点并联指令OR(或)、ORI(或反);触点并联时,不管梯级中有几条支路,只要是单个触点与上一支路并联,是常开的用OR,是常闭的则用ORI。如下图所示。


可以看出上图的X000、X001、M0三者处于并联关系。由于X000下面二条支路均为单个触点,因X001是常开触点,故用OR指令。而M0是常闭触点,则用ORI指令。三接点并联后又与M1串联,串联后又与Y000并联,而Y000也是单个触点,所以仍采用OR指令。可使用OR、ORI指令元件有:输入继电器X、输出继电器Y、辅助继电器M、定时器T、计数器C、状态继电器S。

(4) 串联电路块的并联指令ORB(或);任一梯级中有多(或单支路)支路与上一级并联,只要是本支路中是二个以上的触点成串联关系(即所谓的:串联电路块),则应使用ORB指令。如下图所示。



由上图可以看出,第一支路X003的常开触点与M1的常开触点成串联关系(在这样的情况下,形成了块的关系),它是与上一行的X000与M0串联后相并联,此时程序的编写,如步序号0、1、2、3、4所示。4所出现的第一个ORB指的是与上一行并。而第二支路,常闭Y001与M2同样是串联关系。也是一个块结构,其串联后再与第一支路并。故步序7再次出现ORB。ORB指令并无梯形图与数据的显示。可以这样认为;它是下一行形成电路块的情况下与上一行并联的一条垂直直线(如图中所示的二条粗线)。

(5) 并联电路块与块之间的串联指令ANB;如左下图虚线框内所示的二电路块相串,各电路块先并好后再用ANB指令进行相串。左图的梯形图可以用右图进行简化。程序的编写如下图所示。ANB指令并无梯形图与数据的显示。可以这样认为;它是形成电路块与电路块之间的串联联接关系,是一条横直线。



(6) 进栈指令MPS、读栈指令MRD、出栈指令MPP和程序结束指令END;MPS、MRD、MPP这是一组堆栈指令。如下图使用的二种堆栈形式;在堆栈形式下MPS应与MPP成对出现使用。如在第一堆栈形式下,则采用MPS、MPP指令。若在MPS、MPP指令中间还有支路出现,则增加MRD指令,如下图的第二堆栈所示。应知道MPS、MPP成对出现的次数应少于11次,而MRD的指令则可重复使用,但不得超过24次。要知道这一组指令,同样并无梯形图与数据的显示。可以这样认为;MPS是堆栈的起始点,它起到承上启下的联接点作用,而支路的MRD、MPP则与之依次联接而已。而END指令则是结束指令,它在每一程序的结束的末端出现。

关注电工学习网(http://www.diangon.com/)官方微信公众号,第一时间获取最新的经验及基础知识文章。

文章未完,请点击"阅读原文" 继续阅读

↓↓↓ 

最新


热门