基于单片机的步进电机位置控制与实现

2015-10-14 05:08王语园
科技与创新 2015年19期
关键词:步进电机单片机

王语园

摘 要:采用单片机控制步进电机到达预设定位置的系统是由AT89C51单片机系统、ULN2003集成驱动电路和LM016L显示电路3部分组成的。步进电动机位置控制可以通过软件编程来实现,在不改变硬件电路的条件下,通过改变程序来实现对步进电机的不同控制要求。电路中设有键盘控制,可以通过键盘输入步进电机需要的转动圈数和步数来控制步进电机转动,还可以实时控制步进电机的方向,具有精确性和可视性的特点。

关键词:单片机;步进电机;位置控制;软件编程

中图分类号:TM383.6 文献标识码:A DOI:10.15913/j.cnki.kjycx.2015.19.121

电动机控制技术的发展速度非常快,以单片机为主的微处理器逐渐取代了模拟电路控制,逐步朝着全数字控制的方向发展。随着步进电机技术的提高和数字化技术的发展,步进电机的应用领域越来越广。

1 方案分析与确定

这项设计使用单片机AT89C51作为系统的控制核心,用达林顿晶体管集成IC ULN2003作为驱动放大器件,由单片机输出的脉冲信号的高低电平来控制步进电机,并通过控制程序实现位置控制的目的。

1.1 系统框图

用单片机控制步进电机到达预设定位置的系统如图1所示。

1.2 驱动电路的选择

驱动直接采用的是ULN2003,而ULN2003是达林顿结构,是一种继电器驱动芯片,饱和压降VCE 约为1 V,输出端允许通过的IC电流为500 mA,耐压BVCEO 约为36 V。这些参数都是用户输出口外接负载估算的依据。

1.3 单片机系统与驱动器之间的接口和方向控制

利用单片机系统控制步进电机,控制方式采用并行控制。单片机控制系统按照电动机旋转速度的要求从CP脉冲控制线发出相应周期间隔的脉冲串,利用发出周期渐增或渐减的脉冲串来控制电机加速或减速,通过停止发脉冲实现状态锁定,进而实现对步进电机速度的控制。电动机方向的控制是通过方向电平控制线实现的,当电动机需要正向旋转时,其电平为“0”,环形分配器按正方向分配脉冲;当电动机需要反方向旋转时,其电平为“1”,环形分配器按照反方向分配脉冲。

2 系统的硬件设计

2.1 步进电机

当步进电机没有超载时,脉冲信号的频率和脉冲数控制着电机的转速和停止位置,即给步进电机加1个脉冲信号,电机就会转过1个步距角。混合式步进电机具有反应式和永磁式的优点,包括五相和两相2种形式——两相步进角一般为1.8°,五相步进角一般为0.72°。这种步进电机的应用最广泛,本方案选用的就是这种步进电机。

2.2 AT89C51单片机

AT89C51单片机制造技术采用ATMEL高密度非易失存储器,与工业标准的MCS-51指令集和输出管脚相兼容。AT89C51单片机的P1口是一个双向I/O口,其中,P1.2~P1.7口内部提供了上拉电阻,P1.0、P1.1需要外部上拉,而P3口是7个带有内部上拉电阻的双向口。

2.2.1 振荡器特性

反向放大器的输入和输出分别为XTAL1和XTAL2,片内振荡器可以通过该反向放大器进行配置。XTAL2不接时,表示采用外部时钟源驱动。

2.2.2 芯片擦除

使ALE管脚处于低电平10 ms,同时,正确的控制信号组合可以完成整个PEROM阵列和3个锁定位的电擦除。

2.3 系统硬件电路设计

实验硬件电路连接图包括3部分,即AT89C51单片机系统、Uln2003集成驱动电路和LM016L显示电路。单片机具有较强的控制能力,步进电动机的位置控制可通过软件编程实现,可以在不改变硬件电路的条件下,通过改变程序来实现对步进电机不同位置的控制。在电路中设有键盘显示电路,步进电机相关数据可以通过键盘输入。这时,步进电机根据这些数据来工作,以控制电机的位置。按键开关从上到下标为P1、P2、P3、P4和 P5。P1控制电机状态(正转、停止、反转、停止),P2设置圈数,P3设置步数,P4为加1键,P5为减1键。对于显示部分,LM016L液晶显示电机的转动状态以及转动的圈数和步数。

3 系统的软件设计

3.1 程序主流程图

该系统的程序主流程如图2所示。

如图2所示,当程序运行后,先调用初始化程序清零寄存器,然后调用控制程序发送控制信息,再调用驱动程序驱动数码管显示和电机转动,从而实现对电机转动位置的控制。

3.2 控制流程图

该系统的控制流程如图3所示。

程序开始运行后,电机通电,按P1键,调用驱动程序电机准备开始转动,再调用显示程序显示电机的圈数和步数。与此同时,系统开始判断P2是否按下,如果P2按下,则调用设置圈数程序按键P4、P5设置圈数,然后电机正转,否则无动作。P3按下后,调用设置步数程序按键P4、P5设置步数,否则无动作。当P1再次被按下时,调用反向程序,再次设置圈数、步数,这时电机反转,否则无动作。当再次按下P1时,电机停止转动,数码管无显示,否则无动作。

4 结束语

步进电机位置控制的应用设计选择了ATMEL公司生产的AT89C51单片机。通过软件程序编制,利用单片机AT89C51控制UNL2003芯片实现了对步进电机位置的驱动和控制。这种控制方法电路简单,大大降低了生产成本,同时,也为类似的设计提供了参考。

参考文献

[1]朱红,李颖,韩冰,等.电子技术综合实验[M].成都:电子科技大学出版社,2009:78-80.

[2]黄智伟.全国电子设计竞赛制作实训[M].北京:北京航空航天大学出版社,2010:56-57.

[3]张学琴.工业语音报警系统的设计[J].广西民族学院学报,2003,5(4):60-62.

[4]李杰.89C2051驱动LED数码管的方法[J].电子世界,2007,7(11):35-36.

〔编辑:白洁〕

Position Control and Realization of Stepping Motor based on Single Chip Microcomputer

Wang Yuyuan

Abstract: The use of single-chip microcomputer control stepper motor to reach the preset position of the system is composed of AT89C51 microcontroller system, ULN2003 integrated driver circuit and LM016L display circuit 3 parts. The position control of stepping motor can be realized by software programming. In the condition of not changing the hardware circuit, the different control requirements of the stepping motor can be realized by changing the program. In the circuit is arranged to control the keyboard, through the keyboard input of the stepper motor rotating circle number and the number of steps needed to control the stepper motor rotation, the real-time control of the stepper motor in the direction, has the characteristics of accuracy and visibility. Key words: single chip microcomputer; stepping motor; position control; software programming

文章编号:2095-6835(2015)19-0122-02

猜你喜欢
步进电机单片机
单片机在智能控制中的应用
一种可自动伸缩的嵌入式LED灯具设计
步进电机智能控制的设计与实现
工矿机车GK1F、GK1C柴油机调速控制
基于单片机的自动化立体车库控制系统设计
基于单片机的雷达伺服控制系统
C8051F020与80C51单片机的异同点
单片机I/O口模拟串行通讯的C51实现方法
单片机调试方法的探讨
用PIC单片机制作的时间继电器