基于单片机的直流电机速度控制

基于单片机的直流电机速度控制
基于单片机的直流电机速度控制

目录

0.前言 (1)

1.用单片机控制直流电机转速的基本理论 (1)

1.1 直流电机调速原理 (1)

1.2 PWM基本原理及设计方案 (2)

2.硬件电路的设计 (3)

2.1 系统分析与硬件设计模块 (4)

2.2 设计该系统所需部分器件 (5)

2.3 直流电机的功能简介 (5)

2.4 直流电机调速控制系统模块 (6)

2.5 显示设计模块 (6)

3.系统软件的设计 (8)

4.系统调试和结果分析 (9)

4.1仿真图形 (9)

5.结论和总结 (11)

参考文献 (11)

附程序清单 (12)

基于单片机的直流电机速度控制

7段数码管显示单元

谭康康沈阳航空航天大学北方科技学院

摘要:本文介绍了基于单片机的直流电机PWM调速的基本方法,直流电机调速的相关知识以及PWM调速的基本原理和实现方法。重点介绍了基于MCS-51单片机的用软件生产PWM信号以及信号占空比调节的方法。对于直流电机速度控制系统的实现提供了一个有效的途径。

本次课程设计主要任务是以四位共阳数码管显示电机速度,它能间接直观的观察到电机速度的变化,用独立键盘来手动控制电机的转速,其中控制核心部分是单片机,单片机输出微弱的电流信号经过L298N驱动芯片放大从而使电机满足转速的要求。

关键字:四位共阳数码管;AT89S52单片机;PWM;直流电机调速

0.前言

随着社会的发展,各种智能化的产品日益走入寻常百姓家。为了实现产品的便携性、低成品以及对电源的限制,小型直流电机应用相当广泛。对直流电机的速度调节,我们可以采用多种办法,本文在给出直流电机调整和PWM实现方法的基础上,提供一种用单片机软件实现PWM 调速的方法。对基于MCS-51系列单片机实现直流电机调速系统进行研究和设计,能够在不同的按钮作用下分别实现直流电机的停止、加速、减速、正转、反转控制;能够实现基于MCS-51系列单片机的直流电机PWM的调速设计。

本文研究的是基于MCS-51系列单片机的直流电机PWM调速系统属于微机

控制领域,通过对单片机的学习和研究对自己以后从事硬件产品的开发有一定的实际指导意义。

1.用单片机控制直流电机转速的基本理论

1.1 直流电机调速原理

根据励磁方式不同,直流电机分为自励和他励两种类型。不同励磁方式的直流电机机械特性曲线有所不同。对于直流电机来说,人为机械特性方程式为:

2

N ad a

e N e t N

U R R

n T n n

K K K

φφ

+

=-=-?

(1-1)式中N

U,

N

φ——额定电枢电压、额定磁通量;

e

K,

t

K--与电机有关的常数;

ad

R,

a

R——电枢外加电阻、电枢内电阻;

n,n

?——理想空载转速、转速降。

分析(1-1)式可得.当分别改变N

U、

N

φ和

ad

R时,可以得到不同的转速n,从而实现对速度的调节。由于φ=T,当改变励磁电流f

I

时,可以改变磁通量φ的大小,从而达到变磁通调速的目的。

如图1-1所示。理想空载转速n随电枢电压升降而发生相应的升降变化。不同电枢电压的机械特性曲线相互平行,说明硬度不随电枢电压的变化而改变,电机带负载能力恒定。当我们平滑调节他励直流电机电枢两端电压时,可实现电机的无级调速。基于以上特性,改变电枢电压,实现对直流电机速度调节的方法被广泛采用。

图1-1 直流电动机机械特性曲线图1-2 电枢电压“占空比”与平均电压关系

1.2 PWM基本原理及设计方案

1.2.1 PWM基本原理

PWM是通过控制固定电压的直流电源开关频率,从而改变负载两端的电压,进而达到控制要求的一种电压调整方法。PWM可以应用在许多方面,如电机调速、温度控制、压力控制等。在PWM驱动控制的调整系统中,按一个固定的频率来接通和断开电源,并根据需要改变一个周期内“接通”和“断开”时间的长短。通过改变直流电机电枢上电压的“占空比”来改变平均电压的大小,从而控制电动机的转速。因此,PWM又被称为“开关驱动装置”。在脉冲作用下,当电机通电

时,速度增加;电机断电时,速度逐渐减少。只要按一定规律,改变通、断电的时间,即可让电机转速得到控制。设电机始终接通电源时,电机转速最大为max V ,设占空比为D =1t /T ,则电机的平均速度为:

d V =max V *D (1-2)

式中,d V —— 电机的平均速度;

max V --电机全通电时的速度(最大);

D =1t /T --占空比。

由公式(1-2)可见,当我们改变占空比时D =1t /T ,就可以得到不同的电机平均速度 ,从而达到调速的目的。严格地讲,平均速度d V 与占空比D =1t /T 并不是严格的线性关系,在一般的应用中,可以将其近似地看成线性关系。 1.2.2 设计方案

本文主要介绍利用单片机对PWM 信号的软件实现方法。MCS 一51系列典型产品AT89S52具有两个定时器 0T 和1T 。通过控制定时器初值0T 和1T ,从而可以实现从S52的任意输出口输出不同占空比的脉冲波形。由于PWM 信号软件实现的核心是单片机内部的定时器,而不同单片机的定时器具有不同的特点,即使是同一台单片机由于选用的晶振不同,选择的定时器工作方式不同,其定时器的定时初值与定时时间的关系也不同。因此,首先必须明确定时器的定时初值与定时时间的关系。如果单片机的时钟频率为f ,定时器/计数器为N 位,则定时器初值与定时时间的关系为:

16

(2)10

n N

t T f ω=-?? (1-3) 式中,T ω—— 定时器定时初值;

N —— 一个机器周期的时钟数。N 随着机型的不同而不同。

在应用中,应根据具体的机型给出相应的值。这样,我们可以通过设定不同的定时初值 ,从而改变占空比D =1t /T ,进而达到控制电机转速的目的。

2.硬件电路的设计

本设计以AT89S52单片机为核心,以5个弹跳按钮作为输入达到控制直流电机的停止、加速、减速、正转、反转,以四位共阳数码管显示电机速度大小。在设计中,采用PWM 技术对电机进行控制,通过对占空比的计算达到精确调速的

目的。

2.1 系统分析与硬件设计模块

键盘向单片机输入相应控制指令,由单片机通过P3.0与P3.1其中一口输出与转速相应的PWM脉冲,另一口输出低电平,经过信号放大、驱动电动机控制电路,实现电动机转向与转速的控制,电动机正转,反转,加速,减速、急停。总体设计方案的硬件部分详细框图如图2-1所示:

图2-1 系统硬件框图

系统整体硬件电路图如图2-2示:

图2-2 系统硬件电路图

2.2 设计该系统所需部分器件

AT89S52单片机、直流电机、L298N、12MHZ晶振、四位共阳数码管、电容、电阻、弹跳开关等。

2.3 直流电机的功能简介

