无刷直流电机控制器的设计_第1页
无刷直流电机控制器的设计_第2页
无刷直流电机控制器的设计_第3页
无刷直流电机控制器的设计_第4页
无刷直流电机控制器的设计_第5页
已阅读5页,还剩50页未读 继续免费阅读

下载本文档

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

文档简介

本科毕业设计(论文)(2012届)论文题目无刷直流电机控制器的设计(英文)BrushlessDCmotorcontrollerdesign所在学院电子信息学院专业班级学生姓名指导教师完成日期无刷直流电机控制器的设计(浙江万里学院电信学院电子)摘要本设计采用PIC16F72实现对电动自行车用无刷直流电机的设计,速度控制环节部分采用开环控制,但要根据MOSFET输出电流的大小确定PWM信号输出。整个系统主要由电压检测电路、电流检测电路、霍尔位置检测电路、驱动信号预处理电路、功率驱动电路、过流保护电路等构成。该设计不仅要实现电动自行车正常使用时应具备的基本性能,还要通过增加欠压检测电路、过流保护电路、同步整流电路等措施来提升电机运行可靠性与稳定性,使电动自行车用无刷直流电机具备更持久的生命力。关键词:无刷直流电机;PIC16F72;整流保护

AbstractThisdesignusesPIC16F72torealizebrushlessDCmotordesign,speedcontrolpartadoptsopenloopcontrol,butaccordingtotheMOSFEToutputcurrentsizedeterminesthatthePWMsignaloutput.Thesystemconsistsofavoltagedetectioncircuit,acurrentdetectioncircuit,Holzerpositiondetectioncircuit,drivingsignalpretreatmentcircuit,powerdrivingcircuit,anovercurrentprotectioncircuit.Thisdesignnotonlytoachievetheelectricbicycleinnormaluseshouldhavethebasicperformance,butalsobyaddingunder-voltagedetectioncircuit,anovercurrentprotectioncircuit,asynchronousrectifiercircuitandothermeasurestoimprovethestabilityandreliabilityoftheoperationofthemotor,brushlessDCmotorwithamorelastingvitality.KeyWords:BrushlessDCmotor;PIC16F72;commutationprotection

