基于S7-200的步进电机控制器设计

发布时间:2010-4-26 15:35    发布者:贾延安
关键词: 步进电机 , 控制器 , 设计
引言

步进电机是一种将电脉冲转化为角位移的执行机构,主要优点是定位精度高、无位置累积误差。并且与闭环控制系统相比,其特有的开环运行机制能够降低系统的成本、提高系统的可靠性,因此被广泛应用于对精度要求较高的运动控制系统中,如机器人、打印机、软盘驱动器、绘图仪和机械阀门控制器等。目前,能够对步进电机进行控制的主要有由分散器件组成的环形脉冲分配器、软件环形脉冲分配器和专用集成芯片环形脉冲分配器等。分散器件组成的环形脉冲分配器体积比较大、可靠性较低;软件环形分配器运行速度低;专用集成芯片环形脉冲分配器集成度高、可靠性好,但适应性差、开发周期长、费用较高。

德国西门子公司的S7-200[1] 是一种小型的可编程序控制器,其功能强大,无论在独立运行中还是相连成网络,皆能实现复杂控制功能,具有极高的性价比。本文利用S7-200作为核心控制器件,凭借其产生的脉冲和实时定位系统来实现步进电机的控制。该控制器不但可以改善步进电机在低速运行时振动大、噪声大的缺点,而且可以克服步进电机在自然振荡频率附近运行时易产生共振、以及输出转矩随着步进电机的转速升高而下降等缺点,从而能够显著地提高步进电机的性能,拓宽步进电机的应用领域。

步进电机控制

步进电机是数字控制电机,它区别于其他类型的控制电机的最大特点是:通过输入脉冲信号来进行控制,即电机的总转动角度由输入脉冲数决定,而电机的转速由脉冲信号频率决定[2]。当步进驱动器接收到一个脉冲信号,便驱动步进电机按设定的方向转动一个固定的角度(称为“步距角”)。其旋转是以固定的角度一步一步运行的,可以通过控制脉冲个数来控制角位移量,从而达到准确定位的目的;同时可以通过控制脉冲频率来控制电机转动的速度和加速度,从而达到调速的目的。步进电机可分为反应式步进电机(VR)、永磁式步进电机(PM)和混合式步进电机(HB)[3]。

步进电机的驱动电路根据控制信号进行工作,控制信号由相应的控制器来产生,控制换相顺序和通电换相。这一过程称为“脉冲分配”。例如:四相步进电机的单四拍工作方式,其各相通电顺序为A-B-C-D。通电控制脉冲必须严格按照这一顺序分别控制A、B、C、D相的通断,控制步进电机的转向。如果给定工作方式正序换相通电,则步进电机正转;如果按反序换相通电,则电机就反转。步进电机接收到一个控制脉冲,便转一步;再接收到一个脉冲,再转一步。两个脉冲的间隔越短,步进电机转得越快。调整控制器发出的脉冲频率,就可以对步进电机进行调速[4]。

控制系统完成的功能

步进电机的平稳起动、加速、减速和平稳停止

这是控制系统首先要实现的功能[7]。S7-200中,支持高速输出口PTO0/PTO1的线性加/减速,通过MicroWin向导程序,非常容易实现。实际上,以目前的情况,线性加/减速只能使用向导生成的程序,西门子没有公开独立可使用的指令。

定位控制功能

定位控制、调节和控制操作之间存在一些区别。步进电机不需要连续的位置控制,而在控制操作中得到广泛应用[9]。借助于CPU214所产生的集成脉冲输出和定位指令系统,确定相对一根轴的固定参考点,借助于一个输入字节的对偶码(Dual coding)给CPU指定定位角度,在程序中根据该码计算出所需的定位步数,再由CPU输出相关个数的控制脉冲,通过步进电机来实现相对的定位控制。

额定电流可调等角度恒力矩细分驱动方法的功能实现

步进电机的驱动方式有多种,如恒电压、恒电流等多种形式。而这些方式都存在一定的缺陷,特别是在低速运行时的振动大、噪声大和在步进电机自然振荡频率附近运行时易产生共振,且输出转矩随着步进电机的转速升高而下降等缺点。为了改变上述缺陷,本文采用了额定电流可调等角度恒力矩细分驱动方案。该方案最主要的优点是:步距角变小,分辨率高,提高了电机的定位精度、启动性能和高频输出转矩,减弱或消除了步进电机的低频振动,降低了步进电机在共振区工作的几率。一般细分驱动只改变相应绕组中电流的一部分,电动机的合成磁势也只是旋转步距角的一部分,绕组电流不是一个方波而是阶梯波,额定电流是台阶式的投入或切除,如图1所示。