直流电动机具有优良的调速特性,调速平滑、方便,调速范围广;过载能力大,能承受频繁的冲击负载,可实现频繁的无级快速起动、停止和反转;能满足生产过程自动化系统各种不同的特殊运行要求。电动机调速系统采用微机实现自动控制,是电气传动发展的主要方向之一。采用微机控制后,整个调速系统实现自动化,结构简单,可靠性高,操作维护方便,电动机稳态运转时转速精度可达到较高水平,静动态各项指标均能较好地满足工业生产中高性能电气传动的要求。由于单片机性能优越,具有较佳的性能价格比,所以单片机在工业过程及设

备控制中得到日益广泛的应用。

2.4 直流电机调速控制系统模块

采用单片机构成的直流电动机数字PWM 调速系统,其控制核心主要由单片机的最小系统、电源模块(12v 5v)、电机驱动电路、按键(加速、减速、急停、正转、反转)、显示模块(四位数码管)、直流电机组成。系统采用L298N芯片作为PWM 驱动直流电动机的供电主回路。单片机通过软件处理输出PWM信号, 实现了直流电动机的速度控制,在运行中获得了良好的动静态性能。由于系统性价比高,结构简单,具有实用价值和推广价值。在介绍了基于单片机用PWM实现直流电机调整的基本方法,直流电机调速的相关知识,及PWM调整的基本原理和实现方法。重点介绍了基于AT89S52单片机的用软件产生PWM信号的途径,并介绍了一种独特的通过软件定时中断实现PWM信号占空比调节的方法。对于直流电机速度控制系统的实现提供了一种有效的途径。

(1)键盘识别:通过P1口的低电平输入识别不同的按键。

(2)通过对单片机程序烧录实现对直流电机的停止、加速、减速、正转、反转控制。

(3)数码管显示:通过P0口、P2口控制数码管来显示直流电机的速度。

(4)由于单片机的驱动能力不强,驱动直流电机需要很强的电流所以必须有外围的驱动电路,因此本设计采用L298芯片放大单片机微弱的电流。

控制原理:89S52单片机为核心的直流电机控制系统控制简图如图2-1所示,由软件转换成PWM 信号,并由P3.0、P3.1输出,经驱动电路输出给电机,从而控制电机得电与失电。软件采用定时中断进行设计。单片机上电后,系统进入准备状态。当按动启动按钮后,根据P3.0为高电平实现电机正转,P3.1为高电平时实现电机反转。根据不同的加减速按钮,调整P3.0/ P3.1输出高低电平时的预定值,从而可以控制P3.0/ P3.1输出高低电平时的占空比,进而控制电压的大小。

2.5 显示设计模块

7段LED数码管是利用7个LED外加一个小数点的LED组合而成的显示设备,可以显示0~9等10个数字和小数点,使用非常广泛。

本次课设使用的是四位共阳数码管,内部的4个数码管共用a-dp这8根数据线,为人们的使用提供了方便,因为里面有4个数码管,所以它有4个公共端,即片选信号线,共有12个引脚。具体原理图如图示:

图2-3 四位共阳数码管内部原理图

图2-4 四位共阳数码管外观图

用Proteus仿真该控制系统时,四位共阳数码管显示电机反转图形如下所示:

图2-5 仿真显示图形

本次设计显示模块采用的是SM410564 四位共阳数码管显示,因为单片机的输出端口输出的电流小,点亮数码管的能力不大,所以需要采用三极管放大输出电流,此次三极管采用的是C9013,具体放大电路如图示:

图2-6 放大电路

3.系统软件的设计

利用P3口,编制程序输出一串脉冲,经放大后驱动直流电机,改变输出脉冲的电平的持续时间,达到使电机正转、反转、加速、减速、停转等目的。由软件编程从P3.0/P3.1管脚产生PWM 信号,经驱动电路输出给电机,从而控制电机得电与失电。软件采用延时法进行设计。单片机上电后,系统进入准备状态。当按动启动按钮后,根据P3.0为高电平时实现电机正转,P3.1为高电平时实现电机反转。根据不同的加减速按钮,调整P3.0/ P3.1输出高低电平时的占空比,从而

可以控制P3.0/ P3.1输出高低电平时的有效值,进而控制电机的加减速。其总体流程图如图3-1示:

图3-1 总体程序流程图

4.系统调试和结果分析

4.1仿真图形

初始状态,直流电机有如图示4-1运行效果

图4-1 电机半速运转

按下急停键,直流电机有图4-2的停止运行结果。

图4-2 电机停转

按下加速键,直流电机有图4-3的正向加速运行结果。

图4-3 电机正转加速

按下减速键,直流电机有图4-4正向减速运行结果。

图4-4 电机正转减速

按下反转键,直流电机有图4-5反向加速运行结果。

图4-5 电机反转加速

5.结论和总结

经过将近两周的努力,最终完成了该课程设计。在Protuse和Keil c中仿真了出来,基本上实现了直流电机的停止、加速、减速和转向控制以及数码管显示。

通过这次课程设计,我的学习能力和解决问题的信心都得到了提高。在课程设计的过程中,我遇到了很多困难,但在查阅了很多有关书籍、还有向老师和同学请教后终于得到了解决。通过这次课程设计,我不仅对理论有了更深一步的认识,还培养了自学能力和解决问题的能力,更重要的是,培养了克服困难的勇气和信心。我们的课程设计之所以能基本完成,要深深地感谢我的指导老师的悉心指导和帮助。

参考文献

[1] 郭天祥. 51单片机C语言教程-入门、提高、开发、拓展全攻略北京:电子工业出版社,2008

[2] 陈忠平. 基于Proteus的A VR单片机C语言程序设计与仿真北京:电子工业出版社,2011

[3] 刘复华. 单片机及其应用系统. 北京:清华大学出版社,1992

[4] 马淑华. 单片机原理与接口技术. 北京:北京邮电大学出版社,2005

附程序清单

#include

#define unchar unsigned char

#define unint unsigned int

unsigned char code dispcode[]={0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82, 0xf8,0x80,0x90,0x88,0x83,0xc6,0xa1,0x86,0x84,0xff,0xbf}; unsigned char dispbitcode[]={0xfe,0xfd,0xfb,0xf7};

unsigned char dispbuf[4]={0,0,0,0};

unsigned char dispbitcnt;

unint mstcnt;

unint i;

unint count=0;

unchar tp=0;

void ledshow();

void keyscan();

void delay();

void just();

void turn();

void motorstop();

void speedup();

void speeddown();

void main(void)

{

P3_0=1;

P3_1=0;

dispbuf[0]=16;

TMOD=0x02

TH0=0x06;

TL0=0x06;

TR0=1;

ET0=1;

EA=1;

while(1)

{

ledshow();

keyscan();

}

}

void delay()

{

unsigned char i,j;

for(i=20;i>0;i--)

for(j=248;j>0;j--);

}

void keyscan()

{

unchar temp=0;

P1=0xff;

if((P1&0x1f)!=0x1f)

{

delay();

if((P1&0x1f)!=0x1f)

{

temp=P1&0x1f;

switch(temp)

{

case 0x1e:

just();break;

case 0x1d:

turn();break;

case 0x1b:

motorstop();break;

case 0x17:

speedup();break;

case 0x0f:

speeddown();break;

}

}

}

while((P1&0x1f)!=0x1f);

}

