可逆PWM调速驱动控制电路设计报告_第1页
可逆PWM调速驱动控制电路设计报告_第2页
可逆PWM调速驱动控制电路设计报告_第3页
可逆PWM调速驱动控制电路设计报告_第4页
可逆PWM调速驱动控制电路设计报告_第5页
已阅读5页,还剩10页未读 继续免费阅读

下载本文档

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

文档简介

1、目录1. 题目32. 题目分析及设计思路介绍3(1)分析3(2)可取的方案43. 方案设计说明54. 单元电路设计说明5(1)、单片机最小系统5(2)、输入输出设备6(3)、H桥驱动7(4)、片上PWM85. 完整电路原理分析8附录1. 单片机程序流程图10附录2. 单片机程序流程图111. 题目设直流电机的额定工作电压为6V,功率为3W,试设计一个可逆PWM调速驱动控制电路,能在0V、5V的方向控制电压和05V的转速控制电压的作用下,使电机正转、反转、加速、减速。电路形式不限,作业具体要求如下:1. 画出电路的系统框图,说明电路方案设计的思路、理由或依据;2. 分单元画出各单元具体的电路图,

2、阐述电路的工作原理,介绍电路中主要元器件的作用及其参数的确定原则或依据;3. 画出完整的电气原理图,介绍整体电路的工作原理;4. 如果采用了单片机,给出单片机程序的流程图和清单,说明程序的工作原理。注:本题难度系数为1.52. 题目分析及设计思路介绍(1)分析电动机实现正反转,可以调换电源正负极和励磁电源正负极,对于永磁直流电动机,只能调换电源正负极,常见的玩具赛车中的就是这种。单片机能给某个IO高电平或低电平,但驱动电机,没有足够的驱动能力(驱动电流小,带负载能力弱),利用三极管组成H桥式电路可以解决驱动及换向的问题。直流电机调速一般采用调电压的方式,常用的方法是PWM调速,PWM名为秒冲宽

3、度调制,可想而知就是调节占空比,STC12C5A60S2片上集成了两个PWM模块,可以实现PWM,另外,用NE555也可以实现PWM。(2)可取的方案H桥式电路方案有集成的和元器件组装的。常用的H桥IC有:L298(双H桥)、L9110H(单H桥)。PWM的方案有:STC12C5A60S2片上集成了PWM模块和NE555占空比可调电路。 NE555占空比可调电路3. 方案设计说明方案选择:H桥电路选择:采用集成的H桥式芯片,相比于元器件组装的H桥式电路,性能跟高,功耗更低,占用面积小,因此选用IC。常用的直流电机只需要单H桥就能完成转向问题,L298N的驱动电流可以达到4A,工作电压可达36V

4、,但芯片价格相对较贵,对于一般小电机而言有点大材小用了,用L9110H同样可以实现,而且工作电压为2.5V-12V,峰值电流高达1.5A,持续电流高达0.8A,足以驱动6V 3W的直流电机,且芯片相对便宜,所以采用L9110H驱动电机。PWM电路选择:NE555能产生占空比可调的方波,实现简单,但方波频率一般不可调(可调需添加滑动变阻器,频率调节范围也小),分立元件也多,而采用STC12C5A60S2片上集成了PWM模块,可以实现频率可调,调频范围宽,占空比可调,分辨率高,为1/256,性能可靠,实现简单,所以采用STC12C5A60S2片上集成了PWM模块。最终采用STC12C5A60S2片

5、上集成了PWM模块+L9110H驱动模块的方案4. 单元电路设计说明(1)、单片机最小系统STC12C5A60S2有61K ROM,不需要外接ROM(没有EA),单片机P0口不用接上拉电阻,与传统51单片机不同,STC12C5A60S2通过设置相应寄存器,可以使P0口有一定驱动能力。STC12C5A60S2单片机最小系统(2)、输入输出设备输入输出设备该设计有两种输入输出设备:按键和LED,按键可采用一般的扫描方式,也可以用中断方式,为了快速相应用户指令,选择用中断方式。然而外部中断只有两个,这里用定时器T0、T1扩展了两个下降沿外部中断,正好实现启停、正反、增速、减速的指令输入。为了更人性化

6、,有相应的Led做出指令提示(D1为电源指示灯,D2为启动指示灯,D3为正向运行指示灯,D4为反向运行指示灯,D5为加速指示灯,D6为减速指示灯)。电源接通,D1亮。当按启动按钮时,D2亮,D3亮,再按一次,D2灭,D3灭,只有电机处于启动状态时,正反、增速、减速的指令输入才有效,相应LED灯才会亮;当处于启动状态,按正反转按钮,电机反转,D3灭,D4亮,再按一次D3亮,D4灭;当按增速按钮时,D5闪烁一下,表示按钮指令有效,当达到最大占空比时,再按增速按钮,D5将不会闪烁,表示已达最大占空比;同样的,减速功能类似增速功能。(3)、H桥驱动基于L9110H的H桥驱动电路IAIBOAOBHLHL