1.jpg

其合成的矢量幅值是不断变化的,输出力矩也跟着不断变化,从而会引起滞后角的不断变化。当细分数很大、微步距角非常小时,滞后角变化的差值已大于所要求细分的微步距角,使得细分失去了意义。据此分析,采用建立数学关系同时改变两相电流,即Ia和Ib以某一数学关系同时变化,保证变化过程中合成矢量幅值始终不变。建立一种“额定电流可调的等角度恒力矩细分”驱动方法,以消除力距不断变化引起滞后角的问题。这种合成矢量幅值保持不变的数学模型为:当 Ia=Imcosx,Ib=Imsinx时(式中Im为电流额定值,Ia、Ib为实际的相电流,x由细分数决定),其合成矢量始终为圆的半径,即恒力距; 等角度是指合成的力臂每次旋转的角度一样;额定电流可调是指可满足各种系列电机的要求;细分为对额定电流的细分(如图2a和2b所示)。

2.jpg

控制器设计

通常情况下,步进电机驱动系统由控制电路、驱动电路和步进电机三部分构成,如图3a所示。图3b为步进电机驱动控制电路的硬件连接框图。

3.jpg

图中I1.0、I1.1和I1.5为输入控制信号端;Q0.0和Q0.1为两路高速脉冲,分别负责驱动电机开启定位和停止控制。

控制电路

控制电路用于产生脉冲,以控制电机的速度和转向[5]。本设计中采用SIMATIC S7-200 CPU-214 PLC[6]作为控制核心部件。S7-200PLC 的CPU214有两个脉冲输出,可以用来产生控制步进电机驱动器的脉冲,实现控制要求。S7-200CPU 含有高速脉冲输出功能,CPU脉冲输出频率达20KHz~100KHz,可以用来驱动步进电机或伺服电机,并由电机直接驱动负载主轴旋转,完成控制工艺所要求的动作。

驱动电路

驱动电路由脉冲信号分配和功率细分驱动电路组成。根据控制器输入的脉冲和方向信号,为步进电机各绕组提供正确的通电顺序,以及电机需要的高电压、大电流;同时提供各种保护措施,如过流、过热等保护[7]。功率驱动器将控制脉冲按照设定的模式转换成步进电机线圈的电流,产生旋转磁场,使得转子只能按固定的步数来改变它的位置[6]。连续的脉冲序列产生与其对应同频率的步序列。如果控制频率足够高,步进电机的转动可看作连续的转动。

步进电机

控制信号经驱动器放大后驱动步进电机,带动负载[8]。用S7-200PLC Q0.0和Q0.1的输出脉冲触发步进电机驱动器。当输入端I1.0发出“START”信号后,控制器将输出固定数目的方波脉冲,使步进电机按对应的步数转动;当输入端I1.1 发出“STOP”信号后,步进电机停止转动;接在输入端I1.5的方向开关位置决定电机正转或反转。本设计采用带有标准功率驱动器和相关连接电缆的步进电机。

各组成模块的选择和功能

由于“额定电流可调的等角度恒力矩细分”驱动方法的实质是恒流控制,其关键是电流的精确控制,本设计在器件选择是同时兼顾以下各个条件:D/A 转换器输出的电流值与期望值相当接近,而且转换速度要快;SPI口通信,频率高达50 MHz,建立时间快,同时单电压供电,连接简单;检测到的电流可正确地反映此时的相电流,采用的检测方法为霍尔传感器,该方法检测准确、干扰小、连接也较简单;比较器分辨率高、转换速度快;控制功率管开关的逻辑电路有很高的实时性,保证相电流在设定电流上下做很小的波动,避免了引起浪涌而干扰控制电路。

S7-200根据收到的脉冲信号进行脉冲信号分配,确定各相通电顺序,并与电流检测模块里的D触发器相连。同时根据用户设定的电流值和细分数通过SPI口与A/D转换器通信,得到设定的电流值(实际上是电流对应的电压值)。

A/D转换器输出的值为期望的电流对应的电压值,它必须与从功率模块检测得到的电流对应的电压值进行比较,并把比较结果与电流检测模块里面的D 触发器相连。

电流检测模块主要由D触发器进行逻辑控制。该模块与电流、细分设定的拨码开关相连,把得到的值通过SPI口传给单片机。以D触发器为核心的控制逻辑,根据单片机的各相通电顺序和比较器的比较结果确定各功率管的开关。功率驱动模块直接与电机相连,驱动电机。可采用8个MOS管IRF740构成2个 H桥双极型驱动电路。