void ledshow()

{

/*

P0=dispcode[dispbuf[dispbitcnt]];

P2=dispbitcode[dispbitcnt];

dispbitcnt++;

if(dispbitcnt==4)

{

dispbitcnt=0;

}

*/

P2=0x01;P0=dispcode[dispbuf[0]];

for(i=0;i<700;i++);

P2=0x02;P0=dispcode[dispbuf[1]]; for(i=0;i<700;i++);

P2=0x04;P0=dispcode[dispbuf[2]]; for(i=0;i<700;i++);

P2=0x08;P0=dispcode[dispbuf[3]]; for(i=0;i<700;i++);

dispbuf[1]=tp/100;

dispbuf[2]=(tp%100)/10;

dispbuf[3]=tp%10;

}

void t0(void) interrupt 1 using 0 {

/*

mstcnt++;

if(mstcnt==8)

{

mstcnt=0;

P0=dispcode[dispbuf[dispbitcnt]];

P2=dispbitcode[dispbitcnt];

dispbitcnt++;

if(dispbitcnt==4)

{

dispbitcnt=0;

}

}

*/

if(count>100)

count=0;

if(count>tp)

P3_7=0;

else P3_7=1;

count++;

}

void just()

{

P3_0=1;

P3_1=0;

dispbuf[0]=16;

}

void turn()

{

P3_0=0;

P3_1=1;

dispbuf[0]=17;

}

void motorstop() {

tp=0;

}

void speedup()

{

if(tp>99)

tp=100;

else tp++;

}

void speeddown() {

if(tp<1)

tp=0;

else tp--;

}

直流电机转速控制

直流电机转速控制公司标准化编码 [QQX96QT-XQQB89Q8-NQQJ6Q8-MQM9N]

直流电机转速控制 课程设计 姓名: 学号: 班级:

