毕业设计23步进电机控制器

更新时间:2023-11-11 00:52:01 阅读量: 教育文库 文档下载

说明:文章内容仅供预览,部分内容可能不全。下载后的文档,内容与下面显示的完全一致。下载之前请确认下面内容是否您想要的,是否完整无缺。

四相步进电机控制器

基于单片机实现的四相步进电机控制器设计

指导老师:王彦

作者:

摘要:本设计采用ATMEL公司DIP-40封装的AT89S52单片机实现对四相步进电机的手动和遥控控制。由单片机产生的脉冲信号经过脉冲分配后分解出对应的四相脉冲,分解出的四相脉冲经驱动电路功率放大后驱动步进电机的转动。转速的调节和状态的改变由按键进行选择。通过键盘扫描把选择的信息反馈给单片机,单片机根据反馈信息做出相应的判断并改变输出脉冲的频率或转动状态信号。电机转动的不同状态由LED数码管显示。红外信号的发射由另一块单片机和红外线LED完成,用红外万能接收头接收红外信号,可以实现对电机的控制进行红外遥控。

关键字:四相步进电机 单片机 功率放大 红外遥控

Controller for four phase step motor

Abstract:The design adopts two microprocessor (DIP-40 encapsulation, AT89S52) of ATMEL company’ to control four phase step motor. After admeasured it, the pulse generated by microprocessor become the relevant four phase pulse. These pulses, which are magnified by driving circuit, are used to drive the four phase step motor. Regulating rotate speed and changing estate are used some keys. Pass scanning the keyboard to feed single back to microprocessor. The microprocessor makes the judgment and change the pulse frequent according to the feedback information. LED show different running estate. The infrared single is emitted by another microprocessor and infrared ray LED, using infrared incept module to accept the infrared signal. System can control motor with infrared telecontrol.

Keyword: four phase step motor microprocessor power magnify infrared telecontrol

第 1 页 共 52 页

四相步进电机控制器

目录

前言 .......................................................................................................................................... 3

1.系统设计 ................................................................................................................................ 3 1.1 功能介绍 ....................................................................................................................... 3 1.2总体设计方案 ................................................................................................................. 3 1.2.1总体设计思路 ........................................................................................................ 3 1.2.2方案论证与比较 ................................................................................................................... 3 1.3电机的参数 ..................................................................................................................... 7 1.4系统组成 ......................................................................................................................... 7 2.单元电路设计 ...................................................................................................................... 8 2.1功率放大驱动电路方案设计 ......................................................................................... 8 2.2显示电路方案设计 ......................................................................................................... 9 2.3单片机电源电路设计 ..................................................................................................... 9 2.4红外发射电路设计 ....................................................................................................... 10 3.软件设计 .............................................................................................................................. 10 3.1编程语言 ...................................................................................................................... 10 3.2软件实现方法 .............................................................................................................. 10 3.2.1 双四拍正转 .......................................................................................................................... 11 3.2.2 双四拍反转 .......................................................................................................................... 11 3.2.3 单双八拍正转 ...................................................................................................................... 11 3.2.4 单双B八拍反转 ................................................................................................................. 11 3.3 程序流程图 如下所示: .......................................................................................... 12 3.4 三相步进电机程序清单 .............................................................................................. 15 4.结束语 .................................................................................................................................. 15

附录1 ..................................................................................................................................... 16 附录2 ..................................................................................................................................... 17

第 2 页 共 52 页

四相步进电机控制器

前言

一般,电动机都是连续旋转,而步进电动机却是一步一步转动的,故称为步进电动机。每输入一个脉冲信号,该电动机就转过一定的角度(有的步进电动机可以直接输出线位移,称为直线电动机)。因此步进电动机是一种把脉冲变为角度位移(或直线位移)的执行元件。它有两个工作:其一是传递转矩,其二是传递信息。

步进电动机的转子为多极分布,定子上嵌有多相星形连接的控制绕组,由专门电源输入电脉冲信号,每输入一个脉冲信号,步进电动机的转子就前进一步。由于输入的是脉冲信号,输出的角位移是断续的,所以又称为脉冲电动机。随着数字控制系统的发展,步进电动机的应用将逐渐扩大。步进电动机的种类很多,按励磁方式可分为反应式、永磁式和感应子式;按相数分则可分为单相、两相和多相三种。

