1第一章绪论可编程序控制器(PLC)是一种数字运算操作的电子系统,专为工业环境下应用而设计。它采用可编程序的存贮器,用来在其内部存贮执行逻辑运算、顺序控制、定时、计数和算术运算等操作指令,并通过数字式、模拟式的输出,控制各种机械或生产过程。PLC由CPU、RAM、ROM和输入、输出接口电路等组成,如下图所示:图1.1PLC组成电路CPU完成输入信号的检测、程序指令的编译、指令规定的动作及输出结果的功能。存储器包括RAM、ROM:RAM用来存放各种暂存的数据、中间结果和用户程序等。ROM用来存放监控程序及用户程序。输入接口接收输入信号。通常采用光电耦合电路,减少电磁干扰。输出接口用于输出结果。通常输出也采用光电隔离,并有三种方式,即继电器、晶体管和可控硅。PLC采用循环扫描工作方式,在PLC中,用户程序按先后顺序存放,PLC从第一条指令开始执行程序,直至遇到结束符后又返回第一条,不断循环。程序被完整扫描一次的时间,称为程序扫描周期。这个周期的长短,取决于程序所用指令的条数以及每条指令执行所需的时间。PLC对输入/输出有三种控制方式:直接方式、集中刷新控制方式和混合方式。集中刷新控制方式即在程序执行前,先把所有输入的状态集中读取并保存,程序执行时,所需的输入状态就到存储器中去读取,要输出的结果也都暂存起来,直到程序执行END后,才集中让输出产生动作。实质上,PLC是由许多电子继电器、定时器、计数器组成的一个组合件。而这些电子继电器、定时器、计数器则由PLC的内部寄存器来模拟实现。例如,可以选某个寄存器的一位(bit)作为中间继电器,以“1”表示继电器接通,以“0”表示继电器断开等。PLC一般具有下列器件:输入继电器、输出继电器、定时器、计数器、辅助继电器、状态寄存器、数据寄存器、特殊继电器等。这些内部器件都是字节或字的形式。在内存的数据存储区,各自占有一定数量的存储单元,使用这些器件,实质上就是对相应的存储内容以位或字节或字的形式进行存取。根据实际要求,通过编程器对这些内部器件进行控制,就是编程。程序是由若干条指令组成的,而指令是由指令字和器件组合而成的,并且指令还表示出了连接的方法。每个指令都用顺序号标出,该顺序号称为步进号。PLC的编程语言通常有下列几种:指令表(助记符)语言、梯形图语言、流程图语言、布尔代数语言。2第二章器件及器件定义号2.1输入继电器(X)PLC与外部输入点对应的内存基本单元,CPU一般按位来读取一个继电器的状态,也可按字来读取相邻一组继电器的状态。输入继电器不能由编入PLC内的接点驱动。通常一个外部输入点对应于一个输入继电器,当外部输入点接通时,该输入继电器相应接通。外部输入点一般用它的长开触点。编写梯形图时,输入继电器只有触点,没有线圈。输入继电器的编号一般采用八进制。2.2输出继电器(Y)PLC与外部输出点对应的内存基本单元,可以由输入继电器接点、内部其它器件接点以及它自身的接点来驱动。编写梯形图时,输出继电器既有触点,又有线圈。输出继电器的编号一般采用八进制。2.3内部继电器与外部没有直接联系,是PLC内部的一种辅助继电器,每个内部继电器对应着内存的一个基本单元,可由输入继电器接点、输出继电器接点以及其它内部器件接点驱动,它自己的接点也可以无限地多次使用。内部继电器包括辅助继电器、定时器、计数器、状态寄存器、数据寄存器及特殊继电器等。2.3.1辅助继电器(M)辅助继电器带有若干个常开接点和常闭接点,这些接点可在内部选择使用,但是这些接点不能直接驱动外部负载。而必须通过输出继电器来驱动。2.3.2定时器(T)定时器与若干常开接点和常闭接点一起,提供限时。FX2N系列PLC的定时器是通电延时定时器。2.3.3计数器(C)计数器可以实现计数功能,一般有递增计数和递减计数两种。2.3.4状态寄存器(S)每个状态寄存器都可以带有若干常开接点和常闭接点,而且在PLC内可以任意选择使用。状态寄存器是使步进式的过程控制容易编制程序的一种软器件,同步进梯形指令STL组合使用。在不用步进梯形指令时,状态寄存器可以作为普通的辅助继电器使用。3第三章基本指令功能3.1LD(取):常开触点与母线连接指令LDI(取反):常闭触点与母线连接指令OUT(输出):线圈驱动指令LD和LDI指令用于触点与母线相连。另外,在分支开始处,这些指令与后述的AND指令一起使用。OUT指令是线圈驱动指令。用于驱动输出继电器、辅助继电器、定时器、计数器、状态继电器,但是不能用来驱动输入继电器。指令对象器件:LD、LDI:X、Y、M、T、C、SOUT:Y、M、T、C、S、图形表示:指令语言:LDX001OUTY001LDIX002OUTM100OUTT10K19LDT10OUTY002说明:对于定时器、计数器和功能指令线圈,必须在OUT之后设定合适的常数。常数(K)的设定,需占用一步程序。3.2AND(与):单个常开触点串联指令ANI(与非):单个常闭触点串联指令AND(与)和ANI(与非)指令用于触点串联,串联接点的数量不限,这个指令可以连续使用。指令对象器件:X、Y、M、T、C、S图形表示:指令语言:LDX001OUTT10ANDX002K19OUTY001LDX003ANIX004OUTM100ANDX005……X,Y,M,T,C,S,X,Y,M,T,C,S,X,Y,M,T,C,S,LDLDIOUTX001K19X002T10Y001Y002T10M100X,Y,M,T,C,S,X,Y,M,T,C,S,ANDANIK19T10X005X002Y001X001X004M100X00343.3OR(或):单个常开触点并联指令ORI(或非):单个常闭触点并联指令OR和ORI指令是用作触点并联接的指令,当二个以上触点的串联电路并联连接时,需用后述的ORB指令。指令对象器件:X、Y、M、T、C、S图形表示:指令语言:LDX001ORX002ORIM100OUTY001LDIX003ANDX004ORM101ORM102ANIX005OUTY0023.4ORB(电路块或):串联电路块的并联指令两个以上触点串联的电路称作“串联电路块”。串联电路块并联连接时,在支路始端用LD和LDI指令,在支路终端用ORB指令。ORB指令是独立指令,不带任何器件编号。图形表示:指令语言:LDX001LDX002ANIM102ORBLDIM100ANDX003ORBOUTY001注意:多重并联电路中,若每个串联块都用ORB指令,则并联电路数可不受限制。3.5ANB(电路块与):将分支电路的始端与前一个电路串联连接的指令。用ANB指令将分支电路(并联电路块)与前一个电路串联。在与前一个电路串联的时候,用LD与LDI指令作分支电路的始端,分支电路的并联电路块完成之后,用ANB指令来完成两电路的串联。指令对象器件:无X,Y,M,T,C,S,X,Y,M,T,C,S,ORORIX002M100X001Y001M101M102X004X005X003Y002ORBX001Y001M100X003M102X0025图形表示:指令语言:LDX001ORX004LDX002ANDX003ORIX005ANBLDIM100ANDX006ORBOUTY0013.6SET(置位):置位指令。指令对象器件:Y、M、SRST(复位):复位指令。指令对象器件:Y、M、S、T、C这两个指令用于输出继电器、状态继电器和辅助继电器,用作置位和复位操作。图形表示:指令语言:LDX001SETM202LDX002RSTM202X001一旦接通,即使再断开,M202仍保持接通X002一旦接通,即使再断开,M202仍保持断开说明:当使用SET指令时,线圈用它的自保功能,保持工作状态,当使用RST指令时,其复位被自保。3.7PLS、PLF(脉冲):脉冲输出指令PLS:当输入信号上升时产生一个宽度为扫描周期的脉冲。PLF:当输入信号下降时产生一个宽度为扫描周期的脉冲。图形表示:指令语言:LDX001PLSM103LDX002PLFM104LDM103SETM205LDM104ANBM100X006X005X004X001Y001X003X002SETY,M,SRSTY,M,SX002RSTM202X001SETM202········PLSY,MX002PLFM104X001PLSM103M104RSTM205M103SETM205PLFY,M6RSTM2053.8MC(主控):公共串联接点的连接指令(公共串联接点另起新母线)MCR(主控复位):MC指令的复位指令对于连续输出电路,只要编程的顺序不错,可进行任意次的编程,但对于分支后含有串联接点的多路输出电路,则不能直接编程。MC和MCR指令就是用来解决这个问题的。指令对象器件:M、Y图形表示:说明:如上例所示,MC100、MC101等的MC触点,是一个应该分别与母线相连的常开触点,与该常开触点相连的其它触点,用LD(LDI)指令连接,即把母线移到MC触点的后面。3.9NOP(空操作):删除一条指令或空一条指令指令对象器件:无器件编号的独立指令在修改或增加程序时,如果插入NOP指令,可使步进编号的更改减到最少,此外,可以用NOP指令来取代已写入的指令,从而修改电路。在执行程序全部清零时,所有指令可看作是NOP。3.10END:程序结束指令PLC能重复地进行输入处理、程序执行和输出处理。程序结束时,写入END指令,则立即执行输出处理,而不再执行后面额外的步骤,并且程序返回第0步。指令对象器件:无器件号的独立指令7第四章步进指令全部顺序指令大致可分为通用顺序、手动顺序、自动顺序三种,通用顺序主要用于方式选择。这里简单介绍步进梯形指令的内容和自动顺序的处理方法。4.1电路总体组态4.1.1步进梯形指令的目的步进梯形指令是一种十分有用的指令。使用简单的编程器,根据说明机器作状态转换的图形,可以很容易地用这种指令来实现顺序设计。适用于常规继电器梯形图进行设计。因此这两种顺序可以组合使用。步进梯形指令可以分别直接用于自动顺序、手动继电器梯形顺序和方式选择电路中。4.1.2输入和输出单元的分配图4.1.1表示了安装在机械手上的负载和传感器,在PLC输入输出端分配的编号。上升、下降、右移、左移采用双电磁阀。一旦下降(右移)输出接通,即使再断开,它也能始终保持现行位置。上升(左移)与此相同。图4.1.1夹持松开装置,使用单电磁阀。当夹持输出时,处于夹持状态,夹持输出中断时,处于松开状态。每个工作臂都有上、下限位开关和左、右限位开关。其夹持装置不带限位开关,一旦夹持电磁阀导通,就同时驱动PLC内的定时器,设定的时间一到,夹持动作也就完成。4.1.3输入操作的分配下面是机器操作方式的实例:手动单一操作:用各按钮开关来接通或断开各负载的工作方式返回原位:按下返回原位按钮时,机器自动返回到它的原位自动步进操作:每按一次启动按钮,向前执行一步动作的工作方式单周期操作:机器在原位时,按下启动按钮,自动地执行一个操作周期的操作,操作完后Y002X004X005Y000Y003Y004Y002X002X001Y000X003Y001X002Y001X0018机器停在原位上如果在操作过程中,按下停止按钮,则机器停留在该工序上。如果再按下启动按钮,则又从该工序继续工作,最后停留在原位上连续操作:机器处在原位时,按下启动按钮,机器就连续重复工作如果按下停止按钮,机器运行到原位,然后停机4.2自动顺序程序4.2.1负载驱动图图4.2.1为机械手工作中执行各工序的负载图图4.2.1在第一次下降工序中,下降电磁阀Y000接通。在夹持工序中,夹持电磁阀Y001置位,同时驱动定时器T10。此后执行类似的操作,完成由初始条件到下一个初始条件的一系列操作。在夹持输出Y001置位后,保持夹持,直到夹持输出复位才松开。另一方面,只在每一工序上驱动定时器和其他输出。如上所述的控制,即一步一步按顺序驱动后各负载动作,称为顺序控制或过程步进型控制。这种控制过程,用继电器符号程序很难实现程序设计。4.2.2转换条件图图4.