目录 1.直流电机转速控制方案设计 (2) 设计要求 (2) 设计框图 (2) 2.直流电机转速控制硬件设计 (3) 主要器件功能 (3) 硬件原理图 (6) 3.直流电机转速控制软件设计 (7) 4.调试 (8) 硬件测试 (8) 软件调试……………………………………………………………(11

1.直流电机转速控制方案设计 设计要求 通过设计了解如何运用电子技术来实现直流电机转速控制,完成直流电机转向和转速的控制,提高分析电路设计、调试方面问题和解决问题的能力。 1、用按键1控制旋转方向,实现正转和反转。 2、电机的设定转速与电机的实际转速在数码管上显示。 3、旋转速度可实时改变。 设计框图 本课题中测量控制电路组成框图如下所示:

图1 2.直流电机转速控制硬件设计 主要器件功能 1、L298N 是专用驱动集成电路,属于H 桥集成电路,与L293D 的差别是其输出电流增大,功率增强。其输出电流为2A,最高电流4A,最高工作电压50V,可以驱动感性负载,如大功率直流电机,步进电机,电磁阀等,特别是其输入端可以与单片机直接相联,从而很方便地受单片机控制。当驱动直流电机时,可以直接控制步进电机,并可以实现电机正转与反转,实现此功能只需改变输入端的逻辑电平。此外可能通过使能端的高低电平的变换,从而使电机通断,来控制电机的转速。 图2 板上的EN1 与EN2 为高电平时有效,这里的电平指的是TTL 电平。EN1 为IN1 和IN2 的使能端,EN2为IN3 和IN4 的使能端。POWER 接直流电源,注意正负,电源正端为VCC,电源地为GND。 2、ZLG7290的核心是一块ZLG7290B芯片,它采用I2C接口,能直接驱动8位共阴式数码管,同时可扫描管理多达64只按键,实现人机对话的功能资源十分丰富。除具有自动消除抖动功能外,它还具有段闪烁、段点亮、段熄灭、功

基于单片机的直流电机控制器的设计

目录 摘要............................................................................................................................................................... I I ABSTRACT ................................................................................................................................................. III 1系统论述 (5) 1.1设计思路 (5) 1.2基本原理 (5) 1.3总体设计框图 (5) 2直流电机单元电路设计与分析 (6) 2.1直流电机驱动模块 (6) 2.2直流电机的中断键盘控制模块 (11) 2.31602LCD液晶显示模块 (13) 3直流电机PWM控制系统的实现 (15) 3.1总电路图 (15) 3.2总电路功能介绍 (16) 3.3直流电机控制程序 (16) 4系统仿真 (23) 5结束语 (26) 参考文献资料 (27)

摘要 本文是对直流电机PWM调速器设计的研究,主要实现对电机的控制。本课程设计主要是实现PWM调速器的正转、反转、加速、减速、停止等操作。并实现电路的仿真。为实现系统的微机控制,在设计中,采用了AT89C51单片机作为整个控制系统的控制电路的核心部分,配以各种显示、驱动模块,实现对电动机转速参数的显示和测量;由命令输入模块、光电隔离模块及H型驱动模块组成。采用带中断的独立式键盘作为命令的输入,单片机在程序控制下,不断给光电隔离电路发送PWM 波形,H型驱动电路完成电机正反转控制.在设计中,采用PWM调速方式,通过改变PWM的占空比从而改变电动机的电枢电压,进而实现对电动机的调速。设计的整个控制系统,在硬件结构上采用了大量的集成电路模块,大大简化了硬件电路,提高了系统的稳定性和可靠性,使整个系统的性能得到提高。 关键词:AT89C51单片机;PWM调速;正反转控制;仿真。

基于单片机对直流电机的控制

基于单片机对直流电机的控制 第十五组 姓名:吴代露20131325010 张鹏飞20131325012 金静丽20131325014 周敏20131325015 胡会华20131325017 顾蓉20131325018 专业:2013级信息工程(系统工程方向) 指导老师:周旺平 2014.12.22

基于单片机对直流电机的控制 内容摘要 电动机作为最主要的动力源,在生产和生活中占有重要地位。电动机的调速控制过去多用模拟法,随着计算机的产生和发展以及新型电力电子功率器件的不断涌现,电动机的控制也发生了深刻的变化。 关键字:电动机飞思卡尔 PWM控制 一、引言 (一)直流电机的定义 直流电机(direct current machine):是指能将直流电能转换成机械能(直流电动机)或将机械能转换成直流电能(直流发电机)的旋转电机。它是能实现直流电能和机械能互相转换的电机。当它作电动机运行时是直流电动机,将电能转换为机械能;作发电机运行时是直流发电机,将机械能转换为电能。 (二)直流电机的基本结构 由直流电动机和发电机工作原理示意图可以看到,直流电机的结构应由定子和转子两大部分组成。直流电机运行时静止不动的部分称为定子,定子的主要作用是产生磁场,由机座、主磁极换向极、端盖、轴承和电刷装置等组成。运行时转动的部分称为转子,其主要作用是产生电磁转矩和感应电动势,是直流电机进行能量转换的枢纽,所以通常又称为电枢,由转轴、电枢铁心、电枢绕组、换向器和风扇等组成。 (三)直流电机工作原理

直流电机里边固定有环状永磁体,电流通过转子上的线圈产生安培力,当转子上的线圈与磁场平行时,再继续转受到的磁场方向将改变,因此此时转子末端的电刷跟转换片交替接触,从而线圈上的电流方向也改变,产生的洛伦兹力方向不变,所以电机能保持一个方向转动。直流发电机的工作原理就是把电枢线圈中感应的交变电动势,靠换向器配合电刷的换向作用,使之从电刷端引出时变为直流电动势的原理。感应电动势的方向按右手定则确定(磁感线指向手心,大拇指指向导体运动方向,其他四指的指向就是导体中感应电动势的方向)。导体受力的方向用左手定则确定。这一对电磁力形成了作用于电枢一个力矩,这个力矩在旋转电机里称为电磁转矩,转矩的方向是逆时针方向,企图使电枢逆时针方向转动。如果此电磁转矩能够克服电枢上的阻转矩(例如由摩擦引起的阻转矩以及其它负载转矩),电枢就能按逆时针方向旋转起来。 (四)直流电机的分类 直流电动机按结构及工作原理可划分:无刷直流电动机和有刷直流电动机。(1)无刷直流电动机:无刷直流电动机是将普通直流电动机的定子与转子进行了互换。其转子为永久磁铁产生气隙磁通:定子为电枢,由多相绕组组成。在结构上,它与永磁同步电动机类似。无刷直流电动机定子的结构与普通的同步电动机或感应电动机相同.在铁芯中嵌入多相绕组(三相、四相、五相不等).绕组可接成星形或三角形,并分别与逆变器的各功率管相连,以便进行合理换相。由于电动机本体为永磁电机,所以习惯上把无刷直流电动机也叫做永磁无刷直流电动机。 (2)有刷直流电动机:又可分为永磁直流电动机和电磁直流电动机。 永磁直流电动机划分:稀土永磁直流电动机、铁氧体永磁直流电动机和铝镍钴永磁直流电动机。稀土永磁直流电动机:体积小且性能更好,但价格昂贵,主要用于航天、计算机、井下仪器等;铁氧体永磁直流电动机:由铁氧体材料制成的磁极体,廉价,且性能良好,广泛用于家用电器、汽车、玩具、电动工具等领域;铝镍钴永磁直流电动机:需要消耗大量的贵重金属、价格较高,但对高温的适应性好,用于环境温度较高或对电动机的温度稳定性要求较高的场合。 电磁直流电动机划分:串励直流电动机、并励直流电动机、他励直流电动机和复励直流电动机。 (1)串励直流电动机:电流串联,分流,励磁绕组是和电枢串联的,直流串励电

51单片机PWM控制直流电机正反转

//程序说明:使用内部时//PWM0=P3^7PWM1=P3^5 PWM2=P2^0 PWM3=P2^4 #include #define uchar unsigned char #define uint unsigned int sbit PWM0=P3^7; sbit PWM1=P3^5; sbit PWM2=P1^2; sbit PWM3=P1^3; uint i,j; void PWM_init() { CMOD=0x00;//PCA计数脉冲选择内部时钟fosc/12(0x02:fosc/2) CL=0x00;//PCA赋初值 CH=0x00; CR=1; //开始计数 } void zheng(uchar ZKB) { CCAP0L=255*(40-ZKB)/100;//占空比设置 CCAP0H=255*(40-ZKB)/100;//CL由ff-00溢出时,CCAP0H的值装入CCAP0L CCAPM0=0x42;// 8位PWM模式 CCAP1L=255*(40-0)/100;//占空比设置 CCAP1H=255*(40-0)/100;//CL由ff-00溢出时,CCAP0H的值装入CCAP0L CCAPM1=0x42;// 8位PWM模式 CR=1; //开始计数 } void fan(uchar ZKB) { CCAP0L=255*(40-0)/100;//占空比设置 CCAP0H=255*(40-0)/100;//CL由ff-00溢出时,CCAP0H的值装入CCAP0L CCAPM0=0x42;// 8位PWM模式 CCAP1L=255*(40-ZKB)/100;//占空比设置 CCAP1H=255*(40-ZKB)/100;//CL由ff-00溢出时,CCAP0H的值装入CCAP0L CCAPM1=0x42;// 8位PWM模式 CR=1; //开始计数 } void Delay(uint t) //延时函数

基于单片机的电机转速测量系统

兰州交通大学 毕业设计文献综述 题目:基于单片机的电机转速测量系统Title:Motor speed measuring system based on single chip microcomputer 姓名:韦宝芸

学号:3 班级:机设1202班 摘要 本文首先叙述了单片机测量转速的系统构成及转速测量的几种常用方法,分析了相应方法在测量上的特点、误差和计算。其次,针对特定的应用环境,设计出一种基于 80C51单片机的全数字式测速系统,详细阐述了系统的工作原理,指出产生误差的可能原因,并给出了具体解决的方法;根据系统要求编制了源程序,分析其工作流程。最后,对构建的系统利用仿真机进行调试,对测量指标进行了分析、比较并提出改进方案。 关键词:单片机、转速、测量精度 Abstract

This paper first discussed some ways for rotary speed measure. It analyzed characters and errors of these ways. Second, it designed full digital measure system based on a Single-Chip Microprocessor(80C51) responding to special application, stated the working theory of the system and the methods to solve the errors, writed the working programmes by A51 assemble language. Finally, this system implementation was confirmed by using of Keil-51 simulator. The characters on the error margin and accuracy was summarized. Keywords : Single-Chip Microprocessor、rotary speed 、measureprecision Keil-51

直流电机控制设计(1)

河南科技大学 课程设计说明书 课程名称现代电子系统课程设计题目_直流电机控制设计 学院__电子信息工程学院____班级_________ 学生姓名__________ 指导教师__________

日期_______ 课程设计任务书 (指导教师填写) 课程设计名称现代电子系统课程设计学生姓名专业班级 设计题目直流电机控制设计 一、课程设计目的 学习直流电机PWM的FPGA控制; 掌握PWM控制的工作原理; 掌握GW48_SOPC实验箱的使用方法; 了解基于FPGA的电子系统的设计方法。 二、设计内容、技术条件和要求 利用PWM控制技术实现直流电机的速度控制。 (1)基本要求: a.速度调节:4档,数字显示其档位。 b.能控制电机的旋转方向。 c.通过红外光电电路测得电机的转速,设计频率计用4位10进制显示电机的转速。 (2)发挥部分 a.设计“去抖动”电路,实现直流电机转速的精确测量。 b.修改设计,实现直流电机的闭环控制,旋转速度可设置。 c.其它。 三、时间进度安排 布置课题和讲解:1天 查阅资料、设计:4天 实验:3天 撰写报告:2天 四、主要参考文献 何小艇《电子系统设计》浙江大学出版社2008.1 潘松黄继业《EDA技术实用教程》科学出版社2006.10 齐晶晶《现代电子系统设计》实验指导书电工电子实验教学中心2009.8

指导教师签字:2010年12月30日 摘要 利用FPGA可编程芯片及VHDL语言实现了对直编程实现流电机PWM控制器的设计,对直流电机速度进行控制。介绍了用VHDL语言编程实现直流电机PWM控制器的PWM的产生模块、转向调节模块、转速控制模块、去抖动电路模块、电机转速显示等模块功能。 采用CPU控制产生PWM信号,一般的PWM信号是通过模拟比较器产生的,比较器的一端按给定的参考电压,另一端接周期性线性增加的锯齿波电压。当锯齿波电压小于参考电压时输出低电平,当锯齿波电压大于参考电压时输出高电平。改变参考电压就可以改变PWM波形中高电平的宽度。若用单片机产生PWM信号波形,需要通过D/A转换器产生锯齿波电压和设置参考电压,通过外接模拟比较器输出PWM波形,因此外围电路比较复杂。 FPGA中的数字PWM控制与一般的模拟PWM控制不同,用FPGA产生PWM波形,只需FPGA 内部资源就可以实现。用数字比较器代替模拟比较器,数字比较器的一端接设定值计数器输出,另一端接线性递增计数器输出。当线性计数器的计数值小于设定值时输出低电平,当计数值大于设定值时输出高电平。与模拟控制相比,省去了外接的D/A转换器和模拟比较器,FPGA外部连线很少,电路更加简单,便于控制。脉宽调制式细粉驱动电路的关键是脉宽调制,转速的波动随着PWM脉宽细分数的增大而减小。 直流电机控制电路主要由三部分组成: (1)FPGA中PWM脉宽调制信号产生电路。 (2)FPGA中的工作/停止控制和正/反转方向控制电路。 (3)由功率放大电路和H桥组成的正反转功率驱动电路 关键词

单片机PWM控制直流电机的速度

用单片机控制直流电机的速度 直流调速器就是调节直流电动机速度的设备,上端和交流电源连接,下端和直流电动机连接,直流调速器将交流电转化成两路输出直流电源,一路输入给直流电机砺磁(定子),一路输入给直流电机电枢(转子),直流调速器通过控制电枢直流电压来调节直流电动机转速。同时直流电动机给调速器一个反馈电流,调速器根据反馈电流来判断直流电机的转速情况,必要时修正电枢电压输出,以此来再次调节电机的转速。 直流电机的调速方案一般有下列3种方式: ?1、改变电枢电压; ?2、改变激磁绕组电压; ?3、改变电枢回路电阻。 使用单片机来控制直流电机的变速,一般采用调节电枢电压的方式,通过单片机控制PWM1,PWM2,产生可变的脉冲,这样电机上的电压也为宽度可变的脉冲电压。根据公式 U=aVCC 其中:U为电枢电压;a为脉冲的占空比(0

电动机的电枢电压受单片机输出脉冲控制,实现了利用脉冲宽度调制技术(PWM)进行直流电机的变速。 因为在H桥电路中,只有PWM1与PWM2电平互为相反时电机才能驱动,也就是PWM1与PWM2同为高电平或同为低电平时,都不能工作,所以上图中的实际脉冲宽度为B, 我们把PWM波的周期定为1ms,占空比分100级可调(每级级差为10%),这样定时器T0每0.01ms产生一次定时中断,每100次后进入下一个PWM波的周期。上图中,占空比是60%,即输出脉冲的为0.6ms,断开脉冲为0.4ms,这样电枢电压为5*60%=3V。 我们讨论的是可以正转反转的,如果只按一个方向转,我们就只要把PWM1置为高电平或低电平,只改变另一个PWM2电平的脉冲变化即可,,如下图(Q4导通,Q3闭合,电机只能顺时针调整转动速度)

51单片机直流无刷电机控制

基于MCS-51单片机控制直流无刷电动机 学号:3100501044 班级:电气1002 :王辉军

摘要 直流无刷电机是同步电机的一种,由电动机本体、位置传感器和电子开关线路三部分组成。其定子绕组一般制成多相(三相、四相、五相不等),转子由永久磁钢按一定极对数(2p=2,4,…)组成。电机转子的转速受电机定子旋转磁场的速度及转子极数(P)影响: N=120.f / P。在转子极数固定情况下,改变定子旋转磁场的频率就可以改变转子的转速。直流无刷电机即是将同步电机加上电子式控制(驱动器),控制定子旋转磁场的频率并将电机转子的转速回授至控制中心反复校正,以期达到接近直流电机特性的方式。也就是说直流无刷电机能够在额定负载围当负载变化时仍可以控制电机转子维持一定的转速。 MCS-51单片机是美国英特尔公司生产的一系列单片机的总称,是一种集成电路芯片,采用超大规模技术把具有数据处理能力的微处理器(CPU)、随机存储器(RAM)、只读存储器(ROM)、输入输出接口电路、定时计算器、串行通信口、脉宽调制电路、A/D转换器等电路集成到一块半导体硅片上,这些电路能在软件的控制下准确、迅速、高效地完成程序设计者事先规定的任务。 本论文将介绍基于MCS-51单片机控制直流无刷电动机的设计,它可以实现控制直流无刷电动机的启动、停止、急停、正反转、加减速等功能。 关键词:单片机,直流无刷电动机,控制系统

直流无刷电动机是在直流电动机的基础之上发展而来的,它是步进电动机的一种,继承了直流电动机的启动转矩大、调速性能好等特点克服了需要换向器的缺点在交通工具、家用电器及中小功率工业市场占有重要的地位。直流无刷电动机不仅在电动自行车、电动摩托车、电动汽车上有着广泛的应用,而且在新一代的空调机、洗衣机、电冰箱、吸尘器,空气净化器等家用电器中也有逐步采用的趋势,尤其是随着微电子技术的发展,直流无刷电动机逐渐占有原来异步电动机变频调速的领域,这就使得直流无刷电动机的应用围越来越广。 本设计就是基于MCS-51系列单片机控制直流无刷电动机,利用所学的知识实现单片机控制直流无刷电动机的启动、停止、急停、正反转,加减速等控制,并对直流无刷电动机运行状态进行监视和报警。详细介绍单片机的种类、结构、功能、适用领域和发展历史、未来前景及其直流无刷电动机的工作原理、控制结构等容,既着重单片机的基本知识、功能原理的深入阐述,又理论联系实际详细剖析单片机控制直流无刷电动机的过程。 1.直流无刷电动机的基本组成 直流无刷电动机是在直流电动机的基础上发展而来的,直流无刷电动机继承了直流电动机启动转矩大、调速性能好的优点,克服了直流电动机需要换向器的缺点,在交通工具、家用电器等生活的方方方面面占有重要的地位。 由于直流无刷电动机既具有交流电动机的结构简单、运行可靠、维护方便等一系列优点,又具备直流电动机的运行效率高、无励磁损耗以及调速性能好等诸多优点,故在当今国民经济各领域应用日益普及。 直流无刷电动机主要由电动机本体、位置传感器和电子开关线路三部分组成。其定子绕组一般制成多相(三相、四相、五相不等),转子由永久磁钢按一定极对数(2p=2,4,…)组成。图3-1所示为三相两极直流无刷电机结构。 三相定子绕组分别与电子开关线路中相应的功率开关器件联结,A、B、

基于单片机的直流电机转速测量与显示(DOC)

目录 绪论 (2) 第1章参数计算与设备选型 (3) 1.1控制芯片 (3) 1.2测速发电机 (4) 1.3模数转化器件——ADC0809 (6) 第2章系统设计 (9) 2.1 系统方框图 (9) 2.2 硬件设计 (10) 2.2.1 直流测速发电机 (10) 2.2.2 ADC0809与单片机连接 (10) 2.2.3 数码管 (11) 2.2.4 综合接线图 (11) 2.3 软件设计 (12) 2.3.1 程序设计思路说明 (12) 2.3.2 总程序控制流程图 (13) 2.3.3 ADC0809工作流程图及程序 (14) 2.3.4显示部分工作流程图及程序 (15) 第3章结论 (18) 参考文献 (19)

绪论 在现代工业自动化高度发展的时期,几乎所有的工业设备都离不开电机,形形色色的电机在不同领域发挥着很重要的作用。与之而来的问题是,如何更好地控制电机,对于不同的场合,对电机的控制要求是不同的,但大部分都会涉及到直流电机的转速测量,从而利用转速来实施对直流电机的控制。 直流电机转速作为直流电机的一项重要技术指标,在各个应用场合都有重要的研究价值,例如在发动机,电动机,机床主轴等旋转设备的试验运转和控制中,常需要分时或连续测量,显示其转速及瞬时速度等,转速是其他大部分技术参数的计算来源,因此,准确测量直流电动机的转速具有重要的研究意义和理论价值。 目前,对直流电动机的速度检测方法很多,从整体上可分为模拟检测和数字检测方法。 模拟检测:即利用测速电机作为发电机,通过检测反电势E的大小和极性可得到转速N和电机转向,采用这种方法直接可以得到转速N和输出电压的特性曲线,直观,但也有很多不足,比如在高速和低速情况下实际输出偏离理想特性。 数字检测技术:即通过分析数字信号产生的一系列脉冲间接获取电机转速。如光电旋转编码器是将检测圆盘划分为等距的三个同心圆,最外环和次外环分别用等距的黑白条纹分开,且最外环和次外环的缝隙位置相位差为90度,用于判断电机的转速,最内环只有一个黑条纹,用作定位脉冲或者是复位脉冲,利用光电编码器输出的脉冲可以计算转速,具体的又可分为M法,T法和M\T法。 此外,市场上已经有了技术成熟的电机测速装置,如利用霍尔元件设计制作的直流电机测速仪等,凭借其精度高,稳定性好等优势占有重要的一席之地。 而本次微机控制原理课程设计的任务是直流电机速度的测量与显示。主要要求是通过测速直流发电机作为传感器,检测直流电机的转速,并输出与转速相关的电压,通过ADC0809芯片将测速发电机输出电压转换成电压的数字信号。控制芯片采用AT89C51将采集转换后的数字信号进行处理,得到转速,并通过四位数码管予以显示。整体上能够完成从转速检测到数据处理到显示的一整套功能。

基于单片机的直流电机

摘要 本课程主要是设计一个基于单片机的直流电机 PWM 控制系统。PWM 控制提高了调速范围,提高了调速精度,改善了快速性能、功率和功率因数。系统在设计中被控对象采用 5V 的直流电机,以 MCS-51 单片机为控制核心,采用 LCD12864 液晶作为显示元件,进行软硬件的设计。硬件电路由protel 设计制作,主要设计了液晶显示电路、键盘控制电路、复位电路、测速电路和驱动电路。软件设计在 Keil 开发平台用 C 语言编写,程序采用模块化设计方案,包括液初始化程序、晶显示程序、键盘控制程序。 本系统 PWM 控制直流电机采用调压调速的方法,整体设计包括软件和硬件两个部分。通过利用单片机产生 PWM 控制信号控制直流电机,详细介绍脉宽调制 ( PWM) 控制原理,直流电机的工作原理和数学模型以及用 H型桥电路基本原理设计的驱动电路。通过硬件电路的模拟情况,说明系统运行正常,各个功能模块实现是可行的,控制精度比较高,能够满足系统的基本要求。 关键词:单片机;PWM;直流电机;L298N;LCD12864;

目录 一、设计任务 (1) 二、设计方案 (1) 三、系统硬件设计 (3) 1、 STC52最小系统 (3) 2、电机模块 (8) 3、 L298N模块 (9) 4、测速模块 (11) 5、测压模块 (12) 6、液晶模块 (13) 7、按键模块 (15) 8、灯光信号模块 (16) 四、系统软件设计 (17) 1、软件流程图 (17) 2、 PWM程序设计 (18) 3、测压程序设计 (18) 4、测速程序设计 (19) 5、液晶驱动程序设计 (20) 6、菜单程序设计 (21) 7、按键程序设计 (23) 8、电机反电动势系数计算程序 (24) 9、电机力矩系数计算程序 (25) 10、逼近算法控制程序 (25) 11、比例控制程序 (25) 12、 PID控制程序 (26) 五、直流调速系统动态数学模型的建立 (28) 六、调速数据 (32) 1、比例调速数据 (32) 2、 PID调速数据 (33) 3、逼近算法调速数据 (34) 4、反电动势系数和电机力矩系数数据 (34) 七、心得体会 (34) 参考文献 (36) 附录一硬件原理图 (37) 附录二硬件PCB图 (38) 附录三程序清单 (39)

直流电机速度控制模型建立

十二、直流电动机速度控制模型建立 如图所示,a R 和a L 分别为电枢回路电阻和电感,a J 为机械旋转部分的转动惯量,f 为旋转部分的粘性摩擦系统,)(t u a 为电枢电压,)(t n 为电动机转动速度,)(t i a 为电枢回路电流。 通过调节电枢电压)(t u a ,控制电动机的转动速度)(t n 。电动机负载变化为电动机转动速度的干扰因素,用负载力矩)(t M d 表示。 根据直流电动机的工作原理及基尔霍夫定律,直流电动机有四大平衡方程: (1)电枢回路电压平衡方程 )()()(t u E t i R dt t di L a a a a a a =++ 式中,a E 为电动机的反电势。 (2)电磁转矩方程 )()(t ia K t M a w = 式中,)(t M w 为电枢电流产生的电磁转矩,a K 为电动机转矩系数。 (3)转矩平衡方程 )()()()(t M t M t fn dt t dn J d w a +=+ 式中,a J 为机械旋转部分的转动惯量,f 为旋转部分的粘性摩擦系数。 (4)由磁感应关系,得 )(t n K E b a = 根据上述的四个平衡方程式,可建立起系统的输出量、干扰量与输入量之间的传递函数 b a a a a a a a a a K K f R s J R f L s L J K s U s N ++++=)()()(2 a a a a d R s L K s U s M +-=)()( 建立起直流电动机的结构图为

直流电动机参数为 Ω =0.2a R , 015.0,015.0,5.0===b a a K K H L ,Nms f 2.0=,202.0m kg J a ?=。 得到系统的阶跃响应曲线为

基于51单片机控制直流电机的设计

可以实现的功能是: 按下左转键则开始向左转动 按下右转键则向右转动 按下停止键则开始逐渐停止转动 按下调速键一次则会加速一档 按下调速键二次则会加速二档 按下调速键三次则会加速三档 按下调速键四次则会加速四档 按下调速键五次则会回到最初速度重新记档位 设计思路: 直流电机只要能提供一定的直流就可以转动,改变电压极性可以改变转动方向,可以通过给直流电机提供脉冲信号来驱动它,脉冲信号的占空比可以影响到直流电机的平均速度,因此可以通过调整占空比从而能实现调速的目的。直流电机的驱动电路要有过流保护作用,图中的二极管就直到这个作用,另外电机的驱动电流是比较大的所以需要用三极管来放大电流。程序的关键就是如何实现占空比的调整,这个可以通过对51单片机定时器重装初值进行改变,从而改变时间。用51实现PWM信号的输出,相对麻烦点,要是AVR就可以方便地实现PWM信号,由见51单片机的局限性与AVR单片机的优势。 原理图

详细程序: #include #define uchar unsigned char #define uint unsigned int sbit PW1=P2^0 ; sbit PW2=P2^1 ; //控制电机的两个输入 sbit accelerate=P2^2 ; //调速按键 sbit stop=P2^3 ; //停止按键 sbit left=P2^4 ; //左转按键 sbit right=P2^5 ; //右转按键 #define right_turn PW1=0;PW2=1 //顺时针转动 #define left_turn PW1=1;PW2=0 //逆向转动 #define end_turn PW1=1;PW2=1 //停转 uint t0=25000,t1=25000; //初始时占空比为50% uint a=25000; // 设置定时器装载初值 25ms 设定频率为20Hz uchar flag=1; //此标志用于选择不同的装载初值 uchar dflag; //左右转标志 uchar count; //用来标志速度档位 void keyscan(); //键盘扫描 void delay(uchar z); void time_init(); //定时器的初始化 void adjust_speed(); //通过调整占空比来调整速度 void main()

基于单片机STC89C52的直流电机PWM调速控制系统

第一章:前言 Pwm 电机调速原理对于电机的转速调整,我们是采用脉宽调制(PWM)办法,控制电机的时候,电源并非连续地向电机供电,而是在一个特定的频率下以方波脉冲的形式提供电能。不同占空比的方波信号能对电机起到调速作用,这是因为电机实际上是一个大电感,它有阻碍输入电流和电压突变的能力,因此脉冲输入信号被平均分配到作用时间上,这样,改变在始能端EN1 和EN2 上输入方波的占空比就能改变加在电机两端的电压大小,从而改变了转速。此电路中用微处理机来实现脉宽调制,通常的方法有两种:(1)用软件方式来实现,即通过执行软件延时循环程序交替改变端口某个二进制位输出逻辑状态来产生脉宽调制信号,设置不同的延时时间得到不同的占空比。 (2)硬件实验自动产生PWM 信号,不占用CPU 处理的时间。这就要用到STC89C52的在PWM模式下的计数器1,具体内容可参考 相关书籍。 51 单片机PWM 程序 产生两个PWM,要求两个PWM 波形占空都为80/256,两个波形之间要错开,不能同时为高电平!高电平之间相差48/256, PWM 这个功能在PIC 单片机上就有,但是如果你就要用51 单片机的

话,也是可以的,但是比较的麻烦.可以用定时器T0来控制频率,定时器T1 来控制占空比:大致的的编程思路是这样的:T0 定时器中断是让一个I0口输出高电平,在这个定时器T0的中断当中起动定时器T1,而这个T1 是让IO 口输出低电平,这样改变定时器T0 的初值就可以改变频率,改变定时器T1 的初值就可以改变占空比。 前言: 直流电机的定义:将直流电能转换成机械能(直流电动机)或将机械能转换成直流电能(直流发电机)的旋转电机。 近年来,随着科技的进步,直流电机得到了越来越广泛的应用,直流具有优良的调速特性,调速平滑,方便,调速范围广,过载能力强,能承受频繁的冲击负载,可实现频繁的无极快速起动、制动和反转,需要满足生产过程自动化系统各种不同的特殊要求,从而对直流电机提出了较高的要求,改变电枢回路电阻调速、改变电压调速等技术已远远不能满足现代科技的要求,这是通过 PWM 方式控制直流电机调速的方法就应运而生。 采取传统的调速系统主要有以下的缺陷:模拟电路容易随时间飘移,会产生一些不必要的热损耗,以及对噪声敏感等。而用PWM 技术后,避免上述的缺点,实现了数字式控制模拟信号,可以大幅度减低成本和功耗。并且 PWM 调速系统开关频率较高,仅靠电枢电感的滤波作用就可以获得平滑的直流电流,低速特性好;同时,开关频率高,快响应特性好,动态抗干扰能力强,可获很宽的频带;开关元件只需工作在开关状态,主电路损耗小,装置的效率高,具有节约空间、经济好等特点。 随着我国经济和文化事业的发展,在很多场合,都要求有直流电机 PWM 调速系统来进行调速,诸如汽车行业中的各种风扇、刮水器、喷水泵、熄火器、反视镜、宾馆中的自动门、自动门锁、自动窗帘、自动给水系统、柔巾机、导弹、火炮、人造卫星、宇宙飞船、舰艇、飞机、坦克、火箭、雷达、战车等场合。 本设计任务: 任务: 单片机为控制核心的直流电机PWM 调速控制系统 设计的主要内容以及技术参数: 功能主要包括: 1) 直流电机的正转; 2) 直流电机的反转; 3) 直流电机的加速; 4) 直流电机的减速; 5) 直流电机的转速在数码管上显示; 6) 直流电机的启动; 7) 直流电机的停止; 第二章:总体设计方案