这里使用的是反应式四相步进电机,它的工作方式有单四拍正转,单四拍反转,双四拍正转,双四拍反转,单双八拍正转,单双八拍反转六种。针对这些状态,设计的控制器能很好地实现状态的转换及转速的改变。

1.系统设计

1.1 功能介绍

一、基本功能

(1)步进电机能够在双四拍和单双八拍两种工作方式间切换。 (2)能够实现步进电机单步和连续运行。 (3)能实现步进电机正\\反转及速度变换。 (4)显示工作状态 二、扩展功能

红外线遥控实现电机的各种状态之间的启动和转换

1.2总体设计方案

1.2.1总体设计思路

用于控制的电机是MITSUMI公司生产的M35SP-7T型四相反应式步进电机。为满足手动和红外遥控相互独立,采用两块AT89S52单片机分别控制手动模块和红外遥控模块。 手动模块完成所有基本功能以及红外接收,遥控模块用来发射红外遥控信号。

1.2.2方案论证与比较

1.控制部分的设计方案论证与选择

方案一、用逻辑电路实现。用NE555定时器芯片产生脉冲,用74HC74组成的电路实现脉冲的分配。用组合和时序电路实现频率的调节。整个电路要用到的分立元件太多,电路联接复杂,而且抗干扰能力不强,稳定性和精确度不高。

方案二、用单片机实现。由于单片机集成了运算器电路、控制电路、存储器、中断系统、定时器/计数器以及输入/输出口电路等,所以用单片机设计控制电路省去了很多分立元器

第 3 页 共 52 页

四相步进电机控制器

件。对于脉冲的产生及分配,频率的调节,转速及状态的改变都可以由单片机实现,不必再分别用分立元器件实现。由于单片机的可编程特性,应用单片机程序对四相步进电机进行控制,不仅功能易于实现,而且精确度高,稳定性好,抗干扰能力强。

方案三、用FPGA实现。众所周知,FPGA做控制核心,外围电路简单,整体性能好,有更好的稳定性,更高的精度,更强的抗干扰能力。但是其价格昂贵,用于本设计的电机控制性价比不高。

综上所述,选择方案二。利用单片机实现主要控制,按键进行选择。

2.功率驱动电路的设计方案论证与选择

单片机端口输出的电流只有几个毫安,不能直接驱动步进电机。为了给步进电机提供足够的电流,必须设计驱动电路。考虑到本次驱动的电机所带负载和功率不大,对电源的要求也不是太高,故采用单一电压型电源供电。

由于绕组是感性的,功率放大器必须设计得能保护晶体管不受电感在接通和断开瞬间时的尖峰信号的冲击。同时,为了使绕组在断电时能够加快电流的衰减,以免断开的相绕组中的衰减电流对电动机起制动效应,还必须为放大电路设计抑制电路或是泄放回路。这里对抑制电路有三种方案如下: 方案一:二极管抑制电路

二极管抑制电路如图1.2.1所示。当绕组通电时,二极管承受反向电压,不导通。当三极管转变为截止状态或是绕组断电时,绕组将产生一个与原来承受的电压极性相反的感应电势,使二极管导通,形成绕组L和二极管构成的回路。假设绕组电阻为R,则回路中电流的衰减时间常数为T=L/R 。由于R一般较小,因而T一般较大,只适用于步进电机低速运行。

图1.2.1二极管抑制电路 图1.2.2 二极管-电阻抑制电路

方案二:二极管-电阻抑制电路

二极管-电阻抑制电路如图1.2.2所示。在这个抑制电路中,增加了一个与二 极管串联的电阻RS,当绕组断电时泄放回路的时间常数为T=L/(R+RS),这就加快了断电绕组中电流的衰减,减小了泄放回路时间常数。但由于RS 的存在,使三极管在绕组断电时承受较大的反向电压。

方案三:稳压二极管抑制电路

