基于单片机的直流电机调速系统的设计论文.docx
《基于单片机的直流电机调速系统的设计论文.docx》由会员分享,可在线阅读,更多相关《基于单片机的直流电机调速系统的设计论文.docx(30页珍藏版)》请在冰豆网上搜索。
基于单片机的直流电机调速系统的设计论文
摘要
……………………………………………………………论文的时候又让让直流电机是通电线圈在磁场的作用下产生一电磁力,电磁力产生一个作用于电枢的力矩(即电磁转矩),使电机转动。
电机转动的速度与电机两端施加的电压成正比,输出转矩则与电流成正比,其通-断比率对应于所需速度。
根据题目要求,系统可分为控制部分和速度检测部分。
本系统采用两片AT89S52单片机作为核心控制器,通过红外对接管组成的自制传感器对电机转速进行测量。
单片机采样单位时间的电机转速后,通过PID控制算法校正PWM(脉冲宽度调制)控制电机驱动电路(H桥)驱动直流电动机完成转向和速度的控制。
然后由两个4位数码管来显示直流电机当前的欲设速度和实际转速。
关键字:
AT89S52直流电机PIDPWM电机驱动电路
Abstract
Dcmotorismade.putcoilinmagneticfieldundertheactionofproduceaelectromagneticforce,electromagneticforceproducedaroleinthearmaturetorque,namelyelectromagnetictorquemotorrotation,making.Motorrotationspeedandmotorappliedvoltageisproportionaltotheends,theoutputtorqueisproportionaltoitscurrenton-and-offbrokenratecorrespondingtotherequiredspeed.Accordingtothetopicrequest,thesystemcanbedividedintothecontrolpartandspeeddetectionparts.ThesystemUSESAT89S52SCMascorecontroller,throughinfraredtotubecomposedofhomemadesensorstomotorspeedmeasuring,microcontrollersampling,throughthePIDcontrolalgorithmproducesPWM(pulsewidthmodulation)controlmotordrivercircuitdriverfordccompletedcmotorspeedcontrolofsteeringand.Thenbyeightdigitaltubetodisplaythesingle-chipmicrocomputercontrolwithmeasurementresults.
Keyword:
AT89S52dcmotorPIDPWMmotordrivercircuit
引言
随着生活的日新月异,电气产品在生活中的应用越来越广泛,各种类型的电机更是层出不穷,然而在自动控制系统、电子仪器设备、家用电器、电子玩具等方面,直流电机的应用还是占有突出地位。
比如大家熟悉的录音机、电唱机、录相机、电子计算机等,都不能缺少直流电机。
直流电机具有良好的启动性能和调速特性,它的特点是启动转矩大,最大转矩大,能在宽广的范围内平滑、经济地调速,转速控制容易,调速后效率很高。
相对于交流电机而言,直流电机的调速是比较简单,而且它的利用价值更高。
本系统就是对直流电机调速的一个阐释!
早期直流传动的控制系统采用模拟分离器件构成,由于模拟器件有其固有的缺点,如存在温漂、零漂电压,构成系统的器件较多,使得模拟直流传动系统的控制精度及可靠性较低。
随着计算机控制技术的发展,微处理器已经广泛使用于直流传动系统,实现了全数字化控制。
由于微处理器以数字信号工作,控制手段灵活方便,抗干扰能力强。
所以,全数字直流调速控制精度、可靠性和稳定性比模拟直流调速系统大大提高。
所以,直流传动控制采用微处理器实现全数字化,使直流调速系统进入一个崭新的阶段。
随着科技水平的提高,越来越多的直流电机需要它在正常工作的同时,对它的转速也要能够精确的进行控制,这就要求直流电机的转速不仅要能够在它允许的范围内转动,还要能够通过系统能够自动的调节电机的转速。
第一章总体方案的选择
1.1方案一:
PWM波调速
采用由达林顿管组成的H型PWM电路(H桥)(图1)。
用单片机控制达林顿管,使之工作在占空比可调的开关状态,精确调整电动机转速。
这种电路由于工作在管子的饱和、截止状态下,效率非常高。
H桥电路保证了可以简单地实现转速和方向的控制,电子开关的速度很快,稳定性也极佳,是一种广泛采用的PWM调速技术。
在我的论文里面,H桥采用了定频调宽的方式,因为采用这种方式电动机在运转时比较稳定,并且在采用单片机产生PWM脉冲的软件实现上比较方便,对于直流电机采用软件延时所产生的定时误差在允许范围内。
总之,PWM从处理器到被控系统信号都是数字形式的,无需进行数模转换,同时对噪声抵抗能力的增强,不仅经济,而且节约空间。
图1PWM波调速电路
1.2方案二:
晶闸管调速
采用闸流管或汞弧整流器的离子拖动系统是最早应用静止式变流装置供电的直流电动机调速系统。
1957年,晶闸管(俗称“可控硅”)问世,到了60年代,已生产出成套的晶闸管整流装置,并应用于直流电动机调速系统,即晶闸管可控整流器供电的直流调速系统(V-M系统)。
如图2,VT是晶闸管可控整流器,通过调节触发装置GT的控制电压
来移动触发脉冲的相位,即可改变整流电压
,从而实现平滑调速。
晶闸管整流装置不仅在经济性和可靠性上都有很大提高,而且在技术性能上也显示出较大的优越性;晶闸管可控整流器的功率放大倍数在
以上,其门极电流可以直接用晶体管来控制,不再像直流发电机那样需要较大功率的放大器。
在控制作用的快速性上,变流机组是秒级,而晶闸管整流器是毫秒级,这将大大提高系统的动态性能。
因此,在60年代到70年代,晶闸管可控整流器供电的直流调速系统(V-M系统)代替旋转变流机组直流电动机调速系统(G-M系统),得到了广泛的应用。
但是由于晶闸管的单向导电性,它不允许电流反向,给系统的可逆运行造成困难;晶闸管对过电压、过电流和过高的
与
都十分敏感,若超过允许值会在很短的时间内损坏器件。
另外,由谐波与无功功率引起电网电压波形畸变,殃及附近的用电设备,造成“电力公害”,因此必须添置无功补偿和谐波滤波装置。
图2晶闸管可控整流器供电的直流调速系统(V-M系统)
与方案二相比较,方案一的调速特性优良、调整平滑、调速范围广、过载能力大,因此本设计采用方案一。
第二章各单元硬件方案论证
要精确地控制直流电机的转速,硬件电路的要求相对而言是比较高的,它直接决定直流电机调速的精度。
采用PID控制器,因此需要设计一个闭环直流电机控制系统。
该系统采用脉宽调速,利用自动控制的原理将电机的转速误差逐渐的变为零,也就是使电机速度等于设定值,并且实时显示电极的转速值。
通过对设计功能分解,设计方案论证可以分为:
系统结构方案论证,速度测量方案论证,电机驱动方案论证,键盘显示方案论证,PWM软件实现方案论证。
2.1微处理器的选择
方案一:
采用一片单片机(AT89S52)完成系统所有测量、控制运算,并输出PWM控制信号。
方案二:
采用两片单片机(AT89S52),其中一片做成PID控制器,专门进行PID运算、PWM控制信号输出和电机转速的测定;另一片则系统主芯片,完成电机速度的键盘设定、预设速度显示,并向PID控制器提供设定值,设定PID控制器的控制速度等。
方案一的优点是系统硬件简单,结构紧凑。
但是其造成CPU资源紧张,程序的多任务处理难度增大,不利于提高和扩展系统性能,也不利于向其他系统移植。
方案二则与方案一相反,虽然硬件增加,但在程序设计上有充分的自由去改善速度测量精度,缩短测量周期,优化键盘,显示及扩展其它功能。
与此同时,PID控制算法的实现可以精益求精,对程序算法或参数稍加改动即可移植到其他PID控制系统中。
为了更好的完成直流电机的调速设计,也为了使电机的转速更加的精准,综合考虑,我还是选择方案二。
2.2测速传感器的选择
方案一:
使用测速发电机,输出电动势E和转速n成线性关系,即E=kn,其中k是常数。
改变旋转方向时,输出电动势的极性即相应改变。
方案二:
采用霍尔传感器,霍尔元件是磁敏元件,在被测的旋转体上装一磁体,旋转时,每当磁体经过霍尔元件,霍尔元件就发出一个信号,经放大整形得到脉冲信号,送运算。
方案三:
利用一个能够反光的小圆片,在它的径向上开一个小缺口,利用红外光电耦合器,每转半圈OUT端输出一个上脉冲,然后用单片机在单位时间里面来采集上升源的个数,这样就完成速度的采集。
经比较,方案一中的测速放电机安装不如方案二中霍尔元件安装方便,准确率也没方案二的高,并且方案二不需要A/D转换,直接可以被单片机接收。
但方案二的霍尔传感器的采购不是很方便,价格比较的昂贵,方案三的硬件电路简单,采购方便,更重要的是它具有方案二的几乎所有的优点,故选择方案三。
方案三中具体的记数方法是通过单片机记数时间S(秒)内的脉冲数N,从而计算得到每分钟的转速:
M=N/S×60。
同事还可以采用定时的方法:
是通过定时器记录脉冲的周期T,这样每分钟的转速:
M=60/T。
比较两个计数方法,方法一的误差主要是±1误差(量化误差),假设电机的最低设计转速为120转/分,则记数时间S=1s,所以其误差的绝对值|γ|=|(N±1)/S×60-N/S×60=60(转/分),误差计算公式表明,增大记数时间可以提高测量精度,但这样做却增大了速度采样周期,会降低系统控制灵敏度。
而方法二所产生的误差主要是标准误差,并且使采样时间降到最短,误差γ=[60/(T±1)-60/T],设电机速度在120—6000转/分之间,那么0.01s≤T≤0.5s,代入公式得:
0.00024≤|γ|≤0.6(转/分)。
由此明显看出,方法二在测量精度及提高系统控制灵敏度等方面优于方法一,所以我在这里采用方法二进行计数。
2.3键盘显示方案论证
方案一:
采用4×4键盘,可直接输入设定值。
显示部分使用两个4位数码管,优点是显示亮度大,显示的比较的完整,能够将电机的转速完整的显示出来,同时采用4x4的矩阵键盘能够充分的利用单片机的有效资源对直流电机的初值、开始、停止、加速、减速、反向进行设置。
方案二:
使用4个按键,进行逐位设置。
显示部分是使用支持中文显示的LCD,优点是美观大方,有利于人与系统的交互,及显示内容的扩展;缺点是成本高,抗干扰能力较差,不利于用在条件相对比较恶劣的环境下工作。
为了系统的使用范围更加的广阔,也为了使系统的可利用价值更高,本设计完全采用方案一。
2.4输入输出通道
由于选用了红外光电耦合器进行测速,故微处理器采集到的信号直接是脉冲信号,无需经过A/D转换就可以输入到单片机中。
由于采用PWM控制直流电机的电枢电压,故单片机的输出经放大驱动电路就可以直接控制电机的电枢电压,以此来控制电机的转速。
2.5PWM实现方案论证
PWM信号的产生通常有两种方法:
一种是软件的方法;另一种是硬件的方法。
方案一:
基于NE555、SG3525等一系列的脉宽调速系统:
此种方式采用NE555作为控制电路的核心,用于产生控制信号。
NE555产生的信号要通过功率放大才能驱动后级电路。
NE555、SG3525构成的控制电路较为复杂,且智能化、自动化水平较低,在工业生产中不利于推广和应用。
方案二:
基于单片机类由软件来实现PWM:
在PWM调速系统中占空比是一个重要参数,在电源电压不变的情况下,直流电机电枢端电压的平均值取决于占空比的大小,改变占空比的值可以改变电枢端电压的平均值从而达到调速的目的。
改变占空比有三种方法:
图3电枢电压占空比图
a、定宽调频法:
保持
不变,只改变t2,这样使周期(或频率)也随之改变。
b、调宽调频法:
保持t2不变,只改变
,这样使周期(或频率)也随之改变。
c、定频调宽法:
保持周期T(或频率)不变,同时改变
或t2。
在这三种方法中,前两种方法在调速时改变了控制脉冲的周期(或频率),当控制脉冲的频率与系统的固有频率接近时,将会引起振荡,因此常采用方法c来改变占空比从而改变直流电动机电枢两端电压是最好的选择。
利用单片机的定时计数器外加软件延时等方式来实现脉宽的自由调整,此种方式可简化硬件电路,操作性强等优点。
综合考虑选方案二,采用定频调宽法。
第三章系统结构框图设计
系统原理框图如图4所示,是一个带键盘输入和显示的闭环测量控制系统。
主体思想是通过系统设定信息和测量反馈信息计算输出控制信息,然后通过PID控制算法,控制处理器产生PWM波,改变它的占空比(主要是控制延时)。
图4系统原理框图
第四章单元模块设计
4.1H桥驱动电路设计方案
达林顿管是由两个三极管接在一起而组成的,极性只认前面的三极管。
两个三极管的连接图如图5。
图5达林管结构图
达林顿管又称复合管。
它将二只三极管适当的连接在一起,以组成一只新的三极管。
这只新的三极管的放大倍数是原来的两个三级管放大倍数的乘积。
达林顿电路有两种种接法:
同极性接法(NPN+NPN,PNP+PNP),异极性接法(NPN+PNP,PNP+NPN)。
达林管的应用就相当于一只普通的三极管,在利用它做H桥的时候也只需要遵循普通的三极管的使用规则就可以了。
相对于普通的三极管而言,它的主要适用范围是大功率开关电路、电机调速电路、逆变电路等。
由于达林顿管是特殊的三极管,所以在下面的论述中我就采用最简单的三极管构成的H桥进行论证。
H桥式电机驱动电路包括4个三极管和一个电机,如图6所示,要使电机运转,必须导通对角线上的一对三极管。
根据不同三极管对电流的导通情况,电流可能会从左至右或从右至左流过电机,从而控制电机的转向。
图6H桥驱动电路
如图7,当Q1管和Q4管导通时,电流就从电源正极经Q1从左至右穿过电机,然后再经Q4回到电源负极。
按图中电流箭头所示,该流向的电流将驱动电机顺时针转动。
图7H桥驱动电机顺时针转动
图8所示为另一对三极管Q2和Q3导通的情况,电流将从右至左流过电机,从而驱动电机沿相反方向转动。
图8H桥驱动电机逆时针转动
4.2调速设计方案
调速采用PWM(PulseWidthModulation)脉宽调制,为了使系统的工作稳定我们选择了输出PWM波采用定频调宽的方法。
PWM脉宽调制是利用微处理器的数字输出来对模拟电路进行控制的一种非常有效的技术,广泛应用在从测量、通信到功率控制与变换的许多领域中。
而我们采用的定频调宽是利用微处理器对采集回来的转速值与设定的转速值进行比较,利用PID算法,将这个差值的变化变成PWM波脉宽的变化,也就是增大或者是减小占空比,从而纠正电机的转速,使电机的转速无限的趋近于设定的转速值,这样就实现了一个自动控制的环节。
利用这种闭环自动控制原理我们就轻松实现了电机的转速的控制。
第五章系统硬件电路设计
5.1电源电路
5.1.1芯片介绍
在设计这个系统的时候,各种各样的电源芯片让人眼花缭乱,但是经过仔细的考究,我还是选择了78系列的电源芯片。
用78系列三端稳压IC来组成稳压电源所需的外围元件极少,电路内部还有过流、过热及调整管的保护电路。
该系列集成稳压IC型号中的78后面的数字代表该三端集成稳压电路的输出电压,如7806表示输出电压为正6V。
有时在电源芯片的数字78后面还有一个M或L,如78M12,用来区别输出电流和封装形式等,其中78L调系列的最大输出电流为100mA,78M系列最大输出电流为1A,78系列最大输出电流为1.5A。
在我的这个电路调速的应用中,应在三端集成稳压电路上安装一个散热器,这是因为温度过高,芯片的稳压管的性能将变差,甚至损坏,从而导致整个系统的崩溃。
5.1.2电路原理图
电源电路采用78系列芯片产生+5V、+15V。
电路图如图9:
图978系列的电源电路
5.2H桥驱动电路
基于达林顿管的使用机理和特性,在驱动电机中采用H桥(图中用最简单的三极管代替)功率驱动电路,H桥功率驱动电路可应用于步进电机、交流电机及直流电机等的驱动。
直流电机控制使用H桥驱动电路(图10),当PWM1为低电平,通过对PWM2输出占空比不同的矩形波使三极管Q1、Q6同时导通Q5截止,从而实现电机正向转动以及转速的控制;同理,当PWM2为高电平,通过对PWM1输出占空比不同的矩形波使三极管Q2、Q5同时导通,Q6截止,从而实现电机反向转动以及转速的控制。
图10H桥的电机驱动电路
5.3电机测速电路的设计
理论上,是先将转速转化为某一种可以方便测量的电量来进行测量,如电压、电流等。
在我的设计中我采用了另外的一种方法,就是将直流电机的转速测量转化换为电机脉冲频率的测量。
基于这一思想,我采用了三极管输出型红外光电耦合器。
如图11所示,在电机转轮一处开一条宽度大约为5mm的缝,这样,每转一圈,三级管(红外接收头)透光导通一次,OUT端输出一个上脉冲,然后用单片机来计数单位时间上升沿的个数,这样就完成了直流电机转速的测量。
图11电机测速电路
5.4数码管显示模块
在这里我采用两块数码管进行显示,一块数码管用来显示外部在最开始输入的电机转速,也就是预设电机转速(如图12),而另一块数码管就是用来显示电机的当前转速,这样我们就会非常直观的观察电机转速的变化(如图13)。
图12数码管显示预设速度电路
图13时时显示电机转速
第六章核心控制算法
根据测速电路的反馈,得知电机的转速。
此转速是与电机两端的电压呈正比,通过比较它与预设转速的大小,我们可以通过PWM控制电平的占空比来调节电机的转速。
占空比越大,速度越快,反之亦然。
为了实现直流电机的转速的自动控制,因此在这里我必须采用PID控制算法。
PID算法是本程序中的核心部分。
采用PID模糊控制技术,通过Pvar、Ivar、Dvar(比例、积分、微分)三方面的结合调整形成一个模糊控制来解决惯性误差问题。
PID算法大致可分为置位式和增量式两种。
两种都用于模糊控制技术。
其原理就是当执行机构需要的不是控制量的绝对值,而是控制量的增量时,需要用PID的“增量算法”。
图14增量式PID控制算法
增量式PID控制算法可以通过
(1)式推导出。
由
(1)可以得到控制器的第k-1个采样时刻的输出值为:
将
(1)与
(2)相减并整理,就可以得到增量式PID控制算法公式为:
(3)
其中
由(3)可以看出,如果计算机控制系统采用恒定的采样周期T,一旦确定A、B、C,只要使用前后三次测量的偏差值,就可以由(3)求出控制量。
增量式PID控制算法与位置式PID算法
(1)相比,计算量小得多,因此在实际中得到广泛的应用。
位置式PID控制算法也可以通过增量式控制算法推出递推计算公式:
(4)
(4)就是目前在计算机控制中广泛应用的数字递推PID控制算法
①比例系数P对系统性能的影响:
比例系数加大,使系统的动作灵敏,速度加快,稳态误差减小;P偏大,振荡次数加多,调节时间加长;P太大时,系统会趋于不稳定;P太小,又会使系统的动作缓慢。
P可以选负数,这主要是由执行机构、传感器以及控制对象的特性决定的。
如果P的符号选择不当对象测量值就会离控制目标的设定值越来越远,如果出现这样的情况P的符号就一定要取反。
②积分控制I对系统性能的影响:
积分作用使系统的稳定性下降,I小(积分作用强)会使系统不稳定,但能消除稳态误差,提高系统的控制精度。
③微分控制D对系统性能的影响:
微分作用可以改善动态特性,D偏大时,超调量较大,调节时间较短;D偏小时,超调量也较大,调节时间也较长;只有D合适,才能使超调量较小,减短调节时间。
第七章软件设计模块
7.1总的程序流程图
7.2PWM波软件设计
程序流程图:
通过控制总中断使能EA控制电机的开关,同时使能对红外对接头输出的方波在单位时间内脉冲个数的计数。
其中定时器T0,T1分别对脉冲的宽度、红外对接头输出的脉冲数对应的1秒时间定时。
对脉冲宽度的调整是通过改变高电平的定时长度,由变量high控制。
变量swap、sub_speed、add_speed分别实现电机的转向、加速、减速。
/***********通过按键实现对电机开关、调速、转向的控制的程序*****************/
voidmotor_control()
{
if(open==1)
EA=1;
if(close==1)
EA=0;
if(swap==1)
{
change=~change;
while(swap!
=0)
{}
}
if(sub_speed==1)
{high++;
if(high==30)
EA=0;
while(sub_speed!
=0)
{}
}
if(add_speed==1)
{high--;
if(high==5)
high=5;
while(add_speed!
=0)
{}
}
}
7.3测速软件设计
图12软件测速的方框图
/****T1中断服务程序********单位时间(S)方波的个数*************/
voidtime1_int(void)interrupt3
{count_speed++;
if(count_speed==20)
{count_speed=0;
num_display=num_medium;
num_medium=0;
}
}
7.4PID控制流程
PID控制程序:
#ifndef_PID_H
#define_PID_H
typedefstruct
{
doubleSetPoint;/*设定目标DesiredValue*/
doubleProportion;/*比例常数ProportionalConst*/
doubleIntegral;/*积分常数IntegralConst*/
doubleDerivative;/*微分常数DerivativeConst*/
doubleLastError;/*前一项误差*/
doublePrevError;/*前第二项误差*/
doubleSumError;/*总误差*/
}PID;
/***************************************************************************
PID计算部分
***************************************************************************/
doublePIDCalc(PID*pp,doubleNextPoint)
{
doubledError,Error;
Error=pp->SetPoint-NextPoint;/*计算当前偏差*/