直流风扇电机转速测量与PWM控制

合集下载

基于PWM驱动的直流电机的测速与控制

基于PWM驱动的直流电机的测速与控制

基于PWM驱动的直流电机的测速与控制【摘要】本文提出了一种测量PWM驱动的直流电机转速的方法,它是由软硬件两大部分构成的,硬件部分由直流电源模块,电机PWM驱动模块,速度检测模块,还有速度显示模块构成。

而软件部分则由C语言编写而成,最后结果AT89C51单片机来实现功能。

本设计中使用PWM驱动直流电机,然后通过光敏器件H21A3计算单位时间内由直流电机产生的脉冲数,将脉冲数送至单片机进行转速的计算,最后将结果送数码管显示出来。

其中可以通过调节电机PWM驱动模块中的变阻器,对直流电机的转速进行调节,从而实现不同转速下PWM直流电机的测速。

【关键词】PWM 直流电机单片机 H21A3 脉冲计算1.前言直流电机由于具有体积小巧,使用方便,调速简单等优点,被广泛的应用在各类控制系统中。

其中转速是直流电机的一个重要物理指标,定义为电机转轴单位时间内转过的圈数。

转速测量的准确度直接影响着对直流电机的准确控制以及系统的风险性。

目前市面上的转速测量仪器的种类很多,按其工作原理还有采样方式大体上可以分为机械式,光电式,电磁式还有频闪式等等[1],其中由于科学技术的发展,机械式测量电机转速已经逐渐的被市场淘汰,光电式测量转速因其实现简单,测量准确度高,已经成为了主流的测速技术之一。

为此,本文提出了一种PWM驱动直流电机与转速测量系统的设计方法,为直流电机控制、测速以及应用提供一些借鉴。

2.整体方案本系统以AT89C51单片机及H21A3光敏器件为核心,设计出基于PWM驱动的直流电机测速与控制电路。

如图2-1所示,直流电源先通过①给各模块供电,然后转速检测模块通过②H21A3计算单位时间内产生的脉冲数,③送至单片机的P0.4口并计算,最后得出的结果在④四位数码管显示出来。

其中转速显示与控制模块的三个按键可以实现对直流电机不同转速下的实时转速检测。

图2-1 系统原理框图根据设计要求我们将采用如下几个模块来完成本设计的硬件部分3.电路实现3.1 直流电源模块直流电源模块如图3-1所示图3-1 直流电源模块因为用分立元件组装而成的直流稳压电源具有组装,调试维修麻烦,所占的体积较大等缺点,所以在电子设备日益小型化微型化的今天,我们采用集成芯片组成的电路来代替分立元件组成的稳压电源电路。

任务2:采用PWM方法控制直流电机的转速

任务2:采用PWM方法控制直流电机的转速
FPEROM结合在一个芯片上,为很多嵌入式控制应用提供了非常灵活而又价格 适宜的方案,其性能价格比较高。
EA:访问程序存储控制信号(一般接+5V)
ALE:地址锁存控制信号
PSEN:外部ROM读选通信号(低电平有效)
AT89S51单片机控制单元特点
1. 89S51性能及特点
89S51的主要性能包括:
2,软件设计说明
(1)程序流程方框图。 (2)项目程序。 (3)程序调试。
LCD1602液晶显示器
LCD1602的引角图
1 23
LCD模块
Vss: +5V电源管脚(Vcc) VDD: 地管脚(GND) Vo: 液晶显示驱动电源(0V~5V
4 5 6 7 8 9 10 11 12 13 14 15 16
项目四:直流电机调速
【项目描述】 学习目标:
1.直流电机的转速调节 2.直流调速系统的设计与实现
任务二采用PWM技术实现直流电机调速
【任务目标】 1.掌握对直流电机的转速调节
一,任务与要求
在实际的生活当中我们所运用到很多的直流电机来驱动一些负载,而在 有的时候当我们人为需要直流电动机的转速高或低时,我们可以调节相 应的按键来实现电动机调速,并要显示出当前电动机的实时转数,满足人 们的需求。使得电器达到更加的人性化、智能化、科学化。
写数据操作
光标位置与相应命令字

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16

1 80 81 82 83 84 85 86 87 88 89 8A 8B 8C 8D 8E 8F
2 C0 C1 C2 C3 C4 C5 C6 C7 C8 C9 CA CB CC CD CE CF

直流电机PWM控制

直流电机PWM控制
4)直流电机运营800转停止 5)直流电机上下限速光电报警
直流电机PWM控制
参照原理图如下所示: 1)查询式键盘原理图
2)6位串行静态显示原理图
直流电机PWM控制
3)直流电机控制原理图
PWM基本原理及其实现措施
• PWM基本原理 • PWM是经过控制固定电压旳直流电源开关频率,
从而变化负载两端旳电压,进而到达控制要求旳 一种电压调整措施。PwM能够应用在许多方面, 如电机调速、温度控制、压力控制等。 • 在PWM驱动控制旳调整系统中,按一种固定旳频 率来接通和断开电源,并根据需要变化一种周期 内“接通”和“断开”时间旳长短。经过变化直 流电机电枢上电压旳“占空比”来变化平均电压 旳大小,从而控制电动机旳转速。所以,PWM又 被称为“开关驱动装置”。

* 经过本例程了解PWM 旳基本原理和使用
*

*
*

* 请将直流电机线接在+5V P12相应旳端子上(步进马达接口出)
*

*
*

* 请学员仔细消化本例程
*

*********************************************************************************/

------------1000/(0.02ms*250)=200Hz

*************************************/

void T1zd(void) interrupt 3 //3 为定时器1旳中断号 1 定时器0旳中断号 0 外
部中断1 2 外部中断2 4 串口中断

main()

pwm不能控制直流电机转速的原因

pwm不能控制直流电机转速的原因

一、 PWM控制原理在控制直流电机的转速时,常常会使用PWM(脉冲宽度调制)技术。

PWM技术通过改变信号的占空比来控制电机的输出功率,从而控制电机的转速。

当占空比增加时,电机的输出功率也随之增加,从而提高了电机的转速。

二、 PWM控制直流电机转速的局限性1. 电机响应时间尽管PWM技术可以改变电机的输出功率,但直流电机本身的电气特性也会影响电机的转速响应时间。

电机的惯性和机械特性都会造成转速变化的延迟,使得PWM控制直流电机的转速响应时间受到限制。

2. 电机额定转速直流电机的额定转速通常由其设计结构和电气特性所确定,而PWM技术无法改变电机的设计结构和电气特性。

当直流电机达到其额定转速时,即使继续增加PWM信号的占空比,电机的转速也无法再次提升。

3. 功率输出PWM技术虽然可以改变电机的输出功率,但在达到电机的最大输出功率后,继续增加PWM信号的占空比也无法使电机输出更大的功率。

这是因为电机本身存在一定的功率限制,超过该限制将导致电机过载,甚至损坏。

4. 电机负载直流电机在实际应用中往往需要承受不同程度的负载,而PWM技术无法有效地适应不同负载条件下的电机转速控制。

在负载较大时,即使提高PWM信号的占空比,电机的转速也可能无法达到预期的要求。

5. 控制精度由于直流电机本身的特性以及外部环境的影响,PWM控制直流电机的转速往往难以做到精确控制。

特别是在需要较高转速精度的应用场合,如精密机械、仪器仪表等领域,PWM控制直流电机的转速局限性更加明显。

三、克服PWM控制直流电机转速的局限性的方法尽管PWM控制直流电机转速存在一定的局限性,但可以通过以下方法克服或减轻这些局限性:1. 采用闭环控制:通过添加编码器等反馈装置,实现对电机转速或位置的闭环控制,使得PWM控制更加精确和稳定。

2. 优化电机电路:改善直流电机的驱动电路,提高电机的响应速度和性能,使得PWM控制能够更好地调节电机的转速。