目录TOC\o"1-3"\h\z1引言 =0.3V。正常情况下,输出引脚1处于高电平状态,当出现过流的现象时,康铜电阻出的电压增大,输入引脚2将大于基准电压,这时输出引脚1将翻转到低电平状态,由此给单片机一个过流保护中断,促使单片机做过流保护的相关工作。LM358的U1B就作为放大器用,其放大的倍数是6.5倍。选择的放大倍数较小的原因有两个:LM358的频率响应不够高,而PWM波形的频率是15KHz,如果放大倍数比较大的话,那么其电流响应将变成梯形波,不利于电流信号的采集;输出的电流信号杂波太多,尤其在起动的时候,电流值的波动非常大,如果放大倍数选的太大的话,有可能引起误判。综上,选择6.5倍虽然在电流大小的放大精度上有一定影响,不过都在允许的范围内。霍尔位置传感器信号处理部分霍尔位置传感器信号处理部分的电路图如图3-9所示。图3-9霍尔位置传感器输入信号电路在这里,霍尔传感器安装在电机内部,是一种开关型器件,且采用的是OC门输出的形式,要使其产生高低电平,必须接上拉电阻才行。从霍尔传感器输入的信号经过阻容低通滤波后再输入到单片机中,以免杂波的干扰影响单片机的判断。阻容低通滤波的选取则既要考虑到通过低通滤波滤除信号高频成分的效果,又要考虑到其对从霍尔传感器输入的方波的响应情况,以尽快达到单片机输入口的门限电压(PIC单片机I/O口的高电平的门限电压是2~3V),这样才符合实时采集的要求。在这里,当输入由低转高时,总电阻为5.5Kohm,电容为0.1uf,经过计算,输入电压上升到3V的时间是0.3ms,而在转速最大时单相霍尔传感器的输出频率是140Hz,即其输出的周期是7ms,符合要求。手柄(调速)信号处理部分 手柄(调速)信号处理部分如图3-10所示。图3-10调速信号输入电路 调速信号的输入信号采用电阻式电位器控制,控制的电压范围是0~5V,信号从引脚2经过阻容低通滤波后进入单片机的A/D模块中采样处理。刹车制动信号处理部分 具体电路见附录,只要按下按键,具体的刹车动作由软件以及刹车的具体机械动作共同提供。3.4PIC16F72单片机输入信号处理与控制信号输出部分 PIC16F72单片机输入信号处理与控制信号输出部分如图3-11所示。在本电路中单片机更具各个部分的工作任务不同,可以分为以下几个模块:最小系统模块:包括电源电路,范围电路,外部时钟震荡带电路,这是单片机能正常工作的前提;功能模块:包括A/D转换模块、数字输入信号处理模块、驱动信号输出模块。图3-11控制器核心部分电路原理图图3-12核心部分PCB图图3-13实物图3.5PIC16F72单片机各个模块的具体工作任务最小系统模块:引脚1相连的是复位电路,引脚1也是程序的高压烧写口;引脚9和引脚10分别是震荡电路的输入口和输出口,连接的是16MHz的晶振;引脚20和引脚8、引脚19是电源电路部分,分别接5V电源和地。功能模块:模拟信号输入处理模块:模拟信号的处理主要是通过单片机的A/D转换模块实现的。引脚2检测流过电机的电流信号并进行A/D转换,进过运算后用于控制PWM占空比,尽可能达到电机最合适的工作电流;引脚3检测电源电压,经A/D转换后经过运算判断电压是否过低,以此为依据保护电池;引脚4检测手柄的输入电压,单片机根据这个量调节电机输出的总功率,从而调节电机的速度[13]。数字输入信号处理模块:引脚5处理刹车信号,平时处于高电平状况,当按下刹车开关时,变为低电平,这时单片机输出刹车命令,只要当引脚5恢复成高电平状态时,在停止刹车动作;引脚15、引脚16、引脚17分别输入电机的霍尔位置信号,通过这三个信号的组合确定电机此时的转子位置,并调整输出的换相信号。引脚21为外部中断引脚,平时处于高电平状态,当出现过流时,输入信号从高电平变为低电平,中断标志位置1,由于PIC16F72只有一级中断优先级,所以当中断被其他中断程序占用时,也应定时检查外部中断标志位,以免因中断时间过长而烧毁电机。驱动信号输出模块:引脚13输出PWM信号,调节电机的速度和电枢电流;引脚23、引脚24、引脚25输出逆变桥的下桥驱动信号,引脚26、引脚27、引脚28输出逆变桥的上桥驱动信号。引脚22只在电枢电流比较大的情况下才使用,具体的应用见3.6。3.6三相驱动信号预处理部分 图3-14是三相驱动信号其中A、B、C三相中的A相驱动信号预处理电路。由于这三相的驱动信号预处理电路都一样,所以只要介绍之中一相就可以了。图中上面一部分是A相上桥的驱动信号预处理电路,下面一部分是A相下桥的驱动信号预处理电路。图3-14A相驱动信号预处理电路上桥相对简单,要实现换相功能和PWM调制功能,由上桥驱动控制信号输出端A1控制。U4A的引脚1接单片机的A相上桥驱动控制信号输出端A1,引脚2接单片机PWM波输出引脚。U4A输出的是上桥换相信号和PWM波相“与”后的波形,也就是说输入到IR2103的引脚HIN的信号是已经经过PWM波调制过的换相信号。A1处于低电平时U4A的3脚处于低电平状态,即A相上桥处于截止状态。A1处于高电平状态表示此时往A相输出PWM驱动信号。下桥相对复杂,要实现两个功能:一个是换相,由下桥驱动控制信号输出端A2控制;还有一个是实现整流保护,由上桥驱动控制信号输出端A1、单片机整流保护控制引脚NEW_PT共同控制(正常情况下NEW_PT处于高电平状态,从而U6C在正常情况下输出都处于低电平状态)。当只是实现下桥导通时,只要下桥驱动控制信号输出端A2从低电平跳转到高电平就可以了,这时U5B的6脚输出的低电平信号输入到IR2103的引脚LIN中,从而导通A相MOSFET的下桥。下面介绍整流保护的原理以及实现——假设A相上桥处于PWM调制状态,且B相下桥导通,当PWM波形为高电平时,驱动上桥MOSFET开通,这时电流的流向为如图3-15所示的实线方向;当PWM波形由高电平往低电平跳变,导致A相上桥V1已经关断,又由于电枢绕组自感电动势的作用,此时电流的方向就变成了如图3-15所示的虚线方向。当电流的流向变成虚线流向时,这时电流都从V2的整流二极管流过,当之前电感的自感电动势很大时,这时V2处流过的自感电流也很大,设V2的整流二极管处产生的压降是0.7V,这时在V2处产生的功耗P=0.7*I。当I很大时,那么V2处的功耗也就相当大了[7]。图3-15V1开通和关断情况电流流向示意图整流保护的目的就是减小V2的功耗。实现的方法就是在PWM调制过程中V1关断的时候,打开V2,使整流电流从V2的MOSFET的沟道流过,而不是从整流二极管流过。MOSFET可双向导通,且导通时电阻非常小,大约为10mΩ,这时MOSFET产生的功耗就能大大减小了,从而使MOSFET不会因为过热而烧坏。其实现的方法是当单片机的电流检测电路检测到电枢电流过大时,就将NEW_PT脚置于低电平状态,而此时A1经过反相器反向后也是低电平,此时或非门U6C的输出信号就是PWM波的反相波形了。当A2也输出低电平时,或非门U5B的输出信号就成了与上桥PWM波同相的波形了。也就是说,HIN和LIN的输入PWM波是同相的。以后的叙述涉及MOSFET驱动芯片IR2103,将在3.7节继续分析整流保护。3.7MOSFET驱动部分 MOSFET驱动部分的电路原理图如图3-16所示。图3-16MOSFET驱动部分的电路原理图图3-17核心控制板PCB图 由3.6节可知,在整流保护的情况下,输入到IR2103的HIN和LIN的PWM信号是一样的。要实现整流保护,那么当上桥关断后下桥就要导通,同时导通的情况是绝对不能出现的。这时就用到了IR2103自带死区时间发生功能。如图3-18所示:图3-18IR2103死区时间波形图这样,由于死区时间的存在,就可以在死区时间内使上桥的MOSFET完全关断后,再在死区时间过后使下桥的MOSFET导通,确保两个MOSFET不会同时导通。虽然这样做会使整流保护效果打折扣,不过总体来说对MOSFET还是很有好处的,尤其在电流很大的情况下。 现在介绍MOSFET驱动部分的电路原理。如图3-18所示,该部分电路可以分成两部分:MOSFET驱动电路和逆变桥电路。 MOSFET驱动电路是以IR2103为核心部分的驱动电路,电容C20是自举电容,V3靠C20两端的电压维持导通。电容C20是去耦电容,用于抑制MOSFET开关过程中对驱动电路浮动电源的影响。 对于逆变桥电路,R38、R39和C27、C28的作用是减慢MOSFET的开启速度,使MOSFET的栅源级电压上升波形不至于太陡峭,防止上下桥同时导通的情况出现,但也要注意的是MOSFET的开通和关闭时间都应该在死区的范围内。

