如图1所示,A相绕组磁极的小齿和转子的小齿处于对齐状态,而B相和C相磁极的小齿就会和转子的小齿形成一个3°角的错位。若给B相通电,B相绕组就会产生磁场而对转子产生力的作用,使转子顺时针旋转3°和B相磁极的小齿对齐;这样A、C相绕组磁极的小齿就会和转子小齿产生同为3°的错位角,接着B相绕组停止通电,在C相绕组通电,这样就会在电磁力的作用下使转子顺时针旋转3°和C相磁极的小齿对齐。以此类推,当该电机以A-B-C-A的顺序循环通电时,转子就会按照顺时针的方向以每次转动3°的方式一步步旋转。
同样的,如果改变通电的顺序,按C-B-A-C的顺序循环通电,转子就会按逆时针的方向旋转。
步进电机每次只有一相通电的方式成为单三拍运行,三相步进电机也可以是用双三拍的方式运行,这种方式每次都有两相通电,即按AB-BC-CA-AB顺序的顺时针运行或按CB-BA-AC-CB顺序的逆时针运行。双三拍的运行方式和单三拍运行方式下的步距角相等,都是3°,双三拍运行方式的力矩比单三拍高[5]。
步进电机的转速控制是整个系统的核心问题,针对AT89S52单片机有软件延时和硬件定时两种方式。软件延时是通过延时子程序来实现,而硬件延时则是通过T0定时器来实现[6],本文采用的硬件定时方式。
2. 系统设计方案
本文设计的系统主要包括了晶振电路、按键电路、蜂鸣器、电源电路、单片机、驱动电路、步进电机和LCD显示电路几部分。
系统方框图如图2所示。
图2 基于AT89S52单片机的步进电机控制系统方框图
晶振电路提供时钟信号,按键电路集成4个按键分别控制步进电机的启停、减速、加速和变向,蜂鸣器在按键按下时短响一声以确认有按键按下,电源电路为整个系统提供电源,驱动器将单片机产生的脉冲信号放大然后施加在步进电机的各个相上,LCD显示电路实时显示步进电机的启动、停止、正转、反转状态以及速度等级和速度大小。
3. 硬件电路设计
3.1 系统主电路
图3为系统主电路图。
图3 系统主电路图
AT89S52单片机的P0口与LCD显示屏的D1~D7以及排阻连接;P2口与LCD显示屏的三个控制端口RS、RW、E连接;P3口与按键电路和蜂鸣器连接;P1口与ULN2003驱动器连接;XTAL1、XTAL2与晶振电路连接。
3.2 系统各模块电路
3.2.1 单片机模块
控制模块采用ATMEL公司的AT89S52单片机作为核心部件。AT89S52是ATMEL公司的AT89S系列单片机之一,是AT89C52系列单片机的换代产品。与之前的产品相比,AT89S52增加了许多功能,在抗电磁干扰性和稳定性方面具有更好的优势。AT89S52单片机内部的看门狗定时器使得系统更为可靠;特有的双数据指针也让用户可以更快的操作数据;另外AT89S52单片机的运行速度更高,最高晶振频率可达33MHz。
AT89S52单片机增加的稳定性、可靠性功能大大减少了信号失真、电磁干扰的现象,而且AT89S52硬件结构简单、编程容易、性价比高,符合设计所需功能。图4是AT89S52单片机PDIP封装方式的引脚图。
图4 AT89S52单片机PDIP引脚图
AT89S52具有以下标准功能:8k Flash,265字节RAM,32位I/O口线,看门狗定时器,双数据指针,三个16位定时器/计数器,一个6向量2级中断结构,全双工串行口,片内晶振及时钟电路。另外,AT89S52 可降至 0Hz 静态逻辑操作,支持2种软件可选择节电模式。空闲模式下,CPU停止工作,允许RAM、定时器/计数器、串口、中断继续工作。掉电保护方式下,RAM 内容被保存,振荡器被冻结,单片机一切工作停止,直到下一个中断或硬件复位为止[7]。 AT89S52单片机步进电机控制系统设计+方框图+源程序(3):http://www.751com.cn/zidonghua/lunwen_1724.html