3. 降低电机负载:在设计应用时,尽量减小电机的负载,使得PWM控制能够更有效地控制电机的转速。

控制有刷直流电机的方法

控制有刷直流电机的方法

控制有刷直流电机的方法
控制有刷直流电机的方法有以下几种:
1. 电压控制方法:通过调节电源电压的大小来控制电机的转速。

增大电源电压可以使电机转速增加,减小电压则使电机转速减小。

2. PWM 控制方法:使用脉宽调制(PWM)技术控制电机的
转速。

通过调节PWM信号的占空比(即高电平时间与周期时
间的比值),可以改变电机的平均电压,从而控制电机的转速。

占空比越大,电机转速越高,反之亦然。

3. 反馈控制方法:使用反馈传感器(如编码器)检测电机的转速或位置,并根据反馈信号进行闭环控制。

通过比较反馈信号与设定值,控制器可以调整电机的电压或PWM占空比,使电
机保持在设定的转速或位置。

4. H桥驱动方法:使用H桥电路控制电机的正反转。

通过控
制H桥的开关状态,可以改变电机的电流流动方向,实现电
机的正反转和制动。

需要注意的是,控制有刷直流电机需考虑到电机的最大电流、功率和电机的特性曲线,选择合适的驱动方式和控制策略,以确保电机的安全运行和性能要求的实现。

直流电机的三种转速控制方法

直流电机的三种转速控制方法

直流电机的三种转速控制方法
直流电机是一种常见的电动机类型,广泛应用于各种电力设备和工业机械中。

在实际应用中,为了满足不同的工作需求,需要对直流电机的转速进行控制。

下面将介绍直流电机的三种常见转速控制方法。

一、电压调节法
电压调节法是一种简单常用的直流电机转速控制方法。

通过调节电源的输出电压来控制直流电机的转速。

当电源电压增大时,直流电机的转速也会随之增加。

这种方法适用于转速变化范围较小的情况,例如风扇、泵等。

二、电阻调节法
电阻调节法是一种通过改变电阻来控制直流电机转速的方法。

在直流电机的电路中串接一个可调电阻,通过改变电阻的阻值来改变电机的转速。

当电阻增大时,电机的转速会减小。

这种方法适用于转速变化范围较大的情况,但效率较低。

三、PWM调节法
PWM调节法是一种通过改变脉宽调制信号的占空比来控制直流电机转速的方法。

通过控制开关管的导通时间,使得电机得到短时间的高电压和长时间的低电压,从而实现对电机转速的控制。

这种方法具有调速范围广、效率高的特点,适用于对转速要求较高的场合,
例如机械加工、自动化生产线等。

以上是直流电机的三种常见转速控制方法。

不同的控制方法适用于不同的应用场景,根据实际需求选择合适的方法可以提高电机的性能和效率。

同时,随着科技的不断进步,还出现了更多先进的转速控制技术,例如矢量控制、闭环控制等,这些方法在特定的领域中得到了广泛应用。

未来,随着技术的不断发展,直流电机的转速控制方法将会更加多样化和高效化。

直流风扇电机转速测量与PWM控制

直流风扇电机转速测量与PWM控制

单片机课程设计_直流风扇电机转速测量与PWM控制一.设计思路程序应用模块化进行设计,主要有初始化模块、显示模块、读键模块、数制转换模块、双字节除法模块、中断模块和控制调节模块。

编程次序可按此先后进行。

初始化模块:8155工作方式、T0和T1工作方式、标志位状态、所用单元初值、中断设置以及初始显示等。

显示模块:设定值和实测值的数值与字符动态显示。

读键模块:从I/O口依据某位数码管亮时读入小按键是否有效,然后根据四个小键盘的不同功能进行相应的处理,只要设定值一改变立刻显示。

加1键和减1键要有连加连减功能。

数制转换模块:将二进制转换为十进制。

外部中断模块:将转1圈的时间通过双字节除法程序求出即时转速。

定时中断模块:PWM输出波形形成。

控制调节模块:通过设定值和实测值的比较来改变脉冲波的占空比,该数据的调节分为简单比例调节PP和比例积分调节PI。

