单片机课程设计PWM直流电动机调速控制系统方案Word文件下载.docx
《单片机课程设计PWM直流电动机调速控制系统方案Word文件下载.docx》由会员分享,可在线阅读,更多相关《单片机课程设计PWM直流电动机调速控制系统方案Word文件下载.docx(29页珍藏版)》请在冰豆网上搜索。
在这一系统中可对生产机械进行自动控制。
随着近代电力电子技术和计算机技术的发展以及现代控制理论的应用,自动化电力拖动正朝着计算机控制的生产过程自动化的方向迈进。
以达到高速、优质、高效率地生产。
在大多数综合自动化系统中,自动化的电力拖动系统仍然是不可缺少的组成部分。
另外,低成本自动化技术与设备的开发,越来越引起国外的注意。
特别对于小型企业,应用适用技术的设备,不仅有益于获得经济效益,而且能提高生产率、可靠性与柔性,还有易于应用的优点。
自动化的电力拖动系统更是低成本自动化系统的重要组成部分。
在如今的现实生活中,自动化控制系统已在各行各业得到广泛的应用和发展,其中自动调速系统的应用则起着尤为重要的作用。
虽然直流电机不如交流电机那样结构简单、价格便宜、制造方便、容易维护,但是它具有良好的起、制动性能,宜于在广泛的围平滑调速,所以直流调速系统至今仍是自动调速系统中的主要形式。
现在电动机的控制从简单走向复杂,并逐渐成熟成为主流。
其应用领域极为广泛,例如:
军事和宇航方面的雷达天线、火炮瞄准、惯性导航等的控制;
工业方面的数控机床、工业机器人、印刷机械等设备的控制;
计算机外围设备和办公设备中的打印机、传真机、复印机、扫描仪等的控制;
音像设备和家用电器中的录音机、数码相机、洗衣机、空调等的控制。
随着电力电子技术的发展,开关速度更快、控制更容易的全控型功率器件MOSFET和IGBT成为主流,脉宽调制技术表现出较大的优越性:
主电路线路简单,需要用的功率元件少;
开关频率高,电流容易连续,谐波少,电机损耗和发热都较小;
低速性能好,稳速精度高,因而调速围宽;
系统快速响应性能好,动态抗扰能力强;
主电路元件工作在开关状态,导通损耗小,装置效率较高;
近年来,微型计算机技术发展速度飞快,以计算机为主导的信息技术作为一崭新的生产力,正向社会的各个领域渗透,直流调速系统向数字化方向发展成为趋势。
1.2国外发展现状
电力电子技术、功率半导体器件的发展对电机控制技术的发展影响极大,它们是密切相关、相互促进的。
近30年来,电力电子技术的迅猛发展,带动和改变着电机控制的面貌和应用。
驱动电动机的控制方案有三种:
工作在通断两个状态的开关控制、相位控制和脉宽调制控制,在单向通用电动机的电子驱动电路中,主要的器件是晶闸管,后来是用相位控制的双向可控硅。
在这以后,这种半控型功率器件一直主宰着电机控制市场。
到70和80年代才先后出现了全控型功率器件GTO晶闸管、GTR、POWER-MOSFET、IGBT和MCT等。
利用这种有自关断能力的器件,取消了原来普通晶闸管系统所必需的换相电路,简化了电路结构,提高了效率,提高了工作频率,降低了噪声,也缩小了电力电子装置的体积和重量。
后来,谐波成分大、功率因数差的相控变流器逐步由斩波器或PWM变流器所代替,明显地扩大了电机控制的调运围,提高了调速精度,改善了快速性、效率和功率因数。
直流电机脉冲宽度调制(PulseWidthModulation-简称PWM)调速系统产生于70年代中期。
最早用于不可逆、小功率驱动,例如自动跟踪天文望远镜、自动记录仪表等。
近十多年来,由于晶体管器件水平的提高及电路技术的发展,同时又因出现了宽调速永磁直流电机,它们之间的结合促使PWM技术的高速发展,并使电气驱动技术推进到一个新的高度。
在国外,PWM最早是在军事工业以及空间技术中应用。
它以优越的性能,满足那些高速度、高精度随动跟踪系统的需求。
近八、九年来,进一步扩散到民用工业,特别是在机床行业、自动生产线及机器人等领域中广泛应用。
如今,电子技术、计算机技术和电机控制技术相结合的趋势更为明显,促进电机控制技术以更快的速度发展着。
随着市场的发展,客户对电机驱动控制要求越来越高,希望它的功能更强、噪声更低、控制算法更复杂,而可靠性和系统安全操作也摆上了议事日程,同时还要求马达恒速向变速发展,还要符合全球环保法规所要求的严格环境标准。
进入21世纪后,可以预期新的更高性能电力电子器件还会出现,已有的各代电力电子元件还会不断地改进提高。
1.3要求
一、设计任务
基于MCS-51系列单片机AT89C52,设计一个单片机控制的直流电动机PWM调速控制装置。
二、设计要求
1)在系统中扩展直流电动机控制驱动电路L298,驱动直流测速电动机。
2)使用定时器产生可控的PWM波,通过按键改变PWM占空比,控制直流电动机的转速。
3)设计一个4个按键的键盘。
K1:
“启动/停止”。
K2:
“正转/反转”。
K3:
“加速”。
K4:
“减速”。
4)手动控制。
在键盘上设置两个按键----直流电动机加速和直流电动机减速键。
在手动状态下,每按一次键,电动机的转速按照约定的速率改变。
5)*测量并在LED显示器上显示电动机转速(rpm).
6)实现数字PID调速功能。
三、设计提示:
1)参考L298说明书,在系统中扩展直流电动机控制驱动电路。
2)使用定时器产生可控PWM波,定时时间建议为250us。
3)编写键盘控制程序,实现转向控制,并通过调整PWM波占空比,实现调速;
4)参考Protuse仿真效果图:
1.4设计目的和意义
本文设计的直流PWM调速系统采用的是调压调速。
系统主电路采用大功率GTR为开关器件、H桥单极式电路为功率放大电路的结构。
PWM调制部分是在单片机开发平台之上,运用汇编语言编程控制。
由定时器来产生宽度可调的矩形波。
通过调节波形的宽度来控制H电路中的GTR通断时间,以达到调节电机速度的目的。
增加了系统的灵活性和精确性,使整个PWM脉冲的产生过程得到了大大的简化。
本设计以AT89C51单片机为核心,以键盘作为输入达到控制直流电机的启停、速度和方向,完成了基本要求和发挥部分的要求。
在设计中,采用了PWM技术对电机进行控制,通过对占空比的计算达到精确调速的目的。
本文介绍了直流电机的工作原理和数学模型、脉宽调制(PWM)控制原理和H桥电路基本原理设计了驱动电路的总体结构,根据模型,利用PROTEUS软件对各个子电路及整体电路进行了仿真,确保设计的电路能够满足性能指标要求,并给出了仿真结果。
第2章方案论证和选择
选择电动机参数:
额定电压:
6V额定转速:
6000rpm减速比:
1:
46.7
空载转速:
128rpm10ms/转
2.1电机调速控制模块
方案一:
采用电阻网络或数字电位器调整电动机的分压,从而达到调速的目的。
但是电阻网络只能实现有级调速,而数字电阻的元器件价格比较昂贵。
更主要的问题在于一般电动机的电阻很小,但电流很大;
分压不仅会降低效率,而且实现很困难。
方案二:
采用继电器对电动机的开或关进行控制,通过开关的切换对电动机的速度进行调整。
这个方案的优点是电路较为简单,缺点是继电器的响应时间慢、机械结构易损坏、寿命较短、可靠性不高。
方案三:
采用由三极管组成的H型PWM电路。
用单片机控制三极管使之工作在占空比可调的开关状态,精确调整电动机转速。
这种电路由于工作在管子的饱和截止模式下,效率非常高;
H型电路保证了可以简单地实现转速和方向的控制;
电子开关的速度很快,稳定性也极佳,是一种广泛采用的PWM调速技术。
兼于方案三调速特性优良、调整平滑、调速围广、过载能力大,因此本设计采用方案三。
2.2PWM调速工作方式
由于单极性工作制电压波开中的交流成分比双极性工作制的小,其电流的最大波动也比双极性工作制的小,所以我们采用了单极性工作制。
调脉宽的方式有三种:
定频调宽、定宽调频和调宽调频。
我们采用了定频调宽方式,因为采用这种方式,电动机在运转时比较稳定;
并且在采用单片机产生PWM脉冲的软件实现上比较方便。
采用定时器做为脉宽控制的定时方式,这一方式产生的脉冲宽度极其精确,误差只在几个us。
采用软件延时方式,这一方式在精度上不及方案一,特别是在引入中断后,将有一定的误差。
故采用方案一。
第3章系统硬件电路设计
硬件电路设计框图如下图所示,硬件电路结构初步设想由以下4部分组成:
时钟电路、复位电路、单片机、驱动电路。
驱动电路部分采用了以GTR为可控开关元件、H桥电路为功率放大电路所构成的电路结构。
控制部分采用汇编语言编程控制,AT89C51芯片的定时器产生PWM脉冲波形,通过调节波形的宽度来控制H电路中的GTR通断时间,便能够实现对电机速度的控制。
根据硬件系统电路设计框图,对各部分模块的原理进行分析,编写个子模块程序,最终将其组合。
复位电路
单片机
时钟电路
输入电路
驱
动
电
路
图3.1硬件系统电路设计框图
3.1信号输入电路
独立式按键就是各按键相互独立,每个按键各接入一根输入线,一根输入线上的按键工作状态不会影响其他输入线上的工作状态。
因此,通过检测输入线的电平状态可以很容易判断哪个按键按下了。
独立式按键电路配置灵活,软件简单。
但每个按键需要占用一个输入口线,在按键数量较多时,需要较多的输入口线且电路结构复杂,故此种键盘适用于按键较少或操作速度较高的场合。
消除键抖动。
一般按键在按下的时候有抖动的问题,即键的簧片在按下时会有轻微的弹跳,需经过一个短暂的时间才会可靠地接触。
若在簧片抖动时进行扫描就可能得出不正确的结果。
因此,在程序中要考虑防抖动的问题。
最简单的办法是在检测到有键按下时,等待(延迟)一段时间再进行“行扫描”,延迟时间为10~20ms。
这可通过调用子程序来解决,当系统中有显示子程序时,调用几次显示子程序也能同时达到消除抖动的目的。
3.2电机PWM驱动模块的电路
第4章系统的软件设计
4.1单片机选择
AT89C51是美国ATMEL公司生产的低电压,高性能CMOS8位单片机,片含4Kbytes的可反复擦写的只读程序存储器(PEROM)和128bytes的随机存取数据存储器(ROM),器件采用ATMEL公司的高密度、非易失性存储技术生产,兼容标准MCS-51指令系统,片置通用8位中央处理器(CPU)和Flash存储单元。
功能强大AT89C51单片机可提供许多高性价比的应用场合,可灵活应用于各种控制领域。
此设计就采用AT89C51。
4.2系统软件设计分析
在进行单片机控制系统设计时,除了系统硬件设计外,大量的工作就是如何根据每个生产对象的实际需要设计应用程序。
因此,软件设计在控制系统设计中占重要地位。
键盘向单片机输入相应控制指令,由单片机通过P3.7输出与转速相应的PWM脉冲,另一口输出高电平,驱动H型桥式电动机控制电路,实现电动机转向与转速的控制。
电动机所处速度级以速度档级数表示。
速度分4档,快慢与电动机所处速度级快慢一一对应。
在程序过软件产生PWM,送出预设占空比的PWM波形。
PWM(脉冲宽度调制)是一系列周期固定、占空比可调的脉冲系列,由于每个脉冲的高电平时间和低电平时间之和必须等于周期数,所以输出电平的维持时间必须由定时器来控制。
设PWM周期为T,高电平时间为TH,低电平时间为TL,电压为VCC,则输出电压的平均值为:
UAV=VCC*TH/(TH+TL)=VCC*TH/T=aVCC,当VCC固定时,其电压值取决于PWM波形的占空比a,而PWM的占空比由单片机软件部用于控制PWM输出的寄存器值决定。
软件主要由3部分组成:
主程序、键盘扫描程序、中断处理程序。
主程序流程如图4-1所示。
图4.1主程序流程图
定时中断处理程序
采用定时方式1,因为单片机使用12M晶振,可产生最高约为65.5ms的延时。
对定时器置初值0xFF9C可定时100us。
当100us定时时间到,定时器溢出则响应该定时中断处理程序,完成对定时器的再次赋值。
PWM脉宽控制
一个脉冲周期可以由高电平持续时间系数c16TimeH和低电平持续时间系数c16TimeL组成,本设计中采用的脉冲频率为10000Hz,可得c16TimeH+c16TimeL=65536,占空比为c16TimeH/(c16TimeH+c16TimeL),因此要实现定频调宽的调速方式,只需通过程序改变全局变量c16TimeH,c16TimeL的值。
产生PWM波程序为:
(详见附录1)
PWM控制直流电动机动作程序:
程序流程框图:
程序容:
(详见附录2)
第5章单片机系统综合调试
5.1仿真结果与分析
未启动仿真时,初始状态:
启动仿真后:
示波器显示PWM方波:
高速挡(正转):
低速挡(正转):
反转状态:
第6章心得体会
在两个周的学习工作中,通过查阅相关资料了解了直流调速系统,加深了对直流电机调速控制系统的认识,熟悉了单片机在控制系统中的运用。
并且在所学知识的基础上,利用已有的直流调速系统设计,尝试了自己的一些研究。
并且,使我将原来所学的知识系统化,理论化,实用化。
对如何使用已有知识及获取相关资料方面的能力又有了提高。
本设计基本上达到了设计目的。
实现通过单片机对直流电机的控制,通过合理的设备选型、参数设置和软件设计,提高了直流电机调速运行的可靠性。
本设计在硬件上采用了基于PWM技术的H型桥式驱动电路,解决了电机驱动的效率问题。
但该设计也有不足之处,主要是在关于速度的反馈上,首先,速度的变化围较小,其次无法提供较为直观的速度表示方式,因此,有必要引入传感器技术对速度进行反馈,以rpm或rps表达当前的转速进行显示。
通过本次设计,我的知识领域得到进一步扩展,专业技能得到进一步提高,同时锻炼了自己独立完成任务的能力,并掌握了很多软件、硬件开发方面的知识。
另外,我还认识到无论做什么工作,都需要踏实,勤奋,严谨的态度,这对我以后的工作将会产生深远的影响。
同时,也培养了自己认真的科学态度和严谨的工作作风,为将来能更好的适应工作岗位打下了良好的基础。
当然,本次设计还存在一些不足之处,例如:
界面设计不够人性化,不能实现远程监控功能等。
另外,由于实际条件的限制,本设计不能进行现场调试和试运行都是无法完成的。
若以后条件允许,可以对以上设计进行进一步完善。
当然,设计中肯定还有其他不足和纰漏之处,请各位老师指正。
参考文献
[1]伯石.电力拖动自动控制系统[M].:
机械工业,2003.
[2]钟富昭.8051单片机典型模块设计与应用[M].:
人民邮电,2007
[3]靖武.单片机系统的PROTEUS设计与仿真[M].:
电子工业,2007
[4]恢先.单片机原理及应用[M].:
人民邮电,2006
[5]孟庆涛.图解电子控制电路[M].:
[6]维成.单片机原理与应用及C51程序设计[M].:
清华大学,2006
[7]周润景.基于PROTEUS的电路及单片机系统设计与仿真[M].:
航空航天,2006
[8]光飞.单片机课程设计实例指导[M].:
航空航天,2004
[9]杜坤梅.电机控制技术[M].:
工业大学,2002
[10]广第.单片机基础(修订版)[M].:
航空航天大学,2001
[11]光东.单片微型计算机原理与接口技术(第二版)[M].武昌:
华中科技大学,1999
[12]何耀三.电气传动的微机控制[M].:
大学,1997
[13]薛钧义.MCS-51/96系列单片微型计算机及其应用[M].:
交通大学,1997
附录
附录1
//PWM控制程序
//================================================
//使用T2作为PWM的定时器
//+-----+-----+------+|
//|电机||
//|ML_D1|ML_D2|控制||
//|0|0|停止||
//|0|1|正||
//|1|0|反||
//|1|1|禁用||
#include<
REG52.H>
#include"
PubDefine.h"
MotorCtrl.h"
sbitP17=P3^7;
codeintKP=Kp;
//比例常数
codeintKD=Kd;
//微分常数
codeintKI=Ki;
//积分常数
//========初始化CPU===============================
voidIni_T0(void)//T0:
位计数器
{
TMOD&
=0xF0;
TMOD|=0x05;
//计数方式
TL0=0;
TH0=0;
PT0=0;
//低优先级
ET0=0;
//T0中断禁止
TR0=1;
T0=1;
//P3^4=1
}
//===================================================
voidIni_T1(void)//T1:
=0x0F;
TMOD|=0x50;
TL1=0;
TH1=0;
PT1=0;
ET1=0;
TR1=1;
T1=1;
//P3^5=1
//=======================================
voidIni_T2(void)//T2:
定时器16重装时间初值方式
RCLK=0;
//接收时钟禁止
TCLK=0;
//发送时钟禁止
EXEN2=0;
//T2EN端外部信号无效
C_T2=0;
//定时器
CP_RL2=0;
//重装时间初值
RCAP2H=c16TimeH;
RCAP2L=c16TimeL;
PT2=1;
ET2=1;
//T2中断开
TR2=1;
voidIni_ExInt(void)//INT0,INT1下降沿触发
IT0=1;
//下降沿触发
EX0=1;
//外中断开启
PX0=0;
IT1=1;
//下降沿触发
EX1=1;
PX1=0;
//用于L电机测速
voidExInt0(void)interrupt0
sLrpm=sLrpm+20;
if(sLrpm>
MaxRPM)
{sLrpm=MinRPM;
voidtimer2(void)interrupt5using3
TR2=0;
if((PwmCyc++)==cPwmCyc)
{PwmCyc=0;
}
PWML=!
(PwmCyc>
=PwmValL);
PWMR=!