基于PWM的电机调速系统_第1页
基于PWM的电机调速系统_第2页
基于PWM的电机调速系统_第3页
基于PWM的电机调速系统_第4页
基于PWM的电机调速系统_第5页
已阅读5页,还剩12页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、基于PWM勺电机调速系统实验目的:1. 学会并掌握可keil软件的使用;2. 学会并掌握protues软件的使用;3. 通过实验巩固单片机相关知识和检验自身动手能力 实验要求:掌握单片机相关知识,禾U用调PWM占空比的方式来控制直流电机的转速, 并 且在led数码管上显示转速。实验设备和仪器:1.89C51单片机最小系统2. 直流电机3. 示波器 实验内容:本次实验设计是由小组五个成员共同完成基于PWM勺电机调速系统并完成实物搭建和撰写实验报告。本次实验小组共提供了两个方案,方案一和方案二, 两个方案各自具有优缺点,详细内容会在下面给出。方案一实验步骤:1.利用protues画电路图,电路图如

2、图1所示:2.根据电路图编写C语言代码: 代码如下:#in elude <reg51.h>sbit PWM=P2A7;图1 :方案一电路图sbit CS3=P2A3;sbit CS2=P2A2;sbit CS1=P2A1;sbit CS0=P2A0;sbit key1=P1A0;sbit key2=P1Al;sbit key3=P1A2;sbit key4=PM3;un sig ned char timerl;charun sig nedtab=0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xf8,0x80,0x90;void Time1Co nfig()

3、;void ma in (void)Time1Co nfig();while(1)if(timer1>100) PWM周期为 100*0.5mstimer1=0;if(key1)if(timer1 <30)/改变30这个值可以改变直流电机的速度PWM=1;elsePWM=0;CS0=0;CS1=0;CS2=1;CS3=0;P0=tab3;P0=0xff;CS0=0;CS1=0;CS2=0;CS3=1;P0=tab0;P0=0xff;else if(key2)if(timer1 <50)PWM=1; elsePWM=O;CS0=0;CS1=0;CS2=1;CS3=0; PO=t

4、ab 5;P0=0xff;CS0=0;CS1=0;CS2=0;CS3=1; P0=tab0;P0=0xff;else if(key3)if(timer1 <80)PWM=1; elsePWM=0;CS0=0;CS1=0;CS2=1;CS3=0; P0=tab8;P0=0xff;CS0=0;CS1=0;CS2=0;CS3=1; P0=tab0;P0=0xff;else if(key4)if(timer1 <100)PWM=1; elsePWM=0;CS0=0;CS1=1;CS2=0;CS3=0;P0=tab1;PO=Oxff;CS0=0;CS1=0;CS2=1;CS3=0;PO=ta

5、bO;P0=0xff;CS0=0;CS1=0;CS2=0;CS3=1;P0=tab0;P0=0xff;void TimelCo nfig()TMOD|= 0x10; /设置定时计数器工作方式1为定时器/-定时器赋初始值,12MHZF定时0.5ms-TH1 = 0xFE;TL1 = 0x0C;ET1 = 1;EA = 1;TR1 = 1;/开启定时器1中断/开启定时器为定时器1的中断号void Time1(void) in terrupt 3 /3 TH1 = 0xFE; / 重新赋初值 TL1 = 0x0C;timer1+;3.实验仿真,部分仿真结果如图2图3所示:X-3 9宫gFS-rla.

6、llzs*4E:PDnlPQpnEnlEHRP-1 事wo 土PUN ME.P»J"2P"SFlin.»iraaixisraajiid同”盹ra.nnw P9J nri PjnrnRIAFHn>r«丹石1pKX«vMMCa图2:仿真结果图(1)图3:仿真结果图(2)4.实物验证结果如图4所示:图4:方案一实物验证结果实物验证可以明显感觉到电机转速的变化, 由于每个开发板不同,相比仿真 程序,对实物验证程序进行了略微的修改,最终能达到要求。方案二实验步骤:1.利用protues画电路图,电路图如图5所示:6£tnYURI