4软件设计4.1软件设计的总体思路简介 无刷直流电机控制器的程序设计需要完成一下几个功能:电机换相功能、调速功能、刹车功能、限流保护功能、过流保护功能和欠压保护功能。具体的实现方式是根据输入模块的重要性以及实时性的要求以不同的频率度定时检测如硬件中所述各输入模块的输入信号,经处理器运算后执行输出。 具体的执行以定时的方式实现:对输入信号而言,不同功能模块根据其实时性的要求,确定不同的定时检测时间;对输出信号而言,由于实时性的要求,中断的程序不能过于冗长,所以当检测到一项触发的任务时,设定相应的标志位,待退出中断后再执行,当然对于必须发上执行的任务,则可以在中断程序中解决。 从无刷直流电机本身的特性以及电动自行车的特性双方面考虑,对输入信号,电机的相序检测、逆变桥电流检测以及过流中断保护检测这三个模块对实时性的要求很高,要定时且频繁地检测,基本上每128us就要定时中断检测一次,调速功能、刹车功能以及欠压保护功能则对实时性的要求不高,只要每10ms到50ms定时检测一次就可以了;对与信号相应的及时性来说,过流中断标志功能、刹车功能以及限流保护功能因其对响应要求高、执行时间少,可以在定时中断程序直接执行,而电机换相功能、调速功能以及欠压保护功能则因其对响应要求高且完成程序执行所需要的时间长而只在中断程序中设定标志位,具体的程序执行则根据在中断程序中设定的标志位在主程序中执行[7]。4.2键盘和显示程序流程图 主程序处理的事情包括各个功能模块的初始化、电源电压的检测以及过压保护程序的执行、刹车信号的检测和刹车程序的执行、手柄信号的检测以及预期PWM占空比输出的设定、根据当前电流信息和预期PWM占空比输出调节实际PWM占空比输出。中断程序处理的事情包括判断是过流保护中断还是定时中断并各自做相应的处理、电路换相信息的判断并输出换相信号、电流信号的采集并数模转换、根据计数器判断是否设定刹车信号采集标志、手柄信号采集标志或电压信号采集标志。图4-1无刷直流控制器主程序流程图端口初始化程序/*********************************************/voidInit(void){PORTB=0B00000000;PORTC=0B00000000;TRISB=0B00000001;//设置RB0为输入,作为按键口TRISC=0B00000000;//设置RC输出RBPU=0;//PORTB上拉使能}主要是保存数据到EEPROM中uintwin;uchari;Init();//初始化程序delayms(100);PORTC=0XFF;PORTB=0XFF;PORTA=0XFF;WIN24C64_write(0x0000,0x55);//存数据到EEPROMdelayms(20);WIN24C64_write(0x0001,0xaa);//存数据到EEPROMdelayms(20);while(1){delayms(1000);//延时PORTC=~WIN24C64_read(0x0000);//读取24C64地址00H中的数据delayms(1000);//延时PORTC=~WIN24C64_read(0x0001);//读取24C64地址00H中的数据}图4-2无刷直流控制器中断流程图中断处理程序voidinterruptISR(void){ucharj;if(INTF==1)//外部INT0{PEIE=0;INTF=0;//清除中断标志位if(counter_temp<1024){;}else{int0_flag=1;counter=counter_temp/256;//counter=counter_temp;counter_temp=0;counter_temp1=0;count_num=0;}//LED9=!LED9;PEIE=1;}elseif(TMR1IF==1)//定时器中断TIMER1{//time1_flag=1;TMR1IF=0;//清除中断标志位TMR1L=T1L;TMR1H=T1H;//重新设置定时器时间counter_temp++;counter_temp1++;//LED10=!LED10;}else{;}}显示程序voidplot1bar(charvalue,charmax_value){ unsignedintplot_value; inti; charhibyte_value,lobyte_value; lobyte_value=0; //Initialvalues. hibyte_value=0; plot_value=(int)(value*15/max_value); //Computeshowmanypointstoplot.Sinceweareusing2vertical //8bitblocks,wecanhave1-16pointsforabargraph. if((plot_value>0)&&(plot_value<=7)) //Plotsbargraphwhicharebelow8points. { for(i=plot_value;i>=0;i--) { hibyte_value=hibyte_value>>1; hibyte_value=hibyte_value+0x80; } lobyte_value=0x00; } elseif((plot_value>7)&&(plot_value<=15)) //Plotsbargraphwhichareabove8pointsupto15points. { plot_value=plot_value-7; for(i=plot_value;i>=0;i--) { lobyte_value=lobyte_value>>1; lobyte_value=lobyte_value+0x80; } hibyte_value=0xFF; } elseif(plot_value>15) { lobyte_value=0xFF; //Ifbeyond15pointsthancapthepointsatthemaximumof15. hibyte_value=0xFF; } else { lobyte_value=0x00; //Ifbelow0thencapitto0(whichisaunitofpixelonthebargraph). hibyte_value=0x80; } writedata(lobyte_value); //A16pointplotting.Plotsthehigher8bits(whichisthelowbyte) writedata(hibyte_value); //andthenthelower8bits(whichisthehighbyte)ofthegraph.}PWM波控制电机程序aa++;if(aa>60000){aa=0;cc++;if(cc>2000)cc=0;}

bb++;

if(bb>2000)bb=0;

if(bb<cc)

{

RC1=0;

RC2=0;

}

else

{

RC1=1;

RC2=1;

}

*/

for(bb=0;bb<100;bb++){RC1=0;RC2=0;}

for(bb=0;bb<400;bb++){RC1=1;RC2=1;}

}PIC单片机软件编程环境MPLABIDEV8.53具体界面如图4-3所示。图4-3单片机软件编程图MPLAB集成开发环境(IDE)是综合的编辑器、项目管理器和设计平台,适用于使用Microchip系列单片机进行嵌入式设计的应用开发。5制作和调试首先对单片机挑选,我采用PIC16F72单片机,对此单片机性能,功能的了解熟悉。再对MOSFET驱动芯片IR2103的选用,进行进一步的分析,测试,得到相应的逻辑图,以及波形图。设置直流电源模块,只能采用电池形式的供电方式。调速和刹车输入模块实现电机的调速输入,其实现方式为输出通过输出电位器的电压变化来表示此时电机输出速度应做的增减调整。电源电路输出三路电压,分别是+48V电压、+13.5V电压和+5V电压。电源电压检测信号处理部分,电流检测信号:检测就是采用电阻R45来实现和处理:LM358带两个放大器,其中U1A作比较器,使单片机做过流保护的相关工作.霍尔位置传感器信号处理:采用的是OC门输出的形式。手柄(调速)信号处理:采用电阻式电位器控制,刹车制动信号处理。PIC16F72单片机输入信号处理与控制信号输出部分的处理:最小系统模块,功能模块等处理。三相驱动信号预处理部分,MOSFET驱动处理。控制器的程序设计:完成电机换相功能、调速功能、刹车功能、限流保护功能、过流保护功能和欠压保护功能。

