1.1 PLC基本结构PLC主要由中央处理器CPU、存储器、输入/输出接口电路、电源、编程器组成。1.中央处理器CPU(CPU芯片)CPU 就像人的大脑,它不断地采入输入信号,执行用户程序,刷新系统的输出。响应外围设备(如编程器、打印机等)的请求。2.存储器PLC的存储器分为系统存储器和用户存储器。系统存储器用来存放系统管理程序、用户指令解释、标准程序模块及系统调用等程序。其内容由生产厂家固化到ROM中,用户不能修改。用户存储器用来存放用户编制的梯形图程序或用户数据,一般由RAM、EPROM、E2PROM构成,RAM是随机存取存储器,它工作速度高、价格低、改写方便,为了防止掉电时信息的丢失,常用高效的锂电池做后备电池。EPROM、E2PROM是非易失性的,可以用编程器对它编程,它们兼有ROM的非易失性和RAM的随机存储的优点,但写入信息的时间比RAM长。科威PLC中提供了较大容量的存储器供用户使用。3.输入接口电路输入接口电路是由光电耦合电路和微型计算机输入接口电路组成,如图1.1所示。图1.1 输入接口电路图采用光电耦合电路与现场输入信号相连是为了防止现场的强电干扰信号进入PLC。当外接触点X0接通时,电流经24V电源正极,经过光电耦合器中的发光二级管,再经过电阻R1,最后经过外部触点X0回到电源负极COM0,使光电耦合器中发光二极管导通发光,光敏三极管饱和导通,内部电路CPU在输入端读入的是数据“1”;外接触点X0断开的时候,光耦合器中发光二极管熄灭,光敏三极管截止,内部电路CPU在输入端读入的数据是“0”;并联支路发光二极管LED起显示作用。光电耦合器的抗干扰性能是:由于输入和输出端是靠光信号耦合的,在电气上是完全隔离的,因此输出端信号不会反馈到输入端,也不会产生地线干扰和其他串扰。由于发光二极管正向阻抗较低,而外界干扰源的内阻很高,根据分压原理可知干扰源能馈送到输入端的干扰噪声很小,正是由于PLC在现场输入环节采用了光电耦合电路,才增强了抗干扰能力。4.输出接口电路输出接口电路,有驱动直流负载的大功率晶体管和场效应管,驱动交流负载的双向晶闸管以及既可以驱动交流负载也可以驱动支流负载的小型继电器。负载电源由外部现场提供。继电器输出电路如图1.2所示。内部电路使继电器的线圈通电,它的常开触点闭合,使外部负载得电工作,继电器同时起隔离和功率放大的作用,每一路只给用户提供一对常开触点,与触点并联的RC电路和压敏电阻用来消除触点断开时产生的电弧以减轻对CPU的干扰。图1.2 继电器输出电路图晶体管集电极输出电路如图1.3所示。输出信号由内部电路发出,经光耦合器送给输出晶体管,晶体管的饱和和截止状态相当于与触点的接通和断开。图中的稳压管用来抑制关断过电压和外部浪涌电压以保护晶体管。晶体管输出电路的延时时间<1ms,场效应管输出电路与晶体管输出电路基本相同。除了上述几种输出电路外,还有双向晶闸管输出电路,如图1.4所示。它用光电晶闸管实现隔离。晶闸管由关断变导通的延时时间<1ms,由导通变关断的延时时间<10ms,晶闸管在负载电流过小时不能导通,遇到这种情况,需要在负载两端并联电阻。图1.3 晶体管集电极输出电路图1.4 晶闸管输出电路电路由于输入/输出接口电路采用了光电耦合电路或继电器隔离电路,使得输入/输出电路与内部电路在电气上完全隔离,从而防止了现场隔离干扰,保证PLC能在恶劣的环境下可靠地工作。PLC一般都有三种输出形式可供用户选择,即继电器输出,晶体管输出和晶闸管输出。在线路结构上都采用了隔离措施。特点:继电器输出:开关速度低,负载能力大,适用于低频场合。晶体管输出:开关速度高,负载能力小,适用于高频场合。晶闸管输出:开关速度高,负载能力小,适用于高频场合。注意事项:(1)PLC输出接口是成组的,每一组有一个COM口,只能使用同一种电源电压。(2)PLC输出负载能力有限,具体参数请阅读相关资料。(3)对于电感性负载应加阻容保护。(4)负载采用直流电源小于30V时,为了缩短响应时间,可用并接续流二极管的方法改善响应时间。5.电源PLC的电源是指将外部输入的交流信号经过整流、滤波、稳压等处理后转换成满足PLC的CPU、存储器、输入/输出接口等内部电路工作需要的直流电源电路。为了减少电源间的相互干扰,输入/输出接口电路与内部电路间的电源彼此相互独立。电源的好坏对PLC的可靠性至关重要。大部分PLC都采用开关电源供电。1.2 PLC的特点PLC的发展是直接针对用户、针对工业现场环境的需要而设计的工业控制计算机,经过近十年的发展,日臻完善,主要特点为:1.可靠性高,抗干扰能力强由PLC组成的控制系统用软件代替了传统的继电器控制中的复杂硬件线路。故使用PLC的控制系统故障率明显低于继电器控制系统,另一方面,PLC本身采用了抗干扰能力强的微处理器CPU,输入/输出采用光电隔离技术,以及电源独到的处理方法,使得PLC有很强的抗干扰能力,从而提高了整个系统的可靠性。2.编程简单易学PLC的最大特点之一,就是采用了易学易懂的梯形图语言这种编程方式既继承了传统的继电器控制线路的清晰、直观感,又考虑到大多数技术人员的读图习惯,即使没有计算机基础的人也很容易学会,故很容易在厂矿企业中推广使用。3.使用维护方便1)硬件配置方便:硬件可按实际需求配置2)安装方便:内部不需要接线和焊接,只要编程就可以使用。3)使用方便:内部触点使用不受限制,只要考虑输入/输出点数即可。4)维护方便:PLC有自检功能,能检查出系统自身的故障,并随时显示给操作人员,能动态地监视控制程序的执行情况,显示输入/输出每个点的工作状态,为现场调试和维护提供了方便。4.体积小、重量轻、功耗低由于其结构紧凑、坚固、体积小、易于装。如机械设备内部,是实现机电一体化的理想控制设备。5.设计施工周期短使用PLC完成一项控制工程,现场施工和PLC程序设计可同时进行,设计周期短,程序调试和修改方便。正是由于有了上述优点,才使得PLC受到了广泛的欢迎。1.3 PLC的应用领域PLC在国内外广泛应用于钢铁、采矿、石化、电力机械制造、汽车制造、环保及娱乐等各行各业。其应用大概可分为以下几类:1) 用于开关逻辑和顺序控制这是PLC最基本的应用范围,它的主要功能是完成开关逻辑运算和进行顺序控制,可用PLC取代传统继电器控制。如机床电气、电机控制等,亦可取代顺序控制。如高炉上料等,总之PLC可用于单机、多机及生产线的自动控制。2) 用于机械加工的数字控制PLC和触摸屏组合一体,可实现数值控制组成数控机床。3) 运动控制PLC对直线运动和圆周运动的位置、速度和加速度进行控制,可实现单轴、双轴和多轴位置控制,使运动控制与顺序控制功能有机地结合在一起,PLC的运动控制功能广泛地用于各种机械、金属切削机床、装配机械、机器人、电梯等场合。4) 用于模拟量检测和闭环过程的控制过程是指对温度、压力、流量等连续变化的模拟量的闭环控制。PLC对温度、压力等模拟信号进行A/D转换与D/A转换,转换为计算机所识别的数字量。并实现闭环PID(比例-积分-微分)控制。PID闭环控制功能已广泛地应用于塑料挤压成型机、加热炉、窑炉、热处理炉、锅炉等设备以及轻工、化工、机械、冶金、电力、建材等行业。5) 通讯网PLC通讯包括主机与远程I/O之间的通信、多台PLC之间的通讯、PLC与其他控制设备(如计算机、变频器、数控装置)之间的通讯、PLC与字符屏,触摸屏,计算机一起可以组成“集中管理、分散控制”的分布式控制系统。1.4 科威PLC的特点国产科威PLC的主要特点:一、科威公司一批技术人员在开发国产PLC之前,一直在作工业窑炉控制,积累了多年窑炉控制经验,所以科威PLC在模拟量检测和控制方面做的较为精彩。二、科威PLC在串行通讯方面也是独树一帜的,除了拥有速度极快的CANBUS总线外,还兼有485串口和232串口。而这些都与生俱来的集中在科威PLC里:对分散控制喝集中管理的系统来说,使用科威PLC是恰如其分。三、由于科威PLC集中这些功能于一身,所以它的性价比很高。第一章 PLC的工作原理PLC是从继电器控制系统发展而来的,它的梯形图程序与继电器系统电路图相似,梯形图中一些编程元件也沿用了继电器这一名称。如输入继电器、输出继电器、辅助继电器、状态继电器、时间继电器、记数器等。这种用计算机内部资源描述成继电器,实际上是一种“软继电器”与继电器系统中的物理继电器在功能上有相似之处。由于以上原因,在介绍PLC工作原理之前,首先介绍物理继电器和其他常用电器元件的结构和工作原理。 2.1 继电器及常用电器元件2.1.1 按钮按钮是手动开关,在自动控制系统中,它常用来作为开始启动或最后停止的命令。由于这种命令一般由操作人员发出,故做成手动开关。按钮一般分为常开按钮、常闭按钮及复合按钮等几种形式,其图形及文字说明如图2.1所示。图2.1 按钮图形及文字说明常开按钮:平时触点是分开的,手动按下去后触点闭合,手离开触点又恢复原状。常闭按钮:平时触点是闭合的,手动按下去后触点分开,手离开触点又恢复原状。复合按钮:把常开和常闭装在一起的按钮。2.1.2 行程开关行程开关是一种根据运动部件的行程位置而切换电路的电器。它的作用原理与按钮类似,当运动部件运动到某一位置,正好碰撞行程开关的顶杆时,行程开关触点动作,发出控制信号,行程开关和按钮不同点在于行程开关是靠外加的机械力使触点动作,而按钮是靠人工动手而动作。行程开关的图形和文字符号如图2.2所示。现在常用光电耦合、电磁感应等原理做成无触点的行程开关。图2.2 行程开关图形及文字符号2.1.3 接近开关接近开关(无触点开关)是利用晶体管的导通和截止来控制设备的启、停。当接近开关作为PLC的输入点信号,其接线方法如图2.3所示。只要把它的“输出”、“地”分别接在PLC的输入端子X0与COM上,电源接在PLC的“+24V”端子即可。接近开关利用其晶体管的导通与截止来控制PLC输入信号X0的有无。图2.3 接近开关接线图2.1.4 电磁阀继电器和电磁阀作为PLC的主要输出器件,在自动控制领域广泛应用。电磁阀就是一个控制水管、油管和汽管的龙头开关加一个线圈,只有开和闭两种状态。利用电磁原理,给线包加电,阀门吸合,打开管路:线包失电,管路关闭。我们家里使用的全自动洗衣机,它的进水合出水全靠电磁阀控制。2.1.5 熔断器熔断器又称保险丝,是一种利用熔化作用切断电路的保护器,起原理是当通过的电流过大时,会产生足够大的热量使熔片或熔丝熔化,从而使电路断开,保护电器设备的安全。其图形及文字符号如图2.4所示。图2.4 熔断器实图及图形、文字符号2.1.6 继电器图2.5(a)是继电器结构示意图,它主要由电磁线圈、铁芯、触点和复位弹簧组成。继电器有两种不同触点,在线圈断电时处于断开状态的触点称为常开触点(如图2.5(a、b)中的触点3、4),处于闭合状态的触点称为常闭触点(如图2.5(a、b)中的触点1、2)。图2.5 继电器结构示意图当线圈通电时,电磁铁产生磁力,吸引衔铁,使常闭触点断开,常开触点闭合,线圈电流消失及复位弹簧使衔铁返回原来的位置。常开触点断开,常闭触点闭合。图2.5(b) 为继电器的线圈、常开触点、常闭触点在电路图中的符号。一只继电器可能有若干对常开触点和常闭触点,在继电器电路图中,一般用相同的由字母、数字组成的文字符号(KM2)来标注同一个继电器的线圈和触点。2.1.7 接触器图2.6是用交流接触器控制异步电动机的主电路,控制电路和有关波形图。接触器的结构和工作原理与继电器基本相同。区别仅在于继电器触点的额定电流小,而接触器是用来控制大电流负载的,它可以控制额定电流为几十安至几千安的异步电机。按下启动按钮A1,它的常开触点接通,电流经过A1的常开和停止按钮A2,作为过载保护用的热继电器JR的常开触点,流过交流接触器KM的线圈接触器的衔铁被吸合,使主电路中的3对常开触点闭合。异步电动机M的三相电流被接通电动机开始运行,控制电路中接触器KM的辅助常开触点同时接通,放开启动按钮及A1的常开触点断开,电流经KM的辅助常开触点和A2,JR的常闭触点流过KM的线圈。电动机继续运行,KM的辅助常开触点实现的这种功能为“自保”或“自锁”。它使继电器电路具有类似于R-S触发器的记忆功能。图2.6异步电动机控制电路在电动机运行时按停止按钮A2,它的常闭触点断开,使KM的线圈失电,KM的主触点断开,异步电动机的三相电流被切断,电动机停止运行,同时控制电路中的KM辅助常开触点断开。当停止按钮A2被放开,其常闭触点闭合及KM线圈仍然失电,电动机继续保持停止运行状态。图2.6给出了有关信号的波形图。图中用高电平表示“1”状态(线圈通电,按钮被按下)用低电平表示“0”状态(线圈断电,按钮被放开)。图2.6中的控制电路在继电器系统和PLC的梯形图中被大量使用,它被称为“启动-保持-停止”电路。2.1.8 时间继电器、又称“延时继电器”,其机构与电磁式继电器非常相似,它利用各种延时的方法,使得线圈中的电流变化缓慢,从而使得衔铁在线圈通电或断电瞬间不能立即吸合或释放,时间继电器的图形及文字符号如图2.7所示。它在PLC中又称定时器,当定时器的输入接通时开始定时,定时时间到,即定时器接通定时器相应的触点动作。图2.7 时间继电器的图形及文字符号 2.1.9 中间继电器通常用于传递信号和同时控制多个电路,也可直接用它来控制小容量电动机或其他执行元件,中间继电器的触头容量小,触点数目多,用于控制线路,中间继电器的图形及文字符号说明如图2.8所示。图2.8 中间继电器图形及文字符号2.1.10 常用的典型控制电路电器控制系统实际上是一种开关电路,系统中的许多电路按照一定的逻辑关系动作,电器控制电路是由“与”“或”“非”逻辑电路组合而成的,可用逻辑代数式描述。1.“与”逻辑电路逻辑电路如图2.9(a)所示,在继电器电路中,若用K表示结果,用X表示原因——则“与”的关系可表之为K1=X1·X2,若X1及X2都闭合,则继电器K因线圈通电而吸合,X1或X2只要有一个不闭合,继电器就不动作。有触点的继电器控制电路中触点的串联接线就能实现“与”的控制,又称为“与”逻辑关系。2.“或”逻辑电路逻辑电路如图2.9(b)所示,在继电器电路中,若用K表示结果,用X表示原因——则“或”的关系可表之为K2=X3+X4,只要X3或X4任意一个闭合,继电器K2就会因线圈通电而吸合。X3和X4都不闭合,继电器就不动作。图2.9 常用的典型控制电路3.“非”逻辑电路逻辑电路如图2.9(c)所示,在继电器电路中,若用K表示结果,用X表示原因,则“非”关系可表示为K0=X0,触点不动作时是闭合状态,继电器线圈K通电,而当触点动作为断开状态时,继电器断电,常闭触点实现了“非”控制。4.启动、停止、自锁电路逻辑电路如图2.9(d)所示,前面已讲过的启动、停止、自锁电路,其逻辑代表式为:K1=(X1+X2)·X2。2.2 PLC工作原理2.2.1 PLC的工作方式PLC虽然以微处理器为核心,具有微型计算机的许多特点,但它的工作方式却与微型计算机有很大的不同,微型计算机一般采用等待命令或中断的工作方式,如常见的键盘扫描方式或I/O扫描方式,当有键按下或I/O动作,则转入相应的子程序或中断服务程序,无键按下,则继续扫描等待。PLC采用循环扫描的工作方式,即顺序扫描,不断循环这种工作方式是在系统软件控制下进行的。当PLC运行时,CPU根据用户按控制要求编写好并存于用户存储器中的程序,按序号作周期性的程序循环扫描,程序从第一条指令开始,逐条顺序执行用户的程序直到程序结束。然后重新返回第一条指令,再开始下一次扫描;如此周而复始。实际上,PLC扫描工作除了执行用户程序外,还要完成其他工作,整个工作过程分为自诊断、通讯服务、输入处理、输出处理、程序执行五个阶段。如图2.10所示。图2.10 PLC循环扫描示意图1) 自诊断每次扫描用户程序之前,都先执行故障自诊断程序。自诊断内容包括I/O部分、存储器、CPU等,并通过CPU设置定时器来监视每次扫描是否超过规定的时间,如果发现异常,则停机并显示出错。若自诊断正常,则继续向下扫描。2) 通讯服务PLC检查是否有与编程器、计算机等的通讯要求,若有则进行相应处理。3) 输入处理PLC在输入刷新阶段,首先以扫描方式按顺序从输入缩存器中写入所有输入端子的状态或数据,并将其存入内存中为其专门开辟的暂存区——输入状态映像区中,这一过程称为输入采样,或是如刷新,随后关闭输入端口,进入程序执行阶段,即使输入端有变化,输入映像区的内容也不会改变。变化的输入信号的状态只能在下一个扫描周期的输入刷新阶段被读入。4) 输出处理同输入状态映像区一样,PLC内存中也有一块专门的区域称为输出状态映像区。当程序的所有指令执行完毕,输出状态映像区中所有输出继电器的状态就在CPU的控制下被一次集中送至输出锁存器中,并通过一定的输出方式输出,推动外部的相应执行器件工作,这就是PLC输出刷新阶段。5) 程序执行PLC在程序执行阶段,按用户程序顺序扫描执行每条指令。从输入状态映像区读出输入信号的状态,经过相应的运算处理等,将结果写入输出状态映像区。通常将自诊断和通讯服务合称为监视服务。输入刷新和输出刷新称为I/O刷新。可以看出,PLC在一个扫描周期内,对输入状态的扫描只是在输入采样阶段进行,对输出赋的值也只有在输出刷新阶段才能被送出,而在程序执行阶段输入、输出会被封锁。这种方式称做集中采样、集中输出。2.2.2 扫描周期扫描周期即完成一次扫描(I/O刷新、程序执行和监视服务)所需要的时间,由PLC的工作过程可知,一个完整的扫描周期T应为:T=(输入一点时间×输入点数)+(运算速度×程序步数)+(输出一点时间×输出点数)+监视服务时间扫描周期的长短主要取决于三个要素:一是CPU执行指令的速度;而是每条指令占用的时间;三是执行指令条数的多少,即用户程序的长度。扫描周期越长,系统的响应速度越慢。现在厂家生产的基型PLC的一个扫描周期大约为10ms,这对于一般的控制系统来说完全是允许的,不但不会造成影响,反而可以增强系统的抗干扰能力,这是因为输入采样仅在输入刷新阶段进行。PLC在一个工作周期的大部分时间里实际上是与外设隔离的,而工业现场的干扰常常是脉冲式的、短期的,由于系统响应慢,往往要几个扫描周期才响应一次,多次扫描因瞬时干扰而引起的误动作将会大大减少,从而提高了系统的抗干扰能力。但是对控制时间要求较严格、响应速度要求较快的系统,就需要精心编制程序,必要时还需要采取一些特殊功能,以减少因扫描周期造成的响应带来的不良影响。总之,采用循环扫描工作方式,是PLC区别于微型计算机和其他控制设备的最大特点。第三章 PLC中各种元件介绍(以EP-48MR为例)3.1输入继电器 X(共24点)X0--X7X10-X17X20-X273.2输出继电器 Y(共24点)Y0--Y7Y10--Y17Y20--Y27l X、Y还有无数个常开、常闭触点供编程使用。l Y外部分仅有一个常开触点供带动负载使用。l 可以看出每组都是8个l 输入输出点数根据实际工程需要来确定。l 可采用主机+扩展的方式来使用,扩展的编号依次编下去。3.3辅助继电器 M (1)通用辅助继电器M0—M1023(共1024个),关闭电源后重新启动后,通用继电器不能保护断电前的状态。(2)掉电保持辅助继电器M1024--M1535(共512个),PLC断电后再运行时,能保持断电前的工作状态,采用锂电池作为PLC掉电保持的后备电源。辅助继电器都有无数个常开、常闭触点供编程使用,只能作为中间继电器使用,不能作为外部输出负载使用。3.4状态继电器 S(1)通用状态继电器 S0--S499 ,计500点。(2)掉电保持型状态继电器 S500-S999 ,计500点。状态继电器S是对工作步进控制进行简易编程的重要元件,这里不作进一步的介绍。3.5定时器 T(1)定时器T0--T199 (200只):时钟脉冲为100ms的定时器,即当设定值K=1时,延时100ms。 设定范围为0.1--3276.7秒。T200--T245(46只):时钟脉冲为10ms的定时器,即当设定值K=1时,延时10mS。 设定范围为0.01--327.67秒。(2)积算定时器T246--T249(4只) :时钟脉冲为1ms的积算定时器。 设定范围:0.001--32.767秒。T250--T255 (6只) :时钟脉冲为100ms的积算定时器。 设定范围:0.1--3267.7秒。积算定时器的意义:当控制积算定时器的回路接通时,定时器开始计算延时时间,当设定时间到时定时器动作,如果在定时器未动作之前控制回路断开或掉电,积算定时器能保持已经计算的时间,待控制回路重新接通时,积算定时器从已积算的值开始计算。积算定时器可以用RST命令复位。3.6计数器 C(1)16bit加计数器C0—C99(100点):通用型C100-C199(100点):掉电保持型设定值范围:K1--K32767(2)32bit可逆计数器C200--C255(56点)::掉电保持型。设定值范围:-2147483648到+2147483647可逆计数器的计数方向(加计数或减计数)由特殊辅助继电器M8140--M8195设定。 即M8△△△接通时作减计数,当M8△△△断开时作加计数。(3)高速计数器:(后面章节实例中作介绍)3.7数据寄存器 D数量6000点,标号为十进制。D0--D199(200只):通用型数据寄存器,即掉电时全部数据均清零。D200—D5999(5800只):掉电保护型数据寄存器。3.8变址寄存器 (在实例中作介绍)第四章 科威PLC基本指令表4.1触点取用与线圈输出指令 LD LDI OUT4.1.1指令助记符与功能符号、名称功能可用元件程序步LD 取a触点逻辑运算开始X,Y,M,S,T,C1LDI 取反b触点逻辑运算开始X,Y,M,S,T,C1OUT 输出线圈驱动Y,M,S,T,CY,M:1S,T,M:2T:3C:3-5 4.1.2指令说明l LD,LDI指令用于将触点接到母线上。另外,与后面讲到的ANB指令组合,在分支起点处也可使用。l OUT指令是对输出继电器、辅助继电器、状态、定时器、计数器的线圈驱动指令,对输入继电器不能使用。l OUT指令可作多次并联使用。(在下图中,在OUT M100之后,接OUT T0)。4.1.3编程0 LD X0001 OUT Y0002 LDI X0013 OUT M1004 OUT T0 K19 ——程序步自动管理空2步7 LD T08 OUT Y0014.1.4定时器、计数器的程序l 对于定时器的计时线圈或计数器的计数线圈,使用OUT指令以后,必须设定常数K。此外,也可指定数据寄存器的地址号。l 常数K的设定范围、实际的定时器常数、相对于OUT指令的程序步数(包括设定值)如下表所示。定时器、计数器K的设定范围实际的设定值步数1ms定时器1-32,7670.001-32.767秒310ms定时器1-32,7670.01-327.67秒3100ms定时器0.1-3,276.7秒16位计数器1-32,767同左332位计数器-2,147,483,648 - +2,147,483,647同左3 4.2单个触点串联指令AND ANI4.2.1助记符与功能符号、名称功能可用软元件程序步AND 与a触点串联连接X,Y,M,S,T,C1ANI 与非b触点串联连接X,Y,M,S,T,C1注:当使用M1536-M3071时,程序步加1。4.2.2指令说明l 用AND,ANI指令可进行1个触点的串联连接。串联触点的数量不受限制,该指令可多次使用。l OUT指令后,通过触点对其他线圈使用OUT指令,称之为纵接输出,(下图的OUT M101 与OUT Y004)这种纵接输出,如果顺序不错,可多次重复。串联触点数和纵接输出次数不受限制,但使用图形编程设备和打印机则有限制。建议尽量做到1行不超过10个触点和1个级圈,总共不要超过24行。4.2.3编程0 LD X0021 AND X0002 OUT Y0033 LD Y0034 ANI X0035 OUT M1016 AND T17 OUT Y004如上图所示,紧接着OUT M101以后通过触点T1可以驱动OUT Y004,但如是驱动顺序相反(如左图所示)时,则必须使用后面讲到的MPS和MPP命令。 4.3单个触点并联指令 OR ORI4.3.1指令助记符与功能指令助记符、名称功能可用软元件程序步OR 或a 触点并联连接X,Y,M,S,T,C1ORI 或非b 触点并联连接X,Y,M,S,T,C1注:当使用M1536-M3071时,程序步加14.3.2指令说明l OR、ORI用作1个触点的并联连接指令。串联连接2个以上触点时,并将这种串联电路块与其他电路并联连接时,采用后面讲到的ORB指令。l OR,ORI是从该指令的步开始,与前面的LD,LDI指令步,进行并联连接。并联连接的次数不受限制,但使用图形编程设备和打印机时受限制(24行以下)。4.3.3编程0 LD X0041 OR X0062 ORI M1023 OUT Y0054 LDI Y0055 AND X0076 OR M1037 ANI X0108 OR M1109 OUT M103 4.4串联电路块的并联4.4.1指令助记符与功能指令助记符、名称功能程序步ORB 电路块或串联电路块的并联连接14.4.2指令说明l 2个以上的触点串联连接的电路称为串联电路块。将串联电路并联连接时,分支开始用LD、LDI指令,分支结束用ORB指令。l ORB 指令与后面讲的ANB指令等一样,是不带软元件地址号的独立指令。l 有多个并联电路时,若对每个电路块使用ORB指令,则并联电路没有限制。(见正确编程程序)l ORB也可以成批地使用,但是由于LD,LDI指令的重复使用次数限制在8次以下,请务必注意。(见编程不佳的程序)4.4.3编程正确编程程序1 LD X0002 AND X0013 LD X0024 AND X0035 ORB6 LDI X0047 AND X0068 ORB9 OUT Y006编程不佳的程序1 LD X0002 AND X0013 LD X0024 AND X0035 LDI X0046 AND X0067 ORB8 ORB9 OUT Y006 4.5并联电路块的串联 ANB4.5.1指令助记符与功能指令助记符、名称功能程序步ANB 电路块与并联电路块的串联连接14.5.2指令说明l 当分支电路(并联电路块)与前面的电路串联连接时,使用ANB指令,分支的起点用LD,LDI指令,并联电路块结束后用 ANB 指令,与前面的电路串联。l 若多个并联电路块按顺序和前面的电路串联连接时,则 ANB 指令的使用次数没有限制。l 也可成批地使用ANB指令,但在这种场合,与ORB指令一样,LD、LDI指令的使用次数是有限制的(8次以下),请务必请意4.5.3编程0 LD X0001 OR X0012 LD X0023 AND X0034 LDI X0045 AND X0056 ORB7 OR X0068 ANB9 OR X00310 OUT Y0074.6 LDP LDF ANDP ANDF ORP ORF(FX2n型有)4.6.1指令助指符与功能指令助记符、名称功能可用软元件程序步LDP 取脉冲上升沿检测运算开始X、Y、M、S、T、C1LDF 取脉冲下降沿检测运算开始X、Y、M、S、T、C1ANDP 与脉冲上升沿检测串联连接X、Y、M、S、T、C1ANDF 与脉冲下降沿检测串联连接X、Y、M、S、T、C1ORP 或脉冲上升沿检测并联连接X、Y、M、S、T、C1ORF 或脉冲下降沿检测并联连接X、Y、M、S、T、C1注:当使用M1536--M3071时,程序步加1,以上指令FX2N中才有。4.6.2指令说明l LDP、ANDP、ORP指令是进行上升沿检测的触点指令,仅在指定位软件上沿时(即由OFF→ON变化时)接通1个扫描周期。l LDF、ANDF、ORF指令是进行下降沿检测的触点指令,仅在指定位软元件下降时(即由ON→OFF变化时)接通1个扫描周期。4.6.3编程例1:0 LDP X0001 ORP X0012 OUT M03 LD M80004 ANDP X0025 OUT M1例2:0 LDF X0001 ORF X0012 OUT M03 LD M80004 ANDF X0025 OUT M1图示理解 : 4.7多重输出电路 MPS MRD MPP4.7.1指令助记符与功能指令助记符、名称功能程序步MPS 进栈进栈1MRD 读栈读栈1MPP 出栈出栈14.7.2指令说明· 在可编程序控制器中有11个存储器,用来存储运算的中间结果,被称为栈存储器。使用一次 MPS 指令就将此时刻的运算结果送入栈存储器的第1段,再使用 MPS 指令,又将此时刻的运算结果送入栈存储器的第1段,而将原先存入第一段的数据移到第二段。以此类推。· 使用 MPP指令,将最上段的数据读出,同时该数据从栈存储器中消失,下面的各段数据顺序向上移动。即所谓后进先出的原则。· MRD是读出最上段所存的最新数据的专用指令,栈存储器内的数据不发生移动。· 这些指令都是不带软元件地址的独立指令。4.7.3编程例1:一段栈0 LD X0041 MPS2 AND X0053 OUT Y0024 MRD5 AND X0066 OUT Y0037 MRD8 OUT Y0049 MPP10 AND X00711 OUT Y005例2:二段栈0 LD X0001 MPS2 AND X0013 MPS4 AND X0025 OUT Y0006 MPP7 AND X0038 OUT Y0019 MPP10 AND X00411 MPS12 AND X00513 OUT Y00214 MPP15 AND X00616 OUT Y003 例3:四段栈0 LD X0001 MPS2 AND X0013 MPS4 AND X0025 MPS6 AND X0037 MPS8 AND X0049 OUT Y00010 MPP11 OUT Y00112 MPP13 OUT Y00214 MPP15 OUT 00316 MPP17 OUT Y004请对照下面的梯形图与例3: 0 LD X0001 OUT Y0042 AND X0013 OUT Y0034 AND X0025 OUT Y0026 AND X0037 OUT Y0018 AND X0049 OUT Y000例3中需要要三重MPS指令编程,但是如果改成左面的电路,实现的效果一样。编程却很方便,不必采用MPS指令。4.8主控及主控复位指令 MC MCR4.8.1指令助记符与功能指令助记符、名称功能程序步MC 主控指令公共串联触点的连接3MCR 主控复位公共串联触点的清除24.8.2指令说明· 在下面程序示例中,输入X000为接通时,直接执行从MC到MCR的指令,输入X000为断开时,成为如下形式:保持当前状态:积算定时器、计数器、用置位/复位指令驱动的软元件。变成OFF的软件:非积算定时器,用OUT指令驱动的软元件。· 主控(MC)指令后,母线(LD、LDI点)移动主控触点后,MCR为将其返回原母线的指令。· 通过更改软元件地址号Y、M,可多次使用主控指令。但使用同一软元件地址号时,就和OUT指令一样,成为双线圈输出。4.8.3编程例1:没有嵌套时0 LD X0001 MC N0 M1004 LD X0015 OUT Y0006 LD X0027 OUT Y0018 MCR N0没有嵌套结构时,通用N0编程。N0的使用次数没有限制。有嵌套结构时,嵌套级N的地址号增大,即N0--N1--N2……N7。 例2:有嵌套时0 LD X0001 MC N0 M100 3步指令4 LD X0015 OUT Y0006 LD X0027 MC N1 M101 3步指令10 LD X00311 OUT Y00112 MCR N1 2步指令14 LD X00415 OUT Y00216 MCR N0 2步指令 4.9脉冲输出 PLF PLF4.9.1指令助记符、名称指令助记符、名称功能程序步PLS上升脉冲上升沿微分输出2PLF下沿脉冲下降沿微分输出2注:当使用M1536--M3071时,程序步加14.9.2指令说明· 使用PLF指令时,仅在驱动输入OFF后1个扫描周期内,软元件Y、M动作。· 使用PLS指令时,仅在驱动输入ON后1个扫描周期内,软元件Y、M动作。4.9.3编程0 LD X0001 PLS M0 2步指令3 LD M04 SET Y0005 LD X0016 PLF M1 2步指令8 LD M19 RST Y000 各元件的状态图: 4.10自保持与解除 SET RST4.10.1指令助记符与功能指令助记符、名称功能可用软元件程序步SET 置位动作保持Y、M、SY、M: 1S、特M: 2T、C: 2D、V、Z、特D:3RST 复位消除动作保持,寄存器清零Y、M、S、T、C、D、V、Z 4.10.2指令说明· 在下述程序示例中,X000一旦接通后,即使它再次成为OFF,Y000依然被吸合。X001一旦接通后,即使它再次成为OFF,Y000仍然是释放状态。· 对同一种软元件,SET、RST可多次使用,顺序也可随意,但最后执行者有效。· 此外,要使数据寄存器D、变址寄存器V、Z的内容清零时,也可使用RST指令。· 积算定时器T246--T255的当前值的复位和触点复位也可用RST指令。4.10.3编程0 LD X0001 SET Y0002 LD X0013 RST Y000 4.11计数器、定时器线圈输出和复位指令 OUT RST4.11.1指令助记符与功能指令助记符、名称功能程序步OUT 输出计数线圈的驱动32位计数器:516位计数器:3RST 复位输出触点的复位、当前值的清零2 4.11.2内部计数器编程0 LD X0101 RST C0 2步指令3 LD X0114 OUT C0 K10 (3步指令)7 LD C08 OUT Y000· C0对X011的OFF-ON次数进行增计数,当它达到设定值K10时,输出输出点C0动作,以后即使X011从OFF-ON,计数器的当前值不变,输出触点依然动作。· 为了清除这些当前值,让输出触点复位,则应令X010为ON。· 有必要在OUT指令后面指定常数K或用数据寄存器的地址号作间接设定。· 对于掉电保持用计数器,即使停电,也能保持当前值,以及输出触点的工作状态或复位状态。4.11.3高速计数器的编程0 LD X0101 OUT M8 2步3 LD X0114 RST C 2步6 LD XO127 OUT C K值(或D) 5步12 LD C13 OUT Y002 · 在C235-C245的单相单输入计数器中,为了指定计数方向,采用特殊辅助继电器M8234-M8245。· 当X010为ON时,对应C的M8也ON,这时C为减计数。· 当X010为OFF时,对应C的M8也OFF,这时C为增计数。· X011为ON时,计数器C的输出触点复位,计数器的当前值也清零。· 当X012为ON时,对依据计数器地址号确定的计数器输入X000-X005的ON/OFF进行计数。· 计数器的当前值增加,通过设定值(K或D的内容)时输出触点置位。在减少方向上通过设定值复位。 4.12空指令操作 NOP和程序结束指令 END4.12.1指令助记符与功能指令助记符、名称功能程序步NOP 空操作无动作1END 结束输入输出处理和返回到0步1 4.12.2指令说明NOP指令:1、将程序全部清除时,全部指令成为空操作2、若在普通指令与指令之间加入空操作(NOP)指令,则可编程序控制器可继续工作,,而与此无关。若在编写程序过程中加入空操作指令,则在修改或追加程序时,可以减少步序号的变化,但是程序步需要有空余。3、若将已写入的指令换成NOP指令,则电路会发生变化,务必请注意。END指令:1、可编程序控制器反复进行输入处理、程序执行、输出处理。若在程序的最后写入END指令,则END以后的其余程序步不再执行,而真接进行输出处理。2、在程序中没有END指令时,则处理到最终的程序步再执行输出处理,然后返回0步处理程序。3、在调试期间,在各程序段插入END指令,可依次检测各程序段的动作。这种场合,在 确认前面电路块动作正确无误后,依次删去END指令。4、RUN(运行)开始时的首次执行,从执行END指令开始。4.13梯形图设计的规则和技巧一、梯形图中的触点应画在水平线上,而不能画在垂直分支上, 如图1(a),由于X005画在垂直分支上,这样很难判断与其他触点的关系,也很难判断X005与输出线圈Y001的控制方向, 因此 应根据从左至右,自上而下的原则 。正确的画法如图1(b)图1(a)图1(b) 二、不包含触点的分支应放在垂直方向,不应放在水平线上, 这样便于看清触点的组和对输出线圈的控制路线,以免编程时出错。如图2所示。 图2(a)不正确画法图2(b)正确画法 三、在有几个串联电路相并联时,需钭触点最多的那条串联电路放在梯形图的最上面,在有几个并联电路串联时,应将触点最多的那个并联放在梯形图的最左面, 这样所编的程序比较明了,使用的指令较少,如图3所示。 图3(a)不正确画法 图3(b)正确的画法 四、按梯形图编制程序时一定要按从左至右,自上而下的原则进行。五、在画梯形图时,不能将触点画在线圈的右边,而只能画在线圈的左边, 如图4所示。 图4(a)不正确画法 图4(a)正确画法 六、梯形图画得合理,对编程时指令的使用可减少。 4.15双重输出动作及其对策4.15.1双重输出动作若在顺控程序内进行线圈的双重输出(双线圈),则后面的动作优先。如左图所示:考虑一下在多处使用同一线圈Y003的情况。例如:X001=ON,X002=OFF初次的Y003,因X001接通,因此YOO3 ON。输出Y004也ON。但是第二次的Y003,因输入X002断开,因此其输出改为OFF。因此,实际上外部输出成为:Y003=OFFY004=ON4.15.2双重输出的对策双重输出(双线圈)在程序方面并不违反输入,但是因为上述动作复杂,因此要按以下示例改变程序。 第五章科威PLC 功能指令表类别功能号指令助记符功 能D指令P指令程序流程00CJ条件跳转-O01CALL调用子程序-O02SRET子程序返回--03IRET中断返回--04--05--06FEND主程序结束--07-O08FOR循环区开始--09NEXT循环区结束--传送与比较10CMP比较OO11ZCP区间比较OO12MOV传送OO13-O14CML取反OO15-O16OO17XCH数据交换OO18BCD求BCD码OO19BIN求二进制码OO 四则运算与逻辑运算20ADD二进制加法OO21SUB二进制减法OO22MUL二进制乘法OO23DIV二进制除法OO24INC二进制加一OO25DEC二进制减一OO26WADN逻辑字与OO27WOR逻辑字或OO28WXOR逻辑字与或OO29ENG求补码OO循环与转移30ROR循环右移OO31ROL循环左移OO32RCR带进位右移OO33RCL带进位左移OO34SFTR位右移-O35SFTL位左移-O36WSFR字右移-O37WSFL字左移-O38SFWRFIFO写-O39SFRDFIFO读-O数据处理40ZRST区间复位-O41DECO解码-O42ENCO编码-O43SUM求置ON位的总和OO44BONON位判断OO45MEAN平均值OO46ANS标志位置--47ANR标志复位-O48SOR二进制平方根OO49FLT二进制整数与浮点数转换OO高速处理50REF刷新-O51REFE滤波调整正-O52MTR矩阵输入--53HSCS比较置位(高速计数器)O-54HSCR比较复位(高速计数器)O-55HSZ区间比较(高速计数器)O-56SPD脉冲密度--57PLSY脉冲输出O-58PWM脉宽调制--59PLSR带加速减速的脉冲输出O- 方便指令60IST状态初始化--61SER查找数据OO62ABSD绝对值式凸轮控制O-63INCD增量式凸轮控制--64TTMR示都定时器--65STMR特殊定时器--66ALT交替输出--67RAMP斜坡输出--68ROTC旋转工作台控制--69SORT列表数据排序--外部设备I/O70TKY十键输入O-71HKY十六键输入O-72DSW数字开关输入--73SEGD七段译码-O74SEGL带锁存七段码显示--75ARWS方向开关--76ASCASCII码转换--77PRASCII码打印输出--78FROM读特殊功能模块OO79TO写特殊功能模块OO 外部设备SER80RS串行通讯指令--81PRUN八进制位传送OO82ASCI将十六进制数转换成ASCII码-O83HEXASCII码转换成十六进制数-084CCD校验码-O85VRRD模拟量读出-O86VRSC模拟量区间-O8788PIDPID运算-O89浮点110ECMP二进制浮点数比较OO111EZCP二进制浮点数区间比较OO118EBCD二进制--十进制浮点数变换OO119EBIN十进制--二进制浮点数变换OOO120EAAD二进制浮点数加法OO121ESUB二进制浮点数减法OO122EMUL二进制浮点数乘法OO123EDIV二进制浮点数除除法OO127ESOR二进制浮点数开方OO129INT二进制浮点--二进制整数转换OO130SIN浮点数SIN演算OO131COS浮点数COS演算OO132TAN浮点数TAN演算OO 147SWAP上下位变换OO 时钟运算160TCMP时钟数据比较-O161TZCP时钟数据区间比较-O162TADD时钟数据加法-O163TSUB时钟数据减法-O166TRD时钟数据读出-O167TWR时钟数据写入-O葛雷码170GRY葛雷码转换OO171GBIN葛雷码逆转换OO触点比较224LD=(S1)=(S2)O-225LD>(S1)>(S2)O-226LD<(S1)<(S2)O-228LD<>(S1)≠(S2)O-229LD<=(S1)≤(S2)O-230LD>=(S1)≥(S2)O-232AND=(S1)=(S2)O-233AND>(S1)>(S2)O-234AND<(S1)<(S2)O-236AND<>(S1)≠(S2)O-237AND<=(S1)≤(S2)O-238AND>=(S1)≥(S2)O-240OR=(S1)=(S2)O-241OR>(S1)>(S2)O-242OR<(S1)<(S2)O-244OR<>(S1)≠(S2)O-245OR<=(S1)≤(S2)O-246OR>=(S1)≥(S2)O- 时钟运算160TCMP时钟数据比较-O161TZCP时钟数据区间比较-O162TADD时钟数据加法-O163TSUB时钟数据减法-O166TRD时钟数据读出-O167TWR时钟数据写入-O葛雷码170GRY葛雷码转换OO171GBIN葛雷码逆转换OO触点比较224LD=(S1)=(S2)O-225LD>(S1)>(S2)O-226LD<(S1)<(S2)O-228LD<>(S1)≠(S2)O-229LD<=(S1)≤(S2)O-230LD>=(S1)≥(S2)O-232AND=(S1)=(S2)O-233AND>(S1)>(S2)O-234AND<(S1)<(S2)O-236AND<>(S1)≠(S2)O-237AND<=(S1)≤(S2)O-238AND>=(S1)≥(S2)O-240OR=(S1)=(S2)O-241OR>(S1)>(S2)O-242OR<(S1)<(S2)O-244OR<>(S1)≠(S2)O-245OR<=(S1)≤(S2)O-246OR>=(S1)≥(S2)O-
0 评论