直流电机转速测量与控制

苏州大学 城市轨道交通学院

课题名称:直流电机转速控制与测量学院:城市轨道交通学院 班级:10级通信工程 学号:45 姓名:袁圆 其他成员:李吟乔王佳毓苏朗

直流电机转速测量与控制 一、设计要求 1) 电机转速比例测量,并数码管显示; 2) 电机转速由按键设定,步长为1rad/min。 二、直流电机转速测量与PWM控制的基本原理: 直流电机的工作原理为:直流电机的磁极N,S间装着一个可以转动的铁磁圆柱体,圆柱体的表面固定着线圈abcd。当线圈流过电流的时候,线圈受到电磁力的作用,产生旋转。 根据左手定则可知,当流过线圈中电流改变方向时,线圈的受力方向也将改变,因此通过改变线圈电流的方向实现改变电机的方向。 由于方波的有效电压跟电压幅值和占空比有关,因此我们通过单片机的控制电路改变占空比,从而改变有效电压,以此控制电机的转速。即采用PWM(脉宽调制)方法实现调速。 三、设计方案 程序应用模块化进行设计,主要有初始化模块、显示模块、读键模块、数制转换模块、双字节除法模块、中断模块和控制调节模块。 初始化模块:8155工作方式、T0和T1工作方式、标志位状态、所用单元初值、中断设置以及初始显示等。 显示模块:设定值和实测值的数值与字符动态显示。 读键模块:从I/O口依据某位数码管亮时读入小按键是否有效,然后根据四个小键盘的不同功能进行相应的处理,只要设定值一改变立刻显示。加1键和减1键要有连加连减功能。 数制转换模块:将二进制转换为十进制。 外部中断模块:将转1圈的时间通过双字节除法程序求出即时转速。 定时中断模块:PWM输出波形形成。 控制调节模块:通过设定值和实测值的比较来改变脉冲波的占空比,该数据的调节分为简单比例调节PP和比例积分调节PI。调节公式分别为: YK=YK1+KP*EK