这种电路是用一个稳压二极管代替串联电阻,其电路如图1.2.3所示。当绕组断电时,由于稳压管的稳压特性,给三极管的反向电压也不会太大,泄放回路电流衰减得更快。当断电相绕组的感应电势升高到使稳压二极管击穿并导通时,断电相绕组中的储能以热能形式在稳压二极管内消散。

第 4 页 共 52 页

四相步进电机控制器

图1.2.3 稳压二极管抑制电路

综上所述,考虑达到设计要求选择方案二。利用二极管-电阻抑制电路和两个9014三极管组成驱动电路。

3.显示电路的设计方案论证与选择

方案一、采用LED静态显示。LED数码管的公共端COM(位选控制信号)接电源(而对于共阴数码管是接地),数码管的段码分别和I/O口相连,这样N位数码管就需要占用N个8位(共8N位)I/O口线。特点是占用较多的硬件资源,控制简单方便。

图1.2.4 静态显示

方案二、采用LED动态显示。LED数码管的所有段码连接在同一个8位的I/O口线上,每个LED数码管的位码则单独使用一个I/O口,这样N位动态显示的LED数码管只需占用8+N位I/O口线;特点是占用较少硬件资源(I/O口),功耗相对于静态显示来讲大大降低,但编程较复杂并需要占用系统的软件资源。

位选9位选912345678VCCabacfbdgeecfdgdpdpDS2AMBERCA12345678VCCabacfbdgeecfdgdpdpDS1AMBERCA

图1.2.5动态显示

第 5 页 共 52 页

四相步进电机控制器

单片机的I/O端口较少,且系统要用8个LED数码管,若选静态显示则需占用太多I/O端口。采用动态显示不仅可以减少占用硬件资源,降低功耗,而且本系统单片机能提供足够的软件资源。综上所述,选择方案二。

4.单片机电源部分的设计方案论证与选择

由于本次设计中单片机工作电源为5V,所以需要稳压,对于5V电源这里有以下两种方案。

方案一:用固定式三端稳压器,例如7805系列稳压器输出固定的正电压5V,输入端接电容C1可以进一步滤除纹波,输出端接电容C2能改变负载的瞬态影响,使电路稳定工作C1、1C2最好采用漏电流小的钽电容。如果采用电解电容,则电容要比图中数值增加10倍。 +1VinGND2U17805+5V3++9VD-C10.1uFC20.1uF2+5V-GND图4 固定式三端稳压器图1.2.6 固定式三端稳压器 方案二:虽然7805三端集成稳压管内部有过流、过热和安全区的保护电路,但其输出仍有可能发生过压的危险。因此本电路加了过压保护电路,该电路由稳压管VD3、电阻R3和晶闸管VS组成。 23另外由于7805的最大输出电流为1.5A,可以通过在7805的1脚与VT1的基极相连,47805的2脚与VT1的集电极相连,这样就可输出1.6A~2A的电流。如需更大的电流,可再并联几个大功率三极管。 VD1+1S1885+2SB683VT1VD2C4220u/25V+5V3C3VD36800uF/35VC5R1470R210KCVS9V1S1885C110.022uFVinGNDU178055V/1.6AR34.7KC20.022uFC6-0.1uF20.022uF-GND图1.2.7 可扩流过压保护5V稳压电源 图5 扩流过压的5V稳压电源第 6 页 共 52 页 四相步进电机控制器

综上所述,基于单片机电源只使用到5V的电源,所以不必考虑去调节它的稳压值,再加上第二种方案所用元件较多,性能价格比不高,因此我们采用了第一种方案。

5.红外线通信的设计方案与选择

红外线是波长约大于770nm的不可见光。将发射红外线的发光二极管(LED)和感知红外线的接受模块组合在一起就可以实现红外线通信。设计采用基于PPM的红外线通信方式。应用红外线接收模块通信时,将所使用的红外线设置成如图所示的频率40kHz的方波形式,即1秒钟内断续地发送红外线4万次。这种调制方式被称为脉冲周期调制(PPM)。

方案一、采用脉冲个数编码。不同的脉冲个数代表不同的码,最小为两个脉冲,最大为8个脉冲。为了使接收可靠,第一个码宽为3ms,其余为1ms,遥控码数据帧间隔大于10ms。此种方式易于实现,可靠性佳。