调节公式分别为:YK=YK1+KP*EKYK=YK1+KP*EK+KI*EK2YK:要输出的数据YK1:上次输出的数据EK:设定值和实测值的差值EK1:上次的EK值EK2:EK-EK1的差值KP:比例系数(设KP=1~2)KI:积分系数(设KI=1~2)一.带注释软件清单;==========使用单元设定==========//..................................使用单元设定DIS0 EQU 30HDIS1 EQU 31HDIS2 EQU 32HDIS3 EQU 33HLED EQU 34HTM1 EQU 35H;TM2 EQU 36H;INTV BIT 37H;中断标志THX EQU 38H;定时脉宽高电平CISHU EQU 39HFIRST BIT 41H; 检测加减是否第一次按下SET1 BIT 42HSETZ0 EQU 43H;设定当前设定值SETZ0~SETZ3SETZ1 EQU 44HSETZ2 EQU 45HSETZ3 EQU 46HTM3 EQU 47H; 循环次数单元JIA1 BIT 48H; 单步加标志LIANJIA BIT 49H; 连加标志JIAN1 BIT 50H; 单步减标志LIANJIAN BIT 51H; 连减标志SETDATA EQU 52H; 设定速度暂存单元REALDATA EQU 53H; 实测速度暂存单元YK1 EQU 54H; 上次输出数据暂存单元KP EQU 56H;比例系数KI EQU 57H;积分系数EK EQU 58H;设定值和实测值的差值EK1 EQU 59H;上次的EK值OUTPUT EQU 60H;EK2 EQU 61H;EK-EK1的值ONPRESS BIT 62H;判定ENTER键是否弹起标志TMS EQU 63H;闪烁时长SHAN BIT 64H; 闪烁标志;==========主程序==========ORG 0000HSJMP MAINORG 0013H;外部中断1入口地址AJMP INX1ORG 001BH;定时器T1中断入口地址AJMP ITX1ORG 0070HMAIN: MOV SP,#70H;设定堆栈指针入口地址ACALL INIT;调用初始化程序M1: JB SET1,FLASH;当前为设置状态则跳到闪烁显示模块ACALL DISP; 否则为一般显示SJMP NEXTTFLASH: ACALL DISP1NEXTT: ACALL DELAY;调用按键延时程序ACALL M2;调用按键程序DJNZ CISHU,M1;第隔100MS刷新一下实测值MOV CISHU,#20ACALL CONTROL;调用控制调速模块SJMP M1//==========初始化模块==========INIT:MOV DPTR,#0FD00H ;设置PA、PB为输出口,PC为输入口MOV A,#03HMOVX @DPTR,AMOV TMOD,#21H ;定时器/计数器T1为方式2,定时器/计数器T0为方式1 MOV TL0,#00H ; 定时器/计数器T0赋初值#00HMOV TH0,#00HMOV THX,#0BBH ;输出单元赋初值#0BBH,即脉冲高电平宽度MOV TH1,THXMOV TL1,THXSETB TR1 ;启动定时器/计数器T1SETB TR0 ; 启动定时器/计数器T0SETB ET1 ;允许定时器/计数器T1溢出中断 SETB EX1 ;允许外部中断1中断SETB IT1 ;选择边沿触发SETB EA ;CPU开中断SETB 07H;SETB SHANCLR 11H;检测是否成功MOV LED,#7FHMOV R0,#DIS0MOV DIS0,#14MOV DIS1,#15MOV DIS2,#15MOV DIS3,#15MOV SETZ2,#15MOV SETZ3,#15CLR ONPRESSSETB SET1SETB FIRSTCLR JIA1CLR LIANJIACLR JIAN1CLR LIANJIANCLR INTVMOV KP,#1MOV KI,#1MOV EK1,#0MOV CISHU,#20MOV TM2,#50RET//==========显示模块==========DISP:MOV DPTR,#0FD02H ;指向PB口MOV A,LEDRL A ;左移1位JB ACC.4,D1MOV A,#0FEH ; 移出则重设起始值MOV R0,#DIS0D1:MOV LED,AMOVX @DPTR,AMOV A,@R0 ; 取显示RAM数据MOV DPTR,#TABMOVC A,@A+DPTR ; 换码操作MOV DPTR,#0FD01H ; 置8155 PA口MOVX @DPTR,AINC R0 ;未移出则显示RAM地址加1RET//==========设置时闪烁模块==========DISP1:JB SHAN,LIANG;DJNZ TMS,AN 闪烁标志SHAN为1时调用DISP显示模CPL SHAN; 块显示当前设定值,闪烁时间到,将标志取MOV TMS,#50 ;反,并再次送入闪烁时长TMS.当闪烁标SJMP SHANRET;志为0时闪烁时间到先将DIS3, DIS2, LIANG:ACALL DISP ; 送入#16,即全灭值,再调用DISP,再将标 DJNZ TMS,SHANRET; 志位取反,重新装入时长TMS,这样就CPL SHAN;能实现闪烁功能MOV TMS,#50SJMP SHANRETAN: MOV DIS3,#16MOV DIS2,#16ACALL DISPMOV DIS3,SETZ3MOV DIS2,SETZ2SHANRET: RET//==========延时5ms子程序模块==========DELAY:MOV TM2,#5DEL2:MOV TM1,#255DEL1:DJNZ TM1,DEL1DJNZ TM2,DEL2RET//==========读键模块====================M2: MOV DPTR,#0FD03H;置PC口MOVX A,@DPTRJNB ACC.5,KEY; 若PC5为0则调用按键程序ACALL KK0RETKEY: MOV A,LEDJB FIRST,PK1; 若FIRST为1则调用密码按键 PKEY1,KEY2,KEY3,PKEY4 JNB ACC.0,KEY1 ;否则调用一般按键KEY1-KEY4,其中KEY2,KEY3为共用的 JNB ACC.3,KEY4SJMP PK2PK1: JNB ACC.0,PKEY1JNB ACC.3,PKEY4PK2: JNB ACC.1,KEY2JNB ACC.2,KEY3RET;==========设置键设定==========KEY1:SETB SET1MOV DIS0,#11 ;将前次设定值代入MOV DIS1,SETZ1MOV DIS2,SETZ2 ;装入上次设定值MOV DIS3,SETZ3RET;==========加键设定==========KEY2:JNB SET1,ENDKEYACALL JIA; 调用JIA程序,看是单步加还是连加MOV A,DIS3MOV SETZ3,ACJNE A,#10,ENDKEYJIN1:MOV DIS3,#0;若低位满10则高位加1,并将低位变为0INC DIS2MOV A,DIS2MOV SETZ2,ACJNE A,#10,ENDKEYSJMP ENDKEY;==========减键设定==========KEY3:JNB SET1,ENDKEYMOV A,DIS3JZ PANGAOJJ:ACALL JIAN ; 调用JIAN程序,看是单步加还是连减 MOV SETZ3,DIS3RETPANGAO:MOV A,DIS2 ; 低位减到0判断高位是否为0,JZ ENDKEY ; 是0则什么也不做,返回JIE1:MOV DIS3,#9 ; 若高位不为0则高位减1,低位置9DEC DIS2MOV SETZ2,DIS2SJMP JJ;==========ENTER键设定==========KEY4:JB ONPRESS,ENDKEYCLR SET1; 将设置标志清掉MOV DIS0,#10MOV SETZ1,DIS1RET//==========设定密码时的设置和ENTER按键=============PKEY1:RETPKEY4:JB 11H,SUCCESSMOV A,DIS3CJNE A,#5,ERROR ; 判定输入密码的低位是否正确,不正确直接MOV A,DIS2; 跳到输入密码状态,若正确,再看高位正确否CJNE A,#6,ERROR ; 正确则跳到SUCCESS,否则也返回输入密码状态SUCCESS:SETB 11H ; 11H为判定密码成功与否标志JB 07H,FC ; 输入成功密码第一次先跳到FC,测定初值CLR FIRST ; 设定完成,将输入密码标志清掉SETB TR1 ; 定时器0和1打开SETB TR0;SJMP PRETFC: MOV DIS0,#11; 设定输入测定值的显示方式MOV DIS1,#15MOV SETZ2,#0MOV SETZ3,#0CLR 07H; 07H是用于设定是否第一次设定SETB ONPRESSRETERROR:MOV DIS3,#15; 当密码输入错误时,返回输入密码状态MOV DIS2,#15PRET: RETENDKEY:RET;==========单步加减&连续加减子程序==========;==加部分==JIA:JB JIA1,S1SETB JIA1MOV TM3,#20S2:INC DIS3JB LIANJIA,ALLRETS1:JB LIANJIA,S2DJNZ TM3,ALLRETSJMP S2RET;==减部分==JIAN:JB JIAN1,S3SETB JIAN1MOV TM3,#20S4:DEC DIS3JB LIANJIAN,ALLRETS3:JB LIANJIAN,S4DJNZ TM3,ALLRETSETB LIANJIANSJMP S4RET//============判断键是否弹起=========== KK0:MOV A,LEDJB ACC.2,KK1;CLR JIAN1CLR LIANJIANRETKK1:MOV A,LEDJB ACC.1,KK2CLR JIA1CLR LIANJIARETKK2:MOV A,LEDJB ACC.3,ALLRETCLR ONPRESSRETALLRET:RET//==========定时器T1中断模块(用于调速)========== ITX1:PUSH ACCPUSH BCPL P1.0JNB P1.0,L1MOV TH1,THXSJMP L2L1: MOV A,#0FFHCLR CSUBB A,THXMOV TH1,AL2: POP BPOP ACCRETI//==========外部中断1模块(用于测速)==========INX1:PUSH ACCPUSH BJB SET1,RETIX ; 若当前为设置状态则不做测速CLR TR0 ; 当产生中断时,先关定时器0MOV R6,TH0 ; 将当前的TH0放入R6,TL0放入R7MOV R7,TL0CHUZHI:MOV TH0,#00H; 将定时器初值置0MOV TL0,#00HSETB TR0 ; 定时器打开ACALL CHUFA ; 调用双字节除法程序RETIX: POP BPOP ACCRETI单片机课程设计_直流风扇电机转速测量与PWM控制(含P调节和PI调节)4#e# ;==========双字节除法==========CHUFA:MOV R2,#00H ; 赋被除数R2R3R4R5=500000usMOV R3,#07HMOV R4,#0A1HMOV R5,#20HDDIV: MOV B,#16DDV1:CLR CMOV A ,R5RLC AMOV R5,AMOV A,R4RLC AMOV R4,AMOV A,R3RLC AMOV R3,AXCH A,R2RLC AXCH A,R2MOV F0,CCLR CSUBB A,R7MOV R1,AMOV A,R2SUBB A,R6JB F0,DDV2JC DDV3 DDV2:MOV R2,A MOV A,R1MOV R3,AINC R5DDV3:DJNZ B,DDV1//==========数值转换模块(将二进制-->十进制)=========== BIN:MOV A,R5MOV B,#10DIV ABMOV DIS2,A ; 将商赋予显示值的高位DIS2MOV DIS3,B ; 将余数赋予显示值的低位DIS3MOV REALDATA,R5 ;将测速值R5赋予实测值单元REALDATA RET//==========控制调节模块==========CONTROL:JB P1.5,PI ; 若P1.5=1做PI环节,否则做PP环节ACALL PP;MOV TH1,THXRETPI:MOV A,SETZ2 ; SETZ2为设定值的高位MOV B,#10MUL ABADD A,SETZ3 ; 此时A中为设定值SETDATAMOV SETDA TA,ACLR CSUBB A,REALDATAMOV EK,A ; EK=设定值SETDATA-实测值REALDATAJC DOWNZERO ; 若有借位(即设定值SETDATA<实测值REALDA TA), SJMP OVERZERO; 转向DOWNZERO;否则转向OVERZERO DOWNZERO:MOV A,REALDATASUBB A,SETDATA ; 将实测值REALDA TA-设定值SETDA TA的差值存入A MOV B,KPMUL ABMOV B,A ; 将(REALDATA-SETDATA)*KP的值存入BMOV A,THX ;将上次输出的数据THX存入ASUBB A,BMOV 05H,A ; 05H=YK1+KP*EKJC FU ;若有借位,转向FU,否则转向ZHENGSJMP ZHENGOVERZERO:MOV B,KPMUL AB ;将EK*KP的值存入AADD A,THXJMP ZHENGZHENG: MOV A,EKSUBB A,EK1MOV EK2,A ;EK2=EK-EK1JC ZHENG1 ;若有借位即EK2<0,转向ZHENG1;否则转向ZHENG2ZHENG1: MOV B,KIMOV A,EK2MUL AB ; A=EK2*KIADD A,05H ;A=EK2*KI+YK1+KP*EKJC XX1 ;若有进位即(A)>风速最大值#0FFH,SJMP OVERPPI; 则转向XX1;否则转向OVERPPI XX1: CLR CMOV A,#0FFH ; 将风速最大值#0FFH存入ASJMP OVERPPIZHENG2: MOV A,EK1SUBB A,EK ; 将EK1-EK的值存入AMOV B,AMOV A,KIMUL AB ;将KI*(EK1-EK)的值存入AMOV B,AMOV A,05HSUBB A,B ; 将YK1+KP*EK+KI*EK2的值存入AJC XX2 ;若有借位即(A)<0,则转向XX2;SJMP OVERPPI; 否则转向OVERPPIXX2: CLR CMOV A,#00HFU: MOV A,EKSUBB A,EK1MOV EK2,AJC XX2 ; 若有借位即EK2=EK-EK1的值<0,SJMP FU1;则转向XX2;否则转向FU1FU1: MOV A,EK2SUBB A,05H ; A=EK2-(YK1+KP*EK)JC XX2 ; 若有借位即A的值<0,则转向XX2;SJMP OVERPPI; 否则转向OVERPPIOVERPPI:MOV THX,AMOV EK1,EKRETPP: MOV A,SETZ2 ; SETZ2为设定值的高位MOV B,#10MUL ABADD A,SETZ3 ;此时A中为SETDATAMOV SETDATA,ACLR CSUBB A,REALDATA ;此时A中为EK=SETDATA-REALDATAJZ CC ;若SETDATA=REALDAT,转向CCJC TT1 ; 若有借位即EK=SETDA TA-REALDATA<0,转向TT1 MOV B,KP ; 实测值小于设定值的情况MUL AB ;A=EK*KPADD A,THX ; A=EK*KP+上次输出的数据THX,即YK=YK1+EK*KP JC PP2 ; 若有进位即A>#0FFH,则转向PP2;否则转向PP4SJMP PP4TT1: CLR C ; 实测值大于设定值的情况MOV A,REALDATASUBB A,SETDATA ; A=REALDATA-SETDATAMOV B,KPMUL AB ;A=(REALDATA-SETDATA)*KPMOV B,AMOV A,THXSUBB A,B ;即YK=YK1+EK*KPJC PP1 ;若有借位即A的值<0,则转向PP1;否则转向PP4SJMP PP4PP1: CLR CMOV A,#00H ;将风速最低值#00H存入ASJMP PP4PP2: MOV A,#0FFH ;将风速最大值#0FFH存入ACLR CPP4: MOV THX,A ;将实测的风速值A存入输出单元THXCC: RET;==========数值表==========TAB: DB 3FH,06H,5BH,4FH,66H,6DH,7DH;0~6DB 07H,7FH,6FH,77H,7CH,39H,5EH;7~dDB 73H,40H, 00H ;73H为字母”P”,40H为”-“,00H为数码管全灭END一.创新点说明及应用1.密码验证说明: 在这个程序中,我加入了密码验证功能,当用户第一次进入风扇调速系统.只有密码正确才能进入并设定转速.应用:在一些非内部人员或专业人员可以调试的设备,可用此密码验证功能,以防系统工作状态被他人改动.造成不必要的损失.2. 设定过程中闪烁功能。

