APP下载

基于PLC的步进电机多段速控制方法研究

2017-10-23

福建质量管理 2017年18期
关键词:脉冲数角位移子程序

(山东科技大学机械电子工程学院 山东 青岛 266590)

基于PLC的步进电机多段速控制方法研究

于兰浩董汉政王凤娇王贺

(山东科技大学机械电子工程学院山东青岛266590)

一、引言

在现在自动化生产线中,经常需要对某一器件的位置进行控制,比如上下料机械手的来回移动,我们需要让机械手在指定位置准确停止。在开环控制中,常用的运动执行部件是步进电机,它是一种将电脉冲转换为角位移的执行机构。而运动控制装置一般为PLC,因为PLC可以输出频率非常高的脉冲串,而这是一般单片机所不能的。故选用PLC加步进电机可以实现非常精确的位置控制,在一般工业场合可以满足需要。

二、步进电机(stepping motor)简介

步进电机是一种运动执行部件,它可以将电脉冲信号转换为角位移,其特点是没有积累误差,因而广泛用于各种开环控制。当步进电机接受到一个脉冲信号,它就驱动步进电机按照设定的方向旋转一个固定的角度,因而我们可以通过发送脉冲的个数来控制角位移量,从而达到准确定位的目的。同时可以控制脉冲频率来控制电动机的速度和加速度,从而达到调速目的。

步进电机并不是直接接到PLC上的,而是要有一个电子装置驱动,这个装置称为步进电机驱动器,它把PLC发出的信号进行放大以驱动步进电机。因此典型的步进电机驱动系统由三部分组成:控制器,由单片机或者PLC实现;驱动器;步进电机。

三、PLC控制程序设计

本文我们选用的是西门子s7-200PLC,控制原理是相通的,选用三菱、ABB的PLC同样可以达到控制目的。S7-200晶体管输出型PLC的Q0.0和Q0.1口可以输出高速脉冲串,频率达到20KHz,并不受扫描频率的影响。Q0.0,Q0.1均可以输出PTO或者PWM脉冲,PTO脉冲可以用来输出周期可调、占空比固定为50%的脉冲。

脉冲输出指令格式如图1所示,Q0X端指定Q0.0和Q0.1哪个端口输出脉冲串,并使其普通输出功能失效。相关的特殊标志位寄存器表1:

图1

Q0.0Q0.1功能说明SMB67SMB77控制PTO/PWM脉冲输出基本功能SMB68SMB78控制周期值SMB72SMB82控制输出脉冲数SMB168SMB178多管段PTO包络表起始字节地址SMB67.0SMB77.0PTO/PWM刷新周期值:0=不刷新1=刷新SMB67.1SMB77.1PWM刷新脉冲宽度值:0=不刷新1=刷新SMB67.2SMB77.2PTO脉冲刷新计数值:0=不刷新1=刷新SMB67.3SMB77.3时基选择:0=1us1=1msSMB67.4SMB77.4PWM更新方法:0=异步更新1=同步更新SMB67.5SMB77.5PTO操作:0=单段操作1=多段操作SMB67.6SMB77.6PTO/PWM模式选择0=PTO1=PWMSMB67.7SMB77.7PTO/PWM允许:0=禁止1=允许

要实现N段速度的控制,就要在SMB168或者SMB178中指定包络表起始字节地址,然后根据速度要求设置包络表的相关参数。为简练起见,以1段速为例说明包络结构如表2:

表2 包络表结构

图2

要实现如图2的加速,匀速,减速过程:起始和终止的脉冲频率为2Khz,最大脉冲频率为10KHz,加速段约200个脉冲,匀速段约3600个脉冲,减速段约200个脉冲。需要计算出表2中各个字节的值。以第一段为例,初始周期(1/频率)为500us,脉冲增量为:(结束周期-初始周期)/脉冲数,即为-2us,脉冲数为200个。然后根据表1表2内容即可设置相关寄存器内容,编写程序。采用STL语句表编程,主程序,子程序如下:

主程序:

LD SM0.1

R Q0.0,1

CALL SBR_0:SBR0

子程序:

LD SM0.0 MOVD 200,VD205

MOVB 16#A0,SMB67 MOVW 100,VW209

MOVW 200,VW168 MOVW 0,VW211

PLS 0 MOVD 3600,VD213

MOVB 3,VB200 MOVW 100,VW217

MOVW 500,VW201 MOVW 2,VW219

MOVW -2,VW203 MOVD 200,VD221

四、结束语

经过实验,该方法可以平稳实现步进电机三段速控制,根据该原理可以实现其它多段速控制,在一般工业场合都能满足要求。若要实现闭环控制,可以在电机轴装编码器,进行相应调整。

于兰浩(1993-)男,山东科技大学机械电子工程学院,在读硕士研究生。

猜你喜欢

脉冲数角位移子程序
一种压电驱动的角位移微动平台设计与优化
发动机扭转减振皮带轮的匹配试验研究
某型组合导航系统故障分析及预防
高精度电子体温计设计与实现
检定电能表的圈数设定问题探讨
基于离散小波变换方法的信号去噪应用研究
C空间中肢体参数的测量方法
浅谈子程序在数控车编程中的应用
子程序在数控车加工槽中的应用探索
西门子840D系统JOG模式下PLC调用并执行NC程序