第15卷第1期青岛大学学报VOL.15NO.12000年3月JOURNALOFQINGDAOUNIVERSITYMar.2000文章编号:100629798(20000120010203收稿日期:1999211229第一作者简介:邱丹,女,1975年生,1997年毕业于青岛大学机电一体化专业。现在青岛大学机电学院实验室工作。直流电机PWM闭环调速系统邱丹,王东,高振东(青岛大学机电工程学院,青岛266071摘要:推出一种使用单片机的PWM直流电机闭环调速系统。本系统结构简单,价格低廉,在实际应用中效果良好。关键词:PWM;单片机;速度闭环控制中图分类号:TP273文献标识码:A采用硬件电路实现直流电机闭环调速系统已在实践中应用多年,其硬件组成复杂,调整困难,缺乏控制的灵活性。本文介绍的直流电机PWM闭环调速系统,使用低价位的单片微机89C2051为核心,实现闭环控制,并可进行数字显示和速度预置,方便了使用。电机调速采用脉宽调制方式,与晶闸管调速相比技术先进,可减少对电源的污染。本系统已用于健身跑步机调速,工作可靠,使用效果良好。图1是本系统的线路图,主要有PWM信号发生、闭环调速微机控制、直流电机驱动等几部分组成。1PWM信号发生电路PWM波可由具有PWM输出的单片机(如80C198等通过编程产生,也可采用PWM专用芯片来实现。PWM波的频率太高时,对直流电机驱动的功率管要求太高,太低时产生电磁噪声较大。实践应用中PWM波的频率在18kHz左右效果最好。经综合分析,本系统采用两片4位数值比较器4585和一片12PWM信号发生电路。两片比较器U3、U2的A组接4040计数输出Q2~Q9端,B组接单片微机的P1端口。改变P1端口的输出值,可使PWM信号的占空比产生变化,进行调速控制。计数器4040的计数输入端CLK接单片机2051晶振的振荡输出XTAL2。晶振选用18MHz时,经Q0~Q2的8分频,Q2~Q9的256分频,产生的PWM波形的频率为1716kHz,适合光耦及功率开关管的合理工作范围[1]。计数器4040每来8个脉冲,其输出Q2~Q9加1,当计数值小于或等于单片机P1端口输出值X时,U2的(A>B输出端保持为低电平,当计数值大于X时U2的(A>B输出端为高电平。随着计数值的增加,Q2~Q9“由全1”“变为全0”时,(A>B输出端又变为低电平,这样,在U2的(A>B端得到PWM的信号,其占空比为(2552X255×100%,改变X值可改变PWM信号的占空比,进行直流电机的转速控制。使用此方法单片机只需根据调整量输出X值,PWM信号由三片通用数字电路生成,使软件大大简化,有利于单片机系统正常工作。由于单片机上电复位时P1“端口输出全1”,使用4585的B组与P1端口相连,升速时P0端口输出X按一定规律减少,降速时按一定规律增大。2单片微机闭环速度控制电路本系统的闭环控制选用低价位的单片机89C2051,与带PWM输出的80C552及80C198相比,无需外扩EPROM,且价格低的多。2051单片机片内有2K的flash程序存储器,15个IO口,两路16位的定时计数器,指令及中断系统与8031兼容,给闭环速度控制带来很大的灵活性[2]。闭环速度控制中传感器选用霍尔传感器,小磁钢固定在被测转轴上,每转一周输出一个脉冲信号。转速脉冲信号经施密特触发器U621,U622整形后,输入到2051单片机的INT0中断口P312端口上。软件设置INT0为下降沿中断,进入中断服务程序后开启定时计数器0进行定时,测出每转的周期,再由软件计算出控制值X,由P1端口输出PWM波占空比的控制数。软件中还可进行显示线速度或角速度的转换计算,由八位驱码驱动器带动LED数码管进行显示。预置速度由按键S1、S2输入,“进行+”“-”控制,预置数也由LED数码管显示。图1直流电机PWM闭环调速系统原理图显示使用了高集成度的MAX7219串行LED显示驱动器,带动八位LED数码管进行显示,前四11第1期邱丹等:直流电机PWM闭环调速系统位显示当前运行速度,后四位显示预置速度。MAX7219是24脚窄封装芯片,串行口工作频率最高10MHz,八位LED显示,通过对译码模式寄存编程,可控制各位显示方式(BCD码或非译码,显示是片内动态扫描模式,通过一个电阻和编程可控制亮度,并可多个芯片串联显示多达64位共阴极LED数码管。MAX7219的数据输入端DIN、时钟端CLK、数据锁定端L分别与2051单片机的P310、P311、P315端口相接。改变电阻R6的阻值可调整显示亮度,R6取值在319~10k8之间。使用MAX7219不仅可减少硬件电路,由于是片内动态扫描显示,并可降低功耗和简化软件设计。2051单片...