《西门子PLC指令教程应用指令.ppt》由会员分享,可在线阅读,更多相关《西门子PLC指令教程应用指令.ppt(80页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、第第5章应用指令章应用指令知识知识 5.1 程序控制类指令程序控制类指令5.2特殊指令特殊指令 5.1 程序控制类指令程序控制类指令 空操作空操作 5.1.2 结束及暂停结束及暂停 看门狗看门狗 跳转跳转 子程序指令子程序指令 程序循环程序循环 顺序控制继电器顺序控制继电器 与与ENO指令指令 返回本章首页返回本章首页空操作空操作 NOP,空空操操作作指指令令。使使能能输输入入有有效效时时,执执行行空空操操作作指指令令。空空操操作作指指令令不不影影响响用用户户程程序序的的执执行行,操操作作数数N是是标标号,是一个号,是一个0255的常数。的常数。指令格式:指令格式:NOPN例:例:NOP30程
2、序如下图程序如下图5.1所示。所示。返回本节返回本节5.1.2 结束及暂停结束及暂停 1.结束指令结束指令结束指令有两条:结束指令有两条:END和和MEND。两条指令在。两条指令在梯形图中以线圈形式编程。梯形图中以线圈形式编程。END,条件结束指令。使能输入有效时,终止,条件结束指令。使能输入有效时,终止用户主程序。用户主程序。MEND无无条条件件结结束束指指令令。无无条条件件终终止止用用户户程程序序的执行,返回主程序的第一条指令。的执行,返回主程序的第一条指令。用用Micro/Win32编编程程时时,编编程程人人员员不不需需手手工工输输入入MEND指指令令,而而是是由由软软件件自自动动加加在
3、在主主程程序序结结尾。指令格式:尾。指令格式:END(无操作数)(无操作数)2.暂停指令暂停指令STOP,暂暂停停指指令令。使使能能输输入入有有效效时时,该该指指令令使使主主机机CPU的的工工作作方方式式由由RUN切切换换到到STOP方方式式,从从而而立立即即终终止止用用户户程程序序的的执行。执行。STOP指指令令在在梯梯形形图图中中以以线线圈圈形形式式编编程程。指指令令不不含含操操作作数数。指指令令的的执执行行不不考考虑虑对对特特殊标志寄存器位和能流的影响。殊标志寄存器位和能流的影响。指令格式:指令格式:STOP(无操作数)(无操作数)返回本节返回本节看门狗看门狗 WDR,看看门门狗狗复复位
4、位指指令令。当当使使能能输输入入有有效效时时,执执行行WDR指指令令,每每执执行行一一次次,看看门门狗狗定定时时器器就就被被复复位位一一次次。用用本本指指令令可可用用以以延延长长扫扫描描周周期期,从而可以有效避免看门狗超时错误。从而可以有效避免看门狗超时错误。指令格式:指令格式:WDR(无操作数)(无操作数)程程序序实实例例:指指令令STOP、END、WDR的的应应用用如如图图5.2所示。所示。图图5.2停止、结束、看门狗指令停止、结束、看门狗指令返回本节返回本节跳转跳转 1.跳转指令跳转指令与跳转相关的指令有下面两条:与跳转相关的指令有下面两条:(1)跳转指令)跳转指令JMP,跳跳转转指指令
5、令。使使能能输输入入有有效效时时,使使程程序序流流程程跳跳到到同同一一程程序序中中的的指指定定标标号号n处处执执行行。执执行行跳跳转转指指令令时时,逻逻辑辑堆栈的栈顶值总是堆栈的栈顶值总是1。(2)标号指令)标号指令LBL,标标号号指指令令。标标记记程程序序段段,作作为为跳跳转转指指令令执执行行时时跳跳转到的目的位置。操作数转到的目的位置。操作数n为为0255的字型数据。的字型数据。程序实例:程序实例:如如右右图图5.3所所示示。用用增增减减计计数数器器进进行行计计数数,如如果果当当前前值值小小于于500,则则程程序序按按原原顺顺序序执执行行,若若当当前前值值超超过过500,则则跳跳转转到到从
6、从标标号号10开始的程序执行。开始的程序执行。返回本节返回本节图图5.3程程序序跳跳转转实实例例子程序指令子程序指令 1.建立子程序建立子程序2.2.子程序调用子程序调用 3.带参数的子程序调用带参数的子程序调用 1.建立子程序建立子程序 可可用用编编程程软软件件Edit菜菜单单中中的的Insert选选项项,选选择择Subroutine,以以建建立立或或插插入入一一个个新新的的子子程程序序,同同时时在在指指令令树树窗窗口口可可以以看看到到新新建建的的子子程程序序图图标标,默默认认的的程程序序名名是是SBR_n,编编号号n从从0开开始始按按递递增增顺顺序序生生成成,可可以以在在图图标标上上直直接
7、接更更改改子子程程序序的的程程序序名名。在在指指令令树树窗窗口口双双击击子子程程序序的的图图标标就就可可对对它进行编辑。它进行编辑。2.子程序调用子程序调用(1)子程序调用和返回指令)子程序调用和返回指令子程序调用子程序调用 子程序条件返回子程序条件返回(2)注意事项)注意事项(3)应用实例)应用实例 图图5.4所所示示的的程程序序实实现现用用外外部部控控制制条条件件分分别别调调用用两个子程序。两个子程序。图图5.4 子程序调用举例子程序调用举例(1)子程序参数)子程序参数 变量名变量名 变量类型变量类型 数据类型数据类型(2)参数子程序调用的规则)参数子程序调用的规则(3)变量表使用)变量表
8、使用(4)程序实例)程序实例 3.带参数的子程序调用带参数的子程序调用 以以上上面面指指令令为为例例,局局部部变变量量表表分分配配如如表表5.1所所示示,程序段如图程序段如图5.5所示。所示。表5.1 局部变量表例图图5.5 带参数的子程序调用带参数的子程序调用返回本节返回本节程序循环程序循环 1.循环开始循环开始 2.循环结束循环结束 3.3.程序实例程序实例 图图5.6程序循环程序循环(1)返回本节返回本节图图5.6程序循环程序循环(2)顺序控制继电器顺序控制继电器 1.顺序继电器指令顺序继电器指令(1)定义顺序段()定义顺序段(2)段开始)段开始(3)段结束)段结束(4)段转移)段转移2
9、.注意事项注意事项3.顺序结构顺序结构 4.程序实例程序实例 本本例例是是用用顺顺序序继继电电器器实实现现的的顺顺序序控控制制中中的的一一个个步步的的程程序序段段,这这一一步步实实现现的的功功能能是是使使两两个个电电机机M1和和M2起起动动运运行行20秒秒后后停停止止,切切换到下一步。换到下一步。程程序序如如图图5.7所所示。示。返回本节返回本节与与ENO指令指令 AENO,与,与ENO指令。指令。ENO是梯形图和功能框是梯形图和功能框图编程时指令盒的布尔能流输出端。如果指令图编程时指令盒的布尔能流输出端。如果指令盒的能流输入有效,同时执行没有错误,盒的能流输入有效,同时执行没有错误,ENO就
10、置位,将能流向下传递。当用梯形图编程时,就置位,将能流向下传递。当用梯形图编程时,且指令盒后串联一个指令盒或线圈,语句表语且指令盒后串联一个指令盒或线圈,语句表语言中用言中用AENO指令描述。指令描述。指令格式:指令格式:AENO(无操作数)(无操作数)图图5.8与与ENO指令指令AENO指令只能在语句表中使用,将栈顶值和ENO位的逻辑与运算,运算结果保存到栈顶。程序如图5.8所示。返回本节返回本节5.2特殊指令特殊指令 时钟指令时钟指令 5.2.2 中断中断 通信通信 高速计数高速计数 高速脉冲输出高速脉冲输出 PID回路指令回路指令 返回本章首页返回本章首页时钟指令时钟指令 1.读实时时钟
11、读实时时钟TODR,读实时时钟指令。当使能输入有效时,读实时时钟指令。当使能输入有效时,系统读当前时间和日期,并把它装入一个系统读当前时间和日期,并把它装入一个8字节字节的缓冲区。的缓冲区。2.写实时时钟写实时时钟TODW,写实时时钟指令。用来设定实时时钟。,写实时时钟指令。用来设定实时时钟。当使能输入有效时,系统将包含当前时间和日当使能输入有效时,系统将包含当前时间和日期,一个期,一个8字节的缓冲区将装入时钟。字节的缓冲区将装入时钟。时钟缓冲区的格式如表时钟缓冲区的格式如表5.2所示。所示。表表5.2时钟缓冲区时钟缓冲区程序实例程序实例控制要求:控制要求:编编写写一一段段程程序序,可可实实现
12、现读读、写写实实时时时时钟钟,并并以以BCD码码显显示示分分钟钟。时时钟缓冲区从钟缓冲区从VB100开始。开始。程程序序中中的的子子程程序序SBR_0为为写写时时钟钟子子程程序序,将将当当前前时时间间写写入入从从VB100开开始始的的8字字节节时时间间缓缓冲冲区区,时时间间设设置置如如下下表表5.3所所示示。程程序序实实现现:读读写时钟程序如图写时钟程序如图5.9所示。所示。图图5.9读写时钟读写时钟返回本节返回本节5.2.2 中断中断 1.中断源(1)中断源及种类)中断源及种类中中断断源源,即即中中断断事事件件发发出出中中断断请请求求的的来来源源。S7-200可可编编程程序序控控制制器器具具
13、有有最最多多可可达达34个个中中断断源源,每每个个中中断断源源都都分分配配一一个个编编号号用用以以识识别别,称称为为中中断断事事件件号号。这这些些中中断断源源大大致致分分为为三三大大类类:通通信信中断、输入输出中断和时基中断。中断、输入输出中断和时基中断。(2)中断优先级)中断优先级 中中断断优优先先级级由由高高到到低低依依次次是是:通通信信中中断断、输输入入输输出出中中断断、时时基基中中断断。每每种种中中断断中中的的不不同同中中断断事件又有不同的优先权。事件又有不同的优先权。主机中的所有中断事件及优先级如表主机中的所有中断事件及优先级如表5.4所示。所示。表表5.4中断事件及优先级中断事件及
14、优先级2.中断调用即即调调用用中中断断程程序序,使使系系统统对对特特殊殊的的内内部部或或外外部部事事件件作作出出响响应应。系系统统响响应应中中断断时时自自动动保保存存逻逻辑辑堆堆栈栈、累累加加器器和和某某些些特特殊殊标标志志存存储储器器位位,即即保保护护现现场场。中中断断处处理理完完成成时时,又又自自动动恢恢复复这这些些单单元原来的状态,即恢复现场。元原来的状态,即恢复现场。(1)中断调用指令)中断调用指令(2)注意事项)注意事项(3)程序实例)程序实例(3)程序实例)程序实例控制要求:控制要求:程程序序实实现现的的功功能能是是调调用用I0.1输输入入点点的的上上升升沿沿中中断断,若若发发现现
15、I/O错错误误,则则禁禁止止本本中中断断,用用外外部部条条件件可可以以禁禁止止全局中断。全局中断。程程序序实实现现:本本程程序序如如图图5.10所示。所示。图图5.10中断调用程序中断调用程序3.中断程序中断程序(1)构成)构成中中断断程程序序必必须须由由三三部部分分构构成成:中中断断程程序序标标号号、中断程序指令和无条件返回指令。中断程序指令和无条件返回指令。(2)要求)要求(3)编制方法)编制方法(4)注意事项)注意事项返回本节返回本节通信通信 通信指令包括:通信指令包括:XMT,自由口发送指令,自由口发送指令RCV,自由口接收指令,自由口接收指令NETR,网络读指令,网络读指令NETW,
16、网络写指令,网络写指令GPA,获取口地址指令,获取口地址指令高速计数高速计数 1.高速计数器介绍高速计数器介绍2.高速计数指令高速计数指令 3.高速计数器的使用方法高速计数器的使用方法 4.应用实例应用实例 1.高速计数器介绍高速计数器介绍(1)数量及编号)数量及编号(2)中断事件类型)中断事件类型(3)工作模式及输入点)工作模式及输入点(1)数量及编号)数量及编号高高速速计计数数器器在在程程序序中中使使用用时时的的地地址址编编号号用用HCn来来表表示示(在在非非程程序序中有时用中有时用HSCn),),HC表编程元件名称为高速计数器,表编程元件名称为高速计数器,n为编号。为编号。HCn除除了了
17、表表示示高高速速计计数数器器的的编编号号之之外外,还还代代表表两两方方面面的的含含义义:高高速速计计数数器器位位和和高高速速计计数数器器当当前前值值。编编程程时时,从从所所用用的的指指令令可可以以看看出是位还是当前值。出是位还是当前值。不同型号的不同型号的PLC主机,高速计数器的数量对应如表主机,高速计数器的数量对应如表5.7所示。所示。(2)中断事件类型)中断事件类型高高速速计计数数器器的的计计数数和和动动作作可可采采用用中中断断方方式式进进行行控控制制,与与CPU的的扫扫描描周周期期关关系系不不大大,各各种种型型号号的的PLC可可用用的的高高速速计计数数器器的的中中断断事事件件大大致致分分
18、为为3类类:当当前前值值等等于于预预设设值值中中断断、输输入入方方向向改改变变中中断断和和外外部部复位中断。所有高速计数器都支持当前值等于预设值中断。复位中断。所有高速计数器都支持当前值等于预设值中断。每每个个高高速速计计数数器器的的3种种中中断断的的优优先先级级由由高高到到低低,不不同同高高速速计计数数器器之之间的优先级又按编号顺序由高到低。具体对应关系如表间的优先级又按编号顺序由高到低。具体对应关系如表5.8所示。所示。(3)工作模式及输入点)工作模式及输入点工作模式工作模式输入端连接输入端连接 高高速速计计数数器器的的工工作作模模式式共共有有12种种。以模式以模式4为例,时序如图为例,时
19、序如图5.11所示。所示。图图5.11模式模式4操作时序操作时序选用某个高速计数器在某种工作模式下工作,选用某个高速计数器在某种工作模式下工作,高速计数器的输入端不是任意选择,必须按系统高速计数器的输入端不是任意选择,必须按系统指定的输入点。如表指定的输入点。如表5.9所示。所示。2.高速计数指令高速计数指令 高高速速计计数数器器指指令令有有两两条条:HDEF和和HSC。(1)HDEF指令指令HDEF,定定义义高高速速计计数数器器指指令令。使使能能输输入入有有效效时时,为为指指定定的的高高速速计计数数器器分分配配一一种种工工作作模模式式,即即用用来来建建立立高高速速计计数数器器与与工工作作模模
20、式式之之间间的的联联系系。梯梯形形图图指指令令盒盒中中有有两两个个数数据据输输入入端端:HSC,高高速速计计数数器器编编号号,为为05的的常常数数,字字节节型型;MODE,工工作作模模式式,为为011的常数,字节型。的常数,字节型。(2)HSC指令指令HSC,高高速速计计数数器器指指令令。使使能能输输入入有有效效时时,根根据据高高速速计计数数器器特特殊殊存存储储器器位位的的状状态态,并并按按照照HDEF指指令令指指定定的的工工作作模模式式,设设置置高高速速计计数数器器并并控控制制其其工工作作。梯梯形形图图指指令令盒盒数数据据输输入入端端N:高高速速计计数数器器编号,为编号,为05的常数,字型。
21、的常数,字型。每每个个高高速速计计数数器器都都有有固固定定的的特特殊殊功功能能存存储储器器与与之之相相配配合合,完完成成高高速速计计数数功功能能。具具体体对对应应关关系系如表如表5.11所示。所示。3.高速计数器的使用方法高速计数器的使用方法 每每个个高高速速计计数数器器都都有有一一个个状状态态字字节节,程程序序运运行行时时根根据据运运行行状状况况自自动动使使某某些些位位置置位位,可可以以通通过过程程序序来来读读相相关关位位的的状状态态,用用以以作作为为判判断断条条件件实实现现相相应应的的操操作作。状状态态字字节节中中各各状状态态位位的的功功能能如如表表5.12所示。所示。(1)选择计数器及工
22、作模式)选择计数器及工作模式(2)设置控制字节)设置控制字节(3)执行)执行HDEF指令指令(4)设定当前值和预设值)设定当前值和预设值(5)设置中断事件并全局开中断)设置中断事件并全局开中断(6)执行)执行HSC指令指令 使用高速计数器时,要按以下步骤进行:使用高速计数器时,要按以下步骤进行:表5.13 控制位含义4.应用实例应用实例 要要对对一一高高速速事事件件精精确确控控制制,通通过过对对脉脉冲冲信信号号进进行行增增计计数数,计计数数当当前前值值达达到到24产产生生中中断断,重重新新从从0计计数数,对对中中断断次次数数进进行行累累计计。计计数数方方向向用用一一个个外外部部信信号号控控制制
23、,并并能能实实现现外部复位。所用的主机型号为外部复位。所用的主机型号为CPU221。设计步骤:设计步骤:选择高速计数器选择高速计数器HSC0,并确定工作方式,并确定工作方式4。令令SM37=16#F8 执行执行HDEF指令,输入端指令,输入端HSC为为0,MODE为为4。装入当前值,令装入当前值,令SMD38=0。装入设定装入设定值,令值,令SMD42=24。执行中断连接执行中断连接ATCH指令,输入指令,输入端端INT为为INT0,EVNT为为10。主主程程序序、初初始始化化子子程程序序和和中中断断程程序序分分别别如如图图5.12、图、图5.13和图和图5.14所示。所示。图图5.12 主程
24、序主程序图图5.13初始化子程序初始化子程序图图5.14 中断程序中断程序返回本节返回本节高速脉冲输出高速脉冲输出 1.高速脉冲输出介绍高速脉冲输出介绍(1)高速脉冲输出的形式)高速脉冲输出的形式(2)输出端子的确定)输出端子的确定(3)相关寄存器)相关寄存器(4)脉冲输出指令)脉冲输出指令 每每个个高高速速脉脉冲冲发发生生器器对对应应一一定定数数量量特特殊殊标标志志寄寄存存器器,这这些些寄寄存存器器包包括括控控制制字字节节寄寄存存器器、状状态态字字节节寄寄存存器器和和参参数数数数值值寄寄存存器器,用用以以控控制制高高速速脉脉冲冲的的输输出出形形式式、反反映映输输出出状态和参数值。各寄存器分配
25、如表状态和参数值。各寄存器分配如表5.14所示。所示。l l状态字节状态字节每每个个高高速速脉脉冲冲输输出出都都有有一一个个状状态态字字节节,程程序序运运行行时时根根据据运运行行状状况况自自动动使使某某些些位位置置位位,可可以以通通过过程程序序来来读读相相关关位位的的状状态态,用用以以作作为为判判断断条条件件实实现现相相应应的的操操作作。状状态态字字节节中各状态位的功能如表中各状态位的功能如表5.15所示。所示。控制字节控制字节每每个个高高速速脉脉冲冲输输出出都都对对应应一一个个控控制制字字节节,通通过过对对控控制制字字节节中中指指定定位位的的编编程程,可可以以根根据据操操作作要要求求设设置置
26、字字节节中中各各控控制制位位,如如脉脉冲冲输输出出允允许许、PTO/PWM模模式式选选择择、单单段段/多多段段选选择择、更更新新方方式式、时时间间基基准准、允允许许更更新新等等。控控制制字字节节中各控制位的功能如表中各控制位的功能如表5.16所示。所示。2.高速脉冲串输出高速脉冲串输出PTO(1)周期和脉冲数)周期和脉冲数(2)PTO的种类的种类(3)中断事件类型)中断事件类型(4)PTO的使用的使用(1)周期和脉冲数)周期和脉冲数周周期期:单单位位可可以以是是微微秒秒s或或毫毫秒秒ms;为为16位位无无符符号号数数据据,周周期期变变化化范范围围是是5065535s或或265535ms,通通常
27、常应应设设定定周周期期值值为为偶偶数数,若若设设置置为为奇奇数数,则则会会引引起起输输出出波波形形占占空空比比的的轻轻微微失失真真。如如果果编编程程时时设设定定周周期期单单位位小小于于2,系系统统默默认认按按2进行设置。进行设置。脉脉冲冲数数:用用双双字字长长无无符符号号数数表表示示,脉脉冲冲数数取取值值范范围围是是14294967295之之间间。如如果果编编程程时时指指定定脉冲数为脉冲数为0,则系统默认脉冲数为,则系统默认脉冲数为1个。个。(2)PTO的种类的种类PTO方方式式中中,如如果果要要输输出出多多个个脉脉冲冲串串,允允许许脉脉冲冲串串进进行行排排队队,形形成成管管线线,当当前前输输
28、出出的的脉脉冲冲串串完完成成之之后后,立立即即输输出出新新脉脉冲冲串串,这这保保证证了了脉脉冲冲串顺序输出的连续性。串顺序输出的连续性。单段管线单段管线 多段管线多段管线 包包络络表表由由包包络络段段数数和和各各段段构构成成。每每段段长长度度为为8个个字字节节,包包括括:脉脉冲冲周周期期值值(16位位)、周周期期增增量量值值(16位位)和和脉脉冲冲计计数数值值(32位位)。以以包包络络3段的包络表为例,包络表的结构如表段的包络表为例,包络表的结构如表5.17所示。所示。(3)中断事件类型)中断事件类型高高速速脉脉冲冲串串输输出出可可以以采采用用中中断断方方式式进进行行控控制制,各各种种型型号号
29、的的PLC可可用用的的高高速速脉脉冲冲串串输输出出的的中中断断事件有两个,如表事件有两个,如表5.18所示。所示。(4)PTO的使用的使用使用高速脉冲串输出时,要按以下步骤进行:使用高速脉冲串输出时,要按以下步骤进行:确定脉冲发生器及工作模式确定脉冲发生器及工作模式 设置控制字节设置控制字节写入周期值、周期增量值和脉冲数写入周期值、周期增量值和脉冲数装入包络的首地址装入包络的首地址设置中断事件并全局开中断设置中断事件并全局开中断执行执行PLS指令指令3.应用实例应用实例(1)控制要求)控制要求步步进进电电机机转转动动过过程程中中,要要从从A点点加加速速到到B点点后后恒恒速速运运行行,又又从从C
30、点点开开始始减减速速到到D点点,完完成成这这一一过过程程时时用用指指示示灯灯显显示示。电电机机的的转转动动受受脉脉冲冲控控制制,A点点和和D点点的的脉脉冲冲频频率率为为2kHz,B点点和和C点点的的频频率率为为10kHz,加加速速过过程程的的脉脉冲冲数数为为400个个,恒恒速速转转动动的的脉脉冲冲数数为为4000个,减速过程脉冲数为个,减速过程脉冲数为200个。个。工作过程如图工作过程如图5.15所示。所示。图图5.15步进电机工作过程步进电机工作过程(2)分析)分析确定脉冲发生器及工作模式确定脉冲发生器及工作模式 设置控制字节设置控制字节 写入周期值、周期增量值和脉冲数写入周期值、周期增量值
31、和脉冲数 装入包络表首地址装入包络表首地址 中断调用中断调用 执行执行PLS指令指令(3)程序实现)程序实现本本控控制制系系统统主主程程序序如如下下图图5.16所所示示。初初始始化化子子程程序序SBR_1如如图图5.17所所示示。包包络络表表子子程程序序如如图图5.18所所示示。中中断程序如图断程序如图5.19所示。所示。图图5.16主程序主程序图图5.17初始化子程序初始化子程序SBR_1图图5.18包包络络表表子子程程序序SBR_0(1)图图5.18包络表子程序包络表子程序SBR_0(2)图图5.19 中断程序中断程序4.宽度可调脉冲输出宽度可调脉冲输出PWM(1)周期和脉冲宽度)周期和脉
32、冲宽度(2)更新方式)更新方式(3)PWM的使用的使用 返回本节返回本节PID回路指令回路指令 1.PID算法算法 2.2.PID指令指令 3.3.应用实例应用实例 1.PID算法算法 1.PID算法如如果果一一个个PID回回路路的的输输出出M(t)是是时时间间的的函函数数,则则可可以以看看作是比例项、积分项和微分项三部分之和。即:作是比例项、积分项和微分项三部分之和。即:用数字计算机处理这样的控制算式,连续的算式必须周用数字计算机处理这样的控制算式,连续的算式必须周期采样进行离散化,同时各信号也要离散化,公式如下:期采样进行离散化,同时各信号也要离散化,公式如下:MPn=Kc*(SPn-PV
33、n)+Kc*Ts/Ti*(SPn-PVn)+MX+Kc*Td/Ts*(PVn-1-PVn)回回路路表表初初始始化化程序实例:程序实例:如如果果Kc为为0.4,Ts为为0.2秒秒,Ti为为30分分钟钟,Td为为15分分钟钟,则则可可以以建建立立一一个个 子子 程程 序序SBR0用用来来对对回回路路表表进进行行初初始始化化。程程序序如如图图5.20所示。所示。图图5.20 回路表初始化子程序回路表初始化子程序SBR0PID,PID回回路路指指令令。使使能能输输入入有有效效时时,该该指指令令利利用用回回路路表表中中的的输输入入信信息息和和组组态态信信息息,进进行行PID运运算算。梯梯形形图图的的指指
34、令令盒盒中中有有2个个数数据据输输入入端端:TBL,回回路路表表的的起起始始地地址址,是是由由VB指指定定的的字字节节型型数数据据;LOOP,回回路路号号,是是07的常数。的常数。指指令令影影响响的的特特殊殊标标志志存存储储器器位位:SM1.1(溢溢出)。出)。使使 能能 流流 输输 出出 ENO断断 开开 的的 出出 错错 条条 件件:SM1.1(溢溢出出);SM4.3(运运行行时时间间);0006(间接寻址)。(间接寻址)。指令格式:指令格式:PIDTBL,LOOP2.PID指令指令 3.应用实例应用实例(1)控制要求)控制要求有有一一水水箱箱有有一一条条进进水水管管和和一一条条出出水水管
35、管,进进水水管管的的水水流流量量随随时时间间不不断断变变化化,要要求求控控制制出出水水管管阀阀门门的的开开度度,使使水水箱箱内内的的液液位位始始终终保保持持在在水水满满时时液液位位的的一一半半。系系统统使使用用比比例例积积分分微微分分控控制制,假假设设采采用用下下列控制参数值:列控制参数值:Kc为为0.4,Ts为为0.2秒,秒,Ti为为30分钟,分钟,Td为为15分钟。分钟。(2)分析)分析本本系系统统标标准准化化时时可可采采用用单单极极性性方方案案,系系统统的的输输入入来来自自液液位位计计的的液液位位测测量量采采样样;设设定定值值是是液液位位的的50%,输输出出是是单单极极性性模模拟拟量量用用以以控控制阀门的开度,可以在制阀门的开度,可以在0%100%之间变化。之间变化。(3)程序实现)程序实现本本程程序序的的主主程程序序如如图图5.21所所示示,回回路路表表初初始始化化子子程程序序SBR0如如图图5.22所示,中断程序所示,中断程序INT0如图如图5.23所示。所示。图图5.21主程序主程序图图5.22初初始始化化子子程程序序SBR1图图5.23中中断断子子程程序序INT0(1)图图5.23 中断子程序中断子程序INT0(2)返回本节返回本节
限制150内