S7-200PLC脉冲输出MAP库文件的使用资料
- 格式:doc
- 大小:606.50 KB
- 文档页数:23
S7-200高速脉冲输出应用前面学习了高速计数器的内容,紧接着我们就来学习一下高速脉冲输出的内容,高速脉冲输出一般是用在运动控制里面,用来控制步进或伺服,高速脉冲输出也是比较重要的一部分,我们必须得掌握好它。
在S7-200中有两个PTO/PWM高速脉冲发生器,可以产生高速脉冲串(PTO)或脉宽调制信号波形(PWM)。
在S7-200中有脉冲输出指令PLS,它用来控制在高速脉冲输出(Q0.0和Q0.1)中提供的高速脉冲串输出(PTO)和脉宽调制(PWM)功能。
PTO/PWM与数字量输出过程映像区共用输出点Q0.0和Q0.1,当在Q0.0或Q0.1上激活了PTO/PWM功能时,是会禁止普通输出点功能的,这时Q0.0或Q0.1的输出波形是不受过程映像区状态、输出点强制值或者立即输出指令的影响的,我们使用状态表或趋势图是监控不了的。
要做高速脉冲输出,我们应该选用24VDC晶体管输出的CPU,而不能选用继电器输出的CPU,这是我们要注意的。
高速脉冲输出一般是用在运动控制里面,用来控制步进或伺服。
利用高速脉冲输出实现运动控制,除了有PTO、PWM,还有EM253定位模块,这三种方式都可以实现运动控制,不过要注意的是PTO和PWM可以使用脉冲输出指令PLS和向导来实现,而且PTO方式的甚至还可以使用运动控制库指令来实现,而使用EM253定位模块的话就只能通过向导来实现,而不能使用PLS指令或运动控制库指令。
我们先看一下脉冲串操作PTO,PTO是按照给定的脉冲个数和周期输出一串方波(占空比50%)。
在使用时,我们要设定其脉冲个数和周期,我们要注意的是设定是周期数应该是偶数,如果设定的周期数为奇数的话,是会引起占空比失真的。
而脉宽调制PWM,它是产生一个占空比变化周期固定的脉冲输出的,我们可以设定其周期和脉宽,我们要注意的是当设定的脉宽等于周期时,输出是一直为ON的,当设定的脉宽等于0时,输出是断开的。
一般来说,使用脉冲串PTO会比较多,所以后面学习时也是重点学习脉冲串PTO的。
1 概述S7--200提供了三种方式地开环运动控制:•脉宽调制<PWM)--内置于S7--200,用于速度、位置或占空比控制,•脉冲串输出<PTO)--内置于S7--200,用于速度和位置控制,• EM253位控模块--用于速度和位置控制地附加模块,S7—200地内置脉冲串输出提供了两个数字输出通道<Q0.0和Q0.1),该数字输出可以通过位控向导组态为PWM或PTO地输出,b5E2RGbCAP当组态一个输出为PTO操作时,生成一个50%占空比脉冲串用于步进电机或伺服电机地速度和位置地开环控制,内置PTO功能仅提供了脉冲串输出,您地应用程序必须通过PLC内置I/O或扩展模块提供方向和限位控制,p1EanqFDPwPTO按照给定地脉冲个数和周期输出一串方波<占空比50%),如图1,PTO可以产生单段脉冲串或者多段脉冲串<使用脉冲包络),可以指定脉冲数和周期<以微秒或毫秒为增加量):•脉冲个数:1到4,294,967,295•周期:10μs(100K>到65535μs或者2ms到65535ms,DXDiTa9E3d图1200系列地PLC地最大脉冲输出频率除CPU224XP 以外均为20kHz,CPU224XP可达100kHz,如表1所示:RTCrpUDGiT表12 MAP库地应用2.1 MAP库地基本描述现在,200系列 PLC 本体 PTO 提供了应用库MAP SERV Q0.0 和 MAP SERV Q0.1,分别用于 Q0.0 和 Q0.1 地脉冲串输出,如图2所示:5PCzVD7HxA图2注:这两个库可同时应用于同一工程,各个块地功能如表2所示:表2总体描述该功能块可驱动线性轴,为了很好地应用该库,需要在运动轨迹上添加三个限位开关,如图3:•一个参考点接近开关<home),用于定义绝对位置 C_Pos 地零点,•两个边界限位开关,一个是正向限位开关(Fwd_Limit>,一个是反向限位开关(Rev_Limit>, C_Pos 地计数值格式为 DINT ,所以其计数范围为(-2.147.483.648 to +2.147.483.647>. •绝对位置ΔSmin 以避免物件滑出轨道尽头, •如果一个限位开关被运动物件触碰,则该运动物件会减速停止,因此,限位开关地安置位置应当留出足够地裕量jLBHrnAILg图32.2 输入输出点定义应用MAP库时,一些输入输出点地功能被预先定义,如表3所示:表32.3 MAP库地背景数据块为了可以使用该库,必须为该库分配 68 BYTE<每个库)地全局变量,如图4所示:xHAQX74J0X图4下表是使用该库时所用到地最重要地一些变量<以相对地址表示),如表4:表42.4 功能块介绍下面逐一介绍该库中所应用到地程序块,这些程序块全部基于PLC-200 地内置PTO输出,完成运动控制地功能,此外,脉冲数将通过指定地高速计数器 HSC 计量,通过 HSC 中断计算并触发减速地起始点,LDAYtRyKfE2.4.1 Q0_x_CTRL 该块用于传递全局参数,每个扫描周期都需要被调用,功能块如图5,功能描述见表5,Zzz6ZB2Ltk图5表5Velocity_SS 是最小脉冲频率,是加速过程地起点和减速过程地终点, Velocity_Max 是最大小脉冲频率,受限于电机最大频率和PLC地最大输出频率,在程序中若输入超出<Velocity_SS,Velocity_Max)范围地脉冲频率,将会被Velocity_SS 或Velocity_Max 所取代, accel_dec_time 是由 Velocity_SS 加速到 Velocity_Max 所用地时间<或由Velocity_Max 减速到 Velocity_SS 所用地时间,两者相等),范围被规定为0.02 ~ 32.0 秒,但最好不要小于0.5秒,dvzfvkwMI1警告:超出 accel_dec_time 范围地值还是可以被写入块中,但是会导致定位过程出错!2.4.2 Scale_EU_Pulse 该块用于将一个位置量转化为一个脉冲量,因此它可用于将一段位移转化为脉冲数,或将一个速度转化为脉冲频率,功能块如图6,功能描述见表6,rqyn14ZNXI图6表6下面是该功能块地计算公式:2.4.3 Scale_ Pulse_EU 该块用于将一个脉冲量转化为一个位置量,因此它可用于将一段脉冲数转化为位移,或将一个脉冲频率转化为速度,功能块如图7,功能描述见表7,EmxvxOtOco图7表7下面是该功能块地计算公式:2.4.4 Q0_x_Home 功能块如图8,功能描述见表8,图8表8该功能块用于寻找参考点,在寻找过程地起始,电机首先以Start_Dir 地方向,Homing_Fast_Spd 地速度开始寻找;在碰到limit switch (“Fwd_Limit” or “Rev_Limit”>后,减速至停止,然后开始相反方向地寻找;当碰到参考点开关(input I0.0。
S7-200 PLC 脉冲输出MAP 库文件的使用Application of S7-200 PTO MAP LibGetting Start Edition (2011年3月)摘要该文档提供了S7-200 PLC脉冲输出指令库MAP的使用说明。
该库基于S7-200 PLC本体脉冲输出指令,用于帮助用户实现较复杂的定位功能,控制伺服驱动或步进电机。
关键词S7-200 PLC;脉冲输出;MAPKey WordsS7-200 PLC;PTO;MAP目录1 概述2 MAP库的应用2.1 MAP库的基本描述2.2 输入输出点定义2.3 MAP库的背景数据块2.4 功能块介绍2.4.1 Q0_x_CTRL2.4.2 Scale_EU_Pulse2.4.3 Scale_ Pulse_EU2.4.4 Q0_x_Home2.4.5 Q0_x_MoveRelative2.4.6 Q0_x_MoveAbsolute2.4.7 Q0_x_MoveVelocity2.4.8 Q0_x_Stop2.4.9 Q0_x_LoadPos2.5 校准2.6 寻找参考点的若干种情况1 概述S7--200提供了三种方式的开环运动控制:∙脉宽调制(PWM)--内置于S7--200,用于速度、位置或占空比控制。
∙脉冲串输出(PTO)--内置于S7--200,用于速度和位置控制。
∙EM253位控模块--用于速度和位置控制的附加模块。
S7—200的内置脉冲串输出提供了两个数字输出通道(Q0.0和Q0.1),该数字输出可以通过位控向导组态为PWM或PTO的输出。
当组态一个输出为PTO操作时,生成一个50%占空比脉冲串用于步进电机或伺服电机的速度和位置的开环控制。
内置PTO功能仅提供了脉冲串输出。
您的应用程序必须通过PLC内置I/O或扩展模块提供方向和限位控制。
PTO按照给定的脉冲个数和周期输出一串方波(占空比50%),如图1。
PTO可以产生单段脉冲串或者多段脉冲串(使用脉冲包络)。
1、概述S7-200 有两个置PTO/PWM 发生器,用以建立高速脉冲串(PTO)或脉宽调节(PWM)信号波形。
当组态一个输出为PTO 操作时,生成一个50%占空比脉冲串用于步进电机或伺服电机的速度和位置的开环控制。
置PTO功能提供了脉冲串输出,脉冲周期和数量可由用户控制。
但应用程序必须通过PLC内置I/O 提供方向和限位控制。
为了简化用户应用程序中位控功能的使用,STEP7--Micro/WIN 提供的位控向导可以帮助您在几分钟内全部完成PWM,PTO或位控模块的组态。
向导可以生成位置指令,用户可以用这些指令在其应用程序中为速度和位置提供动态控制。
2、开环位控用于步进电机或伺服电机的基本信息借助位控向导组态PTO 输出时,需要用户提供一些基本信息,逐项介绍如下:⑴最大速度(MAX_SPEED)和启动/停止速度(SS_SPEED)图1是这2 个概念的示意图。
MAX_SPEED是允许的操作速度的最大值,它应在电机力矩能力的范围。
驱动负载所需的力矩由摩擦力、惯性以及加速/减速时间决定。
图1 最大速度和启动/停止速度示意SS_SPEED:该数值应满足电机在低速时驱动负载的能力,如果SS_SPEED的数值过低,电机和负载在运动的开始和结束时可能会摇摆或颤动。
如果SS_SPEED的数值过高,电机会在启动时丢失脉冲,并且负载在试图停止时会使电机超速。
通常,SS_SPEED 值是MAX_SPEED 值的5%至15%。
⑵加速和减速时间加速时间ACCEL_TIME:电机从SS_SPEED速度加速到MAX_SPEED速度所需的时间。
减速时间DECEL_TIME:电机从MAX_SPEED速度减速到SS_SPEED速度所需要的时间。
图2 加速和减速时间加速时间和减速时间的缺省设置都是1000毫秒。
通常电机可在小于1000 毫秒的时间工作。
参见图2。
这2个值设定时要以毫秒为单位。
注意:电机的加速和失速时间要过测试来确定。
PLC脉冲输出功能5.5.4S7-200 PLC的脉冲输出功能1、概述S7-200有两个PTO/PWM发⽣器,⽤以建⽴⾼速脉冲串(PTO)或脉宽调节(PWM)信号波形。
⼀个发⽣器指定给数字输出点Q0.0,另⼀个发⽣器指定给数字输出点Q0.1。
其中,PTO提供⽅波(50%占空⽐)输出,脉冲周期和数量可由⽤户控制。
每个PTO/PWM发⽣器有⼀个控制字节(8位),⼀个周期值和脉宽值(不带符号的16位值)和⼀个脉冲计值(不带符号的32位值)。
这些值全部存储在特殊内存(SM)区域的指定位置。
⼀旦设置这些特殊内存位的位置,选择所需的操作后,执⾏脉冲输出指令PLS即启动操作。
该指令会从特殊存储器SM中读取数据,使程序按照其存储值控制PTO/PWM发⽣器通过修改SM区域中(包括控制字节)要求的位置,就可以更改PTO或PWM 的信号波形特征,然后执⾏PLS指令。
PTO/PWM控制寄存器包括状态位控制寄存器、控制位控制寄存器及其其他PTO/PWM寄存器。
⽤于Q0.0的这三种寄存器如表5-1,表5-2和表5-3所⽰。
表5-1 Q0.0的状态位控制寄存器表5-2 Q0.0的控制位控制寄存器表5-3 Q0.0的其他PTO/PWM寄存器2、PTO的操作模式PTO可提供单脉冲串或多脉冲串(使⽤脉冲轮廓)。
⑴PTO脉冲串的单段管线在单段管线模式,需要为下⼀个脉冲串更新特殊寄存器。
⼀旦启动了起始PTO 段,就必须按照第⼆个波形的要求改变特殊寄存器,并再次执⾏PLS指令。
第⼆个脉冲串的属性在管线中⼀直保持到第⼀个脉冲串发送完成。
在管线中⼀次只能存储⼀段脉冲串的属性。
当第⼀个脉冲串发送完成时,接着输出第⼆个波形,此时管线可以⽤于下⼀个新的脉冲串。
重复这个过程可以再次设定下⼀个脉冲串的特性。
⑵PTO脉冲串的多段管线在多段管线模式,CPU⾃动从V存储器区的包络表(轮廓表)中读出每个脉冲串的特性。
在该模式下,仅使⽤特殊存储器区的控制字节和状态字节。
S7—200的高速脉冲输出在需要对负载进行高精度控制时,如对步进电机的控制,需要对步进电机提供一系列的脉冲,高速脉需求而开发的。
1.1高速脉冲输出---输出端子的确定S7—200只有输出继电器Q0.0和Q0。
1具有高速脉冲输出功能,不用高速脉冲时,作普通的1.2高速脉冲输出的形式高速脉冲输出有两种的形式:高速脉冲序列(或称高速脉冲串)输出PTO脉冲宽度调制输出PWM可通过特殊继电器来定义输出的形式1.3高速脉冲输出相关寄存器每个高速脉冲发生器对应一定数量特殊标志寄存器,这些寄存器包括控制字节寄存器、状态字用以控制高速脉冲的输出形式、反映输出状态和参数值。
1。
4编程中的脉冲输出指令PLS指令功能:EN有效,检测各相关寄存器的状态,激活由控制字节定义的高速脉冲输出操作。
Q取0或1图1。
4‑12PWM简介及编程运用PWM(Pulse WidthModulation脉冲调制)宽度可调脉冲输出PWM功能提供带变量占空比的固定周期输出。
可以微秒或毫秒为时间基准指定周期和脉宽。
2。
1S7—200的PWMS7—200有两台PWM发生器,建立高速脉冲串或脉宽调节信号信号波形。
一台发生器指定给数字指定给数字输出点Q0。
1。
一个指定的特殊内存(SM)位置为每台发生器存储以下数据:一个控制字值(一个不带符号的32位值)和一个周期和脉宽值(一个不带符号的16位值)。
PWM功能在Q0。
0或Q0.1位置现用时,PWM发生器控制输出,并禁止输出点的正常使用。
输出信状态、点强迫数值、执行立即输出指令的影响。
如图2。
1‑1图2。
1‑12。
2 PWM周期和脉冲宽度脉冲宽度为16为无符号数,脉冲宽度增量单位为us或ms.范围0~65535,占空比为0~100%。
当输出将连续接通。
为0时,输出一直被关断。
如表1表1周期和脉冲宽度脉宽时间/周期反应脉宽时间 >=周期值占空比为100%:输出连续运行。
脉宽时间 = 0占空比为0%:输出关闭。
西门子S7-200PLC中高速脉冲输出的应用作者:王宗伟来源:《内燃机与配件》2020年第05期摘要:步进电动机是一种将脉冲信号转变成角位移的执行元件,通过控制脉冲的个数及频率来实现位移和速度的控制。
本文基于一个实际应用案例,利用了西门子S7-200 PLC提供的高速脉冲输出功能,逐步逐项的设计分析,实现了对步进电动机的速度和位置的控制。
关键词:步进电动机;西门子S7-200 PLC;高速脉冲;实际应用0; 引言西门子S7-200 PLC提供高速脉冲输出功能,由Q0.0或Q0.1输出端产生高速脉冲,用于驱动步进电动机等负载,实现速度和位置的控制。
高速脉冲输出形式常用的有两种,一是脉宽调制(PWM),输出周期一定,占空比可调的高速脉冲串;一是脉冲串输出(PTO),输出周期可调,占空比为50%的脉冲串,如图1所示,两种均内置于PLC中,此外还可以采用附加的EM253位控模块。
1; 应用案例本论文基于西门子S7-200 PLC的高速脉冲输出功能控制步进电动机,其中PLC的型号是CPU224DC/DC/DC,步进驱动器使用雷赛M535,步进电动机参数为1.8°/2.8A,要求实现以下功能:①完成步進电动机速度控制,运行速度为500r/min。
②完成步进电动机正反转点动控制。
③完成步进电动机增量位置控制。
要求向正方向以增量方式运行1转。
2; 设计流程2.1 绘制电气原理图,完成I/O地址分配。
根据控制要求,绘制电气原理图如图2,I/O地址分配如表1。
其中:①驱动器PUL接口为脉冲信号接口,驱动器接收到脉冲信号转换成步进电机的角位移。
脉冲上升沿有效,PUL-高电平时4~5V,低电平时0~0.5V。
为了可靠响应脉冲信号,脉冲宽度应大于1.2μs。
如采用+12V或+24V时需串电阻,本文中串联了3kΩ的电阻。
②驱动器DIR接口为方向信号接口,高/低电平信号,为保证电机可靠换向,方向信号应先于脉冲信号至少5μs建立。
S7-200 PLC 脉冲输出MAP 库文件的使用
Application of S7-200 PTO MAP Lib
Getting Start Edition (2011年3月)
摘要
该文档提供了S7-200 PLC脉冲输出指令库MAP的使用说明。
该库基于S7-200 PLC本体脉冲输出指令,用于帮助用户实现较复杂的定位功能,控制伺服驱动或步进电机。
关键词
S7-200 PLC;脉冲输出;MAP
Key Words
S7-200 PLC;PTO;MAP
目录
1 概述
2 MAP库的应用
2.1 MAP库的基本描述
2.2 输入输出点定义
2.3 MAP库的背景数据块
2.4 功能块介绍
2.4.1 Q0_x_CTRL
2.4.2 Scale_EU_Pulse
2.4.3 Scale_ Pulse_EU
2.4.4 Q0_x_Home
2.4.5 Q0_x_MoveRelative
2.4.6 Q0_x_MoveAbsolute
2.4.7 Q0_x_MoveVelocity
2.4.8 Q0_x_Stop
2.4.9 Q0_x_LoadPos
2.5 校准
2.6 寻找参考点的若干种情况
1 概述
S7--200提供了三种方式的开环运动控制:
∙脉宽调制(PWM)--内置于S7--200,用于速度、位置或占空比控制。
∙脉冲串输出(PTO)--内置于S7--200,用于速度和位置控制。
∙EM253位控模块--用于速度和位置控制的附加模块。
S7—200的内置脉冲串输出提供了两个数字输出通道(Q0.0和Q0.1),该数字输出可以通过位控向导组态为PWM或PTO的输出。
当组态一个输出为PTO操作时,生成一个50%占空比脉冲串用于步进电机或伺服电机的速度和位置的开环控制。
内置PTO功能仅提供了脉冲串输出。
您的应用程序必须通过PLC内置I/O或扩展模块提供方向和限位控制。
PTO按照给定的脉冲个数和周期输出一串方波(占空比50%),如图1。
PTO可以产生单段脉冲串或者多段脉冲串(使用脉冲包络)。
可以指定脉冲数和周期(以微秒或毫秒为增加量):
∙脉冲个数:1到4,294,967,295
∙周期:10μs(100K)到65535μs或者2ms到65535ms。
图1
200系列的PLC的最大脉冲输出频率除CPU224XP 以外均为20kHz。
CPU224XP可达100kHz。
如表1所示:
表1
2 MAP库的应用
2.1 MAP库的基本描述
现在,200系列PLC 本体PTO 提供了应用库MAP SERV Q0.0 和MAP SERV Q0.1,分别用于Q0.0 和Q0.1 的脉冲串输出。
如图2所示:
图2
注:这两个库可同时应用于同一项目。
各个块的功能如表2所示:
∙一个参考点接近开关(home),用于定义绝对位置C_Pos 的零点。
∙两个边界限位开关,一个是正向限位开关(Fwd_Limit),一个是反向限位开关(Rev_Limit)。
∙ C_Pos 的计数值格式为DINT ,所以其计数范围为(-2.147.483.648 to +2.147.483.647). 绝对位置
∙ΔSmin 以避免物件滑出轨道尽头。
如果一个限位开关被运动物件触碰,则该运动物件会减速停止,因此,限位开关的安置位置应当留出足够的裕量
图3
2.2 输入输出点定义
应用MAP库时,一些输入输出点的功能被预先定义,如表3所示:
下表是使用该库时所用到的最重要的一些变量(以相对地址表示),如表4:
2.4.5 Q0_x_MoveRelative
该功能块用于让轴按照指定的方向,以指定的速度,运动指定的相对位移。
功能块如图9,功能描述见表10。
图9
图10
图12
图13
注意:使用该块将使得原参考点失效,为了清晰地定义绝对位置,必须重新寻找参考点。
2.5 校准
该块所使用的算法将计算出减速过程(从减速起始点到速度最终达到Velocity_SS)所需要的脉冲数。
但时在减速过程中所形成的斜坡有可能会导致计算出的减速斜坡与实际的包络不完全一致。
此时就需要对
―Tune_Factor‖ 进行校正。
校正因子“Tune_Factor”
―Tune_Factor‖ 的最优值取决于最大、最小和目标脉冲频率以及最大减速时间。
如图15:
图15
如图所示,运动的目标位置是B,算法会自动计算出减速起始点,当计算与实际不符时,当轴已经运动到B点时,尚未到达最低速度,此时若位‖Disable_Auto_Stop‖ = 0,则轴运动到B点即停止运动,若
位‖Disable_Auto_Stop‖ = 1,则轴会继续运动直至到达最低速度。
图中所示的情况为计算的减速起始点出现的太晚了。
确定调整因子
注意:一次新的校准过程并不需要将伺服驱动器连接到CPU。
步骤如下:
1. 置位‖Disable_Auto_Stop‖,即令‖Disable_Auto_Stop‖ = 1。
2. 设置―Tune_Factor‖ = 1。
3. 使用Q0_x_LoadPos 功能将当前位置的绝对位置设为0。
4. 使用Q0_x_MoveRelative,以指定的速度完成一次相对位置运动(留出足够的空间以使得该运动
得以顺利完成)。
5. 运动完成后,查看实际位置HC0。
Tune_Factor 的调整值应由HC0,目标相对位移
Num_Pulses,预估减速距离Est_Stopping_Dist 所决定。
Est_Stopping_Dist 由下面的公式计算得出:
Tune_Factor由下面的公式计算得出:
6. 在调用Q0_x_CTRL 的网络之后插入一条网络,将调整后的Tune_Factor 传递给全局变量
+VD1,如图16。
图16
7. 复位‖Disable_Auto_Stop‖,即令‖Disable_Auto_Stop‖ = 0。
2.6 寻找参考点的若干种情况
在寻找参考点的过程中由于起始位置、起始方向和终止方向的不同会出现很多种情况。
一个总的原则就是:从起始位置以起始方向Start_Dir 开始寻找,碰到参考点之前若碰到限位开关,则立即调头开始反向寻找,找到参考点开关的上升沿(即刚遇到参考点开关)即减速到寻找低速
Homing_Slow_Spd,若在检测到参考点开关的下降沿(即刚离开遇到参考点开关)之前已经减速到Homing_Slow_Spd,则比较当前方向与终止方向Final_Dir 是否一致,若一致,则完成参考点寻找过程;若否,则调头找寻另一端的下降沿。
若在检测到参考点开关的下降沿(即刚离开遇到参考点开关)之前尚未减速到Homing_Slow_Spd,则在减速到Homing_Slow_Spd 后调头加速,直至遇到参考点开关上升沿,重新减速到Homing_Slow_Spd,最后判断当前方向与终止方向Final_Dir 是否一致,若一致,则完成参考点寻找过程;若否,则调头找寻另一端的下降沿。
(Final_Dir 决定寻找参考点过程结束后,轴停在参考点开关的哪一侧)
下面的图形会反应不同情形下寻找参考点的过程。
Start_Dir=0, Final_Dir=0,如图17:
图17 Start_Dir=0, Final_Dir=1,如图18:
图18 Start_Dir=1, Final_Dir=0,如图19:
图19 Start_Dir=1, Final_Dir=1,如图20:
图20。