pwm直流电机控制原理

pwm直流电机控制原理

pwm直流电机控制原理
PWM(脉宽调制)是一种控制技术,可以用于控制直流电机的转速和方向。

它通过改变信号的脉冲宽度来控制电机驱动电压的大小。

在PWM控制中,周期性地产生一个固定频率的方波信号,即PWM信号。

这个信号的高电平时间(脉冲宽度)可以根据需要进行调整。

脉冲宽度越长,电机接收到的驱动电压就越高,转速也会相应增加。

脉冲宽度越短,则驱动电压越低,转速也会减小。

PWM信号的周期必须远远小于电机的机械响应时间,以确保控制的稳定性。

频率一般设定在几千赫兹到几十千赫兹之间,以避免电机产生噪音。

脉冲宽度的调整则通过改变占空比(高电平时间与周期的比值)来实现。

在具体的实现中,通常使用微控制器或专用的PWM控制器来产生PWM信号。

通过改变占空比的值,控制电机的转速。

例如,当占空比为50%时,电机接收到的驱动电压为平均值的一半,电机转速为额定转速的一半;当占空比为100%时,电机接收到的驱动电压为最大值,电机转速为最大转速。

为了实现方向控制,可以使用H桥电路。

H桥电路可以控制电流的方向,从而改变电机的转向。

通过控制H桥的开关状态,可以将电机正反转。

综上所述,PWM控制技术通过改变信号的脉冲宽度来控制直
流电机的转速和方向。

通过微调占空比的值,可以精确控制电机的转速,并利用H桥电路控制电机的转向。

电机测速与控速PWM

电机测速与控速PWM

目录目录 (3)第1章前言 (4)第2章总体设计方案 (5)第3章硬件电路的设计方案 (6)3.1 AT89S52单片机电路 (7)3.2 LED显示和按键电路 (8)3.3霍尔电路测速 (9)3.4电机驱动电路 (11)3.5整流电路 (12)第4章软件设计方案 (14)4.1显示部分 (14)4.2控制部分 (15)第5章系统调试 (16)5.1软件调试 (16)5.2硬件调试 (16)第6章使用说明 (17)第7章总结与体会 (17)第8章参考文献 (19)附录一(原理图) (20)附录二(c 程序) (21)附录三(器件清单) (27)第一章前言随着电子技术的发展和工程实际的需求,单片机在计算机工程应用中起着越来越重要的作用。

从计算机的应用发展来看,通用计算机和嵌入式系统应用已成为两大热门发展技术。

特别是在工业测控、智能家电和通讯终端等应用领域更是单片机的一统天下,单片机取代了过去复杂的电路设计,完善了系统的功能,大大提高了系统的可靠性,降低了成本,从而使得单片机系统的开发应用成为计算机工程应用的一个重要领域,而且打破了计算机专业人员垄断计算机工程应用的局面。

计算机软硬件技术的发展使使工程技术人员掌握计算机应用系统设计、组装和调试等变得非常容易。

单片机应用系统已成为电子工程师实现工程设计的常规首选方案。

本课程设计采用AT89S52单片机作为设计的核心部分,与51单片机相比,内核还是51内核,不过52的内部资源比51多,增加了一个16位的计数器T2,相应的特殊寄存器(SFR)也有了一点变化,另外52的内存也从51的128字节提高到了256字节,ROM也从2K提高到4K,可以装下更大的程序,运行速度并没有太大变化,和51运行速度相当。

考虑到内存的增加对较复杂的程序带来的好处,52的总体性能是要比51好不少。

