基于AVR单片机的步进电机控制器设计毕业设计.docx
《基于AVR单片机的步进电机控制器设计毕业设计.docx》由会员分享,可在线阅读,更多相关《基于AVR单片机的步进电机控制器设计毕业设计.docx(51页珍藏版)》请在冰豆网上搜索。
基于AVR单片机的步进电机控制器设计毕业设计
□毕业实习□毕业设计□毕业论文
题目:
基于AVR单片机的
步进电机控制器设计
年级:
2005级
专业:
机电一体化技术
毕业设计(论文)原创性声明和使用授权说明
原创性声明
本人郑重承诺:
所呈交的毕业设计(论文),是我个人在指导教师的指导下进行的研究工作及取得的成果。
尽我所知,除文中特别加以标注和致谢的地方外,不包含其他人或组织已经发表或公布过的研究成果,也不包含我为获得及其它教育机构的学位或学历而使用过的材料。
对本研究提供过帮助和做出过贡献的个人或集体,均已在文中作了明确的说明并表示了谢意。
作者签名:
日 期:
指导教师签名:
日 期:
使用授权说明
本人完全了解大学关于收集、保存、使用毕业设计(论文)的规定,即:
按照学校要求提交毕业设计(论文)的印刷本和电子版本;学校有权保存毕业设计(论文)的印刷本和电子版,并提供目录检索与阅览服务;学校可以采用影印、缩印、数字化或其它复制手段保存论文;在不以赢利为目的前提下,学校可以公布论文的部分或全部内容。
作者签名:
日 期:
学位论文原创性声明
本人郑重声明:
所呈交的论文是本人在导师的指导下独立进行研究所取得的研究成果。
除了文中特别加以标注引用的内容外,本论文不包含任何其他个人或集体已经发表或撰写的成果作品。
对本文的研究做出重要贡献的个人和集体,均已在文中以明确方式标明。
本人完全意识到本声明的法律后果由本人承担。
作者签名:
日期:
年月日
学位论文版权使用授权书
本学位论文作者完全了解学校有关保留、使用学位论文的规定,同意学校保留并向国家有关部门或机构送交论文的复印件和电子版,允许论文被查阅和借阅。
本人授权 大学可以将本学位论文的全部或部分内容编入有关数据库进行检索,可以采用影印、缩印或扫描等复制手段保存和汇编本学位论文。
涉密论文按学校规定处理。
作者签名:
日期:
年月日
导师签名:
日期:
年月日
指导教师评阅书
指导教师评价:
一、撰写(设计)过程
1、学生在论文(设计)过程中的治学态度、工作精神
□优□良□中□及格□不及格
2、学生掌握专业知识、技能的扎实程度
□优□良□中□及格□不及格
3、学生综合运用所学知识和专业技能分析和解决问题的能力
□优□良□中□及格□不及格
4、研究方法的科学性;技术线路的可行性;设计方案的合理性
□优□良□中□及格□不及格
5、完成毕业论文(设计)期间的出勤情况
□优□良□中□及格□不及格
二、论文(设计)质量
1、论文(设计)的整体结构是否符合撰写规范?
□优□良□中□及格□不及格
2、是否完成指定的论文(设计)任务(包括装订及附件)?
□优□良□中□及格□不及格
三、论文(设计)水平
1、论文(设计)的理论意义或对解决实际问题的指导意义
□优□良□中□及格□不及格
2、论文的观念是否有新意?
设计是否有创意?
□优□良□中□及格□不及格
3、论文(设计说明书)所体现的整体水平
□优□良□中□及格□不及格
建议成绩:
□优□良□中□及格□不及格
(在所选等级前的□内画“√”)
指导教师:
(签名)单位:
(盖章)
年月日
评阅教师评阅书
评阅教师评价:
一、论文(设计)质量
1、论文(设计)的整体结构是否符合撰写规范?
□优□良□中□及格□不及格
2、是否完成指定的论文(设计)任务(包括装订及附件)?
□优□良□中□及格□不及格
二、论文(设计)水平
1、论文(设计)的理论意义或对解决实际问题的指导意义
□优□良□中□及格□不及格
2、论文的观念是否有新意?
设计是否有创意?
□优□良□中□及格□不及格
3、论文(设计说明书)所体现的整体水平
□优□良□中□及格□不及格
建议成绩:
□优□良□中□及格□不及格
(在所选等级前的□内画“√”)
评阅教师:
(签名)单位:
(盖章)
年月日
教研室(或答辩小组)及教学系意见
教研室(或答辩小组)评价:
一、答辩过程
1、毕业论文(设计)的基本要点和见解的叙述情况
□优□良□中□及格□不及格
2、对答辩问题的反应、理解、表达情况
□优□良□中□及格□不及格
3、学生答辩过程中的精神状态
□优□良□中□及格□不及格
二、论文(设计)质量
1、论文(设计)的整体结构是否符合撰写规范?
□优□良□中□及格□不及格
2、是否完成指定的论文(设计)任务(包括装订及附件)?
□优□良□中□及格□不及格
三、论文(设计)水平
1、论文(设计)的理论意义或对解决实际问题的指导意义
□优□良□中□及格□不及格
2、论文的观念是否有新意?
设计是否有创意?
□优□良□中□及格□不及格
3、论文(设计说明书)所体现的整体水平
□优□良□中□及格□不及格
评定成绩:
□优□良□中□及格□不及格
(在所选等级前的□内画“√”)
教研室主任(或答辩小组组长):
(签名)
年月日
教学系意见:
系主任:
(签名)
年月日
摘要
介绍了步进电动机的发展史,及国内的现状和步进电动机未来的应用前景。
并且阐述了步进电动机转速、角度、转矩的控制原理。
本文阐述了一种步进电机控制器的设计方案,并绘制了原理图和PCB板图,撰写了程序源代码。
实现了对步进电动机转速、角度的控制,并完成了实物的制作。
这期间主要使用protel99se软件绘制原理图和制板,使用proteus7.1软件进行程序代码的仿真和功能的理论验证。
最后通过硬件的调试验证程序代码的实际功能,完成对控制器的设计。
关键词
AVR单片机;步进电动机;控制器。
Abstract
Introductionstepenterelectricmotorofdevelopmenthistory,andlocalpresentconditionandstepenterelectricmotorfutureofapplicationforeground.Andelaboratedasteptoenterelectricmotortoturnsoon,angle,turnJuofcontrolprinciple.Thistextelaboratedakindofstepenterelectricalengineeringcontrollerofdesignproject,anddrewprinciplediagramandPCBplankdiagram,composedaproceduresourceacode.Realizationtostepentertheelectricmotorturnsoon,angleofcontrol,andcompletionrealobjectofcreation.Thisperiodmainusagetheprotel99sethesoftwaredrawprinciplediagramandmakeplank,usageproteus7.1softwarescarryonanimitateofprocedurecodetruewiththetheoriesofthefunctionverification.Theendexperimentcertificateprocedureacodethroughanadjustofhardwareofactualfunction,completiondesigncontroller.
Keywords
AVRMCU;StepperMotor;Controller.
摘要………………………………………………………………………………………………Ⅰ
Abstract…………………………………………………………………………………………Ⅱ
第一章、引言………………………………………………………………………………………1
1.1步进电机发展史…………………………………………………………………………1
1.2我国步进电机发展………………………………………………………………………1
1.3步进电机应用的前景……………………………………………………………………1
第二章、步进电机控制系统………………………………………………………………………2
2.1步进电机控制系统………………………………………………………………………2
2.2控制单元…………………………………………………………………………………2
2.3驱动电路…………………………………………………………………………………2
2.4通信端口…………………………………………………………………………………3
2.5其它………………………………………………………………………………………3
第三章、Atmega16L单片机………………………………………………………………………4
3.1Atmega16L主要功能……………………………………………………………………4
3.2Atmega16L引脚功能……………………………………………………………………4
第四章、控制器电路图……………………………………………………………………………6
第五章、步进电动机原理与控制…………………………………………………………………8
5.1步进电动机的结构………………………………………………………………………8
5.2步进电动机的控制原理…………………………………………………………………8
5.3L297/L298………………………………………………………………………………8
5.3.1L297芯片简介……………………………………………………………………8
5.3.2L298芯片简介……………………………………………………………………9
5.3.3L297/298步进电机控制…………………………………………………………9
5.3.4控制机制…………………………………………………………………………10
第六章、实现……………………………………………………………………………………11
6.1main主程序流程图……………………………………………………………………11
6.2程序代码………………………………………………………………………………12
第七章、结构图…………………………………………………………………………………30
结论………………………………………………………………………………………………31
参考文献…………………………………………………………………………………………32
致谢………………………………………………………………………………………………33
附录………………………………………………………………………………………………34
第一章、引言
1.1步进电机发展史
步进电机又称电动机或阶跃电动机,国外一般称为Stepmotor或Steppingmotor等。
步进电机的机理是基于最基本的电磁铁作用,其原始模型起源于1830年至1860年间。
1870年前后开始以控制为目的的尝试,应用于氩弧灯的电极输送机构中。
这被认为是最初的步进电动。
此后,在电话自动交换机中广泛使用了步进电动机。
不久又在缺乏交流电源的船舶和飞机等独立系统中广泛使用。
20世纪60年代后期,随着永磁性材料的发展,各种实用性步进电动机应运而生,而半导体技术的发展则推进了步进电动机在众多领域的应用。
在近30年间,步进电动机迅速地发展并成熟起来。
从发展趋向来讲,步进电动机已经能与直流电动机、异步电动机,以及同步电动机并列,从而成为电动机的一种基本类型。
1.2我国步进电机发展
我国步进电动机的研究及制造起始于本世纪50年代后期。
从50年代后期到60年代后期,主要是高等院校和科研机构为研究一些装置而使用或开发少量产品。
这些产品以多段结构三相反应式步进电动机为主。
70年代初期,步进电动机的生产和研究有所突破。
除反映在驱动器设计方面的长足进步外,对反应式步进电动机本体的设计研究发展到一个较高水平。
70年代中期至80年代中期为成品发展阶段,新品种高性能电动机不断被开发。
自80年代中期以来,由于对步进电动机精确模型做了大量研究工作,各种混合式步进电动机及驱动器作为产品广泛利用。
1.3步进电机的应用前景
目前,随着电子技术、控制技术以及电动机本体的发展和变化,传统电机分类间的界面越来越模糊。
步进电机必然会成为机电一体化元件组件的必然趋势。
由于步进电机具有控制方便、体积小等特点,所以在数控系统、自动生产线、自动化仪表、绘图机和计算机外围设备中得到广泛应用。
微电子学的迅速发展和微型计算机的普及与应用,为步进电动机的应用开辟了广阔前景,使得以往用硬件电路构成的庞大复杂的控制器得以用软件实现,既降低了硬件成本又提高了控制的灵活性,可靠性及多功能性。
市场上有很多现成的步进电机控制机构,但价格都偏高。
应用SGS公司推出的L297和L298两芯片可方便的组成步进电机驱动器,并结合Atmega16L单片机可以构成很好的步进电机控制系统。
第二章、步进电机控制系统
2.1步进电动机控制系统
步进电动机本体、步进电动机驱动电路和控制单元构成步进电动机系统不可分割的三大部分。
系统框图见下图2-1:
图2-1步进电动机系统框图
2.2控制单元
控制单元、驱动电路为控制系统的核心部分。
控制单元是整个系统最核心的部分,是系统的指挥中心。
用于协调各部分的运行,主要负责接收通信端口或输入电路送来的信息,并对其进行识别,译码,并做出相应的动作,发出控制信号用以控制步进电动机。
控制单元实质上是具有处理能力的微处理器芯片。
控制单元可以由:
单片机、DSP、PLC等充当。
本文选用由ATEML公司生产的Atmega16l单片机。
2.3驱动电路
驱动电路是负责将控制单元送来的微电流信号进行放大用以驱动步进电动机运转,驱动电路实质上是功率放大器。
常见的驱动电路:
单电压型功放电路、高低压切换型功放电路、斩波恒流功放电路等再就是采用专用的集成芯片。
本文采用L297/L298芯片,由这两种芯片构成的驱动电路具有控制方便、精度高、并且不需要外围扩展。
2.4通信端口
通信端口是步进电机控制器与上位机(主要是指计算机)进行通信的接口,PC机串口采用的通信标准RS-232标准。
使用单片机的USART端口与计算机的串口(9芯)相连进行通信。
2.5其它
显示屏:
人机交互的窗口,使用JHD162A液晶屏。
输入电路:
用于输入控制信息,告诉控制器如何运转。
第三章、Atmega16L单片机
Atmega16L是由ATMEL公司生产的高性能、低功耗的8位AVR®微处理器芯片,具有16KB系统内可编程Flash。
3.1Atmega16L主要功能
Atmega16L单片机的功能及特点简述如下:
1、16KB的系统内编程flash、512B的EEPROM、1KB的SRAM;
2、四通道的PWM;
3、两个可编程串行USART;
4、可工作于主机/从机模式的SPI;
5、具有独立片内振荡器的可编程看门狗定时器;
6、片内/片外中断源;
7、32个双向I/O端口,可单独控制;
8、TWI模块;
9、3个定时计数器等。
3.2Atmega16L引脚功能
Atmega16L双列直插式(PDIP)引脚如图3-1:
图3-1Atmega16L(PDIP)图
引脚功能简述如下:
A/VCC:
模拟/数字电源;
AREF:
A/D转换参考电压;
XTAL1/2:
晶振;
RESET:
复位;
AREF:
A/D转换参考电压;
PA~PD:
双向I/O口;
TXD:
USART输出引脚;
RXD:
USART输入引脚;
OC1A:
PWM波形输出端;
注:
USART,是一个高度灵活的串行通讯设备,通用同步和异步串行接收器和转发器的英文缩写。
第四章、控制器电路图
原理图说明:
本原理图,用Protel99se绘制。
以总路线和网络标号连接,即相同的的网络标号具有电气连接。
Jrs----------RS-232串口;
Rp-----------Vref调节电阻;
LM2575-------稳压片;
JVCC---------电源接入口(俗称火牛头);
Jlcd---------JHD162A液晶屏接口;
JM-----------步进电机接线口;
JTAG---------仿真下载器连接口;
LED_B--------电源指示;
MAX-202------电平转换芯片;
L297/298-----构成相序产生电路和驱动电路;
放大图见附录。
第五章、步进电动机原理与控制
从广义上讲,步进电动机的类型分为机械式、电磁式和组合式三大类型。
5.1步进电动机的结构(图5-1)
图5-1HB型步进电动机结构示意图
5.2步进电动机的控制原理
步进电机是一种将电脉冲信号变为相应的直流位移的数字/模拟变换器。
每当电机绕组接收一个脉冲时,转子就转过一个相应的角度(步距)。
步进电机的角位移量和输入脉冲的个数严格成正比。
在时间上与输入脉冲同步,因而只要控制输入脉冲的数量、频率和电机绕组的相序,即可获得所需要的转速和转动方向。
5.3L297/L298
5.3.1L297芯片简介
L297芯片是一种硬件环分集成芯片,它可产生四相驱动信号,用于两相双极或四相单极步进电动机的控制。
它的心脏部分是一组译码器它能产生各种所需的相序,这一部分是由两种输入模式控制,方向控制(CW/CCW)和HALF/FULL,步进式时钟CLOCK将译码器从一阶梯推进至另一阶梯。
译码器有四个输出点连接到输出逻辑部分,提供抑制和斩波功能所需的相序。
L297能产生三种相序信号,对应于三种不同的工作方式:
即半步方式(HALFSTEP);基本步距(FULLSTEP)一相激励方式;基本步距两相激励方式。
L297另一个重要组成是由两个PWM斩波器来控制相绕组电流,实现恒流斩波控制以获得良好的矩频特性。
5.3.2L298芯片简介
L298芯片是一种高压、大电流双全桥式驱动器,其设计是为接受标准TTL逻辑电平信号和驱动电感负载的,例如继电器、圆筒形线圈、直流电机和步进电机,具有两抑制输入来使器件不受输入信号影响。
每桥的三级管的射极是连接在一起的,相应外接线端可用来连接外设传感电阻。
可安置另一输入电源,使逻辑能在低压下工作。
L298芯片是具有15个引出脚的多瓦数直插封闭的集成芯片。
5.3.3L297/298步进电机的控制
L297/298的连接如下图5-2:
图5-2L297/298连接图
这里我只使用:
半步工作方式和两相激励的基本步距工作方式。
两种工作方式见下表5-1:
工作方式
半步工作方式
两相激励基本步距
引脚状态
HALF/FULL=1,CONTROL=1
HALF/FULL=0,CONTROL=1
输出
波形
表5-1L297半步/两相激励基本步距工作方式
注:
采用基本步距一相激励,存在一个缺点,在电流切换过程即通电状态改变过程中,有一瞬间可能所有的定子控制绕组都不通电,电磁转矩瞬间为零,这就使得电磁转距在电机运行中波动很大。
所以我不采用这种工作模式。
5.3.4控制机制
L297/298组成的完整系统,通过不同的连接可以驱动两相步进电动和驱动四相步进电机(可承受的最高电压为45V,每相电流可达2A)。
单片机(简称mcu)发出时钟信号、正反转信号、工作模式信号、复位信号、使能信号及控制信号。
CW/CCW控制电机的转向,取1和取0时转向相反。
CLOCK为步进脉冲信号输入端,在每一个脉冲的下降沿,电机产生一步步进。
HALF/FULL为半步或基本步距模式设置,为1时是半步模式,为0时是基本步距。
(具体组合方式见表5-1)CONTORL斩波控制,当为0时,控制INH1和INH2;当为1时控制ABCD。
ENABLE使能输入,当为0时,INH1、INH2、A,B,C和D都为0。
RESET输入,当为0时,脉冲分配器回到初状态(HOME)。
L297通过控制L298双H集成电路,来驱动步进电机。
电路中,L297的15引脚上的两个电阻用来调节斩波器电路的参考电压。
该电压通过管脚13、14所反馈的电位的大小比较,来确定是否进行斩波控制,以达到控制电机绕组电流峰值、保护步进电机的目的。
综上所述:
步进电机的转速取决于CLOCK的脉冲频率,角位移取决于CLOCK的脉冲个数,转矩大小则取决于参考电压Vref的大小。
第六章、实现
6.1main主程序流程图
6.2程序代码
//***************************head.h************************************
#ifndef_HEAD_H
#define_HEAD_H
#include
#include
#include
#include
#include
#defineTOPOCR1A
#definePWMCONREG1TCCR1A
#definePWMCONREG2TCCR1B
#definePWM_IODDRD|=_BV(PD5)
#defineL297_DIRPORTD
#defineL297_OUTDDRD|=0xfc
#defineRESET0X40
#defineHF0X08
#defineCC0X10
#defineCONTROL0X80
#defineS_RESETL297_DIR|=RESET
#defineC_RESETL297_DIR&=~RESET
#defineHALFL297_DIR|=HF
#defineFULLL297_DIR&=~HF
#defineCWL297_DIR|=CC
#defineCCWL297_DIR&=~CC
#defineS_CONTROLL297_DIR|=CONTROL
#defineC_CONTROLL297_DIR&=~CONTROL
#defineADC_OUTDDRA//ADC模数转换寄存器宏
#defineADCWAYREGADMUX
#defineADCCONREGADCSRA
#def