作电压是+5V。单片机上RESET和微机上的RESET有异曲同工之妙。RESET复位引脚上的低电压引发外部复位,单片机就恢复到初始状态。在此,我其中单片机上的复位电路如图4所示:
们使用简单的R C电路便可以满足要求该设计。
图 4 工作电源及复位电路
4、结合所学的知识,故选用AT89C51单片机进行步进电机的控 ○
制,它是低功耗、高性能的单片机,其特性如下:
(1)面向控制的8位CPU;
(2)一个片内振荡器和时钟产生电路,振荡频率为0~24MHz; (4)128B的片内数据存储器;
(5)可寻址64KB的片外程序存储器和片外数据存储器控制电路; (6)2个16位的定时/计数器;
(3)片内4KB Flash ROM程序存储器;
(7)4个并行I/O接口,共32条可单独编程的I/O线;
(8)5个中断源,2个中断优先级; (10)21个特殊功能寄存器;
(10)具有节电工作方式。综上所述,从而得到单片机控制三相步进电机的原理图,如下图5所示:
(9)一个全双工的异步接口;
6
图 5 单片机控制三相步进电机的原理图
由图5可知,由于被控制的步进电机要求高电压和大电流驱动,为使89C51单片机的P1口能够可靠的驱动负载,所以在P1.0、P1.1、P1.2口后需要加上一个7404驱动器,以便驱动脉冲功率放大级的达林顿复合管,使电机绕组的静态电流达到所需要的电流值。
7
第3章 控制系统的软件设计 由步进电机的的工作原理可知,步进电机要转动,必须将电脉冲按照一定的顺序加到电机的绕组上,才能使电机按照我们的要求有规律的运转,因此软件设计的目的,就是按规定顺序产生脉冲串。 3.1、脉冲波的形成
用软件产生脉冲波的方法是先输出一个高电平,然后进行延时,再输出一个低电平,然后再进行延时,延时时间的长短,由步进电机的工作频率决定。
3.2、时序脉冲的形成
由前面可知步进电机的旋转规律和内部绕组的通电顺序和通电方式有关,而且根据所选择的步进电机型号,有3种通电方式,即三相单三拍、三相双三拍、三相六拍等,在下表2所示的各种模型字中,以模型字的0、1、2位分别对应三相步进电机的A、B、C相绕组,设三相单三拍相序为 A---B---C---A ,三相双三拍相序为AB---BC---CA---AB,三相六拍相序为A---AB---B---BC---C---CA---A时电机正转,反之,电机反转。
表2 电动机三相六拍控制模型字
方 式 步 序 C相 B相 A相 三 相 1 步 0 0 1 通电绕组 控制字 A 相 B 相 C 相 AB 相 01 H 02 H 04 H 03 H 8
单 三 2 步 0 1 0 拍 式 3 步 1 0 0 三 相
1 步 0 1 1 双 三 2 步 1 1 0 拍 式 3 步 1 0 1 1 步 0 0 1 BC 相 AC 相 A 相 AB 相 B 相 BC 相 C 相 CA 相 06 H 05 H 01 H 03 H 02 H 06 H 04 H 05 H 三 相 2 步 0 1 1 六 拍 3 步 0 1 0 方 式 4 步 1 1 0 5 步 1 0 0 6 步 1 0 1 因为在六拍下,步进电机的运行平稳柔和,所以在设计中选用三相六 步通电方式,下图6为三相六步电机程序流程图。
9
图6 三相六步电机程序流程图 根据图6编写程序如下:
ORG 0000H
LJMP MAIN
ORG 0010H
MAIN: MOV SP,#6FH ;设置堆栈地址
10