方案二、采用8位数字组成的代码编码。第一个数字为1代表起始位,接下来的三位为遥控码,剩下的4位为停止码。

综上所述,采用方案一的编码实现红外通信。

1.3电机的参数

转速n=60f / ZRN。其中ZR为转子齿数,N为运行拍数,f是控制脉冲的频率。由此可见,反应式步进电动机转速取决于脉冲频率、转子齿数和拍数,而与电压、负载、温度等因素无关。当转子齿数一定时,转子旋转速度与输入脉冲频率成正比,或者说其转速和脉冲频率同步。改变脉冲频率可以改变转速,故可进行无级调速,调速范围很宽。

此设计使用的电机步距角θb=7.5o,所以ZRN=360o/θb=360o/7.5o=48。故n=60f/48。由于可调频率为16~500Hz,所以转速为20~625r/min。

1.4系统组成

经过方案比较与论证,最终确定的系统组成框图如图1.2.8所示。其中单片机作为主控设备控制系统的输入和输出。红外发射和接收模块实现对四相步进电机的较远距离的遥控控制。功率放大驱动电路放大单片机分配的控制脉冲,显示模块则能显示电机当前的运行状态。

控制开关 按键输入 单 片 机 功率放大驱动电路 红外 发射 红外接收 单片机电源 状态显示 四相步进 电 机 单 片 机

图1.2 .8 系统组成方框图

第 7 页 共 52 页

四相步进电机控制器

2.单元电路设计

2.1功率放大驱动电路方案设计

设计电路图如图2.1所示。该单元电路采用两级9014三极管达林顿接法,能很好的满足放大要求。泄放回路采用二极管-电阻方案,发光二极管通过一级三极管放大用来显示通电的相。根据本次采用的步进电机参数,使用9014三极管两极放大能满足驱动要求。参数计算如下:

Ib?(Ui?Ube)/R1?(5?0.7*2)/330?0.011mAIc2??1*?2*Ib?250*250*0.011?687.5mAIc1??1*Ib?250*0.011?2.75mAI0?Ic1?Ic2?687.5?2.75?690.25mA

理论计算的最大输出电流为690.25mA,实际值并没这么大,且电机每一相的运行是断续的,不会给三级管带来太大的负担,所以此方案基本满足步进电机的驱动要求。

VT19013L1LEDR31100AR21R147KVSS2P19014CD1P29014IN1330KL21R7100BLEDR32100BR2247KP39014L3VT39013LEDR33100CR23IN3VT49013LEDR34100DR24IN4R447K330KP79014D4P89014R10100R347K330KL4P59014D3P69014R9100D2P49014R8100IN2R2330K

图2.1 驱动电路电路图

3VT29013E

第 8 页 共 52 页

四相步进电机控制器

2.2显示电路方案设计

采用动态显示的方法实现状态的显示:44—P(双四正转),44—N(双四反转),48—(单双八拍正转),48—N(单双八拍反转),以及频率的显示。本设计单片机系统的状态显示电路如图2.2所示。

