第7章 PLC高速处理功能及应用.docx

上传人:b****7 文档编号:10138770 上传时间:2023-02-08 格式:DOCX 页数:37 大小:788.53KB
下载 相关 举报
第7章 PLC高速处理功能及应用.docx_第1页
第1页 / 共37页
第7章 PLC高速处理功能及应用.docx_第2页
第2页 / 共37页
第7章 PLC高速处理功能及应用.docx_第3页
第3页 / 共37页
第7章 PLC高速处理功能及应用.docx_第4页
第4页 / 共37页
第7章 PLC高速处理功能及应用.docx_第5页
第5页 / 共37页
点击查看更多>>
下载资源
资源描述

第7章 PLC高速处理功能及应用.docx

《第7章 PLC高速处理功能及应用.docx》由会员分享,可在线阅读,更多相关《第7章 PLC高速处理功能及应用.docx(37页珍藏版)》请在冰豆网上搜索。

第7章 PLC高速处理功能及应用.docx

第7章PLC高速处理功能及应用

第7章PLC高速处理功能及应用

学习目标

理解高速计数器计数方式、工作模式的意义,控制字节、状态字节含义,掌握高速计数器的初始化使用步骤。

理解PTO/PWM脉冲输出的作用,能够使用PTO/PWM发生器产生需要的控制脉冲。

了解运动控制模块的功能及适用场合。

PLC的普通计数器的计数过程与扫描工作方式有关,CPU通过每一扫描周期读取一次被测信号的方法来捕捉被测信号的上升沿,被测信号的频率较高时,会丢失计数脉冲,因此普通计数器的工作频率很低,一般仅有几十赫兹。

高速计数器可以对普通计数器无能为力的事件进行计数,计数频率取决于CPU的类型,CPU22x系列最高计数频率为30KHz,用于捕捉比CPU扫描速更快的事件,并产生中断,执行中断程序,完成预定的操作。

高速计数器在现代自动控制的精确定位控制领域有重要的应用价值。

S7-200CPU22x系列PLC还设有高速脉冲输出,输出频率可达20KHz,用于PTO(输出一个频率可调,占空比为50%的脉冲)和PWM(输出一个周期一定,占空比可调的脉冲),高速脉冲输出的功能可用于对电动机进行速度控制及位置控制。

7.1高速计数器指令及应用

S7-200系列PLC中有六个高速计数器,它们分别是HSC0、HSC1、HSC2、HSC3、HSC4、和HSC5。

这些高速计数器可用于处理比PLC扫描周期还要短的高速事件。

当高速计数器的当前值等于预置值、外部复位信号有效(HSC0不支持)、计数方向改变(HSC0不支持)时将产生中断,通过中断服务程序实现对控制目标的控制。

7.1.1高速计数器的工作模式

1.高速计数器的计数方式

(1)单路脉冲输入的内部方向控制加/减计数

只有一个脉冲输入端,通过高速计数器控制字节(见表7-2)的第3位来控制加计数或者减计数。

该位=1,加计数;该位=0,减计数。

内部方向控制的单路加/减计数方式如图7-1所示。

 

 

 

 

 

 

 

(2)单路脉冲输入的外部方向控制加/减计数

有一个脉冲输入端,有一个方向控制端。

方向输入信号等于1时,加计数;方向输入信号等于0时,减计数。

外部方向控制的单路加/减计数方式如图7-2所示。

  

 

 

 

 

 

  

(3)两路脉冲输入的单相加/减计数

有两个脉冲输入端,一个是加计数脉冲,一个是减计数脉冲,计数值为两个输入端脉冲的代数和。

两路脉冲输入的加/减计数方式如图7-3所示。

 

 

 

 

 

 

 

 

 

 

 

 

 

(4)两路脉冲输入的双相正交计数

  有两个脉冲输入端,输入的两路脉冲A相、B相,相位互差900(正交)。

A相超前B相90°时,加计数;A相滞后B相90°时,减计数。

在这种计数方式下,可选择1x模式(单倍频,一个时钟脉冲计一个数,如图7-4所示)和4x模式(四倍频,一个时钟脉冲计四个数,如图7-5所示)。

 2.高速计数器的工作模式

