设计题目:直流电机控制电路设计
一 设计目的 1
掌握单片机用PWM实现直流电机调整的基本方法,掌握直流电
机的驱动原理。 2
学习模拟控制直流电机正转、反转、加速、减速的实现方法。
二 设计要求
用已学的知识配合51单片机设计一个可以正转、反转或变速运动的直流电机控制电路,并用示波器观察其模拟变化状况。 三 设计思路及原理
利用单片机对PWM信号的软件实现方法。MCS一51系列典型产品8051具有两个定时计数器。因为PWM信号软件实现的核心是单片机内部的定时器,所以通过控制定时计数器初值,从而可以实现从8051的任意输出口输出不同占空比的脉冲波形。从而实现对直流电动机的转速控制。
。AT89C51的P1.0—P1.2控制直流电机的快、慢、转向,低电平有效。P3.0为PWM波输出,P3.1为转向控制输出,P3.2为蜂鸣器。PWM控制DC电机转速,晶振为12M,利用定时器控制产生占空比可变的PWM波,按K1键,PWM值增加,则占空比增加,电机转快,按K2键,PWM值减少,则占空比减小,电机转慢,当PWM值增加到最大值255或者最小值1时,蜂鸣器将报警 四 实验器材
DVCC试验箱 导线若 电源等器件 PROTUES仿真软件 KRIL软件 五 实验流程与程序 #include < reg51.h > sbit K1 =P1^0 ; 增加键 sbit K2 =P1^1 ; 减少键 sbit K3 =P1^2 ; 转向选择键 sbit PWMUOT =P3^0 ; PWM波输出 sbit turn_around =P3^1 ; 转向控制输出 sbit BEEP =P3^2 ; 蜂鸣器 unsigned int PWM; void Beep(void);
void delay(unsigned int n); void main(void) {
TMOD=0x11; //设置T0、T1为方式1,(16位定时器) TH0=0 ; 65536us延时常数{t=(65536-TH)/fose/12} TL0=0;
TH1=PWM ; //脉宽调节,高8位 TL1=0;
EA=1; //开总中断 ET0=1; //开T0中断
ET1=1; //开T1中断 TR0=1 ; // T0定时允许 while(1) {
if(K3==0&&K1==1&&K2==1) // 转向 {
turn_around=!turn_around; }
while(K3==0); //检测K3是否释放 do{
PWM++ ;
if(PWM>0xfe)//防止PWMS计数溢出 {
PWM=0xff; }
if(PWM==0xff)Beep() ; 响 delay(3000); }
while(K1==0&&K2==1); do{
PWM-- ; if(PWM<1)
{
PWM=1; }
if(PWM==1)Beep() ; delay(3000); }
while(K1==1&&K2==0); } }
void timer0() interrupt 1 using 2 // 定时器0中断服务程序 {
TR1=0 ; //T1禁止 TH0=0 ; //置T0定时常数 TL0=0 ;
TH1=PWM ; //置T1定时常数 TL1=0;
TR1=1 ; //T1允许 PWMUOT=0 ;// PWM波输出0 }
void timer1() interrupt 3 using 3 //定时器1中断服务程序 {
TR1=0 ; //T1禁止 PWMUOT=1 ; //PWM波输出1 }
void Beep(void) //蜂鸣器子程序 {
unsigned char i; for (i=0;i<100;i++) {
delay(100);
BEEP=!BEEP; }
BEEP=1; delay(100); }
void delay(unsigned int n) {
while(n--) ; }
六 Proteus仿真截图
C2R1110020pF直流电机PWM控制原理U119XTAL1P0.0/AD0P0.1/AD1P0.2/AD2P0.3/AD3P0.4/AD4P0.5/AD5P0.6/AD6P0.7/AD7P2.0/A8P2.1/A9P2.2/A10P2.3/A11P2.4/A12P2.5/A13P2.6/A14P2.7/A15P3.0/RXDP3.1/TXDP3.2/INT0P3.3/INT1P3.4/T0P3.5/T1P3.6/WRP3.7/RD393837363534333221222324252627281011121314151617X1C3C110uF20pF18FREQ=12MHz9XTAL2ABCDRSTR121K293031PSENALEEA转向K3慢K2快K112345678P1.0P1.1P1.2P1.3P1.4P1.5P1.6P1.7AT89C51U2:ALS113274LS08Q3R1100Q12N2222AR31002N2222ASOUNDERU2:BU3:A174LS04246574LS08Q2R4100Q42N2222AR21002N2222A
七 实验结果
此次试验通过仿真系统进行了仿真,按下相应的开关,可实现控制直流电机的加速、减速及转向。 八 实验结论与心得
通过软件的设计及运行,实验达到了预期的结果,实现了电机的正转、反转,加速和减速设计。设计过程中遇到了很多的问题,但是我们没有半途而废,加深了对知识的理解,一点一点的分析。总而言之,这次课程设计让我受益匪浅。在摸索该如何设计电路使之实现所需功能的过程中,培养了我的设计思维,增加了实际操作能力,也让深深地体会到了自己学习知识的不足之处,对于知识的理解程度不够深,自己以为明白的实际上不明白。在以后的学习过程中,我会重视这些问题,逐渐改变自己的学习习惯,不断的进步!
因篇幅问题不能全部显示,请点此查看更多更全内容