如今,嵌入式系统已经应用非常广泛,技术已经很成熟。

各种家用电器和工厂的大多数设备都有嵌入式系统。

pwm不能控制直流电机转速的原因

pwm不能控制直流电机转速的原因

pwm不能控制直流电机转速的原因PWM(脉宽调制)技术是一种常用于控制电机转速的方法,但是在直流电机上却不能直接使用PWM来控制转速。

本文将分析并解释为什么PWM不能直接用于控制直流电机转速的原因。

1. 引言直流电机是一种常见的电机类型,广泛应用于各个领域。

为了实现对电机的精准控制,人们引入了PWM技术。

2. PWM技术简介PWM技术是通过改变信号的脉宽来控制电平的一种电子技术。

在一个周期内,输出信号的高电平时间占整个周期的比例称为占空比。

利用这个占空比,可以控制输出电平的平均值,从而实现对电机的控制。

3. PWM控制直流电机在有些情况下,人们尝试将PWM应用于直流电机的转速控制。

具体做法是将PWM信号连接到直流电机的驱动器或者H桥驱动电路上。

然而,这样的控制方式却不能直接改变电机的转速。

原因如下:3.1 直流电机的构造直流电机由定子和转子组成。

转子是电机的旋转部分,由电刷和线圈组成。

电刷以固定的间隔接触转子线圈,并改变电流的方向,从而使转子旋转。

直流电机的转速取决于电刷与线圈之间的电流和连接方式。

3.2 PWM信号的性质PWM信号是由周期性的高电平(ON)和低电平(OFF)组成的。

当PWM信号的高电平处于ON状态时,电机驱动电路将提供电机所需的电流。

然而,在PWM信号的低电平处于OFF状态时,电机将没有足够的电流供应,导致电机不能保持旋转。

4. 替代方案为了解决PWM不能直接控制直流电机转速的问题,可以采用以下替代方案:4.1 电机驱动器直流电机驱动器是一种能够根据输入信号(如电压或电流)来控制电机转速的装置。

可以通过改变电机驱动器的输入信号,间接实现对电机转速的精准控制。

4.2 速度反馈系统引入速度反馈系统可以实现对直流电机转速的闭环控制。

这种系统通过测量电机转子的实际转速,并与设定的目标转速进行比较,控制输入信号以调整电机的转速。

5. 结论在PWM技术中,虽然可以通过改变占空比来控制输出电平的平均值,但是这种方法不能直接用于控制直流电机转速。

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

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

基于单片机的无刷直流风扇转速测量与调节——09ME-LLQ测量风扇型号:品牌:台达,型号:AFB0712HHB东流电子HOT 51系列单片机学习板数码管显示芯片:74HC573 74HC138使用C语言编程一、项目开发流程:流程图开始中断产生PWM波计算风扇产生脉冲数码管显示理论值和实际值串口通信输入转速输出对应占空比的PWM波控制转速二、源程序#include<reg52.h>#define uint unsigned int#define uchar unsigned char#define ulong unsigned longuchar code table[10]={0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f}; //不带小数点数字uchar code LED_W[8] = {0,1,2,3,4,5,6,7}; //亮数码管位sbit d1=P1^0;ulong number;uint num,tta,ttc,bb,cc,pm;uchar i=0;void Delay(uint i) //用于显示数码管,软件廷时1ms{uchar x,j;for(j=0;j<i;j++)for(x=0;x<=148;x++);}void display(num) //显示程序{P0 = table[num/1000]; //显示转速测量值if((num/1000)!=0){P2 = LED_W[4];}Delay(1);P0 = table[(num/100)%10];P2 = LED_W[5];Delay(1);P0 = table[(num/10)%10];P2 = LED_W[6];Delay(1);P0 = table[num%10];P2 = LED_W[7];Delay(1);P0 = table[bb/1000]; //显示转速目标值if((bb/1000)!=0){ P2 = LED_W[0]; }Delay(1);P0 = table[(bb/100)%10];P2 = LED_W[1];Delay(1);P0 = table[(bb/10)%10];P2 = LED_W[2];Delay(1);P0 = table[bb%10];P2 = LED_W[3];Delay(1);}void Init(void) //程序初始化{EA=0;tta=0;num=0;bb=600;number=0;pm=800;TMOD = 0x26; //T0计数模式3,T1定时模式3 PCON = 0x00;SCON = 0x50;TH0=0xff; //计数器T0,一个脉冲溢出TL0=0xff;TH1 = 0xFd; //设置串口波特率9600TL1 = 0xFd;RCAP2H=(65536-50)/256; //定时器T2,定时0.5msRCAP2L=(65536-50)%256;ET0=1; //开T0、T1、T2中断允许ET2=1;TR0=1;TR1=1;TR2=1; //启动定时器1ES=1; //开串口中断EA=1; //开总中断}void pwm(bb) //调速程序{if(bb>=2100) pm=1910;else if(bb>=2000) pm=1835;else if(bb>=1900) pm=1650;else if(bb>=1800) pm=1500;else if(bb>=1700) pm=1370;else if(bb>=1600) pm=1240;else if(bb>=1500) pm=1150;else if(bb>=1400) pm=1110;else if(bb>=1300) pm=1030;else if(bb>=1200) pm=990;else if(bb>=1100) pm=905;else if(bb>=1000) pm=845;else if(bb>=900) pm=770;else if(bb>=800) pm=718;else if(bb>=700) pm=655;else if(bb>=600) pm=620;else if(bb>=500) pm=575;else if(bb>=400) pm=535;else if(bb>=300) pm=500;}void Main(void) //主函数{Init();while(1){if(num<bb-12) //速度微调pm=pm+1;else if(num>bb+12)pm=pm-1;elsepm=pm;display(num);}}void exter1() interrupt 1 using 1 // 定时器T0,P3.4接口计数方式{i++;number=number+tta;tta=0;if(i==3) //测量三次求平均值,减小转速波动{i=0;num=1800000/number;number=0;}}/* void Timer1 (void) interrupt 4 using 2 //T1,串口接收十六进制格式发送的目标转速{static uchar i=1; //定义为静态变量,当重新进入这个子函数时i的值不会发生改变EA = 0;if(RI == 1) //当硬件接收到一个数据时,RI会置位{if(i==1){cc=SBUF;RI=0;EA=1;}if(i==0){cc=cc*256+SBUF;RI=0;EA=1;i=2;bb=cc;cc=0;}i--;}pwm(bb);} */void Timer1 (void) interrupt 4 using 2 //T1,串口接收字符格式发送的目标转速{static uchar i=3; //定义为静态变量,当重新进入这个子函数时i的值不会发生改变EA = 0;if(RI == 1) //当硬件接收到一个数据时,RI会置位{if(i==3){cc=(SBUF-48);RI=0;EA=1;}if(i==2){cc=cc*10+(SBUF-48);RI=0;EA=1;}if(i==1){cc=cc*10+(SBUF-48);RI=0;EA=1;}if(i==0){cc=cc*10+(SBUF-48);RI=0;EA=1;i=4;bb=cc;cc=0;}i--;}pwm(bb);}void timer2() interrupt 5 using 3 //定时器T2,0.5ms中断产生PWM方波{static uchar i=0;TF2=0;i++;tta++;ttc++;if(ttc>=pm) //占空比0.22以下,风扇不转{d1=0;if(ttc==2000) //PWM波周期为100ms,周期越小,转速越稳定{d1=1;ttc=0;}}}。

风扇pwm

风扇pwm

风扇PWM简介PWM(Pulse Width Modulation,脉宽调制)是一种用来调节信号占空比的技术。

在电子设备中,PWM被广泛应用于调节电平、控制电机速度等场景。

本文将介绍PWM在风扇控制中的应用。

风扇控制原理风扇控制的目的是根据系统的需要,调整风扇的转速以达到散热或降温的目的。

传统的风扇控制方法通常是通过调节电压或频率来改变风扇的转速,但这种方法效果不太理想。

