基于P89LPC932的电机控制系统

整理文档很辛苦,赏杯茶钱您下走!

免费阅读已结束,点击下载阅读编辑剩下 ...

阅读已结束,您可以下载文档离线阅读编辑

资源描述

黑龙江科技学院大学生科研基金项目设计说明书项目名称:基于P89LPC932的电机控制系统申请者:王洪磊组员:付强、邓学岩、徐成宏指导教师:周杰基于P89LPC932的电机控制系统编者按:运用P89LPC932的脉宽调制功能实现对电机的恒转速控制,用外接键盘实现对电机的速度输入,采用数字PID控制算法实现对电机的恒转速控制的选题是一个应届生的毕业设计。直流电动机因其良好的启动、制动性能,良好的机械特性,使得其在现代工业控制领域得到了广泛的应用。自从PWM(脉冲宽度调制电路)引入到电机控制以后,给自动控制领域带来了深刻的变化,PWM调速装置在直流调速、伺服控制系统中得到了广泛的应用。纯硬件的PWM系统,其硬件电路较为复杂,实现不易。而采用Philips公司新推出的芯片P89LPC932,利用其内部本身自带的脉宽调制器能够很方便的实现对PWM波形的控制。本系统中采用PWM控制器作为PWM控制器及微处理器,由他来实现以下的任务:1用外接键盘实现对电机的速度输入,能够实时给定电机的转速。2.设计一个测速装置由计数器0端口来测量电机的转速并经P89LPC932的串行口送LED显示。3.设计数字PID算法实现对电机的恒转速控制,即由键盘输入给定了电机的速度之后在电机允许的范围之内,改变其负载的大小,电机的转速能够维持基本恒定不变。第一章硬件电路的实现1.1概述本系统以P89LPC932作为核心控制部件,外加一定的辅助电路来完成系统的预期任务即电机的恒转速控制并送显示。利用其外接键盘作为电机的速度输入端,通过键盘输入转速来输出与之相对应的PWM波形。加以一定的驱动电路来驱动电机。利用磁铁和磁的霍尔传感器的霍尔特性设计一测速电路实时测量电机的转速。利用P89LPC932的串口送电机的实测转速。设计一数字PID调节器,通过数字PID算法实现对电机的恒转速控制。整体电路的原理框图如图1-1所示。图1-1整体电路原理框图速度检测装置T0RXDTXDP89LPC932PWM基极驱动电路电动机功率转换电路数码管显示键盘图1-1电路中键盘输入数据是由P89LPC932实时扫描来实现的,一旦键盘输入新的数据则立即送出新的与键盘输入数据相对应的相应占空比的PWM波形。因为由P89LPC932输出的电压高电平仅为+3,输出电流仅仅为2MA左右,因此要驱动本系统中的12V小电机必须将电流、电压加以放大,在本电路中采用功率三极管加以实现。测速电路是采用磁铁和磁的霍尔传感器的霍尔特性来测量电机的转速的。显示电路用到了P89LPC932的串行口,由串行口送出电机的速度。在监控程序中,将电机的实测转速与通过键盘输入所确定的电机应具有的给定转速比较,一旦二者之间有偏差,马上调用数字PID算法进行纠正,改变PWM波形的输出占空比,使得电机的实际转速相给定转速靠拢,从而实现电机的恒转速控制。关于P89LPC932的介绍请见参考文献[1]。1.2输入电路为了实时给定电机的转速,可以通过外接键盘来输入设定,具体电路如图1-2所示。图1-2速度输入电路由于用键盘输入转速和数字PID参数,所以需要的按键数目较多。因此键盘接口采用行列式键盘接口,按键的识别方法采用线反转法。键盘的工作原理请见参考文献《单片机原理与应用》。最终,由键盘输入数据大小来确定相应PWM波形的占空比,从而改变电机的转速。扫描键盘程序中首先是判断键盘是否有数据输入。若有新数据输入则立即送出与输入数据相对应的PWM波形。只有在键盘没有数据输入的情况下,监控程序才会判断电机的实际测量转速与键盘所输入的给定转速是否相等,若二者有偏差,则必须调用数字PID算法来实现电机的恒定转速控制。1.3驱动电机电路因为在电机驱动系统中,主要是对P89LPC932输出的PWM波形进行功率放大,因此首先必须要介绍一下P89LPC932自带的脉宽调制器的工作原理,详细说明请见参考文献《LPC900系列Flash单片机应用技术》(上册)。P89LPC932P0.1||P0.73*4键盘123456ABCD654321DCBATitleNumberRevisionSizeBDate:26-Oct-2007SheetofFile:D:\程序\client99se\lixiang.DdbDrawnBy:R01KR1110R2110U0TLP521Q0D880D01N4148M0+3Q19012+12MPWM图1-3电机驱动电路在图1-3中,三极管9012的特性参数如下:PCM=310MW,ICM=50MA,u(br)ceo=18V,U(BR)EBO=3V,ICBO=0.05ΜA,ICEO=0.1μA,hFE=60~103,fT=80MHZ。Q0管为功率三极管,因为在书上找不到其资料的详细说明,只是在网络上找到了其资料的简单说明,Q0管的型号为D880特性参数为140V10A100W。因此采用此功率三极管在本系统是足够的。Q1管9012作为基极驱动电路由于Q0管接成了射极跟随器的形式,Q0的发射极电压跟随其基极电压的变化,由于其管压降的作用,当Ub=+12V时,Uc=11.4V,并且经过测量我们知道其射极最大输出电流为60MA可以驱动本系统12V小电机的运行。D0为快速恢复二极管,型号为1N4148,作为电机的保护管,并且在功率三极管的射极输出为低电平时,D0管又可以作续流二极管的作用,由于在其输出为高电平期间电机电枢电感的储能作用,此时通过D0管使电机电流继续导通。1.4测速电路因为实验条件的限制,本次课题设计所采用的测速电路是利用磁铁和磁霍尔传感器的霍尔特性来设计出来的测速电路,其中传感器型号为NJK—5002C,特性参数:NPN型,工作电压U=6~36V(直流),输出电流I=200mA。原理图如图1-4所示。其中磁铁吸附在电机的传动轴,当磁铁接近磁霍尔传感器时,霍尔传感器输出0V否则传感器输出为+12V。由于霍尔传感器输出的电流较小且电压过大,所以在霍尔传感器与单片机之间加了电流驱动和分压电路。9013为NPN型三极管,其特性参数如下:PCM=310MW,ICM=50MA,u(br)ceo=18V,U(BR)EBO=3V,ICBO=0.05ΜA,ICEO=0.1μA,hFE=60~103,fT=80MHZ。当电机转动时,磁铁会周期性的接近磁霍尔传感器,磁霍尔传感器就会输出一个连续的方波信号,这个方波信号就可以作为P89LPC932的T0计数器的计数脉冲。123456ABCD654321DCBATitleNumberRevisionSizeBDate:26-Oct-2007SheetofFile:D:\程序\client99se\lixiang.DdbDrawnBy:磁铁磁霍尔传感器+12R0100R1560R2220Q09013T0P89LPC932图1-4测速电路原理图1.5显示电路为了送显示电机的转速,我们用到了P89LPC932的串行通信口,为了送出待显示的笔画码用到了其串行工作方式0。图1-8显示电路在显示电路中,利用74LS164八位移位寄存器锁存需要送出的笔画码。74LS164是一种串并数据输入并行或串行数据输出,可以异步复位的8位数据寄存器,常用做串并数据转换。显示电路原理图如图1-8所示。采用串行接口电路来作为显示电路,占用口线资源少,编程简单,而且其硬件电路的实现也不复杂。其中两位是控制转速,另两位是实际转速。第二章系统软件设计为了使系统发挥其最大的作用,并且为了以后更新换代升级的方便,在系统的硬件确定以后,必须有足够强大的且功能完善的软件来支持,一个系统有一个好的软件的支持,就好比这个系统有了一颗奔腾的“芯”,能够很好的指导和协调硬件的工作,生生不息。本系统中的监控程序设计采用模块化的设计方法。多个功能模块的功能相互独立,又能够互相调用,修改调试非常的方便。其资源分配都具有明显的表识符号,具有较强的可读性性。2.1主程序设计由于监控程序选择在定时器0中断服务程序中,主程序完成的任务相对简单。它只是完成自检、初始化等工作而进入等待方式。经过实验发现PWM不能工作在休眠状态,当工作在休眠状态时,PWM输出的电压几乎为0,其流程图如图2-1所示。1.看门狗初始化为了防止系统死机,使系统能够更好的工作,通过串行编程对Flash的UCFG1寄存器的WDTE位启动,定时装置必须定时得到软件清除,以防止其溢出使MCU复位,其初始化程序如下:WDL=0xff;//装入8位倒计数器的新值EA=0;WDCON=0Xe5;//4096分频,看门狗振荡器作为时钟源,看门狗运行控制WFEED1=0XA5;//喂狗WFEED2=0X5A;EA=1;两条写入看门狗复位寄存器WDREST的命令要按照一定的顺序进行,否则看门狗电路仍然按照最初的设置直到溢出。2.定时器、计数器初始化包括设置工作方式,即对TMOD进行初始化。由于定时器、计数器0的工作方式为工作方式1,其初始化程序如下:IEN0=0X88;//开全局中断和定时器1溢出中断TMOD=0X15;//定时器1、计数器0的工作方式都为1TH1=0X15;//定时器设初值TL1=0Xa0;TH0=0;//计数器清零TL0=0;TR1=1;//定时器启动TR0=1;//计数器启动3.PWM初始化该系统用OCC也就是P89LPC932的第4脚所输出的方波作电机的脉宽调制信号。PWM控制信号的初始化程序如下:OCRCH=0Xff;//输出比较OCRCL=0Xff;TH2=0XFF;TL2=0XFF;//设定PWM频率TOR2H=0XFF;TOR2L=0XFF;CCCRC=1;//非反向的PWM,在比较匹配时置位;在CCU定时器递减向下益出时清零TCR21=0X8B;//写分频,锁TCR20=0X80;//置PLLEN等读出为一while(TCR20!=0x80){;}TMOD21=1;//启动PWM定时器4.键盘扫描本系统采用线反转法进行键盘扫描,线反转法只需要两步便能获得所在的行列值,显得十分简练。图2—1主程序流程图看门狗初始化数码管显示内存单元初始化PWM初始化定时器、计数器初始化键盘扫描上电复位2.2系统定时监控一个完整的系统都离不开对系统状态的监控,就象一个十字交通口,必须有红、绿灯来指示车辆的正常通行,还要有电子眼监视违规车辆并记录。为了更好的协调软件,硬件个部分正常工作,就必须对整个系统进行严密监控。本系统是有定时器1中断服务程序担任监控任务。但由于电动机是一种有惯性、有滞后的环节,当电动机负载过大时,滞后就会更加明显,因此必须选择一个合适的监控扫描时间这是至关重要的。如果每次的监控扫描时间过长,会增大整个系统的调节时间。时间过短,滞后环节的影响来不及反应。经过多次的实验总结,监控扫描时间间隔1秒比较合适。即每1秒对电机测速装置转换进行一次采样。并进行相应的处理,再经过数字PID调节器调节来实现电机的恒转速控制。其监控程序流程图如图2—2所示。图2—2定时器1中断服务程序流程图YYNN定时器1重置初值定时器1中断入口数字PID调节送出PWM信号控制电机关计数器和定时器是否到一秒计数器的值和设定转速是否相等速度显示中断返回第三章数字PID及其算法在模拟系统中,其过程控制方式就是将被测参数,如温度、压力、成分、液位等由传感器变换成统一的标准信号送入调节器,在调节器中,与给定值进行比较,然后把比较出的差值经PID运算送到执行机构,改变进给量,以达到自动调节之目的。这种系统多用电机(或气动)单元组合仪表DDZ(或QDZ)来完成。而在数字控制系统中,则是用数字调节器来模拟调节器,其调节过程是首先把过程控制参数进行采样运算处理,运算结果由模拟量输出通道输出,并通过执行机构去控制生产,以达到给定值。计算机控制的主要任务是设计一个数字调节器常用以下控制方法:1程序和顺序控制2比例积分微分控制(简称PID控制)调节器的输出是其输入的比例,积分,微分的函数。PID控制现在应用最广,技术最成熟,其控制结构简单,参数容易整定,不必求出被控对象的数学模型便可以调节,因此无论模拟调节器或数字调节器大都采用PI

1 / 12
下载文档,编辑使用

©2015-2020 m.777doc.com 三七文档.

备案号:鲁ICP备2024069028号-1 客服联系 QQ:2149211541

×
保存成功