直流风扇电机转速测量与PWM控制Word文档格式.docx
《直流风扇电机转速测量与PWM控制Word文档格式.docx》由会员分享,可在线阅读,更多相关《直流风扇电机转速测量与PWM控制Word文档格式.docx(21页珍藏版)》请在冰豆网上搜索。
直流电机的结构如图
1.2直流电机的工作原理
直流电机模型如图1.2所示,磁极N,S间装着一个可以转动的铁磁圆柱体,圆柱体的表面固定着线圈abcd。
当线圈流过电流的时候,线圈受到电磁力的作用,产生旋转。
根据左手定则可知,当流过线圈中电流改变方向时,线圈的受力方向也将改变,因此通过改变线圈电流的方向实现改变电机的方向。
1.3直流电机的主要的技术参数
额定功率Pn:
在额定电流和电压下,电机的负载能力。
额定电压Ue:
长期运行的最高电压。
额定电流Ie:
长期运行的最大电流。
额定转速n:
单位时间里面电机转速的快慢。
励磁电流If:
施加到电极线圈上的电流。
1.4直流电机的调速的技术指标
1.4.1调速范围
调速范围是指最低可控转速到最高可控转速的范围,最低可控转速对最高可控转速的比值,叫电机的调速比。
1.4.2调速的相对稳定性和静差度
所谓相对稳定性,是指负载转矩在给定的范围里面变化所引起的速度的变化,它决定于机械特性的斜率。
静差度(又称静差率)是指当电动机在一条机械特性上运行时,由理想空载到满载时的转速降落与理想空载转速n0的比值。
用百分数表示,即
,在一般的情况下,取额定转矩下的速度落差
,有
1.4.3调速的平滑性
调速的平滑性是在一定的调速范围内,相邻两极速度变化的程度,用平滑系数
表示,即
式中
和
相邻两极,即i级与i-1级的速度
1.4.4调速时的容许输出
调速时的容许输出是指电动机在得到充分利用的情况下,在调速的过程中轴能够输出的功率和转矩。
2单片机的相关知识
2.1单片机的简介
单片机是一种集成在电路芯片,是采用超大规模集成电路技术把具有数据处理能力的中央处理器CPU随机存储器RAM、只读存储器ROM、多种I/O口和中断系统、定时器/计时器等功能(可能还包括显示驱动电路、脉宽调制电路、模拟多路转换器、A/D转换器等电路)集成到一块硅片上构成的一个小而完善的计算机系统。
2.2单片机的发展史
2.2.14位单片机
1975年,美国德克萨斯公司首次推出4位单片机TMS-1000,此后各个计算机公司竞相推出4位单片机。
日本松下公司的MN1400系列。
美国洛克威尔公司的PPS/1系列等。
4位单片机的主要的应用的领域有:
PC机的输入装置。
电池的充电器,运动器材,带液晶显示器的音/视频产品控制器,一般家用电器的控制及遥控器,电子玩具,钟表,计算器,多功能电话等。
2.2.28位单片机
1972年,美国Intel公司首先推出8位微处理器8008,并与1976年9月率先推出MCS-48系列单片机。
在这以后,8位单片机纷纷面世。
例如莫斯特克和仙童公司合作生产的3870系列,摩托罗拉公司生产的6801系列等。
随着集成电路工艺水平的提高,一些高性能的8位单片机相继问世,例如1978年摩托罗拉公司的MC6801。
这类单片机的寻址能力达到64KB,片内ROM的容量达4-8KB,片内除带有并行I/O口,甚至还有A/D转换器的功能。
8位单片机由于性能强大,被广泛用于自动化装置,智能接口,过程控制等各领域。
2.2.316位单片机
1983年以后,集成电路的集成度可达几十万只管/片,各系列16位单片机纷纷面世,这一阶段的代表产品有1983年Intel公司推出的MCS-96系列,1987年Intel公司推出了80C96,美国半导体公司推出了HPC16040。
16位单片机主要用于工业控制,智能仪器仪表等场合。
2.2.432位单片机
随着高新技术智能机器人,激光打印机,图像与数据实时处理,复杂实时控制,网络服务器等领域的应用和发展,20世纪80年代末,推出了32位单片机,如摩托罗拉公司的MC683XX系列。
32位单片机是单片机的发展趋势,随着技术的发展和开发成本的降低,将会和8位单片机并驾齐驱。
2.2.564位单片机
近年来,64位单片机在引擎控制,智能机器人,磁盘控制,算法密集的实时控制场所已有应用。
如英国的Inmos公司的TransputerT800是高性能的64位单片机
2.3单片机的特点
1、单片机的特点
(1)高集成度,体积小,高可靠性
单片机将各功能部件集成在一块晶体芯片上,集成度很高,体积自然也是最小的。
芯片本身是按工业测控环境要求设计的,内部布线很短,其抗工业噪音性能优于一般通用的CPU。
单片机程序指令,常数及表格等固化在ROM中不易破坏,许多信号通道均在一个芯片内,故可靠性高。
(2)控制功能强
为了满足对对象的控制要求,单片机的指令系统均有极丰富的条件:
分支转移能力,I/O口的逻辑操作及位处理能力,非常适用于专门的控制功能。
(3)低电压,低功耗,便于生产便携式产品
为了满足广泛使用于便携式系统,许多单片机内的工作电压仅为1.8V~3.6V,而工作电流仅为数百微安。
(4)易扩展
片内具有计算机正常运行所必需的部件。
芯片外部有许多供扩展用的三总线及并行、串行输入/输出管脚,很容易构成各种规模的计算机应用系统。
(5)优异的性能价格比
单片机的性能极高。
为了提高速度和运行效率,单片机已开始使用RISC流水线和DSP等技术。
单片机的寻址能力也已突破64KB的限制,有的已可达到1MB和16MB,片内的ROM容量可达62MB,RAM容量则可达2MB。
由于单片机的广泛使用,因而销量极大,各大公司的商业竞争更使其价格十分低廉,其性能价格比极高。
2.4AT89S52单片机介绍
AT89S52单片机是一款低功耗、低电压、高性能CMOS8位单片机,片内含8KB(可经受1000次擦写周期)的FLASH可编程可反复擦写的只读程序存储器(EPROM),器件采用CMOS工艺和ATMEL公司的高密度,非易失性存储器(NURAM)技术制造,其输出引脚和指令系统都与MCS-51兼容,片内的FLASH存储器允许在系统内可改编程序或用常规的非易失性存储编程器来编程。
因此,AT89C52是一种功能强,灵活性高且价格合理的单片机,可方便的应用在各个控制领域[1]。
AT89S52具有以下主要性能:
1.8KB可改编程序FLASH存储器;
2.全表态工作:
0~24HZ;
3.256X8字节内部RAM;
4.32个外部双向输入,输出(I、O)口;
如图2.1。
图2-1AT89S52引脚说明
引脚功能说明如下[2]:
VCC:
电源电压。
GND:
地。
P0口:
P0口是一组8位漏极开路型双向I/O口,也即地址/数据线复用口。
作为输出口时,每位能吸收电流的方式驱动8个TTL逻辑门电路,对端口写“1”可作为高阻抗输入端。
在访问外部数据储存器或程序储存器时,这组口线分时转换地址(低8位)和数据总线复用,在访问期间激活内部上拉电阻。
FLASH编程时,P0口接收指令字节,而在程序校验时,输出指令字节,校验时,要求外接上拉电阻。
P1口:
P1是一个带内部上拉电阻的8位双向I/O口,P1的输出缓冲级可驱动(吸收或输出电流)4个TTL逻辑门电路。
对端口写“1”,通过内部的上拉电阻把端口拉到高电平,此时可作为输入口。
作为输入口使用时,因为内部存在上拉电阻,某个引脚被外部信号拉低时会输出一个电流。
FLASH编程和程序校验期间,P1接收低8位地址。
P2口:
P2是一个带内部上拉电阻的8位双向I/O口,P2的输出缓冲级可驱动(吸收或输出电流)4个TTL逻辑门电路。
在访问外部程序储存器或16位地址的外部数据储存器(例如执行MOVX@DPTR指令)时,P2口送出高8位地址数据。
在访问8位地址的外部数据储存器(例如执行MOVX@RI指令)时,P2口线上的内容(也即特殊功能寄存器(SFR)区中R2寄存器的内容),在整个访问期间不改变。
FLASH编程或校验时,P2亦接收高位地址和其他控制信号。
P3口:
P3是一个带内部上拉电阻的8位双向I/O口,P3的输出缓冲级可驱动(吸收或输出电流)4个TTL逻辑门电路。
P3除了作为一般的I/O口线外,更重要的用途是它的第二功能,具体功能说明如表2-1。
P3口还接收一些用于FLASH闪速存储器编程和程序校的控制信号。
RST:
复位输入。
当振荡器工作时,RST引脚出现两个机器周期以上高电平将使单片机复位。
ALE/PROG:
当访问外部程序存储器或数据存储器时,ALE(地址锁存允许)输出脉冲用于锁存地址的低8位字节。
端口引脚
第二功能
P3.0
RXD(穿行输出口)
P3.1
TXD(穿行输入口)
P3.2
INT0(外部中断0)
P3.3
INT1(外部中断1)
P3.4
T0(定时/计数器0)
P3.5
T1(定时/计数器0)
P3.6
WR(外部数据写选通)
P3.7
RD(外部数据读选通)
表3-1P3口的第二功能表
即使不访问外部存储器,ALE仍以是时钟振荡频率的1/6输出固定的正脉冲信号,因此他可对外输出时钟或用于定时目的。
要注意的是:
每当访问外部数据存储器时将跳过一个ALE脉冲。
对FLASH存储器编程期间,该引脚还用于输入编程脉冲(PROG)。
如有必要,可通过对特殊功能寄存器(SFR)区中的8EH单元的D0位置位,可禁止ALE操作。
该位置位后,只有一条MOVX和MOVC指令ALE才会被激活。
此外,该引脚会被微弱拉高,单片机执行外部程序时,应设置ALE无效。
PSEN:
程序储存允许(PSEN)输出是外部程序存储器的读选通信号,当AT80C51由外部程序存储器取指令(或数据)时,每个机器周期两次PSEN有效,即输出两个脉冲。
在此期间,当访问外部数据存储器,这两次有效的PSEN信号不出现。
EA/VPP:
外部访问允许。
欲使CPU仅访问外部程序储存器(地址为0000H-FFFFH),EA端必须保持低电平(接地)。
需要注意的是:
如果加密位LB1被编程,复位时内部会锁存EA端状态。
如EA端为高电平(Vcc端),CPU则执行内部程序储存器中的指令。
FLASH储存器编程时,该引脚加上+12V的编程允许电源Vpp,当然这必须是该器件是使用12v编程电压。
XTAL1:
振荡器反相放大器的及内部时钟发生器的输入端。
XTAL2:
振荡器反相放大器的输出端
3硬件电路的设计
对题目进行深入的分析和思考,可以将整个模块分为以下几个部分:
控制部分,隔离电路,驱动电路和负载的续流电路。
系统的框图如图3.1所示。
3.1控制电路的设计
控制电路主要由单片机来控制,编写一段程序使单片机发出的PWM脉冲来实现对驱动的控制。
新一代的单片机增加了很多的功能,其中包括PWM功能。
单片机通过初始化设置,使其能自动的发出PWM脉冲波,只有在改变占空比的时候CPU才干预。
3.2隔离电路的设计
隔离电路主要作用是防止驱动电路中的电流过大,与单片机直接相连是可能会烧毁单片机而加的保护性电路。
其电路图如下图3.2所示。
其中2脚分别接单片机的P1.4口。
电阻起限流左右。
电阻R28阻值为510Ω。
其工作原理如下:
当电机中的电压正常时,发光二极管导通,发光使光敏三极管导通,电路接通正常工作;
当电路中电压很高时,发光二极管被击穿,电路不导通,从而起到保护单片机的作用。
3.4续流电路的设计
由于电机具有较大的感性,电流不能突变,若忽然将电流切断将在功率管两端产生巨大的电压,损坏器件。
我们应用二极管来续流,利用二极管的单向导通性。
二极管的选用必须要根据PWM的频率和电机的电流来决定。
二极管要有足够迅速的恢复时间和足够的电流承受能力。
为保护芯片而加上续流电路,其电路原理图如图3.7所示
3.5红外测速部分电路的设计
红外测速部分,R17用来限制发射二极管的电流。
发射管的电流大则发射功率大,但不能超过它的极限电流,它的极限输入正向电流为50mA。
3.6电机控制正反转电路设计
H桥部分控制电路设计
知道通过调节直流电机的电压可以改变电机的转速,但是一般我们设计的电源大都是固定的电压,而且模拟可调电源不易于单片机控制,数字可调电源设计麻烦。
所以这里用脉宽调制(PWM)来实现调速。
方波的有效电压跟电压幅值和占空比有关,我们可以通过站空比实现改变有效电压。
一般用软件模拟PWM可以有延时和定时两种方法,延时方法占用大量的CPU,所以这里采用定时方法。
直流电机旋转方向
一般利用H桥电路来实现调速。
H桥驱动电路:
图4.12中所示为一个典型的直流电机控制电路。
电路得名于“H桥驱动电路”是因为它的形状酷似字母H。
4个三极管组成H的4条垂直腿,而电机就是H中的横杠(注意:
图4.12及随后的两个图都只是示意图,而不是完整的电路图,其中三极管的驱动电路没有画出来)。
如图所示,H桥式电机驱动电路包括4个三极管和一个电机。
要使电机运转,必须导通对角线上的一对三极管。
根据不同三极管对的导通情况,电流可能会从左至右或从右至左流过电机,从而控制电机的转向。
图4.12H桥驱动电路
要使电机运转,必须使对角线上的一对三极管导通。
例如,如图4.13所示,当Q1管和Q4管导通时,电流就从电源正极经Q1从左至右穿过电机,然后再经Q4回到电源负极。
按图中电流箭头所示,该流向的电流将驱动电机顺时针转动。
当三极管Q1和Q4导通时,电流将从左至右流过电机,从而驱动电机按特定方向转动(电机周围的箭头指示为顺时针方向)。
图4.13H桥电路驱动电机顺时针转动
图4.14所示为另一对三极管Q2和Q3导通的情况,电流将从右至左流过电机。
当三极管Q2和Q3导通时,电流将从右至左流过电机,从而驱动电机沿另一方向转动(电机周围的箭头表示为逆时针方向)。
图4.14H桥驱动电机逆时针转动
实际电路图如下图所示:
3.7显示设计
LED数码管是一种半导体发光器件,其基本单元是发光二极管,通过对其不同的管脚输入相对的电流,会使其发亮,从而显示出数字。
可以显示:
时间、日期、距离等可以用数字代替的参数。
数码管按段数分为七段数码管和八段数码管,八段数码管比七段数码管多一个发光二极管单元(多一个小数点显示);
按能显示多少个“8”可分为1位、2位、4位等等数码管;
按发光二极管单元连接方式分为共阳极数码管和共阴极数码管。
共阳极数码管是指将所有发光二极管的阳极接到一起形成公共阳极(COM)的数码管。
共阳极数码管在应用时应将公共极COM接到+5V,当某一字段发光二极管的阴极为低电平时,相应字段就点亮。
当某一字段的阴极为高电平时,相应字段就不亮。
动态驱动是将所有数码管的8个显示笔划"
a,b,c,d,e,f,g,dp"
的同名端连在一起,另外为每个数码管的公共极COM增加位选通控制电路,通过由各自独立的I/O线控制,当单片机的P0口输出字形码时,所有数码管都接收到相同的字形码,但究竟是那个数码管会显示出字形,取决于单片机对P2.4-P2.7位选通COM端电路的控制,所以我们只要将需要显示的数码管的选通控制打开,该位就显示出字形,没有选通的数码管就不会亮。
通过分时轮流控制各个数码管的COM端,就使各个数码管轮流受控显示,这就是动态驱动。
在本设计中采用了四位七段数码管,用动态驱动来显示距离的值,如图5所示。
3.8整个电路原理图
5结束语
通过本次课程设计,使我学到了许多书本上无法学到的知识,也使我深刻领会到单片机技术应用领域的广泛。
不仅让我对我学过的单片机知识的巩固,同时也对单片机这门课产生了很大的兴趣,在课程设计的之中,体会良多,收获很大。
主要有以下方面:
1.巩固了书本上学习的知识,通过本次的课程设计,对书本上面的知识更加的了解,也对编写程序有了一定的认识。
2.在本次的课程设计中,我进一步加强了自己的动手的能力和运用专业知识的能力,从中学到如何去思考和解决问题
3.通过本次的课程设计,让我了解到单片机技术对当今人们生活的重要性。
同时这次课程设计也让我明白不管做什么事都要脚踏实地,刻苦努力的去做。
参考文献
[1].何立明,单片机中级教程[M]北京:
北京航天航空大学出版社2006.10
[2]邹久朋,80C51单片机实用技术[M]北京航天航空大学出版社2008.04
[3]刘湘涛,江世明单片机原理与应用[M]北京:
电子工业出本社2007.04
[4]李全利单片机原理及接口技术(第二版)高等教育出版社2009.01
源程序代码:
/****************************************************
=========直流电机控制+速度显示==========
****************************************************/
#include<
reg52.h>
//头文件
#defineucharunsignedchar//宏定义
#defineuintunsignedint
#defineCYCLE10//定义PWM的周期T为10ms
ucharcodetable[]={0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xf8,0x80,0x90,0Xff,0xc6,0x88};
//0-9R共阳数码管段选数据
/***************************************************
端口定义
***************************************************/
sbitPWM1=P1^4;
//PWM输出口1(电机正转)
sbitPWM2=P1^3;
//PWM输出口2(电机反转)
sbitK1=P1^0;
//加速
sbitK2=P1^1;
//减速
sbitK3=P1^2;
//正反转
//sbitW1=P2^3;
//数码管位选
/***************************************************/
ucharPWM_ON=0;
//PWM高电平时间
ucharcount=0;
//中断计时
ucharnum=0;
ucharnum1=0;
//中断时间计数
uintnum2=0;
//外部中断次数
ucharflat=0;
//正反转标示位
ucharflag=0;
//刷新数据标示位
sbitW0=P2^6;
//位选口定义
sbitW1=P2^5;
sbitW2=P2^4;
sbitW3=P2^7;
函数名称:
延时子函数
函数功能:
按键消抖
voiddelayms(uintxms)
{
uinti,j;
for(i=xms;
i>
0;
i--)
for(j=110;
j>
j--);
}
函数名称:
按键子函数
voidkey()
if(K1==0)//加速键
{
delayms(5);
if(K1==0)
{
while(!
K1);
if(num<
3)
num++;
}
}
if(K2==0)//减速键
if(K2==0)
K2);
if(num>
0)
num--;
if(K3==0)//电机正反转按键