一 步进电机及工作原理
步进电动机又称脉冲电动机或阶跃电动机,是一种把电脉冲信号变成直线位移或角位移的控制电机,其位移速度与脉冲频率成正比,位移量与脉冲数成正比。步进电机在结构上也是由定子和转子组成,当电流流过定子绕组时,定子绕组产生一矢量磁场,该矢量场会带动转子旋转一角度,使得转子的一对磁极磁场方向与定子的磁场方向一着该磁场旋转一个角度。因此,控制电机转子旋转实际上就是以一定的规律控制定子绕组的电流来产生旋转的磁场。
二 步进电机的电子控制
步进电机受电脉冲信号控制,电脉冲信号的产生、分配、放大靠电子元器件的动作来实现。脉冲控制信号的驱动能力一般都很弱,必须有功率放大驱动电路。这个系统由三部分组成:脉冲信号产生电路、脉冲信号分配电路、功率放大驱动电路。系统组成如图所示。
三 步进电机驱动技术
步进电机驱动技术指的是用步进电机驱动器的驱动级来实现对步进电机各相绕组的通电和断电。步进电机驱动技术通常分为单电压驱动、单电压串电阻驱动、高低压驱动、斩波恒流驱动、升频升压驱动和细分驱动等。
四 、基于单片机的控制
采用单片机来控制步进电机,实现了软件与硬件相结合的控制方法。用软件代替环形分配器。系统中采用单片机接口线直接去控制步进电机各相驱动线路。用单片机设计外围电路,按键作为一个外部中断源,设置步进电机正转、反转、档次、停止等功能,采用中断和查询相结合的方法来调用中断服务程序,环形分配器其功能由单片机系统实现,采用软件编程的办法实现脉冲的分配。
五 系统的硬件设计
设计采用单片机ATS51来作为整个步进电机控制系统的运动控制核心部件,采用电机驱动芯片L298及其外围电路构成了整个系统的驱动部分。系统的具体功能和要求如下:
1.单片机最小系统板的设计;
2.设计兼有两相两拍和两相四拍的脉冲分配器;
3.实现步进电机的启停、正转、反转控制;
4.驱动电路可提供电压为12V,电流为0.3A的驱动信号;
5.能实现步进电机的转速调节,最低转速为25转/分,最高转速为100转/分;
6.步进电机的转速由数码管显示;
7.键盘扫描电路的设计
1 系统的组成及其对应功能简述
整个系统的组成包括单片机最小系统,电机驱动模块,串口下载模块,数码管显示模块,电机驱动电流检测模块,按键等模块组成。具体框图如图所示:
单片机最小系统作为整个系统的控制核心,它主要负责产生控制步进电机转动的脉冲,通过单片机的软件编程代替环形脉冲分配器输出控制步进电机的脉冲信号,步进电机转动的角度大小与单片机输出的脉冲数成正比步进电机转动的速度与输出的脉冲频率成正比,步进电机转动的的方向与输出的脉冲顺序有关。
电机驱动模块负责将单片机发给步进电机的信号功率放大,从而驱动电机工作。
串口下载模块主要是负责实行计算机和单片机之间的通信,将在计算机里面编写好的程序下载到单片机芯片当中。
数码管显示模块就主要是显示电机转速,电机转向,和通过电机的电流等系统的实时信息。
电机驱动电流检测模块主要是检测通过电机驱动芯片的电流,然后通过运放将检测到的信号放大,最后将放大后的信号通过模数转换芯片ADC0804处理后送给单片机。
按键作为一个外部中断源,和单片机端口连接,通过它设置了电机的正转,反转,加速,减速,显示电机电流等功能。采用了中断和查询相结合的方法来调用中断服务程序,完成了对步进电机的最佳的及时的控制。
2 ATS51功能特性概述
ATS51 提供以下标准功能:4k 字节Flash 闪速存储器,128 字节内部RAM,32 个I /O 口线,看门狗(WDT),两个数据指针,两个16 位定时/计数器,一个5 向量两级中断结构,一个全双工串行通信口,片内振荡器及时钟电路。同时,ATS51 可降至0Hz 的静态逻辑操作,并支持两种软件可选的节电工作模式。空闲方式停止CPU 的工作,但允许RAM,定时/计数器,串行通信口及中断系统继续工作。掉电方式保存RAM的内容,但振荡
3 单片机端口分配及功能
1、其中P 0口用于控制数码管的具体显示功能,既是数码管的段选。
2、P 1口主要用于控制电机驱动芯片L298的工作,以及ADC0804芯片的编程的读写控制。
3、P 2口主要用于控制数码管的公共端,既是数码管的位选。与此同时还处理键盘扫描电路的。
4、P 3口主要用于负责处理ADC0804的模数转化芯片的工作。
4 串口通信模块
本设计采用串口通信,来实现计算机与单片机的通信。其具体的电路图如图3.4所示。
3.4.2 共阳数码管电路图
本设计选用了数码管显示设计,其段选的控制A、B、C、D、E、F、G、DP按照数码管的简介资料选用了P 0口作为其控制端口,其位选部分由于单片机的控制端口输出的电压不足以直接点亮数码管,所以在单片机控制端口和数码管的位选控制端口加入了三极管,其具体的电路连接如图3.6所示。
图3.6 数码管显示电路
5 电机驱动电路设计
电机驱动部分是由驱动芯片L298及其外围电路构成,其中从L298的2、3脚和13、14脚(即芯片的输出端)依次按顺序连成一个插座,分别与步进电机的四根线相连。而5、6、7、10、11、12脚就依次与单片机的P1口的六个管脚相连。通过这一连接实现了单片机与L298以及步进电机的串联控制。
四个二极管连成的保护电路,防止由于步进电机的转速提高而产生的自感电动势损坏芯片。电机驱动电压是使用了9V,二极管的负端接9V的参考电压。
3.6.3 电流检测模块电路图
采用OP07芯片作为检测元件, 3脚是反向输入端,4脚是同向输入端,6脚输出端。按照如图所示的接法及对应电阻值的大小,电压放大倍数是80倍,且为同向放大。
OP07放大的信号来源是L298的1脚测电流的小电阻分出来的电压,然后经OP07放大之后的信号送给0808处理。
六 系统的软件实现
软件设计主要分为系统初始化、延时子程序、按键响应程序,数码管显示程序,
1 系统软件主流程图
当给系统供电以后,通过单片机复位电路对系统进行上电复位系统经过初始化以后,便开始执行按键查询等待相应的操作,当有按键按下的时候程序便调用并执行相应的子程序,主流程图如下所示:
图4.1 主程序图
2 系统初始化流程图
对相应的系统参数进行初始化,包括系统上电默认运行参数设定,包括两相四拍的工作方式,初始速度档位是30转/分,系统中断设定,定时器设定,载入定时器初值和默认的工作参数等,具体流程图如所示。
3 按键子程序
1、延时子程序:在本延时子程序当中每调用一次延时子程序延时时间是1毫秒。
2、按键响应子函数:在本设计当中按键的一端接地,另一端接单片机的对应端口,所以当按键按下,既是将单片机对应端口电平拉低。所以在编程的时候判断按键按下是低电平有效。画出的是电机增速和减速的子程序框图。
图4.3 增速减速子程序
4、读ADC0808和模式切换程序框图如下图4.4所示,在本设计当中模式切换按键只有一个,负责电机的正反转控制,电流控制和电机启动和停止控制。由于编程的时候设置的系统工作的默认状态是正转,转速30转/分。所以通过连续按模式切换键依次实现的功能是电机反转并显示转速,显示电机电流,系统停止工作,系统正转并显示转速依次切换。编程控制ADC0804工作就主要是负责读和写端口的电平来实现的。
4、控制步进电机转动的脉冲输入方式:
两相四拍通电方式:
正转:AB—aB—ab—Ab—AB
反转:AB—Ab—ab—aB—AB
两相八拍通电方式:
正转:AB—B—aB—a—ab—b—Ab—A—AB
反转:AB—A—Ab—b—ab—a—aB—B—AB下载本文