U3VCCD7D6D5D4D3D2D1D0S1S2S3S4S5S6S7S8111181714138743KEY4KEY5KEY6KEY7KEY1KEY2D7D6D5D4D3D2D1D074HC373Q7Q6Q5Q4Q3Q2Q1Q0191615129652R10R11R12R13R14R15R16R17470470470470470470470470D1D2KEY3LEOED3D4D5D6D7KEY8D82KBIT8KBIT7KBIT6KBIT5KBIT4KBIT3KBIT2KBIT1R20R21R22R23R24R25R26R2710K10K10K10K10K10K10K10KVCCVCC345VCCVCCVCCVCCVCCVCC117421101174211053ABCDEFGHABCDEFGHQ79012Q69012Q59012Q49012Q39012Q29012Q19012Q0901253LED70LED7SLED71LED7S123412312129869864 图2.2 显示电路电路图 该单元电路主要采用总线来扩展I/O单元,其中有8个共阴LED数码管和一个数据锁存器U3。KBIT1—KBIT7是数码管的位选控制信号, KEY-BEC是键盘输入检测信号。 数码管在系统中是分时扫描控制的,当控制数码管显示时,KBIT1—KBIT7控制八个数码管的位码,KBIT1—KBIT7为低电平,三极管Q0-Q7导通,数码管点亮,显示段码的数据。当键盘控制时,KEY-BEC是连在单片机的T1口上的(该口内部有上拉电阻),给D0-D7输入高电平,控制单片机扫描KEY-BEC口,如果键盘有键按下,与键盘相连的二极管导通,将电平钳制在0.7V,所以只要扫描到KEY-BEC变为高电平,就可以判断有键按下了。 2.3单片机电源电路设计 该电路主要由1个7805芯片U2,1个整流桥D以及一些电阻和电容组成。输出固定的正5V电压,输入端接电容C12可以进一步滤除低次纹波,C3滤出高次谐波。C11能改变负载的瞬态影响。输出端接电容C4和C11再次滤波,使输出电压更稳定。电路如图2.3所示。 VCCS1SW SPSTP1DR23KPOWER(+9V)BRIDGEU2LM7805Vin+5V2VCCJ112CON2GND+C12D9LED470uC30.1u3C11470u+C40.1u 图2.3 单片机电源电路图 TitleSizeBNumber2 Date:File:34511-Apr-2005F:\\下载文件\\学习第 9 页 共 52 页

四相步进电机控制器

2.4红外发射电路设计

此电路用单片机和矩阵式按键实现控制电机运行方式转换及加减速的脉冲发射,单片机采用AT89S52,其采用最小化应用系统设计。发光二极管显示红外发射管是否发射出红外信号。采用了两个红外发射管同时发射红外信号,实现大范围,宽角度发射,保证接收的可靠性。采用矩阵式按键便于扩展功能。电路图如图2.4所示。

VCCJ2654321S51_ISPKB3J3VCCGND12CON2VCCKEY13KB5J1CON9KB1KB2KB3KB4KB5KB6KB7KB8123456789KB6C1XTAL1KB730pFS12MC2XTAL2U2123456781312TT1TT2VCC151431P10P11P12P13P14P15P16P17INT1INT0T1T0EA/VPX1X2RESETRDWRAT89S51RXDTXDALE/PPSEN10113029TT2R44.7KVT29013R522LEDT230pFP00P01P02P03P04P05P06P07P20P21P22P23P24P25P26P2739383736353433322122232425262728KB1KB2KB3KB4KB5KB6KB7KB8C4RESET10uFR18.2KR322TT1R24.7KVT19013LEDT1VCCKB8C3KEY14KEY15KEY16S9KEY9KB4S13S14S15S16S10KEY10S11KEY11S12KEY12MOSIMISOSCKRESETVCCGNDKB1S1KEY1KB2S5KEY5S6KEY6S7KEY7S8KEY8S2KEY2S3KEY3S4KEY4R114.7KR124.7KR134.7KR144.7KC11100u0.01u+MOSIMISOSCKXTAL119XTAL218RESET91716VCC 图2.4 红外发射电路图

3.软件设计

3.1编程语言

本设计中采用汇编语言对单片机进行编程。采用的是自下而上的设计方式,先设计出每一个模块(子程序),然后再慢慢扩大,最后组成整个系统。采用汇编语言编程对编程者有着特殊的要求,它不如用C语言编程轻松,它要求编程者对单片机的内部结构和外围电路非常了解,尤其是对指令系统必须非常熟悉,而且用汇编语言开发软件是比较辛苦的,程序量也比较大,方方面面都需要考虑,一切问题都需要编程者安排。但是使用汇编语言进行编程所占的资源较少,产生代码质量高,且执行完成情况佳。

3.2软件实现方法

软件的设计主要是通过按键查表控制步进电机的转速,并用按键来切换电机的正反转与运行状态,同时,用两个数码管分别显示频率与电机运行状态。本设计可实现对电机转速的调节,运行状态双四拍正转,双四拍反转,单双八拍正转,单双八拍反转之间进行转换。其设计原理框图如图3-1所示。

第 10 页 共 52 页

本文来源:https://www.bwwdw.com/article/vr0v.html

Top