基于单片机的直流电机控制设计性实验报告

设计题目:直流电机控制电路设计 一设计目得 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 > sbitK1 =P1^0;增加键 sbit K2 =P1^1 ; 减少键 sbit K3 =P1^2;转向选择键 sbit PWMUOT =P3^0; PWM波输出?? sbitturn_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中断

直流电动机速度控制设计概述

第一章:概述 直流电动机是人类发明最早和应用的一种电机。与交流电机相比,直流电机因结构复、维护苦难,价格昂贵等缺点制约了它的发展,应用不及交流电机广泛。但由于直流电动机具有优良的启动、调速和制动性能,因此在工业领域中仍占有一席之地。 转速调节的主要技术指标是:调速范围D和负载变化时对转速的影响即静差率,以及调速时的允许负载性质等(静差率就是表示在负载变化时拖动装置转速降落的程度。静差率越小,表示转速稳定性越好,对生产机械,如机床加工的零件,其加工的精度及表面光洁度就越高)。而直流电动机的突出优点是恰好是能在很大的范围内具有平滑,平稳的调速性能,过载能力较强,热动和制动转矩较大。 因此,从可靠性来看,直流电动机仍有一定的优势。 调节直流电动机转速的方法有三种: (1)电枢回路串电阻; (2)改变励磁电流; (3)改变电枢回路的电源电压; 而本文从另一个角度来阐述直流电机的速度控制,即利用自动控制中的反馈来调节电机的平稳运行以达到各项性能指标。

