《电气控制与PLC第八章ppt课件.ppt》由会员分享,可在线阅读,更多相关《电气控制与PLC第八章ppt课件.ppt(99页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、第第 8 章章电气控制与PLCML/SCL系列系列PLC 功能指令及应用功能指令及应用 第7章介绍的基本逻辑控制指令主要用于取代传统的继电器控制系统,实现逻辑控制和计时器/计数器的功能。作为工业控制计算机之一的PLC除了具有逻辑控制功能外,还具有数据运算、传送、变换、程序控制、通信及一些特殊功能。MicroLogix/SLC5系列PLC的功能指令分为:运算指令、数据处理指令、移位/顺序控制指令、程序控制指令、PID控制指令、通信控制指令、ASCLl码指令等。本章主要介绍运算指令、数据处理指令、程序控制指令,并结合控制应用给出一些编程实例。本章提要本章提要8.1 运算指令8.2 数据处理指令8.
2、3 移位/顺序控制指令8.4 过程控制指令8.5 功能指令应用实例8.1 运算指令运算指令 MicroLogix/SLC5系列PLC除了具有比较、算术、逻辑运算指令外,还有数据转换和一些高级运算指令。8.1.1 数据比较指令8.1.2 算术运算指令8.1.3 逻辑运算指令8.1.4 数据转换指令8.1.5 高级运算指令 8.1.1 数据比较指令数据比较指令 数据比较指令属于输入指令,用于比较两个数值的大小,以此作为逻辑梯级连续的条件。如果指令中被比较的两个数值满足指令的比较条件,则指令逻辑为“真”,否则指令逻辑为“假”。比较指令见表8-1。1.基本比较指令 表8-1中的前六个为基本比较指令。其
3、中两个指令的梯形图符号如图8-1所示,其他比较指令的符号格式与之1基本一致。图中表示的含义是:如果整数文件字N7:1中的值小于整数文件字N7:9中的值且大于或等于零,则将B3:1/3置位。图8-1 两个比较指令梯形图符号 基本比较指令都有两个参数:源(Source)A和源(Source)B。源A必须是一个数据文件地址(如N7:1),源B既可以是一个数据文件地址(如N7:9)也可以是常数(如0)。2通过屏蔽比较相等指令(MEQ)图8-2 MEQ指令梯形图符号 MEQ指令梯形图符号如图8-2所示,该指令通过一个屏蔽字,使源地址中的数据和比较地址中数据进行比较,它有以下三个参数:1)源(Source
4、)被比较值的数据文件地址;2)屏蔽(Mask)屏蔽字地址或一个十六进制常数(如图中的 0F0Fh);3)比较(Compare)既可以是一个常整数,也可以是 比较值的数据文件地址。在指令执行时,屏蔽字中为“1”的位使数据参与比较,为“0”的位屏蔽对应的位数据,因此,本指令只比较源值(0000010000010010)和比较值(0000000010000010)中对应于屏蔽位为“1”的那些位(图中屏蔽为0F0Fh,相当于0000111100001111,就是比较源值B3:1和比较值B3:2中的位03(0010)及位811(0100)。如果源值没有被屏蔽的位与比较值中相对应的位一致,则指令的逻辑为真
5、,当检测到一个不匹配的位时(图中为第10位),指令就变成假。所以图8-2的结果为假。3极限比较指令(LIM)LIM指令有以下三个参数:1)下限(Low Lim)输入下限值或数据地址;2)测试值(Test)输入要检测的值或数据地址;3)上限(High Lim)输入上限值或数据地址。LIM指令的三个参数可以是数据字地址或常数,但是不能有下列情况:如果被测参数是一个常数,则下限参数和上限参数必须是数据字地址;如果被测参数是数据字地址,则下限参数和上限参数既可以是常数,也可以是数据字地址。图8-3 LIM指令梯形图符号 LIM指令可以根据所设置的上限和下限值,比较某测试值是在指定数值范围之内或之外。L
6、IM指令逻辑为“真”或为“假”的条件实例参见教材表8-2。4比较指令应用举例例例1:若整数文件N7:0与N7:1中的数值相等,点亮L1指示灯;如果N7:2与N7:3中的数值相等,则点亮L2指示灯。梯形图程序如图8-4所示。图中,梯级0000中EQU指令参教N7:0与N7:1中的数值相等(皆为9175),则EQU指令逻辑为“真”,接通与输出端O:0/0相连接的L1指示灯。而梯级0001的EQU指令参数N7:2与N7:3中的数值不相等(分别是-247和-253),则EQU指令逻辑为“假,与输出端O:0/1相连接的L2指示灯不得电。图8-4 EQU指令应用梯形图 4比较指令应用举例例例2:如果两个数
7、值的低8位相匹配,则点亮L1指示灯。梯形图逻辑如图8-5所示,因为只要求比较两个数值B3:1和B3:3的低8位,因此,将MEQ指令屏蔽字B3:2中的数值设置为00FFh,只让源值与比较值中的低8位进行相等的比较,尽管待比较两个数值的其他位不全一致,MEQ指令逻辑仍然为“真”,使连接输出端O:0/0的L1指示灯得电点亮。图8-5 MEQ指令应用梯形图 8.1.2 算术运算指令算术运算指令 算术运算指令属于输出指令,大多数算术运算指令需要两个操作数,当梯级条件为真时,执行指定的算术运算,将运算结果存放到指定的存储位置,并根据运算结果自动设置算术标志位的值。例如,加和减指令都是取一对输入值,对它们进
8、行加或减运算,将结果存放到指定的目的地址内,如果运算结果超过PLC的极限值,则置位上溢出或下溢出位。1算术运算指令的通用信息 1)指令参数。算术运算指令有源(Source)和目的(Dest)两种参数。在源参数中输入参与运算数值的数据文件地址或常数,算术、逻辑、或者传送操作的执行都要输入该参数。如果一条指令有两个源参数,则两个参数不能都是常数。目的参数是用于存储指令运算结果的数据文件地址。对于运算中带符号的源和目的参数,PLC都以二的补码形式存储。可以选择用变址寻址方式指定指令参数的“字”地址,也可以选择用间接寻址方式指定指令参数的“字”地址。SLC503(OS301或更高)、SLC504和SL
9、C505 PLC的算术运算指令支持浮点数和字符串数字类型。2)算术标志位是指PLC状态文件字0的位03(S:0/0 S:0/3)。算术运算指令执行时,会根据运算的结果对算术标志位进行更新。标志位的含义如下表。2整数/实数算术运算 算术运算指令既可以进行整数(16位)/实数(浮点数)运算,也可以进行双整数(32位)运算,本小节只介绍单字运算指令的执行情况及其对状态位的影响。运算指令的梯形图符号如图8-6所示。图中只画出了ADD、SQR和CLR三条运算指令,SUB、MUL和DIV指令的符号格式与ADD基本相同,有三个参数:源A、源B和目的地址,只是指令名称和运算法则不同。NEG、ABS和SQR指令
10、有两个参数:源和目的地址,CLR指令只有一个参数:目的地址。源参数可以是数据文件地址也可以是常数,但是目的参数必须是数据文件字地址。图8-6 算术运算指令梯形图符号整数/实数算术运算指令使用详细规则见教材p181-182。这里通过实例来说明乘、除两条指令的用法。例例3:乘数是12345,被乘数是3,结果存放在整数地址N7:0内,运算结果等于37035,超过最大值32767,此时,如果S:2/14=0,则N7:0内的数值被设置为32767,而算术寄存器内存储的值是37035。可见虽然PLC发生溢出错误,但是算术寄存器内的结果还是有效的。例例4:图8-7所示的除法指令,19除以4的余数是3(商为4
11、.75),所以商被向上取整到5存储在目的地址N7:3内。不整除的商是4,存储在S:14内,同时余数3存储在S:13内。指令参数及执行结果为:参数:N7:1=19;N7:2=4 结果:N7:3=5 S:14=4 S:13=3图8-7 DIV指令梯形图符号3双整数(32位)运算指令 MicroLogix/SLC5 PLC都是16位的,其整数范围是-3276832767,超过这个值就会发生溢出,而这个数值范围在很多应用中是远不能满足算术运算要求的。因此,PLC应能进行32位的加法、减法和除法运算。其中32位加法和减法可以直接用ADD和SUB指令来实现,32位除法则由专门的双除指令(DDV)来实现。1
12、)32位加法和减法。可以在编程时根据需要选择进行16位或32位有符号整数加法和减法运算。如果要进行32位算数运算,要将算术溢出选择位(S:2/14)设置为“1”。图8-8 32位有符号整数加法实例梯形图 16位有符号整数与32位有符号整数相加的实例如图8-8所示。16位被加数存放在B3:1中,32位加数的低16位存放在B3:2中,高16位存放在B3:3中。两个加数的值和运算结果参见表8-7(p183)。2)双字除指令(DDV)该指令只有两个参数:源和目的。DDV指令将算术寄存器中32位值(S:14和S:13)去除以一个16位的源值(图8-9中的N7:0),如果余数大于等于0.5,则目的地址(图
13、8-9中的N7:1)的值向上取整。在开始计算时,算术寄存器S:13和S:14包含DDV运算的被除数,指令执行时,高位有效字S:14存储不整除的商,低位有效字S:13存储余数。该指令通常用在产生32位结果的MUL指令之后。图8-9 DDV指令梯形图符号8.1.3 逻辑运算指令逻辑运算指令图8-10 DDV指令梯形图符号 逻辑运算指令属于输出指令,包括逻辑与指令(AND)、逻辑或指令(OR)、逻辑异或指令(XOR)和逻辑非指令(NOT)。逻辑运算指令的功能见表8-9(p184)。AND、OR和XOR指令有三个参数:源A、源B和目的地址,源A和源B的参数可以是字地址或常数,但是两者不能都是常数。目的
14、地址必须是数据文件字地址。当输入参数是常数时,可以用运算符“&”修改输入值的基数。例如,用户可以输入&B11111111111111111或&HFFFF,来代替输入-1作为常数。NOT指令只有源和目的两个参数,它们必须是数据文件字地址。AND指令使源地址A的值和源地址B的值按位执行逻辑与运算;OR指令使源地址A的值和源地址B的值按位的值按位执行逻辑异或运算;NOT指令对源地址的值按位执行逻辑非运算。逻辑运算指令都将结果存储在目的地址内,其算术标志位的影响见表8-10(p184)。8.1.4 数据转换指令数据转换指令 数据转换指令属于输出指令。数据转换指令的功能见表8-10,可以使数据在整数与B
15、CD码、角度与弧度之间进行转换,还可以实现编码器和译码器的功能。1BCD码转换指令图8-11 BCD码转换指令梯形图符号例例5:要求将存储在N7:3的整数值32760转换成BCD码。编程时,将N7:3作为TOD指令的源值,算术寄存器作为目的参数,此时可转换的最大BCD码值可以是32760。然而,如果BCD码值超过9999,溢出位S:0/1就会被设置为“1”,这将导致次要错误位S:5/0也被置位,因此,需要在梯形图程序结束之前解锁存S:5/0,以避免出现主要错误代码0020。梯形图如右图所示,指令执行后源和目的地址内的地址数据见表8-12(p186)。图8-12 TOD指令应用举例 在很多应应场
16、合,采用拨码开关输入数据,这些数据都是BCD码格式,在梯形图程序使用这些数据之前,应该把BCD码值转换成整数值,否则,PLC会把这些数据当作整数处理,从而造成数据的丢失或改变。例例6:要求将算术寄存器中的BCD码值转换成整数,并存储在N7:10内,梯形图程序如图8-13所示。FRD指令的参数和转换方向与TOD指令刚好相反,其数据显示格式也与表8-12类似,只是要将源和目的地址交换。N7:2和S:13作为整数处理:十进制为4660,对应的二进制为0001 0010 0011 0100;当作BCD码,就成了1234(对应的二进制为0000 0100 1101 0010)最终N7:10的值就是十进制
17、整数1234。图8-13 FRD指令应用举例2角度与弧度转换指令 角度与弧度转换指令有:弧度转换成角度指令(DEG)和角度转换到弧度指令(RAD),这两条指令仅适用于SLC503及更高系列PLC,其梯形图表示形式如图8-13所示。角度与弧度转换指令对算术标识位的影响参见表8-13。弧度转角度公式:目的值=源180/角度转弧度公式:目的值=源/180图8-14 度与弧度转换指令梯形图符号3译(编)码器指令 有4选1译码器(DCD)和1选4编码器(ENC)两条指令,这两条指令都属于输出指令,梯形图符号如图8-15所示。图8-15 译(编)码器指令梯形图符号4交换指令(SWP)SWP指令可以使位、整
18、数、ASCII码或者字符串文件中指定数量字的低位和高位字节进行交换。当编程指令时需输入下列参数:1)源(Source)输入用于存储需要交换的数据的地址,只能用变址字地址。2)长度(Length)输入被交换的字的数量,为整数常数,该值与被交换数据的文件类型无关。对于位、整数和ASCII码文件类型,长度范围是1128;对于字符串文件类型,长度范围是141。注意:SWP指令限制单数字符串元素并且不能超出字符串元素的边界。图8-16 SWP指令梯形图符号8.1.5 高级运算指令高级运算指令 MicroLogix/SLC5 PLC不仅具有基本算术运算功能,还有三角函数运算、对数运算、指数运算以及参数整定
19、等复杂运算功能。MicroLogix/SLC5 PLC的高级运算指令助记符、名称和功能参见表8-16。例例7:将420mA的模拟量输人信号转换为PID指令的过程变量。设SLC5处理器的模拟量输入模块为420mA的电流信号,它对应的数字量值是327716384。设PID指令过程变量的范围是016383,本例要把327716384定标位016383,其线性关系如图8-18所示。图8-19 例7的SCL指令参数数据定标指令举例定标计算公式为:y=mx+b 式中,y为定标值;x为输入值;m为比率;b为偏移量。比率公式为:m=(定标最大值-定标最小值)/(输入最大值-输入最小值)偏移量b的计算公式为:b
20、=定标最小值-(输入最小值比率)由图8-18中的值分别代入上述公式得:m=1.249(即12490/10000)b=-4093图8-18 定标值与输入值的关系例例8:模拟量I/O组合模块1746-NIO4I位于SLC504 PLC系统框架的5号槽内,其0号输入通道(I:5.0)连接一个压力传感器,要求用工程单位读取该值(数值为0600),并向1号输出通道(O:5.1,控制阀门的开度)提供一个420mA的电流信号(输入与输出成线性关系)。压力传感器测量压力范围是0600psi(00.6MPa),对应输入通道的数值范围是327716384;对于输出通道的420mA信号,对应的数值范围是 62423
21、1208。参数整定指令举例图8-23 SCP指令例子梯形图程序8.2 数据处理指令数据处理指令 MicroLogix/SLC5 PLC的数据处理功能也是通过指令来实现的,数据处理指令包括数据传送和堆栈指令,这些指令的助记符、名称和功能参见表8-23。8.2.1 数据传送指令8.2.2 堆栈指令8.2.1 数据传送指令数据传送指令 数据传送指令属于输出指令,它能够实现单个数据传送或多个连续数据传送,即将一个数据传送到多个连续数据文件地址内的功能。数据传送指令可在程序初始化时生成数据,也可用于PLC内存储单元的数据流转。数据传送指令可以选用变址字地址作为指令参数的指定字地址。当用SLC503、SL
22、C504或SLC505 PLC时,可以选择用间接的字和位地址作为指令指定的字地址。单个数据传送指令的执行对算术标志位有影响,而多个数据的传送不更新算术标志位。如仅希望传送一个数据字而不影响算术标志位,可以用长度是1的复制(COP)指令代替MOV指令例例9:在图8-29中,MOV指令将N7:1的数据直接传送到目的地址N10:1内,因此两个数据地址内的值是一样的(3077)。MVM指令将B3:11的数据通过屏蔽传送到目的地址N7:10内,屏蔽值是00FFh,因此源数据B3:11内的值只有低8位被传送。两条指令的数据传送结果和屏蔽参数的作用见表8-25。数据传送指令举例图8-29 传送指令梯形图符号
23、8.2.2 堆栈指令堆栈指令 堆栈指令属于输出指令,分为先进先出FIFO和后进先出LIFO两种指令。1FIFO装载/卸载指令(FFL/FFU)FFL/FFU指令是成对使用的,FFL指令把数据字装入FIFO堆栈内,FFU指令把数据字按与它们进入时相同的顺序从FIFO堆栈卸出。FFL/FFU指令的梯形图符号及指令的执行过程如图8-31所示。图8-31 FFL和FFU指令梯形图符号及执行过程2LIFO装载/卸载指令(LFL/LFU)LFL和LFU指令也是成对使用。LFL指令把数据字装入LIFO堆栈内。LFU指令把数据字按与它们进入时相反的顺序从LIFO堆栈卸出。LFL/LFU指令梯形图符号及指令执行
24、过程如图8-32所示。每次LFL指令梯级条件由假到真转换时,LFL指令与图8-31的FFL指令一样都装载一个数据,直到栈满为止。而当LFU梯级条件由假到真转换时,置位指令的卸载使能位,并把装入堆栈的最后一个数据卸出到目的地址(N7:11)内,图8-32所示中最后一个数据存储在当前位置值减1的位置于8(N7:20)内,然后位置值减1,直到栈空为止。图8-32 LFL和LFU指令梯形图符号及执行过程8.3 移位移位/顺序控制指令顺序控制指令 MicroLogix/SLC5 PLC的移位/顺序控制指令属于输出指令,这些指令的助记符、名称和功能参见表8-27。移位/顺序控制指令允许用户通过单个或成对指
25、令执行通常的复杂操作,从而简化用户的梯形图程序。8.3.1 位移指令8.3.2 顺序控制指令8.3.1 移位指令移位指令图8-33 BSL和BSR指令梯形图符号 MicroLogix/SLC5 PLC的移位指令包含位左移指令(BSL)和位右移指令(BSR),梯形图符号如图8-33所示。当指令所在梯级条件为 真时向位队列装入一位,并使整个位队列中的数据移动一位。注意位移指令执行时清零变址寄存器S:24的值,如果在程序中需要使用变址寄存器的值,一定要记住在执行完位移指令后将偏移值装回变址寄存器中。用位移指令编程时,需输入下列参数:1)文件(File)输入位队列的地址,必须在位队列地址中使用文件标示
26、符(#)。2)控制(Control)用于存储指令的状态字和队列大小(位的个数)的控制元素。注意用于一个指令的控制文件不能被任何其他指令使用。3)位地址(Bit Address)是指源位的位地址,即指令把此位的状态插入到位队列的首位,对于BSL指令首位是最低位,而对于BSR指令首位是最高位。4)长度(Length)是指位队列中位的数量,长度值为0会使输入位被直接传送到卸载位(UL)中。如果长度值超过数据文件的末尾会使PLC发生执行时间错误。1位左移指令(BSL)当BSL指令的梯级条件由假到真变化时,PLC置位使能位,并且位阵列向左(向高位数)移动一个位置。图8-34 BSL指令的执行过程 当梯级
27、条件由假变真时,处理器置位使能位(R6:14/15)。随后处理器以B3/16(即B3:1/0)为起点使58个位数据一次向左移动1位,最高位即B3/73的状态被装入卸载位(R6:14/10)中。指定的源数据(I:2/12)移入到位文件的第一个位置B3/16。处理器在一次程序扫描中只完成一次移位操作,并且置位完成位(R6:14/13)。当梯级条件变为假时,BSL指令复位使能位、完成位、错误位(如果被置位)。2位右移指令(BSR)当BSR指令的梯级条件由假到真变化时,PLC置位使能位(EN位15),与BSL指令相反,BSR指令使位阵列向右(向低位)移动一个位置。在位地址参数指定的位状态被移入最后一位
28、的位置。第一位的位状态被移出位队列,并储存在卸出位(UL位10)内。3移位指令应用举例例例10:装配生产线工艺要求见表8-29,该生产线有8个工位,完成对产品的装配工作,为避免无零件时机器空操作,在第一个工位装由光电开关,用于检测是否有零件装入。该生产线每隔5秒移动一个工位,在2、3、4、7、8号位置上分别完成不同的操作。由于受生产线结构的限制,5、6号工位仅用于传送零件。试设计该生产线PLC控制程序。图8-35 例10装配线的梯形图逻辑 设工作控制开关接PLC输入端I:1/0,零件装入检测信号接输入端I:1/1,输出端O:2.0/07 分别控制18号工位的操作,则装配生产线控制梯形图如图8-
29、35所示。在梯形图中,B3:0/07分别代表18号工位,当有零件装入时,I:1/1为“1”状态,使位队列的首位B3:0/0首先为“1”,然后每隔5秒使B3:0/17依次为“1”。每次通过MVM指令将需要操作的位传送到输出O:2.0/07,以控制对应工位上的操作。图8-36 例11单按纽启停梯形图逻辑例例11:用移位指令实现单按钮启停控制功能。在7.2.4节曾经介绍用三种方式实现单按钮启停控制功能,本例利用移位指令的逐位移位特点,设计单按钮启停控制功能。按钮信号连接PLC I:1/5输入端,按钮按下使I:1/5第一次为“l”时,使BSL指令的输入位B3:2/0为“l”,执行BSL指令则B3:1/
30、0为“l”,使输出O:9/1变为“1”,被控设备开始工作;在按钮按下使I:l/5第二次变为“l”时,由于此时梯级1的B3:1/0为“1”,使XIO指令为假,所以B3:2/0为“0”,执行BSL指令B3:1/0为“0”,使输出O:9/1变为“0”,被控设备停止工作。当I:1/5再次变为“l”时,重复上述过程。8.3.2 顺序控制指令顺序控制指令 顺序控制指令包括:顺序器输出(SQO)、顺序器比较(SQC)、顺序器装入(SQL)三条指令。顺序控制指令的控制文件结构如下表。1顺序器输出指令(SQO)1)文件(File)顺序器文件的地址,用于存储一组16位的数值来控制输出,必须在这一地址前使用文件指示
31、符“#”。2)屏蔽(Mask)是一个十六进制常数或字地址,或文件地址。屏蔽位为“0”时屏蔽数据,为“1”时通过数据。3)目的(Dest)可以是输出字或文件地址,SQO指令从顺序器文件传送数据到该地址内。4)控制(Control)存储指令的状态位、顺序器文件的长度以及文件内数据所在当前位置值5)长度(Length)从顺序器输出文件的长度,表示从位置1开始的顺序器文件步数。6)位置(Position)显示指令的位置指针值。指令的梯形图符号如图8-37所示。图8-38 SQO指令的工作过程图8-37 SQO梯形图符号 图8-37 SQO指令的工作过程如图8-38所示。SQO指令通过屏蔽(Mask)将
32、一组16位数据传送到目的地址中,来控制机器的顺序操作。当指令的梯级条件由假到真变换时,指向顺序器文件的下一步(字),将其存储的数据通过屏蔽传送到指定的目的地址字内。当顺序器文件的最后一个字被传送后,置位完成位。在下一次梯级条件由假到真转换时,指令从位置1开始循环操作。2顺序器比较指令(SQC)SQC指令通过屏蔽依次使一组16位数据与另一个数据进行比较,并根据比较结果置位相应的控制位。SQC指令梯形图符号如图8-39所示,工作过程如图8-40所示。当源字中所有未被屏蔽位的状态与对应的顺序器文件中的位匹配时,指令置位发现位(FD)。图8-39 SQC指令梯形图符号 图8-40 SQC指令的工作过程
33、3顺序器装入指令(SQL)SQL指令将源值的16位数据依次装入顺序器文件中。指令的梯形图符号和工作过程如图8-41及图8-42所示。图中SQL指令的参数已经输入完毕,输入字是I:1.0是源,指令执行时,依次将源字I:1.0的数据装入整数文件#N7:30中。图8-41 SQL梯形图符号图8-42 SQL指令的工作过程 当梯级条件由假到真变化时,置位SQL指令的使能位(EN),位置值增加到顺序器文件的下个位置,且将I:1.0中的数据装入这一位置。如果梯级条件保持为真,则每次扫描SQL指令都继续将当前数据装入这一位置。当梯级条件为假时,复位使能位。梯级条件再次由假到真变化时,指令将源字I:1.0的数
34、据装入下一个文件单元,完成4步后,置位完成位(DN)。下一次梯级条件由假到真变化,操作循环回到位置1。如果源是一个文件地址(例如#N7:12),则两者的长度都是5(04),并且将始终一致跟踪位置值的每一步。当顺序控制指令的梯级条件为真时,变址寄存器S:24的当前值会被指令的位置值覆盖。顺序控制指令每次传送的是16位字,如果用户的应用程序要求多于16位数据时,可以使用并行多路顺序器指令。4顺序控制指令举例例例12:用顺序控制指令实现单按钮启停控制,对应梯形图程序如图8-43所示。对比7.4.2节的三个例子以及8.3.1节移位指令的例子可以看出,同样是实现单按钮启停控制,用顺序控制指令只需要一个梯
35、级就能实现这个功能。执行程序前,先将B3:2/0置为“1”,B3:3/0置为“0”。第一次按下启停按钮I:0/0时,SQO指令将步1(B3:2)的值经过屏蔽(0001h)传送到输出字O:0.0,使O:0.0/0接通,被控设备工作,释放按钮后,输出保持不变;第二次按下启停按钮I:0/0时,SQO指令将步2(B3:3)的值经过屏蔽(0001h)传送到输出字O:0.0,使O:0.0/0断开,被控设备停止工作。以后再按下按钮,又循环开始启/停设备图8-43 例12的单按钮启停程序例例13:用TON和SQO指令实现交通信号灯控制功能,即某路口的红灯亮30秒、黄灯亮3秒、绿灯亮50秒。实现该功能的梯形图程
36、序如图8-44所示,数据文件如表8-31所示。在梯形图第2梯级中的顺序器输出指令SQO的移步控制由T4:0的完成位实现,而计时器T4:0的定时值不是固定不变的,它一共有4个定时预置值(5、30、3、50秒)。当程序刚开始运行时,TON定时5秒,计时完成后,执行两条SQO指令,第一条SQO指令控制信号灯的亮/灭(将B3:2数据移步输出到O:1.0,红灯亮),第二条SQO指令改变对应计时器的预置值(B3:6输出到T4:0.PRE),以控制红灯的点亮时间。图8-44 例13的交通信号灯程序 当本次定时器计时完成后,重新启动新一轮定时器(与上一次的预置值不同),再次执行两个SQO指令,控制又一个信号灯
37、的点亮(新的定时时间),这样不断进行下去。T4:0定时器的工作次序是5秒(程序初始时,仅一次)、30秒(红灯亮)、3秒(黄灯亮)、50秒(绿灯亮)、30秒(红灯亮)、3秒(黄灯亮)、50秒(绿灯亮),如此循环。8.4 过程控制指令过程控制指令8.4.1 PID过程控制概述8.4.2 PID指令及其应用8.4.1 PID过程控制概述过程控制概述 过程控制是工业自动化的一个重要分支,它主要针对温度、压力、液位、流量、成分和物性等参数的控制问题。工业生产对过程控制的要求主要体现在安全性、经济性和稳定性等三个方面。过程控制的任务就是在了解、掌握工艺流程和生产过程的静态与动态特性的基础上,根据上述三项要
38、求,应用控制理论对控制系统进行分析和综合,最后采用适宜的手段满足这些要求。PID控制是最早发展起来的控制策略之一,是闭环模拟量控制中的传统调节方式。由于其算法简单、鲁棒性好、可靠性高,在改善控制系统品质,保证系统偏差,使系统实现稳定状态方面具有良好的效果,已成为工业生产过程中一种最普遍采用的控制方法。PID是比例(Proportional)、积分(Integral)、微分(Derivative)的缩写,根据系统偏差,利用比例、积分、微分计算出控制量,使得过程变量保持预先设定的值。例如对某储液罐液面采用PID控制就是根据此偏差以及相关参数,利用PID方程计算出控制量来调节阀门开度,从而保持液面高
39、度恒定。本节不详细描述PID方程及相关的性能指标,只对PID控制器工作过程中各校正环节做简单介绍。1比例环节 按比例反映控制系统的偏差信号,偏差一旦产生,P控制立即起作用,能较快地克服扰动的影响,使系统稳定下来。比例控制参数KP增大,会使系统的动作灵敏,响应速度加快,但是KP过大会使振荡频率增加,调节时间延长,甚至会使系统趋于不稳定状态。2积分环节 主要用于消除稳态误差,提高系统的无差度。积分时间常数TI越大,积分作用越弱,反之则越强。积分通常结合比例控制或微分控制共同产生作用,构成PI或者PID控制。改变积分控制参数能消除系统的稳态误差,提高控制系统的精度。3微分环节 用于反映偏差信号的变化
40、趋势(速率),能在偏差信号变得太大之前,在控制系统中引入一个有效的早期修正信号,来改变动态控制输出,减少调节时间,改善系统的动态特性。但是如果微分参数TD 太大,会因为微分作用太强而使PLC输出发生很大变化,严重时会影响控制质量。8.4.2 PID指令及其应用指令及其应用 目前,许多PLC或DCS(Distributed Control Syetem)厂家都有相应的专用PID回路控制产品,可以直接插入机架中,完成闭环控制,但此类产品一般比较昂贵。另一种方法是用软件模块来实现PID控制,输入输出接口利用普通的模拟量输入和输出点,这种软件方式在软件开发时省时省力,具有良好的控制效果。PLC的PID
41、指令其实是一个复合程序模块,它利用模拟量输入模块采集信号(作为过程变量),进行PID计算后将控制变量传递给模拟量输出模块(作为控制变量)来控制输出。根据过程特性和工艺要求来选取PID控制参数,不同的应用场合有不同的控制要求,相同的控制对象根据不同的要求应采取不同的控制规律,以实现不同的控制效果。ML1200/1500和SLC5 PLC的PID指令梯形图符号如图8-45和图8-46所示。两条指令需要输入的参数略有不同。图8-45 ML1200/1500 PID指令梯形图符号图8-46 SLC5 PID指令梯形图符号1)PID文件(PID file)仅适用于ML1200/1500 PLC,如果用户
42、没有在数据文件中定义PID文件类型,系统将会自动创建一个PID文件,PID文件的长度固定为23个整数字,相当于SLC5 PLC PID指令的控制区块。2)控制块(Control Block)适用于SLC5 PLC,输入一个整数文件地址用于存储指令操作所必需的数据区域首地址,文件长度固定为23个字。如图8-46输入N10:150将占据N10:150到N10:172区域。PID指令控制块的数据结构见表8-32。3)过程变量(Process Variable,PV)存储PID控制器过程输入值的数据文件地址,该地址可以是模拟输入字的位置,位置是输入A/D所存储的值。也可以把整数变量整定在016383范
43、围内,作为过程变量。4)控制变量(Control Variable,CV)存储PID控制器输出控制值的数据文件地址。输出值范围是016383,16383对应100的通态值。通常输入整数文件地址,使用户可以整定PID的输出范围,使其与应用程序所需要的模拟量范围相适应。5)控制块长度(Control Block Length)SLC5系列PLC的PID指令控制块长度固定为23个整数字。在输入PID指令所需参数后,可以进入指令中的设置画面选项。图8-45指令对应的设置画面如图8-47所示。以水池水位控制为例,控制输入为水位(010000),控制输出为阀门开度(0100,对应开度0100),比例、积分
44、、微分参数值为2.0、10.0、0.1,设定值为SP=9000,过程值为PV=9175,因而偏差E=PVSP=175。与PID指令共同作用的还有一些其他指令,如SCL、MVM、MOV指令等。图8-47 ML1200/1500的PID指令设置画面 图8-46指令对应的设置画面如图8-48所示。以变频调速控制液体管道出口压为例,控制输入为压力(0600),控制输出为变频器频率(0100,对应频率3050Hz),比例、积分、微分参数值为0.8、0.2、0.0,设定值为SP=405,过程值为PV=401,因而偏差E=SP-PV=4。与PID指令共同作用的还有一些其他指令,如SCL、MVM、MOV、IO
45、M(通过屏蔽立即输出)、IIM(立即输入)指令等。图8-48 SLC5的PID指令设置画面8.5 功能指令应用实例功能指令应用实例8.5.1 运料小车控制8.5.2 电动机顺序起动和停止控制8.5.1 运料小车控制运料小车控制 图8-49为运料小车运动示意图。当小车处于后端,按下启动按钮,小车向前运行,压下前限位开关后,翻门打开,7s后小车向后运行,到达后端即压下后限位开关,打开小车底门5s,完成一次动作。要求控制小车的运行,并具有:手动、自动单周期、自动循环三种工作方式。图8-49 运料小车运行示意图 手动控制包括以下几方面:平动向前按钮I:0/6接通并且小车底门关闭时,小车向前运行直到前限
46、位开关I:0/1接通;开翻门按钮I:0/8接通,翻门打开,货物通过漏斗卸下,7s后自动关闭漏斗的翻门;手动向后按钮I:0/7接通,小车向后运动直至后限位开关I:0/2接通;开底门按钮I:0/9接通,底门打开5s将货物卸下。自动单周期运行是指按下启动按钮I:0/0,且小车已位于最后端位置并且小车底门已关闭,小车将往复运行一周后停在后端等待下次启动。自动循环与单周期的区别在于它不只是完成一次循环而是将连续自动循环下去。工作方式选择开关、手动操作按钮及输入/输出点安排如表8-33所示。图8-50 手动操作梯形图图8-51 自动操作梯形图8.5.2 电动机顺序启动和停止控制电动机顺序启动和停止控制图8-52 电动机启动和停止示意图 图8-52为电动机顺序起动及反方向顺序停止示意图。在按下启动按钮后,1号电机运行,2秒后启动2号电机,3秒后启动3号电机,4秒后启动4号电机。在4台电机同时运行的情况下,若按下停止按钮,则立即停止4号电机运行,过4秒后,停3号电机,过3秒再停2号电机,再过2秒停1号电机的运行。表8-34为PLC输入/输出点分配。图8-53 电动机启动和停止梯形图 习题(p215)8-1、8-2、8-3。