高速计数器依据计数脉冲、复位脉冲、起动脉冲端子的不同接法可组成12种工作模式,不同的高速计数器有多种功能不相同的工作模式。

每个高速计数器所拥有的工作模式和其占有的输入端子有关,如表7-1所示。

表7-1高速计数器的工作模式和输入端子的关系

高速计数器HSC的工作模式

功能及说明

占用的输入端子及其功能

高速计数器编号

HSC0

I0.0

I0.1

I0.2

×

HSC4

I0.3

I0.4

I0.5

×

HSC1

I0.6

I0.7

I1.0

I1.1

HSC2

I1.2

I1.3

I1.4

I1.5

HSC3

I0.1

×

×

×

HSC5

I0.4

×

×

×

0

单路脉冲输入的内部方向控制加/减计数

控制字SM37.3=0,减计数;

SM37.3=1,加计数。

脉冲输入端

×

×

×

1

×

复位端

×

2

×

复位端

起动

3

单路脉冲输入的外部方向控制加/减计数

方向控制端=0,减计数;

方向控制端=1,加计数。

脉冲

输入端

方向

控制端

×

×

4

复位端

×

5

复位端

起动

6

两路脉冲输入的单相加/减计数

加计数有脉冲输入,加计数;

减计数端脉冲输入,减计数。

加计数脉冲输入端

减计数脉冲输入端

×

×

7

复位端

×

8

复位端

起动

9

两路脉冲输入的双相正交计数

A相脉冲超前B相脉冲,加计数;

A相脉冲滞后B相脉冲,减计数。

A相脉冲输入端

B相脉冲输入端

×

×

10

复位端

×

11

复位端

起动

说明:

表中×表示没有

由表7-1所示,高速计数器的工作模式确定以后,高速计数器所使用的输入端子便被指定。

如选择HSC1在模式11下工作,则必须用I0.6作为A相脉冲输入端,I0.7作为B相脉冲输入端,I1.0作为复位端,I1.1作为起动端。

7.1.2高速计数器指令

1.指令格式及功能(见表7-2)

表7-2高速计数器指令的格式及功能

梯形图LAD

语句表STL

功能

操作码

操作数

HDEF

HSC,MODE

当使能输入有效时,为高速计数器分配一种工作模式

HSC

N

当使能输入有效时,根据高速计数器特殊存储器位的状态及HDEF指令指定的工作模式,设置高速计数器并控制其工作

说明:

1)高速计数器定义指令HDEF中,操作数HSC指定高速计数器号(0~5),MODE指定高速计数器的工作模式(0~11)。

每个高速计数器只能用一条HDEF指令;

2)高速计数器指令HSC中,操作数N指定高速计数器号(0~5)。

2.高速计数器的控制字节

高速计数器的控制字节用于设置计数器的计数允许、计数方向等,各高速计数器的控制字节含义如表7-3所示。

表7-3高速计数器的控制字节含义

HSC0

HSC1

HSC2

HSC3

HSC4

HSC5

含义

SM37.0

SM47.0

SM57.0

SM137.0

SM147.0

SM157.0

复位信号有效电平:

0=高电平有效;1=低电平有效

SM37.1

SM47.1

SM57.1

SM137.1

SM147.1

SM157.1

启动信号有效电平:

0=高电平有效;1=低电平有效

SM37.2

SM47.2

SM57.2

SM1372

SM147.2

SM157.2

正交计数器的倍率选择:

0=4倍率;1=1倍率

SM37.3

SM47.3

SM57.3

SM137.3

SM147.3

SM157.3

计数方向控制位:

0=减计数;1=加计数

SM37.4

SM47.4

SM57.4

SM137.4

SM147.4

SM157.4

向HSC写入计数方向:

0=不更新;1=更新

SM37.5

SM47.5

SM57.5

SM137.5

SM147.5

SM157.5

向HSC写入新的预置值:

0=不更新;1=更新

SM37.6

SM47.6

SM57.6

SM137.6

SM147.6

SM157.6

