ImageVerifierCode 换一换
格式:DOCX , 页数:11 ,大小:1.23MB ,
资源ID:1642902      下载积分:3 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bdocx.com/down/1642902.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(基于单片机的无刷直流风扇转速测量与调节.docx)为本站会员(b****2)主动上传,冰豆网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰豆网(发送邮件至service@bdocx.com或直接QQ联系客服),我们立即给予删除!

基于单片机的无刷直流风扇转速测量与调节.docx

1、微机原理三级项目项目设计说明书设计题目: 基于单片机的无刷直流风扇转速测量与调节 指导老师: 项目成员: XX大学机电工程系xxxx年xx月xx日一、项目设计要求1、 实现无刷直流电机转速的测量和控制。2、给定转速指令:由PC发送转速值,经单片机控制器,使得电机达到并稳定在指定转速上。 二、硬件设备1、测量风扇型号:品牌:台达,型号:AFB0712HHB 2、51系列单片机学习板 3、PC三、方案设计1、硬件电路P1.1口接PWM波输入,P3.2口接测速脉冲输入USB提供+5V电源,可以实现PC机与开发板的数据通讯和程序下载。数码管显示速度和占空比,按键控制转速和占空比。风扇电路连接:1、 输

2、出信号-转速输出每转输出2个脉冲OC输出,如右图2、 OC输出的特点外加集电极电源和负载;输出幅值任意;3. 输入信号- PWM输入2、 程序流程图说明:程序应用模块化进行设计,主要有初始化模块、显示模块、测速模块和调速模块。编程次序可按此先后进行。(1)、初始化模块:T0工作方式、标志位状态、所用单元初值、中断设置以及初始显示等。(2)、显示模块:显示风扇转速的实测值及其对应的PWM占空比。(3)测速模块:测出2s内风扇的脉冲数,进而求出风扇每分钟的转速。(4)调速模块:通过键盘按键对PWM波占空比的调节,来控制风扇转速的大小。3. 占空比与转速关系:占空比0.250.300.350.400

3、.450.500.550.60转速r/min25043558573587099011401275占空比0.650.700.750.800.850.900.951.00转速r/min13801485159017101815192019852010风扇转速低于250r/min时,由于电压过低,风扇停转,图表中只能测出占空比0.25以上的数据。四、 设计程序:11#include#define uchar unsigned char /0-255#define uint unsigned int /0-65535sbit dula=P26; /数码管段选sbit wela=P27; /数码管位选sb

4、it P1_1=P11; /控制电机I/O口定义sbit P3_4=P34; sbit key_1=P31; /加速键sbit key_2=P33;/减速键sbit key_3=P35;/快加键sbit key_4=P36;/快减键sbit P1_6=P16;/占空比百位int ge,shi,bai,qian; /定义转速各位 int m,n,num,PWM=200,PWMH=100;int zhuansu,PWMH_1,PWMH_2,PWMH_3; /转速uchar code table=0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f; /

5、数码管显示数据表/*=延时函数=*/void delay(uint z)uint x,y;for(x=z;x0;x-)for(y=50;y0;y-);/*=数码管显示函数=*/void display()dula=1;P0=tablege;dula=0;P0=0xff; /消隐wela=1; /显示转速个位P0=0xdf;wela=0;delay(3);dula=1;P0=tableshi;dula=0;P0=0xff; /消隐wela=1; /显示转速十位P0=0xef;wela=0;delay(3);dula=1;P0=tablebai;dula=0;P0=0xff; /消隐wela=1;

6、 /显示转速百位P0=0xf7;wela=0;delay(3);dula=1;P0=tableqian;dula=0;P0=0xff; /消隐wela=1; /显示转速千位P0=0xfb;wela=0;delay(3);dula=1;P0=tablePWMH_2;dula=0;P0=0xff; /消隐wela=1;/显示占空比十位P0=0xfe;wela=0;delay(3);dula=1;P0=tablePWMH_3;dula=0;P0=0xff; /消隐wela=1;/显示占空比个位P0=0xfd;wela=0;delay(3);/*=定时器0 PWM输出,调节转速=*/初始化,每次一溢出

