基于A3992和C8051F300的两相步进电机驱动系统
扫描二维码
随时随地手机看文章
步进电机定位准确且与数字电路接口连接方便.无需反馈就能实现准确的角位移,在数控机床等许多领域中均得到了广泛应用。但是,传统的步进电机定位系统是由控制器件产生脉冲,然后加在环形分配器和功率驱动部分,最后连接至电机的控制方式,其软硬件的实现都较为复杂,成本偏高,难以满足现代工业发展所需的精度和集成度等要求。采用美国Allegro公司推出的一款易操作,内置功率驱动的A3992型两相步进电机微步距驱动器,以C805117300单片机为控制核心设计了一个驱动控制电路。该驱动控制电路能简单方便实现电机的微步距控制,不仅解决了步进电机步距角大的问题。提高了步进电机的分辨率,减弱或消除了步进电机的低频振动.也改善了电机的其他性能,具有控制灵活,维护简单,成本较低的特点,完全能满足中小企业的生产要求。
2 系统组成与工作原理
图1示出基于A3992和C805lF300控制的两相步进电机驱动系统组成框图。其中,上位机主要完成命令指示等控制功能;C8051F300主要用来接收上位机的指令参数。然后向A3992驱动器写控制字;A3992驱动电路主要完成按接收的控制字向电机提供相应的驱动电流。
2.1 C8051F300控制电路
C805117300是美国Cygnal公司的一款完全集成的混合信号系统级MCU器件(SOC),其主要特点是:
(1)高性能指令处理能力 采用Cygnal专利的高速管线式CIP一51(与8051全兼容)微控制器内核:
(2)完善的时钟系统采用可编程25 MHz内部时钟发生器,不仅支持外部时钟,也支持使用过程中内外时钟发生器之间的切换:
(3)低功耗供电电压为2.7~3.6 V,其典型工作电流在25 MHz下为5 mA:
(4)片内模数转换 采用11通道真正的8位500 Ks/s.具有可编程前置放大器(PGA)和模拟多路复用器(AMUX)的A/D转换器;
(5)丰富的存储器资源 采用256字节片内RAM.8 KB片上Flash存储器,支持系统512字节(扇区)编程;
(6)增强的中断资源 采用内含12个中断源,适用于多任务、实时系统的开发;
(7)丰富的片上资源 采用片内温度传感器、电源监测器、片上电压比较器及上电复位、SMBUS/I2C和URAT接口、3个16位通用定时器、可编程定时器阵列(PCA)并带有比较/捕捉模块和WDT3种功能:
(8)可编程的数字I/O口和交叉开关(crossbar)在这种交叉开关配置的I/O端口系统中,可以通过配置相应的寄存器将内部数字资源连接到物理I/O引脚上。改变了传统MCS一51单片机的固定I/O模式:
(9)在线调试功能具有Cygnal2-Wire(C2)调试电路,支持存储器和寄存器的校验和修改、断点和单步。无需额外的RAM、程序存储器及定时器等。
C8051F300是连接上位机和A3992的桥梁。上位机的指令信号包含电机的正转、反转和加减速等信息,该信号通过C8051F300的I/O端口进入单片机,单片机利用3条与A3992相连的I/O数据线.控制驱动器按用户的要求驱动电机运转。
2.2 A3992驱动电路
A3992型双DMOS全桥微步距脉宽调制(PWM)步进电机驱动器可利用控制器件通过3线串行接口(CLK,DATA,STROBE)对其进行控制.并能方便地调节步进电机的运转方向,实现各种不同的步进法(从整步驱动到最高可达64细分的微步距驱动),使步进电机的驱动方式具有很大的灵活性。
A3992是通过3线串口写控制字来实现的。A3992的控制字有Word0和Wordl两个,每个控制字包含19个位(D0~D18),先传送高位D18,最后传送最低位DO。其中Word0是桥电流控制字,当DO=0时,A3992便进入WordO模式;Wordl是时间数据控制字,当DO=1时,A3992便进入Wordl模式。详细的各位数据设置参见文献。
A3992只需很少的R,C元件即可组成两相步进电机的微步距驱动电路。图2是A3992的典型应用电路,其连续输出的额定电流可达1.5 A。电压可达50 V。
C805lF300不断地通过3线串口向A3992写入控制字Word0,A3992根据所输入的控制字,调整桥电流的方向和大小,从而控制步进电机按用户的实际需要运转。需要注意的是,控制字Wordl是时间数据控制字,用于设置死区时间、关断时间和快速衰减时间等相关参数,所以C8051F300只需对A3992进行一次设置即可,不必反复进行写操作。
3 系统硬件设计
该系统硬件设计主要是由上位机与单片机接口、单片机控制电路和A3992驱动电路组成。其中,上位机主要实现用户与单片机的交互,并通过单片机的串口实现与单片机的通信。图3给出C8051F300串口和RS232的接口电路。
单片机控制电路由C8051F300单片机、供电电源、滤波电容和一系列的I/O端口构成。其中,供电电源采用了A1117稳压器,将5 V输入电压转换成C8051F300适用的3.3 V供电电压,从而保证了供电电源的精度。A3992驱动电路是整个系统的功率部分,接收来自控制电路的信号,两桥桥臂输出满足一定时序的相电流,从而实现驱动步进电机按用户的要求运转。图4所示给出了系统的主体硬件电路。
4 系统软件设计
根据系统硬件设计的相关要求设计软件程序,完成系统初始化,接收来自用户的输入指令,控制驱动器按要求运转等功能。具体的系统软件流程设计如图5所示。其中系统初化包括对单片机内的看门狗、I/O端口和A3992的控制字Word0、Wordl参数的初始化。
采用该步进电机驱动方案可以灵活通过软件编程对步进电机进行最高可达64细分的微步距驱动,因而可方便快捷地改善步进电机的运行性能。
5 结语
讨论了基于A3992和C805lF300控制的两相步进电机驱动方案,简要介绍了系统各个硬件模块的实现,给出系统软件设计流程。该设计方案的各部分硬件模块连接简单,集成度高,可靠性强,易于调试和维护,体积小,成本低,具有很高的推广价值。