而采用PWM控制方法能够更精确地控制风扇的转速,提高风扇控制的准确性和稳定性。

PWM工作原理PWM控制方法是通过调节输入信号的脉冲宽度来调整输出信号的占空比,从而改变风扇的转速。

PWM信号的周期固定,但占空比可以根据需求进行调节。

占空比越大,风扇转速越快;占空比越小,风扇转速越慢。

风扇PWM控制电路风扇PWM控制电路通常由微控制器(MCU)、PWM信号发生器、驱动电路和风扇组成。

MCU通过改变PWM信号的占空比来控制风扇的转速,驱动电路则负责将PWM信号转为电压或电流,驱动风扇。

风扇PWM控制实现步骤1.初始化PWM模块:在MCU上初始化PWM模块并设置相关参数,如PWM信号的频率、占空比等。

2.配置PWM信号输出口:将PWM信号与驱动电路相连的IO口进行配置和连接。

3.设置占空比:根据需要,通过改变PWM信号的占空比来调整风扇的转速。

占空比可以在0-100%之间进行调节。

4.启动PWM模块:通过使能PWM模块,开始输出PWM信号。

5.监测转速:通过监测驱动电路输出的电压或电流来实时监测风扇的转速。

风扇PWM控制的优势•精确控制:PWM控制方法能够精确地调节风扇的转速,以满足不同的散热需求。

•节能高效:相比传统的电压控制方法,PWM控制方法更为高效,能够减少能耗。

•稳定性好:PWM控制方法在不同负载情况下都能提供稳定的输出信号,有效维持风扇的转速。

•可靠性强:PWM控制方法能够减少对风扇电机的磨损和噪声。

总结风扇PWM控制是一种精确、高效、稳定且可靠的风扇控制方法。

直流风扇电机转速测量与PWM控制-论文

直流风扇电机转速测量与PWM控制-论文

软件部分本项目是对直流电机PWM调速器设计的实验,主要实现用单片对电动机的控制。

为实现系统的微机控制,在设计中,采用了STC89C51单片机作为整个控制系统的控制电路的核心部分,并用电动机驱动芯片L293D驱动电机,配以数码管显示,光电码盘模块,实现对电动机的转速的显示和测量;输入采用独立式键盘作为命令的输入,单片机在程序的控制下,不断产生PWM波形,H型驱动电路完成电机的正反转控制。

在设计中,采用PWM控制方式,通过改变PWM的占空比从而改变电动机的电枢电压,并采用PI算法调节占空比进而实现对电动机的速度控制。

设计的整个控制系统,在硬件结构上采用了大量的集成电路模块,大大的简化了硬件电路,提高了系统的稳定性和可靠性,使整个系统的性能得到提高。

(一)直流电机额定功率Pn:在额定电流和电压下,电机的负载能力。

额定电压Ue:长期运行的最高电压。

额定电流Ie:长期运行的最大电流。

额定转速n:单位时间里面电机转速的快慢。

励磁电流If:施加到电极线圈上的电流。

1.调速范围调速范围是指最低可控转速到最高可控转速的范围,最低可控转速对最高可控转速的比值,叫电机的调速比。

2.调速的相对稳定性和静差度所谓相对稳定性,是指负载转矩在给定的范围里面变化所引起的速度的变化,它决定于机械特性的斜率。

静差度(又称静差率)是指当电动机在一条机械特性上运行时,由理想空载到满载时的转速降落与理想空载转速n0的比值。

用百分数表示,即,在一般的情况下,取额定转矩下的速度落差,有3.调速的平滑性调速的平滑性是在一定的调速范围内,相邻两极速度变化的程度,用平滑系数表示,即式中和相邻两极,即i级与i-1级的速度4.调速时的容许输出调速时的容许输出是指电动机在得到充分利用的情况下,在调速的过程中轴能够输出的功率和转矩。

(二)STC89C51单片机STC89C51单片机是一款低功耗、低电压、高性能CMOS8位单片机,片内含8KB(可经受1000次擦写周期)的FLASH可编程可反复擦写的只读程序存储器(EPROM),器件采用CMOS工艺和ATMEL公司的高密度,非易失性存储器(NURAM)技术制造,其输出引脚和指令系统都与MCS-51兼容,片内的FLASH存储器允许在系统内可改编程序或用常规的非易失性存储编程器来编程。

直流电机转速的PWM控制