7、时间500usvoid csh()TMOD=0x01;TH0=(65536-461)/256;TL0=(65536-461)%256;IT0=1;/下降沿 EA=1;EX0=1;/打开外部中断0ET0=1;/键盘扫描部分void keyscan()if(key_1=0)delay(3); /延时祛去抖if(key_1=0)PWMH+;if(PWMH=PWM)PWMH=PWM;while(!key_1); /等待按键释放 if(key_2=0)delay(3);if(key_2=0)PWMH-;if(PWMH=PWM)PWMH=PWM;while(!key_3); /等待按键释放 if(key_

8、4=0)delay(3);if(key_4=0)PWMH=PWMH-10;if(PWMH=0)PWMH=0;while(!key_4); /等待按键释放 /*=测量转速,利用外部中断INT0和定时器T0,每2s计算一次=*/定时器0中断部分void T0_time() interrupt 1TH0=(65536-461)/256;TL0=(65536-461)%256;num+;n+;if(num=201)/周期定位200个num=0;if(numPWMH)P1_1=0;/置低电平if(n=3998)/2s时间到,计算转速 n=0;zhuansu=m*30/2;m=0;qian=zhuansu

9、/1000;bai=zhuansu%1000/100;shi=zhuansu%100/10;ge=zhuansu%10; /外部中断0部分void X0_time() interrupt 0EX0=0;m+;EX0=1;/*=显示占空大小=*/void PWMH_()PWMH_1=PWMH/100;PWMH_2=PWMH%100/10;PWMH_3=PWMH%10;if(PWMH_1=1)P1_6=0;/显示占空比百位elseP1_6=1;void main()/主函数P3_4=0;/打通P34控制的按键csh();/初始化子函数 while(1) PWMH_(); keyscan();dis

10、play(); 五、方案总结该项目程序的转速是通过规定时间内求转数的方法测量的,转速显示误差为15转每分钟,调速范围较广(235r/min到2010r/min),基本上能达到了设计任务的要求。但由于学习时间紧迫,此次项目设计中还存在一些不足的地方:一是没有尝试通过串口通信的方法控制风扇的转速;二是没有设计风扇抗干扰的功能。六、感想 在项目实施过程中,协调好两个人的团队比较简单,最重要就是要和搭档进行合理分工然后按时各自完成自己分配的任务,遇到问题时及时联系交流,仔细听取对方观点,分析自己的不足,改进自己方案。在项目实施过程中,我们的分工比较明确,尽管如此,一开始我们还是遇到了一些问题。我们只是

11、学了理论知识,但是对如何控制单片机不是很了解,缺乏硬件电路的知识,遇到许多问题,比如不知道风扇如何接线,在调试过程中转速不稳定等。后来通过翻阅相关书籍以及上网查询,最终解决了一个个难题,得到了最后的程序。但是由于时间紧迫,此次项目设计中还存在一些不足的地方,一是没有尝试通过串口通信的方法控制风扇的转速;二是没有设计风扇抗干扰的功能。但是我们按照电路-软件-仿真-实物的设计过程,在对风扇转速测量与调节的实践中,加深了对单片机的定时器、计数器、中断等模块的理解,也熟悉了Keil等相关软件的使用。回想本次项目,我们对实际运用单片机有了一次感性认识,理论结合实际,为后面的课程打下了基础,也给我们提供了宝贵的项目经验。另一方面,也学到了微机的编程的技术,拥有了一定的编程和软件调试经验。当然,在小组中也学到了如何协调好组内的分工,增强了团队意识。对我们未来工作,运用学过的知识和理论解决实际工程问题提供一定的指导。

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1