7、LHLHHHLLLLLL真值表当IA为高电平,IB为低电平,电机正转;当IA为低电平,IB为高电平,电机反转。(4)、片上PWM对于L298N有三个控制端,第三个就是使能端,只要PWM波形控制使能端,就可以控制转速,但L9110H只有两个控制端。因此,将方向控制,同速度控制相结合,即两个控制端既控制方向,又控制转速。实现方法:在控制方向的基础上,将高电平输入端,改为PWM波形输入,就可以控制转速;当换方向时,将控制信号交换,就可以了。与L298N的控制方法不同的是:L9110H需要两路PWM控制信号,编程相对复杂些,但控制信号线只要两个,占IO资源少。5. 完整电路原理电路分为4部分:电源、单

8、片机最小系统、输入输出设备、H桥驱动模块,如下图所示。为了检测电路的可行性,将现成的电路模块连在一起,搭建上面的电路,加载程序(程序流程图及程序如附录所示),实现了上述功能,证明了电路的可行性。开始附录1. 单片机程序流程图中断、两路PWM初始化 中断产生了吗? NO YES是否为电机启动的中断int0 NO YES设置开启标志、正转标志,点亮LED指示灯 中断产生了吗? NO YES T0中断 T1中断 INT1 中断 INT0 中断判断方向判断方向两路PWM占空比切换(任意时刻有1路PWM占空比为0%)开启标志复位,相应参数复位,电机停转反转正转反转正转PWM1占空比增大PWM0占空比减小

9、PWM1占空比减小PWM0占空比增大 结束 增速 减速附录2. 单片机程序流程图#include STC12C5A.h /STC12C5A60S2头文件,STC官网有下载#include intrins.htypedef unsigned char BYTE;typedef unsigned int WORD;sbit run_led=P00; /运行状态指示灯sbit dir_for_led=P01;/正向运行指示灯sbit dir_back_led=P02;/反向运行指示灯sbit add_led=P03; /加速指示sbit sub_led=P04; /减速调试bit run_flag=

10、0; /运行状态:0:停止 1:运行bit dir_flag=0; /方向标识:0:正转 1:反转 void Delay20ms()/11.0592MHz 精确延时20msunsigned char i, j, k;_nop_();_nop_();i = 1;j = 216;k = 35;dodowhile (-k); while (-j); while (-i);void Init_PWM() /frq=/12/256=3600hzP1.3:PWM0 P1.4:PWM1 CCON = 0; /初始化PCA控制器 CL = 0; /重置PCA时间 CH = 0; CMOD = 0x02; /

11、PCA时钟频率 Fosc/12 CCAP0H = CCAP0L = 0xff; /PWM0输出0%占空比电压 CCAPM0 = 0x42; /PCA 模块0 8位PWM工作方式CCAP1H = CCAP1L = 0xff; /PWM1输出0%占空比电压CCAPM1 = 0x42; /PCA模块1 8位PWM工作方式 CR = 1; /PCA计时开始void Init_Inter() IT0 = 1; / INT0下降沿 EX0 = 1; / INT0中断使能IT1 = 1; / INT0下降沿EX1 = 1; / INT0中断使能void Init_Timer() /定时器扩展为负跳变的外部中

12、断 AUXR = 0xC0; /定时器timer0/timer1 1T 模式 TMOD = 0x66; /定时器timer0/timer1 8位自动重装TL0 = TH0 = 0xff; /扩展为外部中断的关键步骤TL1 = TH1 = 0xff; TR0 = 1; /timer0开始 TR1 = 1; /timer1开始ET0 = 1; / T0中断使能 ET1 = 1; /T1中断使能void main() Init_PWM(); /两路PWM初始化 Init_Inter(); /INT0/INT1初始化Init_Timer(); /T0/T1初始化EA = 1; /开全局中断使能 whi

13、le (1)void exint0() interrupt 0 /外部中断0 电机启停 EA = 0; /关总中断 run_led =run_flag; run_flag=run_flag; if(!run_flag) dir_flag = 0; /方向标志复位 dir_for_led=1;/正向运行指示灯复位 dir_back_led=1;/反向运行指示灯复位 CCAP0H = CCAP0L = 0xff;/占空比复位 0% CCAP1H = CCAP1L = 0xff;/占空比复位 0% else dir_for_led=0;/默认为正向启动 Delay20ms(); /消抖 EA = 1

14、; /开总中断void t0int() interrupt 1 /T0中断 电机方向转换 BYTE temp1,temp2; EA = 0; if(run_flag) dir_flag=dir_flag; /方向选择 dir_for_led =dir_for_led;/指示灯指示 dir_back_led =dir_back_led; temp1=CCAP0H; /方向转换 temp2=CCAP1H;/重新设置两路PWM,启动 CR = 0; CCON = 0; CL = 0; CH = 0; CMOD = 0x02; CCAP0H = CCAP0L = temp2; CCAPM0 = 0x4

15、2; CCAP1H = CCAP1L = temp1; CCAPM1 = 0x42; CR = 1; Delay20ms(); /消抖 EA = 1;void exint1() interrupt 2 /外部中断 1 EA = 0; if(run_flag) /只能在运行状态下才能调速 if(!dir_flag) /判定运行方向 if(0x00!=CCAP0L) /增大占空比 add_led = 0; CCAP0L -=5; CCAP0H =CCAP0L; else if(0x00!=CCAP1L) /增大占空比 add_led = 0; CCAP1L -=5; CCAP1H =CCAP1L; Delay20ms(); /消抖 add_led = 1; EA = 1;voi

温馨提示

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

评论

0/150

提交评论