第二章:系统数学模型 本系统的简化方框图为: 其对应的原理图为: 控制系统的被控对象为电动机(带负载),系统的输出量是转速w ,参数亮是Ui 。控制系统由给定电位器、运算放大器1(含比较作用)、运算放大器2(含RC 校正网络)、功率放大器、测速发电机、减速器等部分组成。 工作原理为:当负载角速度ω和电动机角速度m ω一致的时候,反馈电压为0,电机处于平衡状态即电动机运行稳定。当负载的角速度收到干扰的作用时,ω和m ω失谐,控制系 统通过反馈电压的作用来改变m ω直到达到新的一致使系统恢复稳定,电机稳定运行。

2.1直流电动机的数学模型: 直流电动机的数学模型。直流电动机可以在较宽的速度范围和负载范围内得到连续和准确地控制,因此在控制工程中应用非常广泛。直流电动机产生的力矩与磁通和电枢电流成正比,通过改变电枢电流或改变激磁电流都可以对电流电机的力矩和转速进行控制。图2.2是一个电枢控制式直流电动机的原理图。在这种控制方式中,激磁电流恒定,控制电压加在电枢上,这是一种普遍采用的控制方式。 设为输入的控制电压 电枢电流 为电机产生的主动力矩 为电机轴的角速度 为电机的电感 为电枢导数的电阻 为电枢转动中产生的反电势 为电机和负载的转动惯量 根据电路的克希霍夫定理 (2-1) 电机的主动转矩 (2-2) 其中为电机的力矩常数。 反电势 (2-3) 式中为电机反电势比例系数 力矩平衡方程

