APP下载

基于步进电机的自动控制升降旗系统设计

2015-11-01郭彩萍

关键词:升旗磁极自动控制

郭彩萍

(太原工业学院电子工程系,山西太原030008)

基于步进电机的自动控制升降旗系统设计

郭彩萍

(太原工业学院电子工程系,山西太原030008)

为了实现自动控制国旗的升降,本文设计了一种基于单片机和步进电机的自动控制升降旗系统。设计采用STM32单片机作为核心处理器,采用28BYJ-48永磁式步进电机提供动力,电机驱动使用ULN2003大电流高压驱动芯片,采用LCD1602显示旗帜高度。经测试,本系统结构简单、可靠性高。

STM32单片机;步进电机;ULN2003

目前许多场合的升旗方式,还停留在人工升旗的阶段,这样既对旗手有较高的要求,也不利于升旗过程的协调,丧失了升旗的庄重与严肃[1]。针对这种情况,本文设计了基于智能自动控制技术与步进电动机技术的自动控制升降旗系统,本系统结构简单、可靠性高,可以运用于各种场合的升降旗仪式,应用前景广泛。

1 系统硬件设计

自动控制升降旗系统主要由单片机核心控制模块、按键控制模块、显示模块和步进电机驱动模块和电源模块等电路组成,系统设计总框图如图1所示。

图1 系统整体方案框图

1.1 硬件设计

1.1.1 STM32核心系统电路设计

设计采用具有高性能、低成本、低功耗,有嵌入式应用专门设计的ARM Cortex-M3内核STM32系列单片机[2]。STM32F103VT6片内集成从32K字节至128K字节的闪存和从6K字节至20 K字节的SRAM,7通道DMA,外设支持定时器、2个I2C、3个USART、2个SPI、CAN接口和USB2.0全速接口。STM32F103VT6采用LQFP100封装,包含80个快速I∕O口,并且所有I∕O口可以映像到16个外部中断。

1.1.2 步进电机驱动电路设计

步进电机可以将脉冲信号转变为:角位移,线位移[3]。图2是四相步进电机的原理图,它由外围的定子、中间的转子和定子绕组组成。如图所示,开始时B相磁极与0、3号转齿对齐,其它的磁极与其它转齿则是错开的。当第一个脉冲到来时,电位加到C相磁极。此时1、4号转齿与C相磁极对齐,而其它的磁极与转齿全都错开。以此类推,脉冲依次循环加到相应的磁极上,便可以驱动转子持续转动。步进电机的转速和步进电机停止的位置通过改变脉冲信号的频率和脉冲数实现。

图2 步进电机工作原理示意图

本次设计我们选用五线四相的永磁式减速步进电机28BYJ-48。28BYJ-48减速步进电机步距角为5.624∕64,减速比为1:64,所以该型号步进电机转一圈需要4096个脉冲信号。完成磁场周期性变化所需的脉冲个数称为步进电机的拍数[4],而完成磁场周期性的过程也称为励磁,步进电机的励磁包括全部励磁和半步励磁,半步励磁又可分为1相励磁和2相励磁。根据这几种励磁方式的组合,N相步进电机可以实现N相单N拍、N相双N拍和N相N拍的工作方式。表1列出了四相步进电机在不同通电状态下的运行方式,表2则展示了28BYJ-48步进电机采用4-1-2励磁方式,完成逆时针运转时的脉冲顺序。

表1 步进电机工作方式

表2 4-1-2驱动方式

电机驱动采用ULN2003A大电流高压驱动芯片,ULN2003A驱动步进电机工作电压高、工作电流大、可以较为精确的控制电机转向、步距和速度。驱动电路如图3所示。

图3 步进电机驱动电路

2 系统软件设计

2.1 控制步进电机的程序设计方案

根据输入步进电机脉冲顺序的不同可以改变步进电机转动方向的原理,28BYJ-48步进电机采用8拍方式运行实现顺时针转动和逆时针转动的脉冲电平表见表3和表4。

表3 28BYJ-48顺时针转动表

表4 28BYJ-48逆时针转动表

在设计控制步进电机方向的程序时,需按表3和表4分配脉冲。