直流电机转速的PWM控制
K2——转速加按键
K3——转速减按键
显示说明:
四位一体数码管显示转速,最高位为转速方向显示,电机顺时针转时为灭零显示,电机逆时针转时显示负号。其他三位显示转速,转速单位r/min。
调速范围:
-900r/min~900r/min。
5.3、程序流程图:
主程序流程图:
附录1:程序清单
#include<reg51.h>
直流电机转速的PWM控制
摘要:
本设计采用PWM的控制原理来完成对直流电机的正转、反转以及其加速、减速过程的控制,在此过程中是通过单片机的定时器加上中断的方式产生不同时长的高低电压脉冲信号来完成。并通过红外对管测速仪对直流电机的转速进行测定,最后将实时测定的转速数值显示在四位共阴极的数码管上。
关键词:
case 2: Dac=0x7f;break; //0
case 3: Dac=0xbf;break; //+
case 4: Dac=0xff;break;//++
}
}
/****************按键程序2******************/
void key2() interrupt 2
{
delay(4000);
display[0]=rad%10;
dj=0;
}
}
/***************模块初始化****************/
void initi()
{
TMOD=0X11;
EA=1;
ET0=1;
ET1=1;
PT0=1;
TR0=1;
Dck=1;
TH0=(65536-425)/256;
TL0=(65536-425)%256;

pwm风扇,使用PWM控制直流风扇

pwm风扇,使用PWM控制直流风扇

pwm 风扇,使用PWM 控制直流风扇
最近几年来,业界对于利用集成电路控制用于各种电子设备的冷却风扇速度的兴趣一直在增长。

电子产品,尤其消费电子产品的尺寸,每天都在显着减小,但是由于在芯片上运行的应用程序日趋复杂,芯片产生的热量却在增加。

有两种方式可以去除所产生的热量。

一种方法就是使用无源元件,比如散热器和热导管,第二种方法就是使用有源元件,比如冷却风扇。

在许多消费和其它产品中,可以观察到无源元件由于尺寸和成本原因而无法胜任。

使用冷却风扇可在热源周围产生气流,是去除热量的有效方法。

不过,在系统中增加冷却风扇将会增加功耗。

对于电池供电的系统,这是一个重要因素。

另外,因为冷却风扇是机械部件,因而会产生噪声。

通过控制风扇速度,可以有效地解决以上问题。

风扇在较低转速下运行所消耗的功率较少,这可延长电池寿命,又能减少风扇发出的噪声,并增加风扇的使用期限。

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

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

微机原理三级项目项目设计说明书设计题目:基于单片机的无刷直流风扇转速测量与调节指导老师:项目成员:XX大学机电工程系xxxx年xx月xx日一、项目设计要求1、实现无刷直流电机转速的测量和控制。

2、给定转速指令:由PC发送转速值,经单片机控制器,使得电机达到并稳定在指定转速上。

二、硬件设备1、测量风扇型号:品牌:台达,型号:AFB0712HHB2、51系列单片机学习板3、PC三、方案设计1、硬件电路P1.1口接PWM波输入,P3.2口接测速脉冲输入USB提供+5V电源,可以实现PC机与开发板的数据通讯和程序下载。

数码管显示速度和占空比,按键控制转速和占空比。

风扇电路连接:1、输出信号----转速输出每转输出2个脉冲OC输出,如右图2、 OC输出的特点外加集电极电源和负载;输出幅值任意;3. 输入信号--- PWM输入2、程序流程图说明:程序应用模块化进行设计,主要有初始化模块、显示模块、测速模块和调速模块。

编程次序可按此先后进行。

(1)、初始化模块:T0工作方式、标志位状态、所用单元初值、中断设置以及初始显示等。

(2)、显示模块:显示风扇转速的实测值及其对应的PWM占空比。

(3)测速模块:测出2s内风扇的脉冲数,进而求出风扇每分钟的转速。

(4)调速模块:通过键盘按键对PWM波占空比的调节,来控制风扇转速的大小。

3. 占空比与转速关系:占空比0.25 0.30 0.35 0.40 0.45 0.50 0.55 0.60 转速r/min 250 435 585 735 870 990 1140 1275 占空比0.65 0.70 0.75 0.80 0.85 0.90 0.95 1.00 转速r/min 1380 1485 1590 1710 1815 1920 1985 2010风扇转速低于250r/min时,由于电压过低,风扇停转,图表中只能测出占空比0.25以上的数据。

4、设计程序:#include<reg52.h>#define uchar unsigned char //0-255#define uint unsigned int //0-65535sbit dula=P2^6; //数码管段选sbit wela=P2^7; //数码管位选sbit P1_1=P1^1; //控制电机I/O口定义sbit P3_4=P3^4;sbit key_1=P3^1; //加速键sbit key_2=P3^3; //减速键sbit key_3=P3^5; //快加键sbit key_4=P3^6; //快减键sbit P1_6=P1^6; //占空比百位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};//数码管显示数据表/*=============延时函数==============*/ void delay(uint z){uint x,y;for(x=z;x>0;x--)for(y=50;y>0;y--);}/*=============数码管显示函数============*/ void display(){dula=1;P0=table[ge];dula=0;P0=0xff; //消隐wela=1; //显示转速个位P0=0xdf;wela=0;delay(3);dula=1;P0=table[shi];dula=0;P0=0xff; //消隐wela=1; //显示转速十位P0=0xef;wela=0;delay(3);dula=1;P0=table[bai];dula=0;P0=0xff; //消隐wela=1; //显示转速百位P0=0xf7;wela=0;delay(3);dula=1;P0=table[qian];dula=0;P0=0xff; //消隐wela=1; //显示转速千位P0=0xfb;wela=0;delay(3);dula=1;P0=table[PWMH_2];dula=0;P0=0xff; //消隐wela=1; //显示占空比十位P0=0xfe;wela=0;delay(3);dula=1;P0=table[PWMH_3];dula=0;P0=0xff; //消隐wela=1; //显示占空比个位P0=0xfd;wela=0;delay(3);}/*=========定时器0 PWM输出,调节转速========*/ //初始化,每次一溢出时间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<=0)PWMH=0;while(!key_2); //等待按键释放}}if(key_3==0){delay(3); //延时祛去抖if(key_3==0){PWMH=PWMH+10;if(PWMH>=PWM)PWMH=PWM;while(!key_3); //等待按键释放}}if(key_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 1{TH0=(65536-461)/256;TL0=(65536-461)%256;num++;n++;if(num==201) //周期定位200个num=0;if(num<=PWMH)P1_1=1; //置高电平else if(num>PWMH)P1_1=0; //置低电平if(n==3998) //2s时间到,计算转速{n=0;zhuansu=m*30/2;m=0;qian=zhuansu/1000;bai=zhuansu%1000/100;shi=zhuansu%100/10;ge=zhuansu%10;}}//外部中断0部分void X0_time() interrupt 0{EX0=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; //打通P3^4控制的按键csh(); //初始化子函数while(1){PWMH_();keyscan();display();}}五、方案总结该项目程序的转速是通过规定时间内求转数的方法测量的,转速显示误差为±15转每分钟,调速范围较广(235r/min到2010r/min),基本上能达到了设计任务的要求。

PWM控制直流电动机转速报告

PWM控制直流电动机转速报告

PWM控制直流电动机转速报告PWM(Pulse Width Modulation)是一种调制技术,通过改变脉冲信号的占空比,实现对直流电动机转速的精确控制。

本报告旨在介绍PWM控制直流电动机转速的原理、应用和优势。

1.引言直流电动机是目前应用最广泛的一种电机类型,广泛应用于工业生产、交通工具、家用电器等领域。

而PWM技术则是一种调制技术,可以将直流电源转换为可调的脉冲信号,用于精确控制直流电动机的转速。

2.PWM控制原理具体而言,PWM控制系统由脉冲宽度调制器(PWM Generator)、电流反馈控制模块和功率驱动模块组成。

PWM Generator会根据控制信号生成脉冲信号,其占空比决定了输出信号的平均电压值。

电流反馈控制模块监测电动机的电流,根据设定的转速目标和实际电流值,产生控制信号并发送给PWM Generator。

功率驱动模块则将PWM信号转换为合适的电压和电流输出给电动机,实现转速控制。

3.PWM控制应用PWM控制直流电动机转速广泛应用于各个领域。

在工业生产中,PWM控制可用于机械装置的转速调节,提高生产效率和工作精度;在交通工具中,PWM控制可用于电动汽车、无人机等的马达控制,提高车辆性能和续航能力;在家用电器中,PWM控制可用于风扇、空调等设备的风速调节,提供更舒适的使用体验。

4.PWM控制优势相比传统的电位调节或开关调节方式,PWM控制直流电动机转速具有以下几个优势:4.1精确控制:PWM控制可以通过改变占空比来精确控制直流电动机的转速,使得电机转速能够满足不同的需求。

4.2高效能利用:PWM控制可以根据需要调整脉冲信号的占空比,从而在不同负载条件下实现电机的高效能利用。

4.3体积小巧:PWM控制器通常体积小巧、集成度高,适合应用于电子设备中,不会占用过多的空间。

4.4节能降耗:PWM控制系统通过控制电机的平均电压和电流,实现能量的精确控制,从而达到节能降耗的目的。

5.结论。

适用于所有直流风扇的PWM调速方案以及由此产生噪音的解决

适用于所有直流风扇的PWM调速方案以及由此产生噪音的解决

适用于所有直流风扇的PWM调速方案以及由此产生噪音的解决——使本身不具备PWM调速功能的风扇使用外部PWM信号调速并尽可能解决其产生的开关噪音。

关于风扇的几种调速方案,请参见鄙人另一篇测试:《关于直流风扇的几种调速方式PWM 电压调速》。

本篇测试只针对其中比较不常用的一种调速方式:即本身不具备PWM 功能的风扇(可能是2线或者3线)的普通风机利用开关其供电电路实现PWM调速(原理图可参见本文中图一),并尽可能解决由此产生的在调速过程中的额外噪音。

请注意:本次测试之结果只代表在测试环境下使用本次待测样品:日本SANYO DENKI 的9G0948G103无刷直流风机,而得到之结果,不同环境、不同参数的样品所得到之结果可能会有很大差异。

由于测试设备有限,测试中某些判断基于主观感受,但由于本次测试的目的是以降低噪音为主,故,主观判断也有其一定合理性。

测试背景:在PWM电源(开关管加在风扇主电源两侧直接开关风扇供电之48V)调速模式下,经客户测试反映在调速过程中风扇出现异响,影响风扇噪音水平和整体效果。

测试目的:在不改变(或者不需要大规模改变)客户目前供电以及控制电路的情况下,实现风扇稳定调速的同时消除或降低风扇产生的异响。

被测风扇:日本SANYO DENKI 山洋电机出品9G0948G103主要性能参数:型号额定电压额定电流额定转速额定转速下噪音9G0948G103 48V 0.27A 5000转/分50db测试一:模拟客户环境使用PWM电源直接控制风扇转速此测试的基本电路图请参加下(图一):驱动电路简要说明:模拟中使用一OMRON欧姆龙PLC来产生PWM信号,DC12V电源经过上拉电阻得到PWM信号后触发一NPN型功率管,借此功率管的开闭来模拟客户目前PWM电源情况。

图中A和B两点既是风扇+(红线)和-(黑线)连接至客户供电电路之位置。

PWM频率保持和客户使用频率一致:75Hz。

测试一测试结果:调整PWM占空比,风扇在约10-100%占空比可调速,低于10%占空比风扇无法启动。

详解直流风扇的几种调速方式

详解直流风扇的几种调速方式

详解直流风扇的⼏种调速⽅式关于DC风扇(2、3、4线)的PWM调速测试本次测试主要⽬的:·测试不同额定功率的风扇可耐受的最低电压·4线风扇(+V , -V, pulse sensor , PWM control)PWM调速表现·2线风扇基于外部PWM控制的调速表现·在有不间断电源情况下3线风扇基于外部PWM控制的调速表现·我们的推荐⼀:基于⼭洋(SANYO DENKI)风扇的调速⽅式⽬前基于⼭洋(SANYO DENKI)DC风扇的调速⽅式主要有以下⼏种:1、4线风扇(+V , -V, pulse sensor , PWM control)的调速2、内置或外置测温元件的调速。

3、电压调速。

4、通过外部电路对⾮4线风扇(2、3线)风扇的PWM调速。

以上1、2项调速⽅式,风扇在⼯作时的+V和-V均加载风扇的额定电压,通过PWM值和测温元件来调速,这两种转速控制⽅式可以基于任何⼭洋(SANYO DENKI)的风扇来定制,您只需在样本根据您对风扇尺⼨、风量、静压等要求选择您所需的标准风扇,之后将您对风扇转速的要求提给我们,我们即可按照您的要求来定制您的风扇。

第三种调速⽅式是通过外围电路调整风扇的+V和-V两端电压来调速风扇转速,风扇在调速过程中⼯作在⾮额定电压下。

任何DC风扇(2、3、4线)均可以采⽤此种⽅式来调整转速。

⼆:⼏种调速⽅式的⽐较1、采⽤4线风扇的PWM调速:此⽅式可以在风扇可调速范围内精确的控制转速,可以良好的根据温度变化实现PID控制,以达到最理想的温度控制和风扇噪⾳之间的平衡。

但需要外部PWM脉冲电路和测温电路的配合,相对较复杂。

2、测温元件调速:此⽅式最⼤的有点就是可以在最⼤程度上简化控制电路的前提下实现温控。

内置测温元件的风扇甚⾄不⽤搭配任何外围电路,即可实现⾃⾝的转速控制,从简化电路⽅⾯考虑此⽅式确为最佳选择⽅案。

⽽且您只需选择您需要的风扇和您需要的温控范围,测温元件可以由⼭洋(SANYO DENKI)来提供或指定型号。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

1直流电机……………………………………………………………..6.1.1直流电机的结构 (7)1.2直流电机的原理 (7)1.3直流电机的主要技术参数 (8)1.4直流电机调速技术指标 (9)2 .单片机的相关知识 (9)2.1单片机的简介 (9)2.2单片机的发展史 (9)2.3单片机的特点 (10)2.4 AT89C51单片机的介绍 (11)3. 硬件电路的设计 (13)3.1 控制电路的设计………………………………………………………….13.3.2 隔离电路的设计 (14)3.3驱动电路的设计 (14)3.4续流电路的设计 (17)3.5 整个电路原理图 (18)4. 软件设计4.1 主程序设计 (18)4.2 数码显数设计…………………………………………………………….20.4.3功能程序设计 (20)5.结束语 (24)参考文献 (24)摘要本课题是对直流电机PWM调速器设计的研究,主要实现对电动机的控制。

因此在设计中,对直流调速的原理,直流调速控制方式以及调速特性,PWM基本原理及实现方式进行了全面的阐述。

为实现系统的微机控制,在设计中,采用了AT89S52单片机作为整个控制系统的控制电路的核心部分,配以各种显示,驱动模块,实现对电动机的转速的显示和测量;由命令输入模块,光电隔离模块及H型驱动模块组成。

采用带中断的独立式键盘作为命令的输入,单片机在程序的控制下,不断给光电隔离电路发送PWM波形,H型驱动电路完成电机的正反转控制。

在设计中,采用PWM调速方式,通过改变PWM的占空比从而改变电动机的电枢电压,进而实现对电动机的调速。

设计的整个控制系统,在硬件结构上采用了大量的集成电路模块,大大的简化了硬件电路,提高了系统的稳定性和可靠性,使整个系统的性能得到提高。

1 直流电机1.1直流电机的结构直流电机的结构应由定子和转子两大部分组成。

直流电机运行时静止不动的部分称为定子,定子的主要作用是产生磁场,由机座、主磁极、换向极、端盖、轴承和电刷装置等组成。

运行时转动的部分称为转子,其主要作用是产生电磁转矩和感应电动势,是直流电机进行能量转换的枢纽,所以通常又称为电枢,由转轴、电枢铁心、电枢绕组、换向器和风扇等组成。

直流电机的结构如图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.1 4位单片机1975年,美国德克萨斯公司首次推出4位单片机TMS-1000,此后各个计算机公司竞相推出4位单片机。

日本松下公司的MN1400系列。

美国洛克威尔公司的PPS/1系列等。

4位单片机的主要的应用的领域有:PC机的输入装置。

电池的充电器,运动器材,带液晶显示器的音/视频产品控制器,一般家用电器的控制及遥控器,电子玩具,钟表,计算器,多功能电话等。

2.2.2 8位单片机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.3 16位单片机1983年以后,集成电路的集成度可达几十万只管/片,各系列16位单片机纷纷面世,这一阶段的代表产品有1983年Intel公司推出的MCS-96系列,1987年Intel公司推出了80C96 ,美国半导体公司推出了HPC16040。

16位单片机主要用于工业控制,智能仪器仪表等场合。

2.2.4 32位单片机随着高新技术智能机器人,激光打印机,图像与数据实时处理,复杂实时控制,网络服务器等领域的应用和发展,20世纪80年代末,推出了32位单片机,如摩托罗拉公司的MC683XX系列。

32位单片机是单片机的发展趋势,随着技术的发展和开发成本的降低,将会和8位单片机并驾齐驱。

2.2.5 64位单片机近年来,64位单片机在引擎控制,智能机器人,磁盘控制,算法密集的实时控制场所已有应用。

如英国的Inmos 公司的Transputer T800是高性能的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.4 AT89S52单片机介绍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-1 AT89S52引脚说明引脚功能说明如下[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逻辑门电路。

对端口写“1”,通过内部的上拉电阻把端口拉到高电平,此时可作为输入口。

作为输入口使用时,因为内部存在上拉电阻,某个引脚被外部信号拉低时会输出一个电流。

在访问外部程序储存器或16位地址的外部数据储存器(例如执行MOVX@DPTR指令)时,P2口送出高8位地址数据。

在访问8位地址的外部数据储存器(例如执行MOVX@RI指令)时,P2口线上的内容(也即特殊功能寄存器(SFR)区中R2寄存器的内容),在整个访问期间不改变。

FLASH编程或校验时,P2亦接收高位地址和其他控制信号。

P3口:P3是一个带内部上拉电阻的8位双向I/O口,P3的输出缓冲级可驱动(吸收或输出电流)4个TTL逻辑门电路。

对端口写“1”,通过内部的上拉电阻把端口拉到高电平,此时可作为输入口。

作为输入口使用时,因为内部存在上拉电阻,某个引脚被外部信号拉低时会输出一个电流。

P3除了作为一般的I/O口线外,更重要的用途是它的第二功能,具体功能说明如表2-1。

P3口还接收一些用于FLASH闪速存储器编程和程序校的控制信号。

RST:复位输入。

当振荡器工作时,RST引脚出现两个机器周期以上高电平将使单片机复位。

ALE/PROG:当访问外部程序存储器或数据存储器时,ALE(地址锁存允许)输出脉冲用于锁存地址的低8位字节。

相关文档
最新文档