西门子200脉冲输出及PTO设置
S7-200脉冲输出_
上例是简化的情况,用于介绍目的,实际应用程序可能要求更复杂的信号波形轮廓。请记住: ∆周期只能指定为整数微秒或毫秒 可对每次脉冲执行周期修改
这两个项目产生的效果是计算某个特定段的∆周期数值可能要求一个循环方案。计算某个特定段的结束周期或脉 冲数目时可能要求一定的灵活性。 特定轮廓段期限对确定正确的轮廓表值程序有用。可利用以下公式计算完成特定轮廓段的时间长度:
多段管线作业
在多段管线作业中,S7-200从V内存中的轮廓表自动读取每个脉冲串段的特征。该模式中的SM位置是轮廓表的 控制字节、状态字节和起始V内存偏移量(SMW 168或SMW178)。可以为微秒或毫秒,但该选项适用于轮廓 表中的所有周期值,但在轮廓运行时不得变更。然后可由执行PLS指令开始多段操作。 每段输入的长度均为8个字节,由一个16位周期值、一个16位周期∆值和一个32位脉冲计值组成。 下表说明轮廓表的格式。多段PTO操作的另一个特征是能够通过指定每个脉冲的数量自动增加或减少周期。在周 期∆域编程正值会增加周期,在周期∆域编程负值会减少周期。若值为零,则周期不变。 如果您指定的周期∆数值在一定数量的脉冲后导致非法周期,则会出现数学溢出条件。PTO功能被终止,输出转 换成映象寄存器控制。此外,状态字节(SM66.4或SM76.4)中的∆计算错误位被设为一。 如果您以手动方式异常中止正在运行的PTO轮廓,状态字节(SM66.5或SM76.5)中的用户异常中止位则被设为 一。
控制字节中的PWM更新方法位(SM67.4或SM77.4)指定更新类型,在执行PLC指令时激活改动。请注意,如 果改变,则会发生异步更新,无论PWM更新方法位的状态如何。
PTO操作
PTO为指定的脉冲数和指定的周期提供方波(50%占空比)输出。PTO可提供单脉冲串或多脉冲串(使用脉冲 轮廓)。您指定脉冲数和周期(以微秒或毫秒递增)。
西门子PLC脉冲输出
脉冲输出S7-200有两个PTO/PWM发生器(脉冲串输出/脉宽调制),它们可以产生一个高速脉冲串或者一个脉宽调制波形,分别是高速输出Q0.0和Q0.1。
PTO提供一个指定脉冲数量的方波输出(50%占空比)。
PTO可以产生单段脉冲串或者多段脉冲串(使用脉冲包络)。
PWM可输出周期固定但占空比可变的脉冲。
以指定频率(周期)启动后,PWM持续输出。
脉冲宽度根据所需的控制控制要求进行变化。
占空比可以表示为周期的一个百分比或者对应于脉冲宽度的一个时间值。
脉冲宽度可以从0%(无脉冲,一直为低电平)变化到100%(无脉冲,一直为高电平)。
由于PWM输出可以从0%变化到100%,在很多情况下,它可以提供类似于模拟量输出的数字量输出。
单段PTO(脉冲串输出)PTO按照给定的脉冲个数和周期输出一串方波(占空比50%)。
PTO可以产生单段脉冲串或者多段脉冲串(使用脉冲包络)。
可以指定脉冲数和周期(以微秒或毫秒为增加量),但必须设定脉冲数量。
PTO波形示意图:实现单段PTO的一般步骤:①定义控制字节Q0.0 Q0.1 控制字节SM67. 0 SM77.PTO/PWM更新周期0=禁止更新1=允许更新SM67. 1 SM77.1PWM更新脉冲宽度0=禁止更新1=允许更新SM67. 2 SM77.2PTO更新脉冲数0=禁止更新1=允许更新SM67. 3 SM77.3PTO/PWM时基选择0=μs1=msSM67. 4 SM77.4PWM更新方式0=异步更新1=同步更新SM67. 5 SM77.5PTO单段/多段选择0=单段1=多段SM67. 6 SM77.6PTO/PWM选择0=PTO 1=PWMSM67. 7 SM77.7PTO和PWM禁止/允许0=禁止1=允许②设置脉冲周期Q0.0 Q0.1SMW68 SMW78 单段PTO/PWM周期时间范围:2~65535③设定脉冲数量Q0.0 Q0.1SMD72 SMD82④激活端口指定哪一路脉冲输出,则需要在程序中激活相对应的端口,才能使脉冲串发送。
高速脉冲输出
单段操作脉冲例子
多段操作脉冲例子
这是一个三段的包络表,假设包络表的首地址为VB500,第一段初始周 期时间为500us,最后周期时间100us,200个脉冲,增量为-2 第三段初始周期时间为100us,最后周期时间500us,400个脉冲,增量 为+1
包络表
多段操作脉冲例子
STL
Network 1 LD SM0.1 R Q0.0, 1 CALL SBR_0
MOVW -2, VD503
MOVD 200, VD505
多段操作脉冲例子-3
多段操作脉冲例子-4
MOVD 4, SMD72 ATCH 3, 19 ENI PLS 0 MOVB 16#89, MB67
单段操作脉冲例子
Network 1 LD SM0.0 MOVB 16#8D, SMB67 MOVW 500, SMW68
MOVD 4, SMD72
ATCH 3, 19
ENI PLS 0 MOVB 16#89, MB67
PTO 操作
• PTO 提供指定脉冲个数的方波(50% 占空比) 脉冲串发生 功能,周期可以用微秒或毫秒为单位指定,周期的范围是 50 到65,535 微秒或2 到65,535 毫秒。如果设定的周期是 奇数会引起占空比的一些失真,脉冲数的范围是1 到 4,294,967,295,如果周期时间少于2 个时间单位就把周期 缺省地设定为2 个时间单位,如果指定脉冲数为0 就把脉 冲数缺省地设定为1 个脉冲。 • 状态字节中的PTO 空闲位(SM66.7 或SM76.7) 用来指示 可编程脉冲串完成,另外根据脉冲串的完成调用中断程序, 如果使用多段操作,根据包络表的完成,调用中断程序。 • PTO 功能允许脉冲串的排队,当激活的脉冲串完成时, 立即开始新脉冲的输出,这保证了顺序输出脉冲串的连续 性。
S7-200 CPU PTO 向导功能
S7-200 CPU PTO 向导功能使用 PTO 向导控制 S7-200 CPU 集成点 Q0.0 和 Q0.1 的脉冲输出更加容易。
PTO 向导具有以下主要功能:1. 手动运行2. 包络运动。
S7-200 CPU 最多允许 25 个包络,一个包络表可以包含 1-29 个步。
包络运动可选以下两种操作模式:(1)单速连续运转(2)相对位置3. 停止当前的连续运动包络,并增加向导包络定义中指定的脉冲数4. 改变当前位置为指定的新位置PTO 向导位置控制功能使用步骤1. S7-200 CPU 脉冲输出和方向输出点接线2. PTO 向导配置3. PTO 向导子程序编程S7-200 CPU 脉冲输出和方向输出点接线使用 PTO 向导用于 S7-200 CPU 脉冲输出和方向控制,用户应按照如下表 1 所示的定义接线:PTO0PTO1脉冲输出点Q0.0Q0.1方向点自定义 S7-200 CPU 其它输出点或数字量扩展模块输出点为方向点自定义 S7-200 CPU 其它输出点或数字量扩展模块输出点为方向点表 1. S7-200 CPU 脉冲和方向输出点PTO 向导配置用户必须先配置 PTO 向导,才能使用 PTO 向导生成的子程序。
用户可在STEP 7 Micro/Win 编程软件中选择菜单命令工具> 位控向导按照以下步骤执行:注意:如下是使用西门子 SINAMICS V80 为例,而用户必须根据实际使用的电机参数设置PTO 向导!第一步. 为 S7-200 PLC 选择 “配置 S7-200 PLC 内置 PTO/PWM” 操作。
如下图 1 所示:图 1. 配置 S7-200 PLC 内置 PTO/PWM 操作第二步. 选择 Q0.0 或 Q0.1,组态作为 PTO 的输出。
如下图 2 所示:图 2. 指定脉冲发生器第三步. 从下拉对话框中选择 “线性脉冲串输出(PTO)” 。
若想监视 PTO 产生的脉冲数目,点击复选框选择使用高速计数器。
脉冲输出位置控制向导PTO/PWM配置
16
可编程控制器原理与应用
移位寄存器例题
1.移位寄存器共14位,由V30.0 ~V31.5组成。 2.I0.4从最低位V30.0移入,每位依次左移一位,最 高位V31.5移出。 3.若N=-14,则I0.4从V31.5移入,每位依次右移一 位,最低位V30.0移出。
2018/10/4
17
可编程控制器原理与应用
4.2 数据处理指令
4.2.1 比较指令
可以进行两个字节(B)、整数(I)、双整数 (D)、实数(R)和字符串(S)的比较。 可以进行==、<>、>=、<=、>、<六种比较操作。 常量字符串应放在 梯形图符号如下
触点上方
IN1 IN2 6 IN1= = IN2?
2018/10/4
可编程控制器原理与应用 语句表 指令分别以LD、A、O开头,依次表示加载一比较触 点,与一比较触点,或一比较触点。
2018/10/4
3
可编程控制器原理与应用 2. 梯形图中的指令 触点指令可以直接和左母线相连。 输出和功能指令一般必须通过触点电路连接到左侧 母线上。这些指令被称为条件输入指令。若要无条件 地执行这些指令可利用SM0.0触点。 与能流无关的指令必须直接连接在左侧母线上。如 LBL、SCR指令。
可编程控制器原理与应用
第4章 S7-200的功能指令
4.1 功能指令概述 4.2 数据处理指令
4.3 数学运算指令
4.4 程序控制指令 4.5 局部变量表与子程序 4.6 中断程序与中断指令 4.7 高速计数器与高速脉冲输出指令
4.8 数据块应用与字符串指令
2018/10/4
3.计算程序中的数据转换 例题 将101 in转换为cm。 (单位换算:1 inch = 2.54 CM ,要求转换不保留小 数)
第5章 西门子S7-200系列PLC功能指令(脉冲输出)
3) PTO的,允许脉 冲串排队。PTO输出多段脉冲的方式有两种: ●单段PTO:定义一个脉冲串,输出一个脉冲 串 (特性参数通过特殊寄存器分别定义) 。 ●多段PTO:集中定义多个脉冲串,按顺序输
出多个脉冲串(特性参数通过包络表集中定义) 。
▲单段PTO 实现的方法 用指定的特殊标志寄存器定义脉冲串特性 参数(每次定义一个脉冲串)。一个脉冲串输 出完成后,产生中断。在中断服务程序中再为 下一个脉冲串更新参数,输出下一个脉冲串。 ◎优点: 各脉冲段可以采用不同的时间基准。 ◎缺点:单段PTO输出多段高速脉冲串时,编程 复杂,且参数设置不当会造成脉冲串之间的不平 滑转换。每个脉冲串输出期间周期值不能改变.
2)特殊寄存器
每个 PTO/PWM 都有一组配套参数: ● 1个 8位的控制字节 ● 1个 8位的状态字节 ● 1个 16位的周期值 ● 1个 16位的脉宽值 ● 1个 32位的脉冲数量 对于多段 PTO,还有 ● 1个 8位的段字节 ● 1个 16位包络表起始地址
这些参数存放在系统指定的特殊标志寄存器中
高速脉冲输出指令控制 PLC 从指定的输出 端输出高速脉冲信号。 1. 高速脉冲输出的几个概念 1) 高速脉冲输出的形式 ● 高速脉冲串输出 PTO :
( Pulse Train Output )
输出指定数量,占空比为50% 的方波脉冲串。
● 宽度可调脉冲输出 PWM :
( Pulse Width Modulation )
名称及功能描述
SMW70
SMW80
PWM的脉宽值,字型,范围0~65535,16位无符号 数
SMD72
SMD82
PTO的脉冲数,双字型, 范围:1~4294967295,32位无符号数
西门子S7-200系列PLC控制步进电机进行正反转的方法
精心整理1、主程序先正转,等到正转完了就中断,中断中接通个辅助触点(M0.X),当M.0X闭合,住程序中的反转开始运做。
这样子就OK了。
2、用PTO指令让Q0.0ORQ0.1高速脉冲,另一个点如Q0.2做方向信号,就可以控制正反转了,速度快慢就要控制输出脉冲周期了,周期越短速度越快,如果你速度很快的话请考虑缓慢加速,不然它是启动不了的,如果方向也变的快的话就要还做一个缓慢减速,不然它振动会蛮厉害,而且也会失步。
3、程NETWORK1//用于单段脉冲串操作的主程序(PTO)//首次扫描时,将映像寄存器位设为低//并调用子程序0LDSM0.1RQ0.01CALLSBR_0NETWORK1//子程序0开始LDSM0.0MOVB16#8DSMB67//设置控制字节://-选择PTO操作//-选择单段操作//-选择毫秒增加//-设置脉冲计数和周期数值//-启用PTO功能MOVW+500SMW68//将周期设为500毫秒。
MOVD+4SMD72//将脉冲计数设为4次脉冲。
ATCHINT_019//将中断例行程序0定义为//处理PTO完成中断的中断。
ENI//全局中断启用PLS0//激活PTO操作,PLS0=》Q0.0MOVB16#89SMB67//预载控制字节,用于随后的//周期改动。
NETWORK1//中断0开始//如果当前周期为500毫秒://将周期设为1000毫秒,并生成4次脉冲LDW=SMW68+500MOVW+1000SMW68PLS0CRETINETWORK2//如果当前周期为1000毫秒://将周期设为500毫秒,并生成4次脉冲LDW=SMW68+1000MOVW+500SMW68PLS0序注释艾驰商城是国内最专业的MRO工业品网购平台,正品现货、优势价格、迅捷配送,是一站式采购的工业品商城!具有10年工业用品电子商务领域研究,以强大的信息通道建设的优势,以及依精心整理托线下贸易交易市场在工业用品行业上游供应链的整合能力,为广大的用户提供了传感器、图尔克传感器、变频器、断路器、继电器、PLC、工控机、仪器仪表、气缸、五金工具、伺服电机、劳保用品等一系列自动化的工控产品。
s7-200高速脉冲计数器及PTO和PWM
word格式-可编辑-感谢下载支持高速脉冲计数器高速计数器专用输入高速计数器使用的输入HSC0I0.0,I0.1,0.2HSC1I0.6,I0.7,I1.0,I1.1HSC2I1.2,I1.3,I1.4,I1.5HSC3I0.1HSC4I0.3,I0.4,I0.5HSC5I0.4有些高速计数器和边缘中断的输入点赋值存在某些重叠。
同一个输入不能用于两种不同的功能;但是高速计数器当前模式未使用的任何输入均可用于其他目的。
例如,如果在模式2中使用HSCO,模式2使用I0.0和I0.2,则I0.1可用于边缘中断或用于HSC3。
如果所用的HSCO模式不使用输入I0.1,则该输入可用于HSC3或边缘中断。
与此相似,如果所选的HSCO模式不使用I0.2,则该输入可用于边缘中断;如果所选HSC4模式不使用I0.4,则该输入可用于HSC5。
请注意HSC0的所有模式均使用IO.O,HSC4的所有模式均使用I0.3,因此当使用这些计数器时,这些输入点绝不会用于其他用途。
四台计数器有三个控制位,用于配置复原和起始输入的激活状态并选择1x或4x计数模式(仅限正交计数器)。
这些控制位位于各自计数器的控制字节内,只在执行HDEF指令时才使用。
执行HDEF指令之前,必须将这些控制位设为所需的状态,否则计数器采用所选计数器模式的默认配置。
复原输入和起始输入的默认设置为现用水平高,正交计数速率为4x(或4乘以输入时钟频率)。
一旦执行了HDEF指令,就不能再改变计数器设置,除非首先将CPU设为STOP(停止)模式。
下表复位和启动输入的有效电平以及lx/4x控制位**缺省设置为:复位输入和启动输入高电平有效,正交计数率为四倍速(四倍输入时钟频率)。
制字节一旦定义了计数器和计数器模式,您就可以为计数器动态参数编程。
每台高速计数器均有一个控制字节,允许完成以下作业:*启用或禁止计数器*控制方向(仅限模式0、1和2)或初始化所有其他模式的计数方向*载入当前值通过执行HSC指令可激活控制字节以及相关当前值和预设值检查。
s7-200高速脉冲计数器及PTO和PWM
高速脉冲计数器高速计数器专用输入高速计数器使用的输入HSC0 I0.0, I0.1, 0.2HSC1 I0.6, I0.7, I1.0, I1.1HSC2 I1.2, I1.3, I1.4, I1.5HSC3 I0.1HSC4 I0.3, I0.4, I0.5HSC5 I0.4有些高速计数器和边缘中断的输入点赋值存在某些重叠。
同一个输入不能用于两种不同的功能;但是高速计数器当前模式未使用的任何输入均可用于其他目的。
例如,如果在模式2中使用HSC0,模式2使用I0.0和I0.2,则I0.1可用于边缘中断或用于HSC3。
如果所用的HSC0模式不使用输入I0.1,则该输入可用于HSC3或边缘中断。
与此相似,如果所选的HSC0模式不使用I0.2,则该输入可用于边缘中断;如果所选HSC4模式不使用I0.4,则该输入可用于HSC5。
请注意HSC0的所有模式均使用I0.0,HSC4的所有模式均使用I0.3,因此当使用这些计数器时,这些输入点四台计数器有三个控制位,用于配置复原和起始输入的激活状态并选择1x或4x计数模式(仅限正交计数器)。
这些控制位位于各自计数器的控制字节内,只在执行HDEF指令时才使用。
执行HDEF指令之前,必须将这些控制位设为所需的状态,否则计数器采用所选计数器模式的默认配置。
复原输入和起始输入的默认设置为现用水平高,正交计数速率为4x(或4乘以输入时钟频率)。
一旦执行了HDEF指令,就不能再改变计数器设置,除非首先将CPU设为STOP(停止)模式。
下表复位和启动输入的有效电平以及1x/4x控制位**缺省设置为:复位输入和启动输入高电平有效,正交计数率为四倍速(四倍输入时钟频率)。
定义控制字节一旦定义了计数器和计数器模式,您就可以为计数器动态参数编程。
每台高速计数器均有一个控制字节,允许完成以下作业:* 启用或禁止计数器* 控制方向(仅限模式0、1和2)或初始化所有其他模式的计数方向* 载入当前值每台高速计数器都有一个32位初始值和一个32位预设值,初始值和预设值均为带符号的整数值。
PTO指令
(1)设置向导
1.选择“向导”
2.选择“PT0/PW”
S7-200提供两个脉冲发生器分别为Q0.0和Q0.1
勾选此项可以在程序C-Pos中设定的32位寄存器中查看当前位置(发送的脉冲数)不设置时C-Pos为0
第一项:设置脉冲输出最高频率
第二项:设置脉冲输出最低频率(无法设置,由第三项决定)
第三项:设置电机启动频率
第一项:设置从电机启动频率到最高频率所用时间第二项:设置从最高频率到电机启动频率所用时间
添加新包络
相对位置模式分步设定频率和脉冲数
单速连续旋转模式为接通后以频率一直运行,直到停止信号接通包络名为Profile
该处设置的50个字节的地址被PTO指令占用,程序中不能使用
(2)程序编写
PTOx_CTRL为PTO指令初始化设置子程序(必须有)EN:使能端
I_STOP:立即停止端口
D_STOP: 减速停止端口
Done:PTO指令结束标志位
Error:错误信息储存位(8位)
C Pos:发送脉冲数的储存位(32位)
PTOx_RUN为PTO指令运行子程序START:PTO指令启动位
Profile:选择包络
Abort:停止当前包络并减速停止
C_Profile:当前执行的包络(8位)
C_Step:当前包络所运行的步(8位)
PTOx_LDPOS为PTO指令回原子程序
New_P:为回原后输出脉冲个数(C Pos)的值。
7.14.2 高速脉冲输出的控制字节、参数设置和状态位[共2页]
零起步轻松学西门子S7-200 PLC技术
220
电工技术系列
7.14 高速脉冲输出指令
S7-200 PLC内部有两个高速脉冲发生器,通过设置可让它们产生占空比为50%、周期可调的方波脉冲(即PTO脉冲),或者产生占空比及周期均可调节的脉宽调制脉冲(即PWM脉冲)。
占空比是指高电平时间与周期时间的比值。
PTO脉冲和PWM脉冲如图7-52所示。
图7-52 PTO脉冲和PWM脉冲说明
在使用脉冲发生器功能时,其产生的脉冲从Q0.0和Q0.1端子输出。
当指定一个发生器输出端为Q0.0时,另一个发生器的输出端自动为Q0.1;若不使用脉冲发生器,这两个端子恢复普通输出端子功能。
要使用高速脉冲发生器功能,PLC应选择晶体管输出型,以满足高速输出要求。
7.14.1 指令说明
高速脉冲输出指令说明如下:
指令名称梯形图功能说明
操作数
Q0.X
高速脉冲输
出指令(PLS)
根据相关特殊存储器(SM)的
控制和参数设置要求,启动高速脉
冲发生器从Q0.X指定的端子输出
相应的PTO或PWM脉冲
常数
0:Q0.0
1:Q0.1
(字型)7.14.2 高速脉冲输出的控制字节、参数设置和状态位
要让高速脉冲发生器产生符合要求的脉冲,须对其进行有关控制及参数设置,另外,通过读取其工作状态可触发需要的操作。
西门子200脉冲输出及PTO设置
一、S7-200PLC高速脉冲输出功能???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毫秒的时间工作。
西门子PTO
西门子PTO
7.2.4 S7-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的这三种寄存器如表7-1,表7-2和表7-3所示。
表7-1 Q0.0的状态位控制寄存器。
S7200脉冲输出的问题
S7-200 PLC 脉冲输出MAP 库文件的使用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。
图1200系列的PLC的最大脉冲输出频率除CPU224XP 以外均为20kHz。
CPU224XP可达100kHz。
如表1所示:表12 MAP库的应用2.1 MAP库的基本描述现在,200系列PLC 本体PTO 提供了应用库MAP SERV Q0.0 和MAP SERV Q0.1,分别用于Q0.0 和Q0.1 的脉冲串输出。
如图2所示:一致。
此时就需要对“Tune_Factor” 进行校正。
校正因子“Tune_Factor”“Tune_Factor” 的最优值取决于最大、最小和目标脉冲频率以及最大减速时间。
如图15:图15如图所示,运动的目标位置是B,算法会自动计算出减速起始点,当计算与实际不符时,当轴已经运动到B点时,尚未到达最低速度,此时若位”Disable_Auto_Stop” = 0,则轴运动到B 点即停止运动,若位”Disable_Auto_Stop” = 1,则轴会继续运动直至到达最低速度。
S7-200脉冲输出指令做电机正反转控制
S7-200脉冲输出指令做电机正反转控制通过上次的学习,我们应该已经知道可以通过修改SM存储区(包括控制字节),然后执行PLS指令来改变PTO或PWM波形。
除了前面学习的使用步骤和一些使用要点,我们还要知道的就是PTO状态字节的空闲位(SM66.7或SM76.7),它标志着脉冲输出完成。
另外,在脉冲输出完成时,我们还可以利用脉冲发送完成中断,使程序跳转到中断服务程序进行执行。
那么就补充这几点内容。
下面我们做利用一个脉冲输出指令做电机正反转控制的例子。
主程序:高速计数器子程序:高速脉冲输出子程序:中断程序:我们首先先做一个高速计数子程序和脉冲输出子程序,在高速计数器子程序中,首先是定义控制字节,送16#F8到SMB37,定义为加计数更新当前值,传送0到SMD38写入初始值,定义的是高速计数器HSC0和HSC模式12,然后激活高速计数器,还做了高速计数器中断,PTO0完成中断的事件为中断事件号19,我们建立中断程序0和中断事件19的中断连接,并全局允许中断。
而在高速脉冲输出子程序里面,我们定义一下接口,定义周期io_time为LW0,为IN类型的,定义脉冲数io_NO为LD2,也是为IN类型的,然后写子程序。
首先传送16#85到SMB67中定义控制字节,这里选择的是PTO模式、单段、1us/周期、装入周期和脉冲数的情况(控制字节的定义可以参考PTO/PWM控制字节表),并传送LW0到SMW68中写入周期值,传送LD2到SMD72中写入脉冲数,最后执行PLS指令。
那么这样是做了一个带功能参数的子程序,之后在主程序中可以对这个带功能参数的子程序进行调用。
然后我们编写主程序,在主程序的网络一中,首先用SM0.1首次扫描驱动高速计数器子程序进行高速计数初始化,同时对Q0.0的过程映像区清零,同时也对高速脉冲输出进行初始化。
在网络中,我们用I0.2的上升沿来驱动立即置位指令,立即置位Q0.2,同时调用高速脉冲输出子程序,周期设为100us,脉冲为10000个,同时还要传送16#F8到SMB37并执行HSC指令进行加计数并更新当前值。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
一、 S7-200 PLC 高速脉冲输出功能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 个值设定时要以毫秒为单位。
注意:电机的加速和失速时间要过测试来确定。
开始时,您应输入一个较大的值。
逐渐减少这个时间值直至电机开始失速,从而优化您应用中的这些设置。
⑶移动包络一个包络是一个预先定义的移动描述,它包括一个或多个速度,影响着从起点到终点的移动。
一个包络由多段组成,每段包含一个达到目标速度的加速/减速过程和以目标速度匀速运行的一串固定数量的脉冲。
位控向导提供移动包络定义界面,在这里,您可以为您的应用程序定义每一个移动包络。
PTO 支持最大100 个包络。
定义一个包络,包括如下几点:①选择操作模式;②为包络的各步定义指标。
③为包络定义一个符号名。
⑴选择包络的操作模式:PTO 支持相对位置和单一速度的续转动,如图3所示,相对位置模式指的是运动的终点位置是从起点侧开始计算的脉冲数量。
单速续转动则不需要提供终点位置,PTO 一直持续输出脉冲,直至有其他命令发出,例如到达原点要求停发脉冲。
图 3 一个包络的操作模式⑵包络中的步一个步是工件运动的一个固定距离,包括加速和减速时间的距离。
PTO 每一包络最大允许29 个步。
每一步包括目标速度和结束位置或脉冲数目等几个指标。
图 4 所示为一步、两步、三步和四步包络。
注意一步包络只有一个常速段,两步包络有两个常速段,依次类推。
步的数目与包络中常速段的数目一致。
图4 包络的步数示意7.2.5 使用位控向导编程STEP7 V4.0 软件的位控向导能自动处理PTO 脉冲的单段管线和多段管线、脉宽调制、SM 位置配置和创建包络表。
本节将给出一个在YL-335A 上实现的简单工作任务例子,阐述使用位控向导编程的方法和步骤。
表1 是YL-335A 上实现步进电机运行所需的运动包络。
表 1 步进电机运行的运动包络1、使用位控向导编程的步骤如下:1)为S7--200 PLC选择选项组态置PTO/PWM操作。
在STEP7 V4.0软件命令菜单中选择工具→位置控制向导并选择配置S7-200PLC内置PTO/PWM操作,如图5所示。
图5 位控向导启动界面2)单击“下一步”选择“QO.0”,再单击“下一步”选择“线性脉冲输出 PTO)”。
图5 选择PTO或PWM界面3)单击“下一步”后,在对应的编辑框中输入MAX_SPEED 和SS_SPEED 速度值。
输入最高电机速度“90000”,把电机启动/停止速度设定为“600”。
这时,如果单击MIN_SPEED值对应的灰色框,可以发现,MIN_SPEED值改为600,注意:MIN_SPEED 值由计算得出。
用户不能在此域中输入其他数值。
图64)单击“下一步”填写电机加速时间“1500”和电机减速时间“200”图7 设定加速和减速时间5)接下来一步是配置运动包络界面,见图8。
图8 配置运动包络界面该界面要求设定操作模式、1个步的目标速度、结束位置等步的指标,以及定义这一包络的符号名。
(从第0个包络第0步开始)在操作模式选项中选择相对位置控制,填写包络“0”中数据目标速度“60000”,结束位置“85600”,点击“绘制包络”,如图9所示,注意,这个包络只有1步。
包络的符号名按默认定义。
这样,第0个包络的设置,即从供料站→加工站的运动包络设置就完成了。
现在可以设置下一个包络。
图9 设置第0个包络点击“新包络”,按上述方法将下表中上3个位置数据输入包络中去。
表中最后一行低速回零,是单速连续运行模式,选择这种操作模式后,在所出现的界面中(见图10),写入目标速度“20000”。
界面中还有一个包络停止操作选项,是当停止信号输入时再向运动方向按设定的脉冲数走完停止,在本系统不使用。
6)运动包络编写完成单击“确认”,向导会要求为运动包络指定V存储区地址(建议地址为VB75~VB300),默认这一建议,单击“下一步”出现图11,单击“完成”。
图11 生成项目组件提示2、项目组件运动包络组态完成后,向导会为所选的配置生成三个项目组件(子程序),分别是:PTOx_RUN子程序(运行包络),PTOx_CTRL子程序(控制)和PTOx_MAN子程序(手动模式)子程序。
一个由向导产生的子程序就可以在程序中调用如图12所示。
图12 三个项目组件它们的功能分述如下:⑴PTOx_RUN子程序(运行包络):命令 PLC 执行存储于配置/包络表的特定包络中的运动操作。
运行这一子程序的梯形图如图13所示。
图13 运行PTOx_RUN子程序EN位:启用此子程序的使能位。
在“完成”位发出子程序执行已经完成的信号前,请确定EN位保持开启。
START参数:包络的执行的启动信号。
对于在START参数已开启且PTO当前不活动时的每次扫描,此子程序会激活PTO。
为了确保仅发送一个命令,请使用上升缘以脉冲方式开启START参数。
Profile(包络)参数:包含为此运动包络指定的编号或符号名。
Abort(终止)参数命令,开启时位控模块停止当前包络并减速至电机停止。
Done(完成)参数:当模块完成本子程序时,此参数 ON。
Error(错误)参数:包含本子程序的结果。
C_Profile参数:包含位控模块当前执行的包络。
C_Step参数:包含目前正在执行的包络步骤。
⑵ PTOx_CTRL子程序:(控制)启用和初始化与步进电机或伺服电机合用的PTO 输出。
请在用户程序中只使用一次,并且请确定在每次扫描时得到执行。
即始终使用SM0.0作为EN的输入,如图14所示。
图14 运行PTOx_CTRL 子程序I_STOP(立即停止)输入:开关量输入。
当此输入为低时,PTO功能会正常工作。
当此输入变为高时,PTO立即终止脉冲的发出。
D_STOP(减速停止)输入:开关量输入。
当此输入为低时,PTO功能会正常工作。
当此输入变为高时,PTO会产生将电机减速至停止的脉冲串。
“完成”输出:开关量输出。
当“完成”位被设置为高时,它表明上一个指令也已执行。
Error(错误)参数:包含本子程序的结果。
当“完成”位为高时,错误字节会报告无错误或有错误代码的正常完成。
如果PTO向导的HSC计数器功能已启用,C_Pos 参数包含用脉冲数目表示的模块;否则此数值始终为零。
⑶ PTOx_MAN子程序(手动模式):将PTO输出置于手动模式。
这允许电机启动、停止和按不同的速度运行。
当PTOx_MAN子程序已启用时,任何其他PTO子程序都无法执行。
运行这一子程序的梯形图如图15所示。
图158 运行PTOx_MAN子程序RUN(运行/停止)参数:命令PTO加速至指定速度(Speed(速度)参数)。
您可以在电机运行中更改Speed参数的数值。
停用RUN参数命令PTO减速至电机停止。
当RUN已启用时,Speed参数确定着速度。
速度是一个用每秒脉冲数计算的DINT(双整数)值。
您可以在电机运行中更改此参数。
Error(错误)参数包含本子程序的结果。
如果PTO向导的HSC计数器功能已启用,C_Pos参数包含用脉冲数目表示的模块;否则此数值始终为零。