向HSC写入新的当前值:

0=不更新;1=更新

SM37.7

SM47.7

SM57.7

SM137.7

SM147.7

SM157.7

启用HSC:

0=关HSC;1=开HSC

3.高速计数器的当前值及预置值寄存器

每个高速计数器都有一个32位当前值和一个32位预置值寄存器,当前值和预设值均为带符号的整数值。

高速计数器的当前值可以通过高速计数器标识符HC加计数器号码(0、1、2、3、4或5)寻址来读取。

要改变高速计数器的当前值和预置值,必须使控制字节(见表7-2)的第5位和第6位为1,在允许更新预置值和当前值的前提下,新当前值和新预置值才能写入当前值及预置值寄存器。

当前值和预置值占用的特殊内部寄存器如表7-4所示。

表7-4高速计数器当前值和预置值寄存器

寄存器名称

HSC0

HSC1

HSC2

HSC3

HSC4

HSC5

当前值寄存器

SMD38

SMD48

SMD58

SMD138

SMD148

SMD158

预置值寄存器

SMD42

SMD52

SMD62

SMD142

SMD152

SMD162

4.高速计数器的状态字节

高速计数器的状态字节位存储当前的计数方向、当前值是否等于预置值、当前值是否大于预置值。

PLC通过监控高速计数器状态字节,可产生中断事件,以便用以完成用户希望的重要操作。

各高速计数器的状态字节描述如表7-5所示。

表7-5高速计数器的状态字节

HSC0

HSC1

HSC2

HSC3

HSC4

HSC5

含义

SM36.0

SM46.0

SM56.0

SM136.0

SM146.0

SM156.0

未用

SM36.1

SM46.1

SM56.1

SM136.1

SM146.1

SM156.1

SM36.2

SM46.2

SM56.2

SM136.2

SM146.2

SM156.2

SM36.3

SM46.3

SM56.3

SM136.3

SM146.3

SM156.3

SM36.4

SM46.4

SM56.4

SM136.4

SM146.4

SM156.4

SM36.5

SM46.5

SM56.5

SM136.5

SM146.5

SM156.5

当前计数方向状态位:

0=减计数;1=加计数

SM36.6

SM46.6

SM56.6

SM136.6

SM146.6

SM156.6

当前值等于预置值状态位:

0=不等;1=相等

SM36.7

SM46.7

SM56.7

SM136.7

SM146.7

SM156.7

当前值大于预置值状态位:

0=小于或等于;1=大于

HSC0、HSC1、HSC2、HSC3、HSC4和HSC5的状态位,仅当高速计数器中断程序执行时才有效。

 5.高速计数器指令编程举例

例1设置一个两相正交4x高速计数器,通过调用子程序实现对高速计数器的设置(允许计数,更新当前值,更新预置值,更新计数方向为加计数,正交计数设为4×,复位和起动设置为高电平有效;定义HSC1位工作模式11;当前值SMD48清零,预置值SMD52设为1000;设置当前值等于预设值中断,全局开中断),通过中断子程序改写高速计数器的当前值。

与此对应的梯形图主程序如图7-6所示、子程序如图7-7所示、中断子程序7-8所示。

 

 

7.2高速输出指令及应用

高速脉冲输出功能在PLC的Q0.0或Q0.1输出端产生高速脉冲,用来驱动诸如步进电机一类负载,实现速度和位置控制。

7.2.1高速脉冲输出方式

高速脉冲输出有脉冲串输出PTO和脉宽调制输出PWM两种形式。

每个CPU有两个PTO/PWM发生器,一个发生器分配给输出端Q0.0,另一个分配给Q0.1。

当Q0.0或Q0.1设定为PTO或PWM功能时,其他操作均失效。

不使用PTO/PWM发生器时,Q0.0或Q0.1作为普通输出端子使用。

通常在启动PTO或PWM操作之前,用复位R指令将Q0.0或Q0.1清0。

1.脉宽调制输出(PWM)

PWM功能可输出周期一定占空比可调的高速脉冲串,其时间基准可以是µs或ms,周期的变化范围为10~65535µs或2~65535ms,脉宽的变化范围为0~65535µs或0~65535ms。