基于单片机的直流电机控制(正反转、开关控制)

基于单片机的直流电机控制(正反转,开关控制)原理图如下: 程序如下: /*用电机来代表门的转动情况*/ #include //定义变量 sbit kaimen=P0^0; sbit zanting=P0^1; sbit fanxiang=P0^2; sbit P2_0=P2^0; sbit P2_1=P2^1; bit Flag = 1;//定义电机正反向标志 //函数声明 void motor_turn(void); //正反向控制 void Timer0_init(void); //定义定时器0初始化 /******************************延时处理***************************/ void Delay(unsigned int z)

{ unsigned int x,y; for(x=z;x>0;x--) for(y=110;y>0;y--); } /***************************************************************/ void Timer0_int(void) interrupt 1 using 1//定时器0中断处理主要用来处理换方向的时候 { TR0 = 0; TL0=(65536-50000)/ 256; //定时50ms TH0=(65536-50000)% 256; TR0 = 1; if(Flag == 1)//代表改变方向 { P2_0 = 0; P2_1 = 1; } else //方向不变 { P2_1 = 0; P2_0 = 1; } } /****************开始转动:人满时候开始转动**************/ void motor_start(void) { if(kaimen==1) { //Delay(10); if(kaimen==1) { P2_0 = 0; P2_1 = 1; } } } /***************有人但是人未满时或者有夹到人的时候暂停*************/ void motor_pause(void) { if(zanting==1) { Delay(10);

一个基于51单片机控制直流电机的设计

今天做的一个基于51单片机控制直流电机的设计 2010-09-12 18:47 可以实现的功能是: 按下左转键则开始向左转动 按下右转键则向右转动 按下停止键则开始逐渐停止转动 按下调速键一次则会加速一档 按下调速键二次则会加速二档 按下调速键三次则会加速三档 按下调速键四次则会加速四档 按下调速键五次则会回到最初速度重新记档位 设计思路: 直流电机只要能提供一定的直流就可以转动,改变电压极性可以改变转动方向,可以通过给直流电机提供脉冲信号来驱动它,脉冲信号的占空比可以影响到直流电机的平均速度,因此可以通过调整占空比从而能实现调速的目的。直流电机的驱动电路要有过流保护作用,图中的二极管就直到这个作用,另外电机的驱动电流是比较大的所以需要用三极管来放大电流。程序的关键就是如何实现占空比的调整,这个可以通过对51单片机定时器重装初值进行改变,从而改变时间。用51实现PWM信号的输出,相对麻烦点,要是AVR就可以方便地实现PWM 信号,由见51单片机的局限性与AVR单片机的优势。 原理图

详细程序: #include #define uchar unsigned char #define uint unsigned int sbit PW1=P2^0 ; sbit PW2=P2^1 ; //控制电机的两个输入 sbit accelerate=P2^2 ; //调速按键 sbit stop=P2^3 ; //停止按键 sbit left=P2^4 ; //左转按键 sbit right=P2^5 ; //右转按键 #define right_turn PW1=0;PW2=1 //顺时针转动 #define left_turn PW1=1;PW2=0 //逆向转动 #define end_turn PW1=1;PW2=1 //停转 uint t0=25000,t1=25000; //初始时占空比为50% uint a=25000; // 设置定时器装载初值 25ms 设定频率为20Hz uchar flag=1; //此标志用于选择不同的装载初值 uchar dflag; //左右转标志 uchar count; //用来标志速度档位 void keyscan(); //键盘扫描 void delay(uchar z); void time_init(); //定时器的初始化 void adjust_speed(); //通过调整占空比来调整速度 void main() {

相关文档
最新文档