直流电机报告书分解文档格式.docx
《直流电机报告书分解文档格式.docx》由会员分享,可在线阅读,更多相关《直流电机报告书分解文档格式.docx(16页珍藏版)》请在冰豆网上搜索。
1.1直流电机简介
直流电机(directcurrentmachine)是指能将直流电能转换成机械能(直流电动机)或将机械能转换成直流电能(直流发电机)的旋转电机。
它是能实现直流电能和机械能互相转换的电机。
当它作电动机运行时是直流电动机,将电能转换为机械能;
作发电机运行时是直流发电机,将机械能转换为电能。
工作原理直流电机里边固定有环状永磁体,电流通过转子上的线圈产生安培力,当转子上的线圈与磁场平行时,再继续转受到的磁场方向将改变,因此此时转子末端的电刷跟转换片交替接触,从而线圈上的电流方向也改变,产生的洛伦兹力方向不变,所以电机能保持一个方向转动。
国内外发展状况
电力电子技术、功率半导体器件的发展对电机控制技术的发展影响极大,它们是密切相关、相互促进的。
近30年来,电力电子技术的迅猛发展,带动和改变着电机控制的面貌和应用。
驱动电动机的控制方案有三种:
工作在通断两个状态的开关控制、相位控制和脉宽调制控制,在单向通用电动机的电子驱动电路中,主要的器件是晶闸管,后来是用相位控制的双向可控硅。
在这以后,这种半控型功率器件一直主宰着电机控制市场。
到70和80年代才先后出现了全控型功率器件GTO晶闸管、GTR、POWER-MOSFET、IGBT和MCT等。
利用这种有自关断能力的器件,取消了原来普通晶闸管系统所必需的换相电路,简化了电路结构,提高了效率,提高了工作频率,降低了噪声,也缩小了电力电子装置的体积和重量。
后来,谐波成分大、功率因数差的相控变流器逐步由斩波器或PWM变流器所代替,明显地扩大了电机控制的调运范围,提高了调速精度,改善了快速性、效率和功率因数。
直流电机脉冲宽度调制(PulseWidthModulation-简称PWM)调速系统产生于70年代中期。
最早用于不可逆、小功率驱动,例如自动跟踪天文望远镜、自动记录仪表等。
近十多年来,由于晶体管器件水平的提高及电路技术的发展,同时又因出现了宽调速永磁直流电机,它们之间的结合促使PWM技术的高速发展,并使电气驱动技术推进到一个新的高度。
在国外,PWM最早是在军事工业以及空间技术中应用。
它以优越的性能,满足那些高速度、高精度随动跟踪系统的需求。
近八、九年来,进一步扩散到民用工业,特别是在机床行业、自动生产线及机器人等领域中广泛应用。
如今,电子技术、计算机技术和电机控制技术相结合的趋势更为明显,促进电机控制技术以更快的速度发展着。
随着市场的发展,客户对电机驱动控制要求越来越高,希望它的功能更强、噪声更低、控制算法更复杂,而可靠性和系统安全操作也摆上了议事日程,同时还要求马达恒速向变速发展,还要符合全球环保法规所要求的严格环境标准。
进入21世纪后,可以预期新的更高性能电力电子器件还会出现,已有的各代电力电子元件还会不断地改进提高。
1.2课程设计目的
课程设计是培养和锻炼学生在学习完本门课程后综合应用所学理论知识,解决实际工程设计和应用问题的能力的重要教学环节。
它具有动手、动脑和理论联系实际的特点,是培养在校大学生理论联系实际、敢于动手、善于动手和独立自主解决涉设计实践中遇到的各种问题能力的一个重要教学环节。
通过课程设计,要求学生熟悉和掌握微机系统的软件、硬件设计的方法、设计步骤,使学生得到危机开发应用方面的初步训练。
让学生独立或集体讨论设计题目的总体设计方案、编程、软件硬件调试、编写设计报告等问题,真正做到理论联系实际,提高动手能力和分析问题的能力,实现由学习知识到应用知识的初步过度。
通过本次课程设计使学生熟练掌握微机系统与接口扩展电路的设计方法,熟练应用8086汇编语言编写应用程序和实际设计中的硬件调试方法和步骤,熟悉微机系统的硬软件开发工具的使用方法。
1.3课程设计任务和要求
1.3.1课程设计任务
了解直流电机闭环调速的方法,实现直流电机速的功能。
课程设计分为硬件设计和软件设计两个部分,其设计过程可以归纳为以下所述的四个步骤:
1总体设计
本阶段的任务是通过调查研究,查阅资料来初步确定系统结构的总体方案,其中主要设计到硬件和软件的功能划分。
应用系统中软件和硬件具有一定的互换性,即某些功能既可以用硬件实现也可以用软件来实现。
一般来说,用硬件实现的优点是可以提高系统的工作速度,但会增加电路的复杂性和硬件成本;
而用软件代替某些硬件的功能可以使电路简化,便于修改设计,降低硬件成本,但软件工作量增大。
总体设计时,必须在硬件和软件之间权衡,分工明确,然后分头开始设计。
2硬件设计
在Proteus环境设计下,结合课程设计题目,设计硬件原理图,搭建硬件电路。
3软件设计
1、采用模块化程序结构设计软件,可将整个软件分成若干功能模块。
2、画出程序流程图。
3、根据流程图,编写源程序。
4软、硬件联调
在Proteus环境下,仿真调试程序。
1.3.2课程设计要求
1、概述所作题目的意义、本人所做的工作系统的主要功能;
2、进行硬件电路设计及描述;
3、进行软件设计流程及描述;
4、给出源程序代码及注释;
5、画出硬件电路图,给出主程序及流程框图;
6、写出课程设计体会。
二系统方案的选择
2.1电机调速控制模块
方案一:
采用电阻网络或数字电位器调整电动机的分压,从而达到调速的目的。
但是电阻网络只能实现有级调速,而数字电阻的元器件价格比较昂贵。
更主要的问题在于一般电动机的电阻很小,但电流很大;
分压不仅会降低效率,而且实现很困难。
方案二:
采用继电器对电动机的开或关进行控制,通过开关的切换对电动机的速度进行调整。
这个方案的优点是电路较为简单,缺点是继电器的响应时间慢、机械结构易损坏、寿命较短、可靠性不高。
方案三:
采用由L298芯片作为驱动芯片,来驱动电机,具有速度快、功耗小、操作简单的特点,可以很方便地用于单片机接口进行驱动LED的操作。
故采用方案三。
2.2PWM调速工作方式
由于单极性工作制电压波开中的交流成分比双极性工作制的小,其电流的最大波动也比双极性工作制的小,所以我们采用了单极性工作制。
调脉宽的方式有三种:
定频调宽、定宽调频和调宽调频。
我们采用了定频调宽方式,因为采用这种方式,电动机在运转时比较稳定;
并且在采用单片机产生PWM脉冲的软件实现上比较方便。
采用定时器做为脉宽控制的定时方式,这一方式产生的脉冲宽度极其精确,误差只在几个us。
采用软件延时方式,这一方式在精度上不及方案一,特别是在引入中断后,将有一定的误差。
故采用方案一。
三系统硬件电路的选择
3.1硬件电路设计框图
硬件电路结构初步设想由以下4部分组成:
时钟电路、复位电路、单片机、驱动电路。
驱动电路部分采用了以GTR为可控开关元件、L289芯片驱动电路所构成的电路结构。
控制部分采用汇编语言编程控制,AT89C51芯片的定时器产生PWM脉冲波形,通过调节波形的宽度来控制驱动电路中的GTR通断时间,便能够实现对电机速度的控制。
根据硬件系统电路设计框图,对各部分模块的原理进行分析,编写个子模块程序,最终将其组合。
AT89C51单片机简介
AT89C51是一种带4K字节闪烁可编程可擦除只读存储器(FPEROM—FalshProgrammableandErasableReadOnlyMemory)的低电压,高性能CMOS8位微处理器,俗称单片机。
AT89C2051是一种带2K字节闪烁可编程可擦除只读存储器的单片机。
单片机的可擦除只读存储器可以反复擦除100次。
该器件采用ATMEL高密度非易失存储器制造技术制造,与工业标准的MCS-51指令集和输出管脚相兼容。
由于将多功能8位CPU和闪烁存储器组合在单个芯片中,ATMEL的AT89C51是一种高效微控制器,AT89C2051是它的一种精简版本。
AT89C单片机为很多嵌入式控制系统提供了一种灵活性高且价廉的方案。
L298简介:
L298N为SGS-THOMSONMicroelectronics所出产的双全桥步进电机专用驱动芯片(DualFull-BridgeDriver),内部包含4信道逻辑驱动电路,是一种二相b6z838电子-技术资料-电子元件-电路图-技术应用网站-基本知识-原理-维修-作用-参数-电子元器件符号-各种图纸
和四相步进电机的专用驱动器,可同时驱动2个二相或1个四相步进电机,内含二个H-Bridge的高电压、大电流双全桥式驱动器,接收标准b6z838电子-技术资料-电子元件-电路图-技术应用网站-基本知识-原理-维修-作用-参数-电子元器件符号-各种图纸
TTL逻辑准位信号,可驱动46V、2A以下的电机,且可以直接透过电源来调节输出电压;
此芯片可直接由单片机的IO端口来提供模拟时序信号,b6z838电子-技术资料-电子元件-电路图-技术应用网站-基本知识-原理-维修-作用-参数-电子元器件符号-各种图纸
本驱动通过OUT2\OUT3来控制直流电机转动的,IN1\IN2来接受单片机的脉宽信号的。
74HC595芯片是74系列芯片的一种,具有速度快、功耗小、操作简单的特点,可以很方便地用于单片机接口进行驱动LED的操作。
本文介绍这种芯片的特点和使用方法,并给出软硬件的设计实例。
七段发光二极管显示器,又叫LED显示器,因其价格低廉、功耗较小和性能可靠等优点,在各种仪器仪表中得到了广泛的应用。
现在市场上出售的专用LED驱动器种类有很多,且大多数功能较多,但价格相应地也较高,如果用在低成本的简单系统中,不仅是一种资源的浪费,而且增加了产品的成本。
用74HC595芯片驱动LED有以下特点:
速度较快,功耗较小,LED的数目多少随意,既可以控制共阴极的LED显示器,也可以控制共阳极的LED显示器,可以软件控制LED的亮度,还可以在必要的时候关断显示(数据保留),以减小功耗,并可随时唤醒显示。
用它设计的电路,不仅软硬件设计简单,而且功耗低,驱动能力强,占用的I/O口线较少,是一种造价低廉,应用灵活的设计方案。
1 74HC595的使用说明
74HC595内含8位串入、串/并出移位寄存器和8位三态输出锁存器。
寄存器和锁存器分别有各自的时钟输入(SCLK和SLCK),都是上升沿有效。
当SCLK从低到高电平跳变时,串行输入数据(SDA)移入寄存器;
当SLCK从低到高电平跳变时,寄存器的数据置入锁存器。
清除端(CLR)的低电平只对寄存器复位(QS为低电平),而对锁存器无影响。
当输出允许控制(EN)为高电平时,并行输出(Q0~Q7)为高阻态,而串行输出(QS)不受影响。
74HC595最多需要5根控制线,即SDA、SCLK、SLCK、CLR和EN。
其中CLR可以直接接到高电平,用软件来实现寄存器清零;
如果不需要软件改变亮度,EN可以直接接到低电平,而用硬件来改变亮度。
把其余三根线和单片机的I/O口相接,即可实现对LED的控制。
数据从SDA口送入74HC595,在每个SCLK的上升沿,SDA口上的数据移入寄存器,在SCLK的第9个上升沿,数据开始从QS移出。
如果把第一个74HC595的QS和第二个74HC595的SDA相接,数据即移入第二个74HC595中,照此一个一个接下去,可接任意多个。
数据全部送完后,给SLCK一个上升沿,寄存器中的数据即置入锁存器。
此时如果EN为低电平,数据即从并口Q0~Q7输出,把Q0~Q7与LED的8段相接,LED就可以实现显示了。
要想软件改变LED的亮度,只需改变EN的占空比就行了。
3.2信号输入电路
独立式按键就是各按键相互独立,每个按键各接入一根输入线,一根输入线上的按键工作状态不会影响其他输入线上的工作状态。
因此,通过检测输入线的电平状态可以很容易判断哪个按键按下了。
独立式按键电路配置灵活,软件简单。
但每个按键需要占用一个输入口线,在按键数量较多时,需要较多的输入口线且电路结构复杂,故此种键盘适用于按键较少或操作速度较高的场合。
消除键抖动。
一般按键在按下的时候有抖动的问题,即键的簧片在按下时会有轻微的弹跳,需经过一个短暂的时间才会可靠地接触。
若在簧片抖动时进行扫描就可能得出不正确的结果。
因此,在程序中要考虑防抖动的问题。
最简单的办法是在检测到有键按下时,等待(延迟)一段时间再进行“行扫描”,延迟时间为10~20ms。
这可通过调用子程序来解决,当系统中有显示子程序时,调用几次显示子程序也能同时达到消除抖动的目的。
3.3LED显示驱动以及电机控制模块
电机控制转速模块
四系统软件设计
4.1系统软件设计分析
在进行单片机控制系统设计时,除了系统硬件设计外,大量的工作就是如何根据每个生产对象的实际需要设计应用程序。
因此,软件设计在控制系统设计中占重要地位。
键盘向单片机输入相应控制指令,由单片机通过P3.7输出与转速相应的PWM脉冲,另一口输出高电平,驱动L298芯片驱动电动机控制电路,实现电动机转向与转速的控制。
电动机所处速度级以速度档级数表示。
速度分4档,快慢与电动机所处速度级快慢一一对应。
在程序中通过软件产生PWM,送出预设占空比的PWM波形。
PWM(脉冲宽度调制)是一系列周期固定、占空比可调的脉冲系列,由于每个脉冲的高电平时间和低电平时间之和必须等于周期数,所以输出电平的维持时间必须由定时器来控制。
设PWM周期为T,高电平时间为TH,低电平时间为TL,电压为VCC,则输出电压的平均值为:
UAV=VCC*TH/(TH+TL)=VCC*TH/T=aVCC,当VCC固定时,其电压值取决于PWM波形的占空比a,而PWM的占空比由单片机软件内部用于控制PWM输出的寄存器值决定。
软件主要由3部分组成:
主程序、键盘扫描程序、中断处理程序。
主程序流程如图4-1所示。
4.2定时中断处理程序
采用定时方式1,因为单片机使用12M晶振,可产生最高约为65.5ms的延时。
对定时器置初值0xFF9C可定时100us。
当100us定时时间到,定时器溢出则响应该定时中断处理程序,完成对定时器的再次赋值。
4.3PWM脉宽控制
一个脉冲周期可以由高电平持续时间系数c16TimeH和低电平持续时间系数c16TimeL组成,本设计中采用的脉冲频率为10000Hz,可得c16TimeH+c16TimeL=65536,占空比为c16TimeH/(c16TimeH+c16TimeL),因此要实现定频调宽的调速方式,只需通过程序改变全局变量c16TimeH,c16TimeL的值。
PWM控制直流电动机动作程序:
如附录
程序流程框图:
五单片机的调试和结果
5.1仿真结果
未仿真前,初始状态
启动仿真中
启动仿真后
加速后的波形
减速后的波形
六心得体会
2周的课程设计已经接近尾声,在其中我们付出了很多,同时得到的也很多,其中在和组员讨论、查阅资料、询问老师的情况下我们收获很大。
刚开始时设计时,遇到很多麻烦,比如不知道从何做起,不知道具体的方向。
于是我们去图书馆借书查阅资料,去询问老师,老师给我们一一解答,感谢教导我们的张斌、俞鹤、翁志远老师教导我们相关的知识,特别感谢指导教师翁志远老师,在他的陪同下,我们成功的完成了此次的课程设计。
在他的指导下,鞭策次,我们一次次的尝试,一次次的失败,直到最后的成功,我们欣喜若狂。
此次的课程设计不仅提高了我们的动手能力,而且也提高了我们对新事物的新奇,引导我们去思考,引导我们去创新,指导我们在困难时要互相帮助、团结友爱。
最后感谢所有帮助过的人,谢谢!
七参考文献
[1]张鑫.单片微机原理及应用.电子工业出版社2005.8
[2]张毅刚.单片微机原理及应用高等教育出版社2003.12
[3]薛晓书.单片微机原理及接口技术.西安石油大学2002.3
[4]黄智伟朱卫华。
单片机与嵌入式系统应用.南华大学2005.3
[5]付浩AT89C51单片机高速串行输出口设计.阴师范学院2004.10
八附录
#include<
reg52.h>
intrins.h>
#defineLED_DatP0
#defineS_Closs1=0;
s2=0;
s3=0;
s4=0
#defineS1s1=1;
#defineS2s1=0;
s2=1;
#defineS3s1=0;
s3=1;
#defineS4s1=0;
s4=1
sbits1=P2^2;
//第一位数码管
sbits2=P2^3;
//第二位数码管
sbits3=P2^4;
//第三位数码管
sbits4=P2^5;
//第四位数码管
sbitin1=P2^0;
sbitin2=P2^1;
sbitkey1=P3^0;
//正转按键
sbitkey2=P3^1;
//反转按键
sbitkey3=P3^2;
//停止按键
sbitkey4=P3^3;
//加速按键
sbitkey5=P3^4;
//减速按键
unsignedcharcodeseg[10]={0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xf8,0x80,0x90};
unsignedchara=0,b=0;
voiddelay_ms(unsignedintms)
{
unsignedinti=0;
while(ms--){
for(i=110;
i>
0;
i--);
}
}
voidkey()
a=50;
if(key1==0){delay_ms(10);
while(key1==0);
//判断进入正转
while(key2!
=0&
&
key3!
=0){
in1=1;
in2=0;
//正转
delay_ms(a);
in1=0;
delay_ms(100-a);
b=a;
if(key4==0){delay_ms(10);
while(key4==0);
a=a+2;
if(a>
=100)a=100;
}//加速
if(key5==0){delay_ms(10);
while(key5==0);
a=a-2;
if(a<
=5)a=10;
}//减速
}
}
if(key2==0){delay_ms(10);
while(key2==0);
while(key1!
in2=1;
//反转
}
}
if(key3==0){delay_ms(5);
while(key3==0);
in1=0;
b=0;
delay_ms(10);
voidtimer0_inti(void)//定时器初始化,用于扫描数码管
TMOD=0x01;
TH0=(65535-20000)/256;
TL0=(65535-20000)%256;
EA=1;
ET0=1;
TR0=1;
voidLED_Display(unsignedintdat)//数码管显示
unsignedcharge,shi,bai,qian;
ge=dat%10;
shi=dat%100/10;
bai=dat%1000/100;
qian=dat%10000/1000;
S_Clos;
LED_Dat=seg[qian];
S1;
delay_ms
(1);
LED_Dat=seg[bai];
S2;
LED_Dat=seg[shi];
S3;
LED_Dat=seg[ge];
S4;
voidmain(void)
P3=0xff;
timer0_inti();
while
(1)
{
key();
voidTimer0_ISR(void)interrupt1
LED_Display(b*10);