基于瑞萨MCU的步进电机转速控制设计
2014-08-16牛国锋王启元常晋义朱苗苗
牛国锋,王启元,常晋义,朱苗苗
(常熟理工学院 计算机科学与工程学院,江苏 常熟 215500)
为响应中国“低碳社会”建设大潮,倡导建设绿色智能社会的核心,研究瑞萨微控制器在全球领先的“绿色环保MCU”及其扩展功能具有重要价值和意义。本设计采用瑞萨78KOR/KG3作为主控芯片,分别使用东芝TD62083AF和TA7774FG作为单极和双极步进电机驱动器,利用软件编程,能够设置多个占空比不同的脉冲,使得电机启动、停止、正反转,转速可以逐步增大或减小,且应答性良好。在微控制器的控制下开关控制简单易操作,稳定性也极佳。由于步进电机工作原理易学易用,成本较低,电机和驱动器不易损坏,非常适合于微控制器和单片机控制,因此,近年来在各行各业的控制设备中获得了越来越广泛的应用。
步进电机是数字控制电机,将脉冲信号转换成角位移,电机的转速、停止的位置取决于脉冲信号的频率和脉冲数,而不受负载变化的影响,具有快速起动、停止和正反转的应答性良好,控制容易等优点。在非超载状态下,根据上述线性关系,再加上步进电机只有周期性误差而无累积误差,因此步进电机适用于单片机控制。步进电机通过输入脉冲信号进行控制,即电机的总转动角度由输入脉冲总数决定,而电机的转速由脉冲信号频率决定。步进电机的驱动电路是根据单片机产生的控制信号进行工作的,因此,单片机通过向步进电机驱动电路发送控制信号就能实现对步进电机的控制。
1 系统硬件设计
1.1 系统结构及电路设计
步进电机控制系统主要由微控制器、键盘、LED、驱动马达和PC等5个模块组成[3]。其中PC模块是软件控制部分,该控制系统可实现的功能主要为:(1)通过键盘启动/暂停步进电机、设置步进电机的转速和改变步进电机的转向;(2)通过LED显示灯显示步进的转速和转向等工作状态;(3)实现三相或四相步进电机的控制;(4)通过PC软件实现对步进电机的控制(启停、转速和转向等)。
目前,随着人们环保意识的日益提高,消费者越来越关注微控制器系统的节能性。为了扩大在节能家电和电池供电系统等市场领域的应用,瑞萨电子在新的MCU产品中加入了节能理念,推出高标准16位低功耗闪存微控制器产品78K0R系列[2],其具有低耗电量及高效能等特点,因此其支持尺寸更小、功耗更低的系统且降低了系统总功耗。
本系统以瑞萨78KOR/KG3 uPD78F1166/A微控制器为控制核心,通过按键来控制电机转速和方向,同时通过LED显示灯实时显示电机工作状态。按照MCU I/O板上的接口功能,系统选用P7端口低5位作为按键控制口,P5端口高4位经反相后连接步进电机驱动芯片,低4位用作电机状态指示灯。整个系统硬件结构如图1所示。
图1 系统硬件结构示意图
1.2 驱动电路设计
步进式电动机是由4个相互垂直安排的线圈组成的,这4个线圈围绕着磁化转动轴,在线圈通电后会产生激励,这时将会吸引或者是排斥磁化轴,为了转动步进电动机,线圈将会以引起它在一个方向或者另一个方向转动的模式激励。单极性(Unipolar)和双极性(Bipolar)是步进电机最常采用的两种驱动架构。本设计分别采用技术含量较高的高精密度集成电路东芝TD6238AFG和TA7774FG作为单极和双极马达驱动器,同时可实现单级和双极驱动马达控制。其驱动电路如图2和图3所示。
图2 单极驱动电路图
图3 双极驱动电路图
1.3 励磁方式
步进电机的励磁方式[4]可分为全步励磁及半步励磁。其中全步励磁又有1相励磁及2相励磁之分,而半步励磁又称 1-2相励磁。步进电机的控制等效电路,适 应 控 制 A、B、、的 励磁信号,即可控制步进电机的转动。每输出一个脉冲信号,步进电机只走一步。因此,依序不断送出脉冲信号,即可使步进电动机连续转动。励磁方式及电流波形图如图4所示。
图4 励磁方式及电流波形图
(1)1 相励磁法
在每一瞬间只有一个线圈导通。消耗电力小,精确度良好,但转矩小,振动较大,每送出一个励磁信号可走相同弧度。以1相励磁法控制步进电动机正转;若励磁信号反向传送,则步进电动机反转。
(2)2 相励磁法
在每一瞬间会有两个线圈同时导通。因其转矩大,振动小,故为目前使用最多的励磁方式,每送出一个励磁信号可走相同弧度。
以2相励磁方式控制步进电动机正转;若励磁信号反向传送,则步进电动机反转。
(3)1-2 相励磁法
1-2相励磁法为1相与2相轮流交替导通。因分辨率提高,且运转平滑,每送出一个励磁信号可走更小的弧度。以1-2相励磁法控制步进电动机正转;若励磁信号反向传送,则步进电动机反转。这种励磁方式是一种更注重细节的控制实现方式,故广泛被采用。
单极驱动步进电机可用1相励磁、2相励磁和1-2相励磁3种方法实现,双极驱动步进电机只能用2相励磁方法实现。
2 软件设计
软件采用瑞萨电子的新集成型开发环境CubeSuite,其为采用8位到32位架构的微控制器提供了统一的支持[5]。在开发适用于MCU的软件时,该产品将编译器和与仿真器一起使用的调试器等所有的工具连接起来,使其可以在同一个主机上,完成所有的设计、编码、评估、调试和验证任务等功能。
2.1 建立工程及端子设定
CubeSuite针对每个要实现的目标系统建立一个工程,在该工程下实现软硬件对接和完成相应功能编码。首先打开CubeSuite软件运行环境,点击“开始”菜单,在新建工程界面选择点击“建立新工程”,在“工程作成”界面里按照系统使用的硬件型号依次选择MCU系列为78KOR,MCU型号为 uPD78F1166/A,保存的工程名以不带汉字的日文、拼音字母和数字等标识,最后选择保存的路径,然后点击“作成”,此系统工程建立。工程建立后,该工程打开在当前窗口,分为左右两栏,左栏为树形结构硬件及接口选择和编码模块选择,右栏为接口详细设置和编程主窗口。
首先在左栏的端子配置表中,对照硬件设计中所用到的端子号进行端子名称和输入输出配置。本设计按照所需的功能要求端口输入输出功能分别为:P50~P53端口对应 LED指示灯的 LED0~LED3输出端口;P54~P57端口连接步进电机驱动芯片输入控制;P70~P74端口为KEY按键输入控制端口。端口分配并设置完成后执行端子生成,各个端子的输入输出就明确地显示在端子配置图中。
2.2 编码设计工具
编码设计工具是从编辑软件进入接口以后实现人机对话,对硬件的功能进行软设置,以达到功能启用,同时也可系统生成基础编码。在编码设计工具中分别对系统设置、外部接口、A/D转换器、计时器进行详细设定,其他的外部总线、中断、即时计数器设置、串行接口、D/A转换器、蜂鸣器、Clock、DMA控制器等不需要设置的选择不使用,进行关闭,各个编码工具相应的设定如下。
(1)系统设置中选择电源电压为2.7 V≤VDD≤5.5 V,高速内置振荡时钟周波数为8 MHz,CPU时钟为4 000 kHz,端子选择1线模式。
(2)外部端口设定中设置P50~P53端口为输出端口;P54~P57端口连接步进电机驱动芯片输入控制;P70~P74端口为KEY按键输入控制端口。
(3)A/D转换器中设置动作为停止,选择基准电压为4.4 V≤VDD≤5.5 V,A/D中断许可优先为低位。
(4)计时器通道开通通道0、通道 2和通道4这 3个通道,并设定了每个通道的中断间隔时间。
硬件接口功能设定完成后要在相对应的部分进行C语言编码,软硬件结合实现系统功能。
2.3 编程实现
微控制器上电后开始中断初始化,并且设定寄存器及电机控制模型初值,此时电机不转动,LED指示灯全部熄灭;若有键按下,则执行中断服务程序判别键值[6],根据键值来执行相应的子程序,通过控制器对控制台的参数进行采集,通过对采集的数据分析处理来改变控制模型及寄存器值以控制步进电机的方向和速度,同时将相应的信号输入到驱动器中,再通过驱动器控制电机进行正转、反转、加速和减速,根据LED指示灯信号闪烁显示电机的工作状态。
本文主要阐述了以节能环保型瑞萨MCU主控芯片为核心,结合东芝驱动能力强大电机驱动器TD6238AFG和TA7774FG,设计实现了一种步进电机控制系统,从而实现按键控制和调整步进电机转速及转向;同时利用软件编程能够设置多个占空比不同的脉冲,使得电机转速可以逐步增大或减小;并通过LED指示灯显示电机的工作状态,便于观察和识别。其人性化设计以及更优性价比产品在市场上的投入使用,将为中国智能低碳社会的建设做出积极贡献。
[1]孟武胜,李亮.基于AT89C52单片机的步进电机控制系统设计[J].微电机,2007(3):64-66.
[2]瑞萨电子.瑞萨 16位 R8C/TINY系列 MCU[J].世界电子元器件,2005(4):91-94.
[3]郑宝瑞,陆仲达.基于单片机的步进电机控制系统的研制[J].齐齐哈尔大学学报,2010,26(4):46-49.
[4]王啸东.基于单片机的步进电机驱动方法研究[J].科学之友,2010(10):31-32.
[5]适用于微控制器的CubeSuite+集成型开发环境[J].电子制作,2011(7).
[6]牛甲,熊刚,郭东平.基于单片机的步进电机控制系统设计与仿真[J].硅谷,2011(20):71.