当指定的脉冲宽度大于周期值时,占空比为100%,输出连续接通。

当脉冲宽度为0时,占空比为0%,输出断开。

如果指定的周期小于两个时间单位,周期被默认为两个时间单位。

可以用以下两种办法改变PWM波形的特性。

1)同步更新

如果不要求改变时间基准,即可以进行同步更新。

同步更新时,波形的变化发生在两个周期的交界处,可以实现平滑过渡。

2)异步更新

如果需要改变时间基准,则应使用异步更新。

异步更新瞬时关闭PTO/PWM发生器,与PWM的输出波形不同步,可能引起被控设备的抖动。

为此通常不使用异步更新,而是选择一个适用于所有周期时间的时间基准,使用同步PWM更新。

PWM输出的更新方式由控制字节中的SM67.4或SM77.4位来指定,执行PLS指令使改变生效。

如果改变了时间基准,不管PWM更新方式位的状态如何,都会产生一个异步更新。

2.脉冲串输出(PTO)

PTO功能可输出一定脉冲个数和占空比为50%的方波脉冲。

输出脉冲的个数在1~4294967295范围内可调;输出脉冲的周期以µs或ms为增量单位,变化范围分别是10~65535µs或2~65535ms。

如果周期小于两个时间单位,周期被默认为两个时间单位。

如果指定的脉冲数为0,则脉冲数默认为1。

PTO功能允许多个脉冲串排队输出,从而形成流水线。

流水线分为两种:

单段流水线和多段流水线。

单段流水线是指流水线中每次只能存储一个脉冲串的控制参数,初始PTO段一旦起动,必须按照对第二个波形的要求立即刷新特殊存储器,并再次执行PLS指令,在第一个脉冲串完成后,第二个脉冲串输出立即开始,重复这一步骤可以实现多个脉冲串的输出。

单段流水线中的各段脉冲串可以采用不同的时间基准,但有可能造成脉冲串之间的不平稳过渡。

输出多段高速脉冲时,编程复杂。

多段流水线是指在变量存储区V建立一个包络表(包络表Profile是一个预先定义的横坐标为位置、纵坐标为速度的曲线,是运动的图形描述)。

包络表存放每个脉冲串的参数,执行PLS指令时,S7–200PLC自动按包络表中的顺序及参数进行脉冲串输出。

包络表中每段脉冲串的参数占用8个字节,由一个16位周期值(2字节)、一个16位周期增量值Δ(2字节)和一个32位脉冲计数值(4字节)组成。

包络表的格式如表7-6所示。

表7-6包络表的格式

从包络表起始地址的字节偏移

说明

VBn

 

总段数(1~255);数值0产生非致命错误,无PTO输出

VBn+1

段1

初始周期(2至65535个时基单位)

VBn+3

每个脉冲的周期增量Δ(符号整数:

-32768至32767个时基单位)

VBn+5

脉冲数(1至4294967295)

VBn+9

段2

初始周期(2至65535个时基单位)

VBn+11

每个脉冲的周期增量Δ(符号整数:

-32768至32767个时基单位)

VBn+13

脉冲数(1至4294967295)

VBn+17

段3

初始周期(2至65535个时基单位)

VBn+19

每个脉冲的周期增量值Δ(符号整数:

-32768至32767个时基单位)

VBn+21

脉冲数(1至4294967295)

注意:

周期增量值Δ为整数微秒或毫秒

多段流水线的特点是编程简单,能够通过指定脉冲的数量自动增加或减少周期,周期增量值Δ为正值会增加周期,周期增量值Δ为负值会减少周期,若Δ为零,则周期不变。

在包络表中的所有的脉冲串必须采用同一时基,在多段流水线执行时,包络表的各段参数不能改变。

多段流水线常用于步进电机的控制。

使用STEP7MicroWIN32中的位控向导可以方便的设置PTO/PWM输出功能,使PTO/PWM的编程自动实现,大大减轻了用户编程负担。

3.PTO/PWM寄存器

