基于单片机的直流电机调速系统设计.docx
《基于单片机的直流电机调速系统设计.docx》由会员分享,可在线阅读,更多相关《基于单片机的直流电机调速系统设计.docx(23页珍藏版)》请在冰豆网上搜索。
![基于单片机的直流电机调速系统设计.docx](https://file1.bdocx.com/fileroot1/2022-12/16/74093f92-010b-4720-9d77-2acdf06a26b9/74093f92-010b-4720-9d77-2acdf06a26b91.gif)
基于单片机的直流电机调速系统设计
科技创新实践设计报告
题目:
基于单片机的直流电机调速系统设计
学院:
专业班级:
学号:
姓名:
指导教师:
设计地点:
设计时间:
摘要
在许多工业部门,例如大型轧钢设备、大型精密机床、矿井卷扬机、市内电车、电缆设备要求严格线速度一致的地方等,通常都采用直流电动机作为原动机来拖动工作机械的。
当前直流调速已发展到一个很高的技术水平:
功率元件采用可控硅;控制板采用表面安装技术;控制方式采用电源换相、相位控制[1]。
特别是采用了微处理器及其他先进电力电子技术,使数字式直流调速装置在精度的准确性、控制性能的优良性和抗干扰的性能有很大的提高和发展,在国内外得到广泛的应用。
数字化直流调速装置作为目前最新控制水平的传动方式显示了强大优势。
全数字化直流调速系统不断升级换代,为工程应用和工业生产提供了优越的条件。
采用微处理器控制,使整个调速系统的数字化程度,智能化程度有很大改观;采用微处理器控制,使调速系统在结构上简单化,可靠性提高,操作维护变得简捷,电机稳态运行时转速精度等方面达到较高水平。
由于微处理器具有较佳的性价比,所以微处理器在工业过程及设备控制中得到日益广泛的应用。
近年来,尽管交流调速系统发展很快,但是直流电机凭借其良好的启动、制动性能,在金属切削机床、轧钢机、海洋钻机、挖掘机、造纸机、矿井卷扬机、电镀、高层电梯等需要广泛范围内平滑调速的高性能可控电力拖动领域中仍得到了广泛的应用。
关键词:
单片机、微处理器、调速、直流电机
附录2……………………………………………………………………………………………30
1引言
早期直流传动的控制系统采用模拟分离器件构成,由于模拟器件有其固有的缺点,如存在温漂、零漂电压,构成系统的器件较多,使得模拟直流传动系统的控制精度及可靠性较低。
随着计算机控制技术的发展,微处理器已经广泛使用于直流传动系统,实现了全数字化控制。
由于微处理器以数字信号工作,控制手段灵活方便,抗干扰能力强。
所以,全数字直流调速控制精度、可靠性和稳定性比模拟直流调速系统大大提高。
所以,直流传动控制采用微处理器实现全数字化,使直流调速系统进入一个崭新的阶段。
微处理器诞生于上个世纪七十年代,随着集成电路大规模及超大规模集成电路制造工艺的迅速发展,微处理器的性价比越来越高。
此外,由于电力电子技术的发展,制作工艺的提升,使得大功率电子器件的性能迅速提高。
为微处理器普遍用于控制电机提供了可能,利用微处理器控制电机完成各种新颖的、高性能的控制策略,使电机的各种潜在能力得到充分的发挥,使电机的性能更符合工业生产使用要求,还促进了电机生产商研发出各种如步进电机、无刷直流电机、开关磁阻电动机等便于控制且实用的新型电机,使电机的发展出现了新的变化。
对于简单的微处理器控制电机,只需利用用微处理器控制继电器、电子开关元器件,使电路开通或关断就可实现对电机的控制。
现在带微处理器的可编程控制器,已经在各种的机床设备和各种的生产流水线中普遍得到应用,通过对可编程控制器进行编程就可以实现对电机的规律化控制。
对于复杂的微处理器控制电机,则要利用微处理器控制电机的电压、电流、转矩、转速、转角等,使电机按给定的指令准确工作。
通过微处理器控制,可使电机的性能有很大的提高。
目前相比直流电机和交流电机他们各有所长,如直流电机调速性能好,但带有机械换向器,有机械磨损及换向火花等问题;交流电机,不论是异步电机还是同步电机,结构都比直流电机简单,工作也比直流电机可靠,但在频率恒定的电网上运行时,它们的速度不能方便而经济地调节[2]。
高性能的微处理器如DSP(DIGITALSIGNALPROCESSOR即数字信号处理器)的出现,为采用新的控制理论和控制策略提供了良好的物质基础,使电机传动的自动化程度大为提高。
在先进的数控机床等数控位置伺服系统,已经采用了如DSP等的高速微处理器,其执行速度可达数百万兆以上每秒,且具有适合的矩阵运算。
2总体方案设计
2.1硬件方案论证
要控制直流电机转速,硬件电路要求比较高,它决定直流电机调速的精度。
采用PID控制器,因此需要设计一个闭环直流电机控制系统。
该系统采用脉宽调速,使电机速度等于设定值,并且实时显示电极的转速值。
通过对设计功能分解,设计方案论证可以分为:
系统结构方案论证,速度测量方案论证,电机驱动方案论证,键盘显示方案论证,PWM软件实现方案论证。
2.1.1微处理器的选择
方案一:
采用一片单片机(AT89S52)完成系统所有测量、控制运算,并输出PWM控制信号。
方案二:
采用两片单片机(AT89S52),其中一片做成PID控制器,专门进行PID运算和PWM控制信号输出;另一片则系统主芯片,完成电机速度的键盘设定、测量、显示,并向PID控制器提供设定值和测量值,设定PID控制器的控制速度等。
方案一的优点是系统硬件简单,结构紧凑。
但是其造成CPU资源紧张,程序的多任务处理难度增大,不利与提高和扩展系统性能,也不利于向其他系统移植。
方案二则与方案一相反,虽然硬件增加,但在程序设计上有充分的自由去改善速度测量精度,缩短测量周期,优化键盘,显示及扩展其它功能。
与此同时,PID控制算法的实现可以精益求精,对程序算法或参数稍加改动即可移植到其他PID控制系统中。
因此通过比较,选择方案二。
2.1.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.1.3键盘显示方案论证
方案一:
采用4×4键盘,可直接输入设定值。
显示部分使用4位数码管,优点是显示亮度大,缺点是功耗大,不符合智能化趋势而且不美观。
方案二:
使用4个按键,进行逐位设置。
显示部分是使用支持中文显示的LCD,优点是美观大方,有利于人与系统的交互,及显示内容的扩展;缺点是成本高,抗干扰能力较差。
为了系统容易扩展、操作以及美观,本设计完全采用方案二。
2.1.4电机驱动方案论证
方案一:
采用专用小型直流电机驱动芯片。
这个方案的优点是驱动电路简单,几乎不添加其它外围元件就可以实现稳定的控制,使得驱动电路功耗相对较小,而且目前市场上此类芯片种类齐全,价格也比较便宜。
方案二:
采用继电器对电动机的开或关进行控制,通过开关的切换对电机的速度进行调整。
这个方案的优点是电路较为简单,缺点是继电器的响应时间慢、机械结构易损坏、寿命较短、可靠性不高。
方案三:
采用由达林顿管组成的H型PWM电路。
用单片机控制达林顿管使之工作在占空比可调的开关状态,精确调整电动机转速。
这种电路由于工作在管子的饱和截止模式下,效率非常高;H型电路保证了可以简单地实现转速和方向的控制;电子开关的速度很快,稳定性也极佳,是一种广泛采用的PWM调速技术。
通过比较和对市场因素的考虑,本设计采用方案一,使系统的设计核心在PID控制上。
2.1.5输入输出通道
由于选用了霍尔式传感器,故输入的信号经调理放大后直接是脉冲信号,无需经过A/D转换就可以输入到单片机中。
由于采用PWM控制直流电机的电枢电压,故单片机的输出经放大驱动电路就可以直接控制电机的电枢电压,以此来控制电机的转速。
2.1.6PWM实现方案论证
PWM信号的产生通常有两种方法:
一种是软件的方法;另一种是硬件的方法。
方案一:
基于NE555,SG3525等一系列的脉宽调速系统:
此种方式采用NE555作为控制电路的核心,用于产生控制信号。
NE555产生的信号要通过功率放大才能驱动后级电路。
NE555、SG3525构成的控制电路较为复杂,且智能化、自动化水平较低,在工业生产中不利于推广和应用。
方案二:
基于单片机类由软件来实现PWM:
在PWM调速系统中占空比D是一个重要参数在电源电压
不变的情况下,电枢端电压的平均值取决于占空比D的大小,改变D的值可以改变电枢端电压的平均值从而达到调速的目的。
改变占空比D的值有三种方法:
A、定宽调频法:
保持
不变,只改变t,这样使周期(或频率)也随之改变。
(图2-1)
B、调宽调频法:
保持t不变,只改变
,这样使周期(或频率)也随之改变。
(图2-1)
C、定频调宽法:
保持周期T(或频率)不变,同时改变
和t。
(图2-1)
图2-1电枢电压占空比图
前两种方法在调速时改变了控制脉冲的周期(或频率),当控制脉冲的频率与系统的固有频率接近时,将会引起振荡,因此常采用定频调宽法来改变占空比从而改变直流电动机电枢两端电压。
利用单片机的定时计数器外加软件延时等方式来实现脉宽的自由调整,此种方式可简化硬件电路,操作性强等优点。
所以选方案二,采用定频调宽法。
2.2系统原理框图设计
系统原理框图如图2.1所示,是一个带键盘输入和显示的闭环测量控制系统。
主体思想是通过系统设定信息和测量反馈信息计算输出控制信息。
图2.1系统原理框图
3系统单元电路的设计
本设计因为输入的为脉冲信号、输出的是PWM信号,故无需A/D、D/A转换就可以直接进行工作。
3.1速度测量电路的设计
3.1.1转速/频率转换电路的设计
理论上,是先将转速转化为某一种电量来测量,如电压,电流等。
设计中将转速测量转化为电脉冲频率的测量。
基于这一思想,三极管输出型红外光电耦合器。
如图3.1所示,在电机转轮一处开孔,这样,每转一圈,三级管(红外接收头)透光导通一次,OUT端输出一个上脉冲,即完成了转速/频率的转换。
图3.1转速/频率转化电路
3.1.2脉冲滤波整形电路的设计
由于电机在转动的过程中有很大的晃动,而且本设计中测量装置做工粗糙,因此所获得的脉冲信号参杂有高频噪声或误动脉冲。
为了提高测量的准确,且尽可能地减少错误,设计中如图3.2所示OUT输出端加一电容接地。
为了既能抑制噪声又不影响测量,电容值C的选择很重要。
根据实际测量,设计中所使用的直流电机转速可达6000转/分。
其所产生的脉冲周期T=1/(6000/60)S=0.01S,一个周期内,脉冲持续时间约为1/8T=0.00125S,低电平时间约为7/8T=0.00875S,由于接收头感光导通电阻很小,所以电容迅速充电,当低电平到来时开始放电,为保证下一个脉冲的检测,放电时间t应小于低电平持续时间7/8T,根据电路,t=R2×C<0.00875,代入R2值解不等式可得:
C<0.000017F。
单位换算得C<0.017μF,为了方便整形,实际设计中C=0.001μF。
由于单片机中断I/O口的需要输入信号是正规的矩形脉冲,所以电路的脉冲整形电路采用74系列反向器74LS06进行两次反向后输入单片机。
图3.2脉冲滤波整形电路
3.2电机驱动电路的设计
本设计采用目前市场上较容易买到的L298N直流或步进电机驱动芯片,它采用单片集成塑装,是一个高电压、大电流全双桥驱动器,由标准的TTL电平控制。
L298N支持50V以内的电机控制电压,在直流运转条件下,可以通过高达2A的电流,因此它满足了一般小型电机的控制要求。
接法见图3.3,图中二极管的作用是消除电机的反向电动势,保护电路,因此采用整流二极管比较合适。
PWM控制信号由in1、in2输入。
如果in1为高电平,in2为低电平时电机为正向转速,反之in1为低电平,in2为高电平时,电机为反向转速。
本设计将in2直接接地,即采用单向制动的方式。
图3.3电机驱动电路
3.3LCD显示电路和键盘与单片机的接口设计
设计中采用的LCD——RT12232F是一种内置8192个16*16点汉字库和128个16*8点ASCII字符集图形点阵液晶显示器,它主要由行驱动器/列驱动器及128×32全点阵液晶显示器组成。
可完成图形显示,也可以显示7.5×2个(16×16点阵)汉字,与外部CPU接口采用并行或串行方式控制。
本设计采用并行方式控制,LCD与单片机的通讯接口电路如图3.4所示采用直连的方法,这样设计的优点是在不影响性能的条件下还不用添加其它硬件,简化了电路,降低了成本。
图3.4LCD显示电路与单片机的接口
本设计采用四个键作为键盘,分别为选择、加、减、确定。
它们分别与P0.4、P0.5、P0.6、P0.7接口相连。
作为设置速度的输入。
图3.5键盘电路
3.4两单片机的互连
本设计采用两片单片机(AT89S52),其中一片做成PID控制器,专门进行PID运算和PWM控制信号输出;另一片则系统主芯片,完成电机速度的键盘设定、测量、显示,并向PID控制器提供设定值和测量值,设定PID控制器的控制速度等。
它们的接线图如图3.6。
图3.6两单片机互联图
本设计使用异步串口通信,直接把两个单片机的TXD和RXD两个引脚交叉相连接,两者都以中断接收串口数据。
省I/O口省代码。
也就是A的TXD(P3.1)和B的RXD(P3.0)连接,A的RXD和B的TXD连接。
4系统软件设计
4.1系统总程序框图设计
系统程序程序框图如图4.1和4.2所示。
图4.1系统主单片机总程序框图
图4.2系统从单片机(PID控制器)程序框图
当系统被启动后,主从单片机初始化。
主单片机检测是否有键按下,再执行键子程序,将输入的值传送到PID控制器,PID控制器经PID计算处理,再计算出PWM的定时值,PID再送出相应的PWM信号,驱动电机转动,主单片机将传感器输入的信号进行计算,再将得出的值输出到PID控制器,PID控制器经计算输出相应的PWM信号控制电机转速趋于设定的转速。
依次循环使电机趋于稳定值。
4.2电机转速测量程序设计
设计中考虑到电机的工作环境一般比较恶劣,因此除了硬件外,从程序上除了要更高的精确度也需要进行更多的抗干扰设计,从而实现软件的大范围检错、纠错或丢弃错误等。
在程序的设计过程中,对严重不符合要求的测量数据(如大于6000转对应的数据)进行了丢弃处理,而对于正常范围内的数据错误采用了采5取3求平均的算法(即采集5个数据,去掉一个最大值一个最小值,然后将剩余3数据求平均)。
实验表明,此方法降低了系统采集转速中出现的错误。
对于转速的测量方法,是通过速度脉冲信号下降沿触发单片机的外中断,中断服务子程序在某一个脉冲的下降沿开启定时器记时,然后在下一个下降沿关闭定时器,通过对定时器数据进行运算处理可以得到信号周期进而得到速度值。
其程序框图如图5.1。
可以看出,此方法下的采样周期是随转速变化的,转速越高采样越快。
通过这种非均匀的速度采样方式可以使电机在高速情况下,实现高速度高精度的控制。
图4.3外中断程序框图
4.3键盘程序设计
键盘程序设计的任务是赋予各按键相应的功能,完成速度设定值的输入和向PID控制器的发送。
4只按键一只用来位循环选择,告诉单片机要调整的是设定值的个位、十位、百位还是千位。
第二、三只按键分别是减1、加1减。
在没有位选择的情况下对设定值整体进行减1、加1;在有位选择的情况下仅对相应位进行减1、加1,并且当按着不释放按键时可以实现快速连续减1、加1,同时允许循环减、加(既当某位为0时,在减1则为9,某位为9时,加1则为0)。
最后一只按键是确认发送键,按下它后,单片机将设定值送给PID控制器,从而实现设定控制。
程序框图如图4.4。
图4.4键盘程序框图
4.4LCD显示子程序的设计
LCD的详细使用过程可参阅对应型号的使用手册。
仅在本小节强调以下内容:
LCD使用的关键是根据显示需要正确地对其进行初始化设置,而一般情况下不用考虑如何向它读写指令或数据,因为制造厂商所给的使用资料里就附有驱动程序,如果没有也可以从网上搜索下载得到。
然而我们必须清楚那些初始化设置之间的关系,以及它是如何利用设置读取、显示数据字符的,不然就会发生一些不可预料的错误,例如表5.3所示。
因此,熟读LCD驱动芯片使用手册也是一个关键环节。
LCD中文字型的编码写入地址对照
在RT12232F中,CGRAM字型与中文字型的编码只可出现在每一AddressCounter的开始位置,图表中最后一行为错误的填入中文码位置,其结果会产生乱码象。
80
81
82
83
84
85
86
87
88
89
H
L
H
L
H
L
H
L
H
L
H
L
H
L
H
L
H
L
H
L
S
H
A
A
N
X
I
.
.
L
I
G
O
N
G
X
U
E
.
.
陕
西
理
.
.
物
理
系
0
2
电
.
陕
西
理
.
.
.
物
理
系
0
2
电
.
通常LCD的初始化包括复位设置、清除显示、地址归位、显示开关、游标设置、读写地址设置、反白选择以及睡眠模式等等。
实际中根据需要,正确、灵活地修改这些设置可以达到较为满意的显示效果。
LCD中所有汉字、数字和字符都可以通过它的ASCII码来访问显示;图象的显示是通过将相关软件(提取汉字、图象点阵数据程序)产生的数据按照LCD手册的要求完成响应设置后写入即可。
由于本设计中没有使用到图形显示,所以没有详述。
对于系统使用的汉字、字符和数据的LCD显示初始化程序和写数据程序框图见图4.5。
图4.5LCD显示初始化程序和写数据程序框图
4.5PWM信号的单片机程序实现
理论上,只要PWM脉冲的周期正比于PID控制算法的输出结果结果。
具体实现过程中,取u(k)的整数部分(记为:
UT)保存,然后用PWM信号的周期值减去UT所得值即为定时器1的初值(记为:
INIT)。
其程序框图见图6.1。
图6.1:
产生PWM控制信号程序框图
5数字PID及其算法的改进
5.1PID控制基本原理
PID控制即比例(Proportional)、积分(Integrating)、微分(Differentiation)控制。
在PID控制系统中,完成PID控制规律的部分称为PID控制器。
它是一种线形控制器,用输出y(t)和给定量r(t)之间的误差的时间函数e(t)=r(t)-y(t).PID控制器框图如图5.1。
实际应用中,可以根据受控对象的特性和控制的性能要求,灵活地采用不同的控制组合,如:
5.1PID控制算法框图
比例(P)控制器:
比例+积分(PI)控制器:
比例+积分+微分(PID)控制器:
式中,Kp为比例运算放大系数,Ti为积分时间,Td为微分时间。
5.2三个基本参数Kp,Ti,Td在实际控制中的作用研究
通过使用MATLAB软件中SIMULINK的系统仿真功能对PID算法进行仿真,现将结果作以下概括。
比例调节作用:
是按比例反映系统的偏差,系统一旦出现了偏差,比例调节立即产生调节作用用以减少偏差,属于“即时”型调节控制。
比例作用大,可以加快调节,减少误差,但是过大的比例,使系统的稳定性下降甚至造成系统的不稳定。
积分调节作用:
使系统消除静态误差,提高无误差度。
因为有误差,积分调节就进行,直至无误差,积分调节停止,积分调节输出一常值,属于“历史积累”型调节控制。
积分作用的强弱取决与积分时间常数Ti,Ti越小,积分作用就越强。
反之Ti大则积分作用弱,加入积分调节可使系统稳定性下降,动态响应变慢。
积分作用常与另两种调节规律结合,组成PI调节器或PID调节器。
微分调节作用:
微分作用反映系统偏差信号的变化率,具有预见性,能预见偏差的变化趋势,因此能产生超前的控制作用,在偏差还没有形成之前,以被微分调节作用消除,因此属于“超前或未来”型调节控制。
因此,可以改善系统的动态性能。
在微分时间选择合适的情况下,可以减少超调,减少调节时间。
微分作用对噪声干扰有放大作用,因此过强的加微分调节,对系统抗干扰不利。
此外,微分反映的是变化率,而当输入没有变化时,微分作用输出为零。
微分作用不能单独使用,需要与另外两种调节规律相结合,组成PD或PID控制器。
5.3数字PID控制算法
在单片机数字控制系统中,PID控制算法是通过单片机程序来实现的。
对于数字信号处理,不论是积分还是微分,只能用数值计算去逼近。
当采样周期相当短时,用求和代替积分,用差商来代替微商,使PID算法离散化,将描述连续时间PID算法的微积分方程,变为描述离散时间PID算法的差分方程。
其算法变换如下。
控制量:
比例→比例:
积分→求和:
微分→差商:
式中,
为比例系数,
为积分系数,
为微分系数。
T为采样周期。
上式PID算法为非递推形式,称为全量算法。
为了求和,必须将系统偏差的全部过去值e(j)(j=0,1,2……)值都存储起来。
这种算法得出了控制量的全量输出u(k),是控制量的绝对数值。
在控制系统中,这种控制量决定了执行机构的的位置,比如,在本设计电机控制系统中,这种算法的输出对应了相应的速度值。
因此,人们将这种算法称为“位置PID算法”。
除了“位置PID算法”以外,常见的还有增量式PID控制算法。
当执行机构需要的不是控制量的绝对值,而是控制量的增量(例如去驱动步进电动机)时,需要用PID“增量算法”。
此算法可由“位置PID算法”求出。
综合两种算法,本设计是产生一个PWM信号去控制直流电机,PWM信号的高电平持续时间对应的控制量是一个绝对值,而不是一个控制量的增量。
但是如果采用“位置PID算法”则需要考虑控制量的基值u0,即Kp=0时的控制量,而直接用增量式PID算法只能计算出控制量的增量。
所以,设计中,先采用增量式控制控制算法计算出控制量的增量,然后加上上一次的控制量即可以得到本次的控制量,本系统的PID算法是以增量式算法实现“位置PID算法”的结果,使控制得到简化、容易实现。
5.4PID算法的改进,“饱和”作用的抑制
抑制PID算法的“饱和”作用,通常有两种方法。
一种算法是遇限削弱积分法,其基本思想是:
一旦控制变量进入饱和区,将只执行削弱积分项的运算而停止进行增大积分项的运算。
具体地说,在计算u(k)时,将判断上一时刻的控制量u(k)是否已超出限制范围,如果已超出,那么将根据偏差的符号,判断系统输出是否在超调区域,由此决定是否将相应偏差计入积分项。
另一种算法是积分分离