软件设计

在程序的编制中,为使步进电机换向时平滑过渡,避免产生错步,应在每一步中设置标志位[3]。在正转时,不仅给正转标志位赋值,也同时给反转标志位赋值;在反转时也需做如此处理。这样,当步进电机换向时,以上一次的位置作为起点反向运动,避免了电机换向时产生错步[10]。步进电机控制系统的软件主要由主控程序、细分驱动程序、键处理程序、显示数据处理及显示驱动程序、通信监控程序等部分组成。细分驱动主控制程序控制整个程序的流程,主要完成程序的初始化、参考点的设置和取消、定位控制和电机的停止/启动等。初始化。在程序的第一个扫描周期,初始化重要参数。选择旋转方向和解除联锁。

设置和取消参考点。如果还没有确定参考点,那么参考点曲线应从按“START”按钮(I1.0)开始。CPU有可能输出最大数量的控制脉冲。在所需的参考点,按“设置/取消参考点”开关后,首先调用停止电机的子程序。然后,再把新的操作模式“定位控制激活”显示在输出端Q1.0。如果开关已激活,而且“定位控制”也被激活,则切换到“参考点曲线”,并取消“定位控制激活”(Q1.0=0)。此外,控制还为输出最大数量的控制脉冲做准备。当再次激活开关,便在两个模式之间切换。如果此信号产生的同时电机在运转,那么电机就自动停止。

定位控制。如果确定了一个参考点,而且没有联锁,那么就执行相对的定位控制,控制器从输入字节读出对偶码方式的定位角度。与此角度有关的脉冲数,根据下面的公式计算:N=f/360o×S(式中N表示控制脉冲数,f表示旋转角度,S表示每转所需的步数)。

停止电机。按“STOP”(停止)按扭(I1.1),控制端Q0.0输出结束脉冲,可在任何时候停止电机。

结语

采用本方案设计步进电机驱动系统,即基于S7-200采用额定电流可调等角度恒力矩细分的方法设计步进电机控制器,在驱动二相或四相混合式步进电机时运动平稳、运行速度快、噪音低、控制精度高,而且可选择整步、半步驱动。经试验,采用额定电流可调的等角度恒力矩细分型的驱动器,克服了传统步进电机低速振动大和噪声大的缺点,电机在较大速度范围内转矩保持恒定,提高了控制精度,减小了发生共振的几率,具有很好的稳定性、可靠性和通用性,且结构简单、性价比高。此外,在驱动电路中增加光电耦合电路,可进一步提高硬件系统的抗干扰能力,避免电机对数字电路的影响。

参考文献:

  [1] 杨后川,张学民, 等.SIMATIC S7-200可编程序控制器原理与应用[M].北京:北京航空航天大学出版社,2008
  [2] 史敬灼,徐殿国, 等.混合式步进电动机伺服系统研究[J].电工技术学报.2006(4): 72-78
  [3] 吴红星.电机驱动与控制专用集成电路及应用[M].北京:中国电力出版社,2006
  [4] 张柏林,陶波.步进电机在红外探测伺服系统中的应用[J].现代雷达, 2009.07: 78-80
  [5] 刘洪涛,黄海.PLC应用开发从基础到实践[M].北京:电子工业出版社,2007
  [6] SIEMENS.SIMATIC S7-200 可编程控制器系统手册[Z].德国:西门子公司,2005
  [7] 王永华.现代电气及可编程控制技术[M].北京:北京航空航天大学出版社,2002
  [8] 王淑英,许翏.电气控制与PLC应用[M].北京:北京机械工业出版社,2005
  [9] Rusu C, Birou I. Model based design controller for the stepper motor[C]. Cluj-Napoca , IEEE International Conference on Automation, Quality and Testing, Robotics. 2008. Volume 2,Page(s): 175-179

作者:吴欣慧 秦长海 石磊 安阳工学院电子信息与电气工程系   时间:2010-04-19
本文地址:https://www.eechina.com/thread-10821-1-1.html     【打印本页】

本站部分文章为转载或网友发布,目的在于传递和分享信息,并不代表本网赞同其观点和对其真实性负责;文章版权归原作者及原出处所有,如涉及作品内容、版权和其它问题,我们将根据著作权人的要求,第一时间更正或删除。
您需要登录后才可以发表评论 登录 | 立即注册

厂商推荐

相关在线工具

相关视频

关于我们  -  服务条款  -  使用指南  -  站点地图  -  友情链接  -  联系我们
电子工程网 © 版权所有   京ICP备16069177号 | 京公网安备11010502021702
快速回复 返回顶部 返回列表