Q0.0和Q0.1输出端子的高速输出功能通过对PTO/PWM寄存器的不同设置来实现。

PTO/PWM寄存器由SM66~SM85特殊存储器组成,它们的作用是监视和控制脉冲输出(PTO)和脉宽调制(PWM)功能。

各寄存器的字节值和位值的意义如表7-7。

表7-7PTO/PWM寄存器各字节值和位值的意义

Q0.0

Q0.1

说明

寄存器名

SM66.4

SM76.4

PTO包络由于增量计算错误异常终止0:

无错1:

异常终止

脉冲串输出状态寄存器

SM66.5

SM76.5

PTO包络由于用户命令异常终止0:

无错;1:

异常终止

SM66.6

SM76.6

PTO流水线溢出0:

无溢出;1:

溢出

SM66.7

SM76.7

PTO空闲0:

运行中;1:

PTO空闲

SM67.0

SM77.0

PTO/PWM刷新周期值0:

不刷新;1:

刷新

PTO/PWM输出控制寄存器

SM67.1

SM77.1

PWM刷新脉冲宽度值0:

不刷新;1:

刷新

SM67.2

SM77.2

PTO刷新脉冲计数值0:

不刷新;1:

刷新

SM67.3

SM77.3

PTO/PWM时基选择0:

1µs;1:

1ms

SM67.4

SM77.4

PWM更新方法0:

异步更新;1:

同步更新

SM67.5

SM77.5

PTO操作0:

单段操作;1:

多段操作

SM67.6

SM77.6

PTO/PWM模式选择0:

选择PTO1:

选择PWM

SM67.7

SM77.7

PTO/PWM允许0:

禁止;1:

允许

SMW68

SMW78

PTO/PWM周期时间值(范围:

2至65535)

周期值设定寄存器

SMW70

SMW80

PWM脉冲宽度值(范围:

0至65535)

脉宽值设定寄存器

SMD72

SMD82

PTO脉冲计数值(范围:

1至4294967295)

脉冲计数值设定寄存器

SMB166

SMB176

段号(仅用于多段PTO操作),多段流水线PTO运行中的段的编号

多段PTO操作寄存器

SMW168

SMW178

包络表起始位置,用距离V0的字节偏移量表示(仅用于多段PTO操作)

7.2.2高速脉冲输出指令

1.指令格式及功能(见表7-8)

表7-8高速脉冲输出指令的格式及功能

梯形图LAD

语句表STL

功能

操作码

操作数

PLS

Q0.X

当使能端输入有效时,PLC首先检测为脉冲输出位(X)设置的特殊存储器位,然后激活由特殊存储器位定义的脉冲操作

说明:

1)高速脉冲串输出PTO和脉宽调制输出PWM都由PLS指令来激活;

2)操作数X指定脉冲输出端子,0为Q0.0输出,1为Q0.1输出;

3)高速脉冲串输出PTO可采用中断方式进行控制,而脉宽调制输出PWM只能由指令PLS来激活。

2.PTO/PWM指令编程举例

例2脉宽调制输出PWM举例

假定PLC运行后,通过Q0.1连续输出周期为10000ms,脉冲宽度为1000ms的脉宽调制输出波形,并利用I0.1上升沿中断实现脉宽的更新(每中断一次,脉冲宽度增加10ms)。

通过调用子程序0设置PWM操作,通过中断程序0来改变脉宽。

对应的梯形图主程序如图7-9所示、子程序0如图7-10所示、中断程序0如图7-11所示,对应的时序图如图7-12所示。

 

 

 

 

例3脉冲串输出PTO举例

假定脉冲串通过Q0.0输出。

脉冲串输出时,先输出6个脉冲周期为500ms的脉冲串后,自动更新为输出6个脉冲为1000ms的脉冲串,然后再输出6个脉冲周期为500ms的脉冲串,不断循环输出。

使用I0.0上升沿起动脉冲串输出,使用I0.1上升沿停止脉冲串输出,

通过I0.0上升沿调用子程序0设置PTO操作,通过脉冲串输出完成中断程序0来改变脉冲周期,通过I0.1上升沿禁止中断完成脉冲串输出的停址。