6结论通过本次设计,了解了无刷电机的工作原理,初步实现了用PIC单片机对无刷电机PWM调速、逆变桥电流限制、刹车功能、同步整流保护等基本功能的应用。不足之处:硬件方面,由于缺乏实验验证的数据,所以对于硬件的设计缺乏实际数据方面的支持,这样难免会在一些参数的选择上存在错误;软件思路方面,由于时间紧迫,所以只是对整体的编程思路做了一个简要的概述,并没有具体去实现,希望以后能边具体实现,在实现中发现纰漏,再加以改正;算法方面,由于采用的是速度开环控制,所以在不同的负载下,调速环设计的速度与电机实际的转速肯定是不一样的。致谢4年时间过得很快,转眼已经到了毕业,找工作的阶段,在毕业前:我们能做的就是做一篇好的毕业论文,给自己的大学留下一段美好的记忆。在这次毕业论文设计中,我很感谢我的毕业导师老师,以及我的辅导员郑文老师,他们对我的帮助很多,没有他们我根本不能很好的完成。郑老师学识渊博、工作态度严谨。已经在外面工作的我,时常因为毕业论文的事情困扰着我,工作总是很忙,很少有时间回学校。当我每次遇到问题时,两位郑老师不管有多忙,都会放下自己的事情,来帮我解答问题并且给我提供了大量数据资料和建议,告诉我应该注意的细节问题,使我受益良多。从选题到查阅资料,论文提纲的确定,中期论文的修改以及后期论文和格式的修改等各个环节中都给予了我悉心的指导。还要再次感谢老师对我的关心和照顾,在此表示最诚挚的谢意。还要感谢我的同学们,在各方面给予我这么多的帮助,在此表示真诚的感谢。

参考文献[1]刘刚,王志强,房建成.永磁无刷直流电机控制技术与应用[M].北京,机械工业出版社,2008.[2]李海涛,仪维,吴筱坚等.PIC单片机应用开发典型模块[M].北京,人民邮电出版社,2007.[3]三恒星科技.PIC单片机易学通[M].北京,人民邮电出版社,2006.[4]杨耕,罗应立.电机与运行控制系统[M].北京,清华大学出版社,2006.[5]张俊.匠人手记——一个单片机工作者的实践与思考[M].北京,北京航空航天大学出版社,2008.[6]肖玲妮,袁增贵.Protel99SE印刷电路板设计教程[M].北京,清华大学出版社,2006.[7]谢渊斌.电动车无刷电机控制器软件设计要点[N].《电子报2007年合订本》下册.[8]牛海清,谢运祥.无刷直流电动机及其控制技术的发展[D].微电机-2002年5期.[9]刘佳峰,谢杨华.直流无刷电机换相时机的调整[EB/OL

温馨提示

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

评论

0/150

提交评论