控制步进电机转速,可以通过单片机输出脉冲的频率改变实现[5]。在本设计中输出脉冲频率大小由延时函数控制。当我们减小延时,说明加大了脉冲频率,所以提高了电机转速。反之,则减小了电机速度。但在这里还要注意28BYJ-48步进电机的启动频率大于等于550 PPS,即脉冲间隔应小于1.8 ms。

根据28BYJ-48步进电机的技术参数,它的步距角为5.624∕64,所以它转一圈需要4096个脉冲信号。控制输出脉冲数目,可以精确的定位步进电机转动的圈数。另外根据已知的步距角和脉冲频率,根据公式(1)计算电机转速、公式(2)计算角速度和公式(3)计算出电机运转的线速度,从而计算出升降旗过程中旗帜的高度。

式中,f表示脉冲频率;θ表示步距角;n表示转速,单位为转∕分钟;ω表示角速度;v表示线速度;r表示步进电机滑轮的半径。

2.2 系统程序流程图

根据设计要求,软件设计需要实现的功能主要有:按键控制、升旗、降旗、降半旗和显示旗帜高度。

STM32单片机扫描键盘并接收键值信息,单片机运算单元对信号进行处理并判断要输出脉冲的频率、方向和个数。步进电机驱动单元接收单片机输出的脉冲并驱动步进电机完成正转、反转,以达到升降旗的目的。同时,根据旗帜高度的计算结果,LCD1602实时显示此时旗帜的位置高度。

图4描述了基于步进电机的自动控制升降旗系统主要的程序设计流程。

3 结论

完成系统的硬件电路设计和软件设计后,验证了升降旗系统是否可以按要求实现功能。首先,进行理论验证,通过计算得出升旗时间的理论值(大约43~46 s)、升旗和降旗速度理论值、旗帜在特定时刻的高度理论值等。其次,启动系统,分别对升旗、降旗和降半旗进行测试,记录不同时刻有关速度、高度等参数。最后,将理论值与测试值进行比较,符合功能及精度的要求。

图4 系统程序流程图

[1]卢洪武,刘伟.国旗自动控制升降系统的研制[J].电子技术,2007,34(1):17-21.

[2]王晓丽,姜川,于跃.基于STM32的校园能耗监控系统的以太网接口设计[J].吉林建筑大学学报,2015,32(01):76-79.

[3]汤冬云,张毅.嵌入式Linux下步进电机驱动开发[J].计算机技术与发展,2012(6):167-170.

[4]黄露.基于FPGA的步进电机控制系统设计与实现[D].重庆:重庆大学,2011.

[5]刘玉宾,胡健.步进电机的驱动控制电路[J].科技资讯,2007(21):16-17.

Design of Automatic Control Flag Hoist System Based on Stepper Motor

GUO Cai-ping
(Department of Electronic Engineering,Taiyuan Institute of Technology,Taiyuan Shanxi,030008)

In order to achieve automatic control flag hoist,this paper designs the automatic control movements flag system based on microcontroller and the stepper motor.Design uses STM32 microcontroller as the core processor,use 28BYJ-48 permanent magnet stepper motors for power,motor drive using ULN2003 high-current high-voltage driver,using LCD1602 display banner height.After testing,the system is simple with high reliability.

STM32 microcontroller;stepper motor;ULN2003

TP391

A

1674-0874(2015)05-0031-03

2015-08-09

2014年山西省高等学校特色专业建设项目[080701]

郭彩萍(1981-),女,山西文水人,硕士,讲师,研究方向:信号与信息处理。

〔责任编辑 高彩云〕

猜你喜欢

升旗磁极自动控制
同步电机转子磁极结构
固定同步电机磁极用螺栓的受力分析
浅析芳纶纸在水轮发电机磁极中的应用
中吕 山坡羊 升旗(外四首)
升旗
电力拖动系统的自动控制和安全保护
深圳抽水蓄能电站发电电动机磁极挂装工艺浅析
M2W中波发射机自动控制天线倒换系统
编组站停车器自动控制开通方案
唐钢热轧1810线工艺润滑改造自动控制的实现