7、 中PDOLAbD pn-I iA |iiPn.ii3 rnMAjlia pgj&Aiif n电讣百吃5祸 MEXJMiiP SAiSZffAlSIPAI5ranTwi fji.ifw naurni FJLifTSTF3.<tfin raaFTimflfFSBtDEri CT*2 bTFALJC; WOK ©TW0UT1OUTZ OUO auT« OLITF OUTK 0UT7 OUTS.Alb A All I AIROALE图5:方案二protues电路图2.编写C语言程序代码:代码如下:#in clude<reg51.h>#defi ne uc

8、har un sig ned char#defi ne uint un sig ned intsbit key1=P3A1;sbit CLOCK=P2A4;sbit ST=P2A5;sbit EOC=P2A6;sbit OE=P2A7;sbit PWM=P3A7;uint temp,temp1;sbit CS3=P2A3;sbit CS2=P2A2;sbit CS1=P2A1;sbit CS0=P2A0;uchar tab=0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xf8,0x80,0x90;uchar start;void delayms( uint ms)uc

9、har j;while(ms-)for(j=0;j<120;j+); void delay( uint zz);void mai n()P3=0;P0=0xff;TMOD=0x02;TH0=0x01;TL0=0X00;IE=0x82;TR0=1;start=0;while(1)start=1; while(start)/ 启动 ADC0809/查询EOC是否为1;/读取A/D转化的结果ST=0;ST=1;ST=0; while(!EOC); OE=1;temp=P1;OE=0;temp仁temp/2.38;CS0=0;CS1=1;CS2=0;CS3=0;P0=tabtemp1/100;d

10、elayms(1);P0=0xff;CS0=0;CS1=0;CS2=1;CS3=0;P0=tabtemp1%100/10; delayms(1);P0=0xff;CS0=0;CS1=0;CS2=0;CS3=1;P0=tabtemp1%10;delayms(1);P0=0xff;PWM=1;PWM输出高电平delay(temp); PWM=0;/正脉冲宽度 PWM输出低电平/低脉冲宽度delay(255-temp); void clockwave() in terrupt 1 CLOCK=!CLOCK;TH0=0x01;TLO=OXOO;void delay( uint zz)uint x,y;

11、for(x=zz;x>0;x_)for(y=50;y>0;y-); 3.实验仿真,部分仿真结果如图6所示:w13aiS rTB1ZIB>匹| 19IS|"V_IFr ,1-i17FDCAbD PD VAb l 9U3ji.t2 rQ3*AU FD.«*Ab + mSAFF r 口砂洱 rnrJLiaVZDTJUE 冷廿肋V2M.12PldK-:h F3.1lT-:i raa-ns FMrfrrTF3*TD »3an-i fmcti: P3JIWF图6:方案二仿真结果4. 实物结果如图7所示:图7:方案二实物结果实验总结:本次实验提供了方案一和方案

12、二两个方案,方案一是通过不同按键设定不同 的PWM占空比从而实现对电机调速,其优点是可以设定我们自己需要的转速从而 实现相对精确的调速;缺点便是只能调到设定的转速,如需调制其它速度,需要 对软件代码进行改写,相对而言比较繁琐。方案二是通过滑动变阻器改变电压值从而改变 PWM占空比实现电机调速,其 优点是可以直接从硬件调速,快速方便;缺点就是利用滑动变阻器难以精确控制 PWM占空比从而精确控制转速。方案一和方案二各有优缺点,可以对自己的需求进行选择。心得体会:通过本次的实验,小组成员都发现自己的知识面还是非常的狭窄, 缺少的东 西也有很多,在网上查找一些相关的资料以及在图书馆借阅了几本关于单片机方 面的书籍,慢慢的懂了一些关于编程和仿真方面的问题。 通过这次实验,成员们 都发现各自还是存在一些问题。这些不经意的东西虽然看起来不起眼, 但是在试 验中是不可忽视的问题。这次试验让我遇到的困难有很多, 例如一开始在编程的 时候,我们一直在重视如何获取电机的转速并在 led上实时显示,失败之后吸取 经

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论