PTO输出的结果如图7-13所示。

对应的梯形图主程序如图7-14所示、子程序0如图7-15所示、中断程序0如图7-16所示。

 

 

 

 

7.3位置控制模块EM253简介

EM253位控模块是为S7-200系列PLC配置的特殊功能模块,它能够产生系列脉冲串用于步进电机和伺服电机速度和位置的开环控制。

1.位置控制模块EM253的功能

1)位置控制模块EM253每秒钟产生的脉冲可在20~200000个范围内变化,因此可方便地实现对步进电机的速度控制;

2)通过组态和编程设置,可容易地实现S曲线或线性加速、减速控制以及啮合间隙补偿功能;

3)可以使用工程单位(如英寸或厘米),也可以使用脉冲数来设置系统参数;

4)能够支持绝对、相对和手动的位置控制方式;

5)能够提供25个包络,每个最多四种速度,实现各种连续操作。

6)能够提供4种不同的参考点寻找模式,每种模式都可以对起始的寻找方向和最终的接近方向进行选择。

S7-200在输入出的过程映像区中(Q区)保留8位作为位置控制模块的接口。

S7-200的应用程序将使用这些位来控制位置控制模块的操作。

这8个输出位与位置控制模块上的物理输出没有关系。

2.位置控制模块的编程

STEP7-Micro/WIN为位置控制模块的组态和编程提供了位置控制向导,可以生成组态/包络表和位置控制指令。

STEP7-Micro/WIN提供的EM253控制面板,用来测试位置控制模块的输入/输出接线、组态以及运动包络的执行。

STEP7-Micro/WIN软件中的位控向导可指导用户利用位控指令自动生成位置控制指令。

向导中涉及到的位控指令主要有POSx_CTRL,_GOTO,_RUN,_RSEEK,_LDPOS。

POSx_CTRL指令用于使能位置控制模块,用SM0.0作为EN输入,以确保这条指令在每个循环周期中都得到执行。

POSx_GOTO或POSx_RUN指令可使电机移动到指定位置,POSx_GOTO指令使电机运动到在程序中输入指定的位置;POSx_RUN指令则使电机按照在位置控制向导中所组态的路线运动。

POSx_RSEEK或POSx_LDPOS指令用于建立零位置,以提供绝对坐标运动时的基准。

3.位控模块的接线

EM253位置控制模块提供一定数量的输入输出端子,图7-17所示为EM253位置控制模块与步进电动机驱动设备相连接的示意图。

各输入输出端子的含义如表7-9所示。

 

表7-7EM253位控模块输入输出端子含义

信号

描述

STP

STP输入可让模块停止脉冲输出,在位控向导中可选择所需要的STP操作

RPS

RPS(参考点切换)输入可为绝对运动操作建立参考点或零点位置

ZP

ZP(零脉冲)输入可帮助建立参考点或零点位置,通常电机驱动器/放大器每周产生一个ZP脉冲

LMT+

LMT-

LMT+和LMT-是运动位置的最大限制,位控向导中可以组态LMT+和LMT-输入

P0

P1

P0+,P0-

P1+,P1-

P0和P1是漏型晶体管输出,用以控制电机的运动和方向,P0+,P0-以及P1+,P1-是差分脉冲输出,与P0和P1的功能一样,但所提供的信号更好。

漏型输出和差分输出同时有效,可以根据电机驱动器/放大器的接口要求来选择使用哪种输出

DIS

DIS是一个漏型输出,用来禁止或使能电机驱动器/放大器

CLR

CLR是一个漏型输出,用来清除伺服脉冲计数器

7.4高速处理指令上机实践

实践1高速计数器测量电机转速

电动机输出轴与齿轮刚性联接,齿轮的齿数为12。

电动机旋转时通过齿轮传感器测量转过的齿轮齿数,进而可以计算出电动机的转速(转/分钟)。

齿轮传感器与PLC的接线图如图7-18所示。

 

采用高速计数器测量电机转速的主程序如图7-19所示,高速计数器初始化子程序0如图7-2

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 表格模板 > 合同协议

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1