第十章 高速计数及脉冲输出指令

整理文档很辛苦,赏杯茶钱您下走!

免费阅读已结束,点击下载阅读编辑剩下 ...

阅读已结束,您可以下载文档离线阅读编辑

资源描述

第一节S7-200系列PLC高速计数器1.各种CPU支持的高速计数器高速计数器工作在中断方式,并配有专用的输入口用于计数信号输入、外启动、外复位及计数方向的控制。S7-200系列PLC中规定了6个高速计数器编号,在程序中使用时用HCn来表示(在非程序中一般用HSCn)高速计数器的地址,n的取值范围为0~5。HCn还表示高速计数器的当前值,该当前值是一个只读的32位双字,可使用数据传送指令随时读出计数当前值。不同的CPU模块中可使用的高速计数器是不同的,CPU221、CPU222可以使用HC0、HC3、HC4和HC5;CPU224、CPU226可以使用HC0~HC5。2.高速计数器类型及工作模式每一高速计数器都有多种运行模式,其使用的输入端子各有不同,主要分为脉冲输入端子、方向控制输入端子、复位输入端子、启动输入端子等。高速计数器运行模式主要分为4类。(1)带内部方向控制的单相增/减计数器它有一个计数输入端,没有外部方向控制输入信号。计数方向由内部控制字节中的方向控制位设置,只能进行单向增计数或减计数。如HC0的模式0,其计数方向控制位为SM37.3,当该位为0时为减计数,该位为1时为增计数。(2)带外部方向控制的单相增/减计数器它有一个计数输入端,由外部输入信号控制计数方向,只能进行单向增计数或减计数。如HC1的模式3,I0.7为0时为减计数,I0.7为1时为增计数。运行模式描述HCOHC4I0.0I0.1I0.2I0.3I0.4I0.50带内部方向控制的单相增/减计数器计数计数1计数复位计数复位3带外部方向控制的单相增/减计数器计数方向计数方向4计数方向复位计数方向复位6带增减计数输入的双向计数器增计数减计数增计数减计数7增计数减计数复位增计数减计数复位9A/B相正交计数器A相计数B相计数A相计数B相计数10A相计数B相计数复位A相计数B相计数复位(3)带增减计数输入的双向计数器它有两个计数输入端,一个为增计数输入,一个为减计数输入。增计数输入端有一个脉冲到达时,计数器当前值增加1;减计数输入端有一个脉冲到达时,计数器当前值减少1。若增计数脉冲与减计数脉冲相隔时间大于0.3ms,高速计数器就能够正确计数,若相隔时间小于0.3ms,高速计数器认为两个脉冲同时发生,计数器当前值不变。运行模式描述HC1HC2I0.6I0.7I1.0I1.1I1.2I1.3I1.4I1.50带内部方向控制的单相增/减计数器计数计数1计数复位计数复位2计数复位启动计数复位启动3带外部方向控制的单相增/减计数器计数方向计数方向4计数方向复位计数方向复位5计数方向复位启动计数方向复位启动运行模式描述HC1HC2I0.6I0.7I1.0I1.1I1.2I1.3I1.4I1.56带增减计数输入的双向计数器增计数减计数增计数减计数7增计数减计数复位增计数减计数复位8增计数减计数复位启动增计数减计数复位启动9A/B相正交计数器A相计数B相计数A相计数B相计数10A相计数B相计数复位A相计数B相计数复位11A相计数B相计数复位启动A相计数B相计数复位启动(4)A/B相正交计数器它有两个计数输入端A相和B相,A/B相正交计数器利用两个输入脉冲的相位确定计数方向。A相脉冲上升沿超前于B相脉冲上升沿时为增计数,反之则为减计数。运行模式描述HC3HC5I0.0I0.30带内部方向控制的单相增/减计数器计数计数根据高速计数器号和模式的不同,以上4类运行模式还可增加复位端和启动端。当复位输入有效时,将清除计数器当前值并保持到复位输入无效。当启动输入有效时,则表示允许高速计数器计数,启动输入无效时,计数器忽略计数脉冲的输入,当前值保持不变。要正确使用高速计数器,除用好指令外,还要正确设置高速计数器的控制字节及当前值与预置值。而状态位则表明了高速计数器的运行状态,可以作为编程的参考点。3.高速计数器编程设置高速计数器控制字节控制位功能HSC0HSC1HSC2HSC3HSC4HSC5复位有效电平控制位:0(高电平有效);1(低电平有效)SM37.0SM47.0SM57.0SM147.0启动有效电平控制位:0(高电平有效);1(低电平有效)SM47.1SM57.1正交计数器计数速率选择:0(4X);1(1X)SM37.2SM47.2SM57.2SM147.2计数方向控制位:0(减计数);1(增计数)SM37.3SM47.3SM57.3SM137.3SM147.3SM157.3向HSC中写入计数方向:0(不更新);1(更新计数方向)SM37.4SM47.4SM57.4SM137.4SM147.4SM157.4向HSC中写入预置值:0(不更新);1(更新预置值)SM37.5SM47.5SM57.5SM137.5SM147.5SM157.5向HSC中写入新的当前值:0(不更新);1(更新当前值)SM37.6SM47.6SM57.6SM137.6SM147.6SM157.6HSC允许:0(禁止HSC);1(允许HSC)SM37.7SM47.7SM57.7SM137.7SM147.7SM157.7高速计数器初始值/预置值要装入的值HSC0HSC1HSC2HSC3HSC4HSC5初始当前值SMD38SMD48SMD58SMD138SMD148SMD158预置值SMD42SMD52SMD62SMD142SMD152SMD162当前值和预置值都是32位带符号整数。必须先将当前值和预置值存入表所示的特殊存储器中,然后执行HSC指令,才能够将新值送入高速计数器当中。高速计数器状态字节,其中某些位指出了当前计数方向、当前值与预置值是否相等、当前值是否大于预置值的状态。可以通过监视高速计数器的状态位产生相应中断,完成重要操作。但要注意,状态位只有在执行高速计数器终端程序时才有效。高速计数器状态位状态位功能HSC0HSC1HSC2HSC3HSC4HSC5不用SM36.0~SM36.4SM46.0~SM46.4SM56.0~SM56.4SM136.0~SM136.4SM146.0~SM146.4SM156.0~SM156.4当前计数方向状态位:0(减计数);1(增计数)SM36.5SM46.5SM56.5SM136.5SM146.5SM156.5当前值等于预置值状态位:0(不等);1(相等)SM36.6SM46.6SM56.6SM136.6SM146.6SM156.6当前值大于预置值状态位:0(小于等于);1(大于)SM36.7SM46.7SM56.7SM136.7SM146.7SM156.7状态位功能HSC0HSC1HSC2HSC3HSC4HSC5第二节高速计数器指令在工业应用中,电动机的调速、测速及定位是常见的控制方式。为实现电动机的精确控制,经常使用编码器将电动机的转速转换为高频脉冲信号,反馈至PLC,通过PLC对高频脉冲的计数和相关编程实现对电动机的各种控制。PLC中普通计数器受到扫描周期的影响,对高速脉冲的计数可能会出现脉冲丢失现象,导致计数不准确,也就不能实现精确控制。PLC提供的高速计数器独立于扫描周期之外,可以对脉宽小于扫描周期的高速脉冲准确计数,高速脉冲频率最高可达30kHz。1.高速计数器指令HDEFENHSCENOMODEHSCENNENO名称定义高速计数器高速计数器运行控制指令HDEFHSC指令表格式HDEFHSC,MODEHSCN梯形图格式指令输入/输出操作数数据类型HDEFHSC常数(0~5)BYTEMODE常数(0~11)BYTEHSCN常数(0~5)WORD2.指令功能HDEF定义高速计数器指令,“HSC”端口指定高速计数器编号,“MODE”端口指定具体的运行模式(各高速计数器最多有12种工作模式)。EN端口执行条件存在时,HDEF指令可指定具体的高速计数器编号,并将其与某一工作模式联系起来。在一个程序中,每一个高速计数器只能且必须使用一次HDEF指令。HSC高速计数器指令,根据高速计数器特殊存储器位的设置,按照HDEF指令指定的工作模式,控制高速计数器的工作。为更好地理解和使用高速计数器,下面给出高速计数器的一般设置过程。(1)使用初始化脉冲触点SM0.1调用高速计数器初始化操作子程序。这个结构可以使系统在后续的扫描过程中不再调用这个子程序,从而减少了扫描时间,且程序更加结构化。(2)在初始化子程序中,对相应高速计数器的控制字节写入希望的控制字。如要使用HSC1,则对SMB47写入16#F8(2#11111000),表示允许高速计数器运行,允许写入新的当前值,允许写入新的预置值,可以改变计数器方向,置计数器的计数方向为增,置启动和复位输入为高电平有效。(3)执行HDEF指令,根据所选计数器号和运行模式将高速计数器号与具体运行模式进行连接。(4)在所选计数器号对应的当前值单元内装入所希望的当前值,若装入0,则清除原当前值。(5)在所选计数器号对应的预置值单元内装入所希望的预置值。高速计数器设置过程(6)为捕获高速计数器对应的中断事件(当前值等于预置值、计数方向改变、外部复位),编写相应的中断程序,并参考中断事件及其优先级,用ATCH中断连接指令建立中断事件和中断程序的联系。(7)执行全局中断允许指令(ENI)来允许高速计数器中断。(8)执行HSC指令,使高速计数器开始运行。6.高速计数器应用举例使用高速计数器指令、变频器及光电码盘实现三相异步电动机的启动及二级减速自动定位控制系统。由于高速运行的交流电动机转动惯量较大,所以在高速下定位精度很低,必须采用减速的方式减小转动惯量,最后在低速运行时实现准确定位。在本例的控制中,电动机每次启动后运行距离均相等,所以使用光电码盘反馈方式进行二级减速及定位控制。PLCI0.0I0.1Q0.6Q1.3Q1.4Q1.5变频器电动机启动高速输入中速输入低速输入ABCCOM公共端UVWM3~光电码盘高速脉冲输入触点功能说明输出线圈功能说明I0.0光电码盘脉冲输入Q0.6电动机运行驱动输出I0.1电动机启动按钮Q1.3高速运行输出Q1.4中速运行输出Q1.5低速运行输出Network1SM0.1Network1SM0.0MOV_BENINENOOUTSMB3716#A0MOV_DWENINENOOUT+52000MAININITENPI0.1Network2Q0.61sQ1.31sHSCENNENO0INITSMD42HDEFENHSCENOMODE00ATCHENINTENOEVNTEQUAL112ENINetwork1SM0.0MOV_BENINENOOUTSMB3716#A0MOV_DWENINENOOUT+62000SMD42ATCHENINTENOEVNTEQUAL212EQUAL1Q1.31RQ1.41sHSCENNENO0第三节高速输出功能指令高速脉冲输出功能可以使PLC在指定的输出点上产生高速的PWM(脉宽调制)脉冲或输出频率可变的PTO脉冲,可以用于步进电动机和直流伺服电动机的定位控制和调速。在使用高速脉冲输出功能时,CPU模块应选择晶体管输出型,以满足高速脉冲输出的频率要求。1.高速脉冲输出指令PLSENQENO名称高速脉冲输出指令PLS指令表格式PLSQ梯形图格式2.指令功能PLS脉冲输出指令,在EN端口执行条件存在时,检测脉冲输出特殊存储器的状态,然后激活所定义的脉冲操作,从Q端口指定的数字输出端口输出高速脉冲。PLS指令可在Q0.0和Q0.1两个端口输出可控的PWM脉冲和PTO高速脉冲串波形。由于只有两个高速脉冲输出端口,所以PLS指令在一个程序中最多使用两次。高速脉冲输出和输出映像寄存器共同对应Q0.0和Q0.1端口,但Q0.0和Q0.1端口在同一时间只能使用一种功能。在使用高速脉冲输出时,两输出点将不受输出映像寄存器、立即输出指令和强制输出的影响。3.高速脉冲输出所对应的特殊标志寄存器为定义和监控高速脉冲输出,系统提供了控制字节、状态字节和参数设置寄存器。Q0.0对应寄存器Q0.1对应寄存器功能描述SMB66SMB76状态字节,PTO方式下,监控脉冲串的运行状态SMB67SMB77控制字节,定义PT

1 / 34
下载文档,编辑使用

©2015-2020 m.777doc.com 三七文档.

备案号:鲁ICP备2024069028号-1 客服联系 QQ:2149211541

×
保存成功