毕业设计(论文)基于单片机的直流电机智能调速系统设计.doc

上传人:文库蛋蛋多 文档编号:3980995 上传时间:2023-03-30 格式:DOC 页数:29 大小:349.50KB
返回 下载 相关 举报
毕业设计(论文)基于单片机的直流电机智能调速系统设计.doc_第1页
第1页 / 共29页
毕业设计(论文)基于单片机的直流电机智能调速系统设计.doc_第2页
第2页 / 共29页
毕业设计(论文)基于单片机的直流电机智能调速系统设计.doc_第3页
第3页 / 共29页
毕业设计(论文)基于单片机的直流电机智能调速系统设计.doc_第4页
第4页 / 共29页
毕业设计(论文)基于单片机的直流电机智能调速系统设计.doc_第5页
第5页 / 共29页
点击查看更多>>
资源描述

《毕业设计(论文)基于单片机的直流电机智能调速系统设计.doc》由会员分享,可在线阅读,更多相关《毕业设计(论文)基于单片机的直流电机智能调速系统设计.doc(29页珍藏版)》请在三一办公上搜索。

1、 基于单片机的直流电机智能调速系统设计 作 者 姓 名 * 专 业 测控技术与仪器08-1 指导教师姓名 * 专业技术职务 目 录 摘 要2Abstract31 引言42 总体方案设计52.1 硬件方案论证52.1.2 测速传感器的选择52.1.3键盘显示方案论证62.1.4电机驱动方案论证62.1.5输入输出通道72.1.6 PWM实现方案论证72.2系统原理框图设计83.1速度测量电路的设计83.1.1转速/频率转换电路的设计83.1.2脉冲滤波整形电路的设计93.2 电机驱动电路的设计93.3 LCD显示电路和键盘与单片机的接口设计104 系统软件设计114.1 系统总程序框图设计114

2、.2 电机转速测量程序设计144.3键盘程序设计164.4 LCD显示子程序的设计174.5 PWM信号的单片机程序实现185 数字PID及其算法的改进195.1 PID控制基本原理195.3数字PID控制算法205.4 PID算法的改进215.5 PID控制算法的单片机程序实现22总结24参考文献25附 录26附录126附录229 摘 要 本文主要研究了利用MCS-51系列单片机控制PWM信号从而实现对直流电机转速进行控制的方法。文章中采用了专门的芯片组成了PWM信号的发生系统并且对PWM信号的原理、产生方法以及如何通过软件编程对PWM信号占空比进行调节从而控制其输入信号波形等均作了详细的阐

3、述。此外本文中还采用了芯片L298N作为直流电机正转调速功率放大电路的驱动模块并且把它与延时电路相结合完成了在主电路中对直流电机的控制。另外本系统中使用了红外传感器对直流电机的转速进行测量后将测量值送到A/D转换器并且最终作为反馈值输入到单片机进行PID运算从而实现了对直流电机速度的控制。文章中详细介绍了PID运算程序初始化程序等的编写思路和具体的程序实现。 关键词: PWM信号 红外传感器 PID运算 Abstract This article mainly introduces the method to generate the PWM signal by using MCS-51 si

4、ngle-chip computer to control the speed of a D.C. motor. It also clarifies the principles of PWM and the way to adjust the duty cycle of PWM signal. In addition, L298N has been used as an actuating device of the power amplifier circuit which controls the speed of rotation of D.C. motor. Whats more,

5、infrared sensor is used in this system to measure the speed of D.C. motor. The result of the measurement is sent to A/D converter after passing the filtering circuit, and finally the feedback single is stored in the single-chip computer and participates in a PID calculation. As for the software, thi

6、s article introduces in detail the idea of the programming and how to make it.Key words: PWM signal; infrared sensor;PID calculation 1 引言 早期直流传动的控制系统采用模拟分离器件构成,由于模拟器件有其固有的缺点,如存在温漂、零漂电压,构成系统的器件较多,使得模拟直流传动系统的控制精度及可靠性较低。随着计算机控制技术的发展,微处理器已经广泛使用于直流传动系统,实现了全数字化控制。由于微处理器以数字信号工作,控制手段灵活方便,抗干扰能力强。所以,全数字直流调速控制

7、精度、可靠性和稳定性比模拟直流调速系统大大提高。所以,直流传动控制采用微处理器实现全数字化,使直流调速系统进入一个崭新的阶段。 微处理器诞生于上个世纪七十年代,随着集成电路大规模及超大规模集成电路制造工艺的迅速发展,微处理器的性价比越来越高。此外,由于电力电子技术的发展,制作工艺的提升,使得大功率电子器件的性能迅速提高。为微处理器普遍用于控制电机提供了可能,利用微处理器控制电机完成各种新颖的、高性能的控制策略,使电机的各种潜在能力得到充分的发挥,使电机的性能更符合工业生产使用要求,还促进了电机生产商研发出各种如步进电机、无刷直流电机、开关磁阻电动机等便于控制且实用的新型电机,使电机的发展出现了

8、新的变化。 对于简单的微处理器控制电机,只需利用用微处理器控制继电器、电子开关元器件,使电路开通或关断就可实现对电机的控制。现在带微处理器的可编程控制器,已经在各种的机床设备和各种的生产流水线中普遍得到应用,通过对可编程控制器进行编程就可以实现对电机的规律化控制。对于复杂的微处理器控制电机,则要利用微处理器控制电机的电压、电流、转矩、转速、转角等,使电机按给定的指令准确工作。通过微处理器控制,可使电机的性能有很大的提高。目前相比直流电机和交流电机他们各有所长,如直流电机调速性能好,但带有机械换向器,有机械磨损及换向火花等问题;交流电机,不论是异步电机还是同步电机,结构都比直流电机简单,工作也比

9、直流电机可靠,但在频率恒定的电网上运行时,它们的速度不能方便而经济地调节2。高性能的微处理器如DSP (DIGITAL SIGNAL PROCESSOR即数字信号处理器)的出现,为采用新的控制理论和控制策略提供了良好的物质基础,使电机传动的自动化程度大为提高。在先进的数控机床等数控位置伺服系统,已经采用了如DSP等的高速理器,其执行速度可达数百万兆以上每秒,且具有适合的矩阵运算。2 总体方案设计 2.1 硬件方案论证 要控制直流电机转速,硬件电路要求比较高,它决定直流电机调速的精度。采用PID控制器,因此需要设计一个闭环直流电机控制系统。该系统采用脉宽调速,使电机速度等于设定值,并且实时显示电

10、极的转速值。通过对设计功能分解,设计方案论证可以分为:系统结构方案论证,速度测量方案论证,电机驱动方案论证,键盘显示方案论证,PWM软件实现方案论证。2.1.1 微处理器的选择 方案一:采用一片单片机(AT89S52)完成系统所有测量、控制运算,并输出PWM控制信号。 方案二:采用两片单片机(AT89S52),其中一片做成PID控制器,专门进行PID运算和PWM控制信号输出;另一片则系统主芯片,完成电机速度的键盘设定、测量、显示,并向PID控制器提供设定值和测量值,设定PID控制器的控制速度等。 方案一的优点是系统硬件简单,结构紧凑。但是其造成CPU资源紧张,程序的多任务处理难度增大,不利与提

11、高和扩展系统性能,也不利于向其他系统移植。 考虑到设计时的简单程度与结构的紧凑,选择方案二。 2.1.2 测速传感器的选择 方案一:使用测速发电机,输出电动势E和转速n成线性关系,即E=kn,其中k是常数。改变旋转方向时,输出电动极性即相应改变。 方案二:采用霍尔传感器,霍尔元件是磁敏元件,在被测的旋转体上装一磁体,旋转时,每当磁体经过霍尔元件,霍尔元件就发出一个信号,经放大整形得到脉冲信号,送运算。 方案三:在电机的转轴端开一小洞,利用红外光电耦合器,每转半圈OUT端输出一个上脉冲。 经比较,方案一中的测速放电机安装不如方案二中霍尔元件安装方便,并且准确率也没方案二的高,并且方案二不需A/D

12、转换,直接可以被单片机接收。但方案二的霍尔传感器的采购不是很方便,故采用方案三,它具有方案二的几乎所有的优点。方案三中可以采用记数的方法:具体是通过单片机记单位时间S(秒)内的脉冲数N,每分钟的转速:M=N/S60。也可以采用定时的方法:是通过定时器记录脉冲的周期T,这样每分钟的转速:M=60/T。 比较两个计数方法,方法一的误差主要是1误差(量化误差),设电机的最低设计转速为120转/分,则记数时间S=1s,所以其误差得绝对值|=|(N1)/S60-N/S60|=60(转/分),误差计算公式表明,增大记数时间可以提高测量精度,但这样做却增大了速度采样周期,会降低系统控制灵敏度。而方法二所产生

13、的误差主要是标准误差,并且使采样时间降到最短,误差=60/(T1)-60/T,设电机速度在1206000转/分之间,那么0.01sT0.5s,代入公式得:0.00024|0.6(转/分)。由此明显看出,方法二在测量精度及提高系统控制灵敏度等方面优于方法一,所以采用方法二计数。故选方案三。 2.1.3键盘显示方案论证 方案一:采用44键盘,可直接输入设定值。显示部分使用4位数码管,优点是显示亮度大,缺点是功耗大,不符合智能化趋势而且不美观。 方案二:使用4个按键,进行逐位设置。显示部分是使用支持中文显示的LCD,优点是美观大方,有利于人与系统的交互,及显示内容的扩展;缺点是成本高,抗干扰能力较差

14、。 为了系统容易扩展、操作以及美观,本设计完全采用方案二。2.1.4电机驱动方案论证 方案一:采用专用小型直流电机驱动芯片。这个方案的优点是驱动电路简单,几乎不添加其它外围元件就可以实现稳定的控制,使得驱动电路功耗相对较小,而且目前市场上此类芯片种类齐全,价格也比较便宜。 方案二:采用继电器对电动机的开或关进行控制,通过开关的切换对电机的速度进行调整。这个方案的优点是电路较为简单,缺点是继电器的响应时间慢、机械结构易损坏、寿命较短、可靠性不高。 方案三:采用由达林顿管组成的H型PWM电路。用单片机控制达林顿管使之工作在占空比可调的开关状态,精确调整电动机转速。这种电路由于工作在管子的饱和截止模

15、式下,效率非常高;H型电路保证了可以简单地实现转速和方向的控制;电子开关的速度很快,稳定性也极佳,是一种广泛采用的PWM调速技术。 通过比较和对市场因素的考虑,本设计采用方案一,使系统的设计核心在PID控制上。 2.1.5输入输出通道 由于选用了霍尔式传感器,故输入的信号经调理放大后直接是脉冲信号,无需经过A/D转换就可以输入到单片机中。由于采用PWM控制直流电机的电枢电压,故单片机的输出经放大驱动电路就可以直接控制电机的电枢电压,以此来控制电机的转速。 2.1.6 PWM实现方案论证 PWM信号的产生通常有两种方法:一种是软件的方法;另一种是硬件的方法。 方案一:基于NE555,SG3525

16、等一系列的脉宽调速系统:此种方式采用NE555作为控制电路的核心,用于产生控制信号。NE555产生的信号要通过功率放大才能驱动后级电路。NE555、SG3525构成的控制电路较为复杂,且智能化、自动化水平较低,在工业生产中不利于推广和应用。 方案二:基于单片机类由软件来实现PWM:在PWM调速系统中占空比D是一个重要参数在电源电压dU不变的情况下,电枢端电压的平均值取决于占空比D的大小,改变D的值可以改变电枢端电压的平均值从而达到调速的目的。改变占空比D的值有三种方法: A、定宽调频法:保持1t不变,只改变2t,这样使周期(或频率)也随之改变。(图2-1) B、调宽调频法:保持2t不变,只改变

17、1t,这样使周期(或频率)也随之改变。(图2-1) C、定频调宽法:保持周期T(或频率)不变,同时改变1t和2t。(图2-1) 1t 2t T 图2-1电枢电压占空比图前两种方法在调速时改变了控制脉冲的周期(或频率),当控制脉冲的频率与系统的固有频率接近时,将会引起振荡,因此常采用定频调宽法来改变占空比从而改变直流电动机电枢两端电压。利用单片机的定时计数器外加软件延时等方式来实现脉宽的自由调整,此种方式可简化硬件电路,操作性强等优点。所以选方案二,采用定频调宽法。 2.2系统原理框图设计 显示器 单片机(速度的测量计算,输入设定及系统控制,PWM模拟发生器)速度采集传感器 键盘 电机 电机驱动

18、电路 图2.1系统原理图 系统原理框图如图2.1所示,是一个带键盘输入和显示的闭环测量控制系统。主体思想是通过系统设定信息和测量反馈信息计算输出控制信息。 3 系统硬件电路的设计 本设计因为输入的为脉冲信号、输出的是PWM信号,故无需A/D、D/A转换就可以直接进行工作。 3.1速度测量电路的设计3.1.1转速/频率转换电路的设计 理论上,是先将转速转化为某一种电量来测量,如电压,电流等。设计中将转速测量转化为电脉冲频率的测量。基于这一思想,三极管输出型红外光电耦合器。如图3.1所示,在电机转轮一处开孔,这样,每转一圈,三级管(红外接收头)透光导通一次,OUT端输出一个上脉冲,即完成了转速频率

19、的转换。 图3.1转速/频率转化电路3.1.2脉冲滤波整形电路的设计 由于电机在转动的过程中有很大的晃动,而且本设计中测量装置做工粗糙,因此所获得的脉冲信号参杂有高频噪声或误动脉冲。为了提高测量的准确,且尽可能地减少错误,OUT输出端加一电容接地。为了既能抑制噪声又不影响测量,电容值C的选择很重要。根据实际测量,设计中所使用的直流电机转速可达6000转/分。其所产生的脉冲周期T=1/(6000/60)S=0.01S,一个周期内,脉冲持续时间约为1/8T=0.00125S,低电平时间约为7/8T=0.00875S,由于接收头感光导通电阻很小,所以电容迅速充电,当低电平到来时开始放电,为保证下一个

20、脉冲的检测,放电时间t应小于低电平持续时间7/8T,根据电路, t=R2C0.00875,代入R2值解不等式可得:C0.000017F。单位换算得C0.017F ,为了方便整形,实际设计中C=0.001F 。3.2 电机驱动电路的设计 本设计采用目前市场上较容易买到的L298N直流或步进电机驱动芯片,它采用单片集成塑装,是一个高电压、大电流全双桥驱动器,由标准的TTL电平控制。L298N支持50V以内的电机控制电压,在直流运转条件下,可以通过高达2A的电流,因此它满足了一般小型电机的控制要求。接法见图3.2,图中二极管的用是消除电机的反向电动势,保护电路,因此采用整流二极管比较合适。PWM控制

21、信号由in1、in2输入。如果in1为高电平,in2为低电平时电机为正向转速,反之in1为低电平,in2为高电平时,电机为反向转速。本设计将in2直接接地,即采用单向制动的方式。 图3.2电机驱动电路3.3 LCD显示电路和键盘与单片机的接口设计 采用技术成熟价格便宜的1602液晶显示器做为输出显示。本次设计使用的1602液晶显示器为5V电压驱动,带背光,可显示两行,每行16个字符,不能显示汉字,内置128个字符的ASCII字符集字库只有并行接口,无串行接口。本设计采用并行方式控制,LCD与单片机的通讯接口电路如图3.3所示采用直连的方法,这样设计的优点是在不影响性能的条件下还不用添加其它硬件

22、,简化了电路,降低了成本。 图3.3LCD显示电路与单片机的接口 本设计采用四个键作为键盘,分别为选择、加、减、确定。它们分别与P0.4、P0.5、P0.6、P0.7接口相连。作为设置速度的输入。 图3.4键盘电路 4 系统软件设计4.1 系统总程序框图设计 系统程序程序框图如图4.1和4.2所示。 开始系统初始化显示初始化中断处理 调用按键子程序 定时中断为1定时中断为0外中断为0是否有键按下无系统时间计时,处理测量计算转速 有 键处理子程序发送测量值到处理器发送数据至处理器中断返回 图4.1单片机总程序框图 开始 系统初始化 PID参数初始化查看中断 中断1 中断0接受测量值子程序接受设定

23、值子程序 PID计算处理计算PWM定时值输出PWM信号 图4.2 PID控制器程序框图 当系统被启动后,主从单片机初始化。主单片机检测是否有键按下,再执行键子程序,将输入的值传送到PID控制器,PID控制器经PID计算处理,再计算出PWM的定时值,PID再送出相应的PWM信号,驱动电机转动,单片机将传感器输入的信号进行计算,再将得出的值输出到PID控制器,PID控制器经计算输出相应的PWM信号控制电机转速趋于设定的转速。依次循环使电机趋于稳定值。4.2 电机转速测量程序设计 设计中考虑到电机的工作环境一般比较恶劣,因此除了硬件外,从程序上除了要更高的精确度也需要进行更多的抗干扰设计,从而实现软

24、件的大范围检错、纠错或丢弃错误等。在程序的设计过程中,对严重不符合要求的测量数据(如大于6000转对应的数据)进行了丢弃处理,而对于正常范围内的数据错误采用了采5取3求平均的算法(即采集5个数据,去掉 一个最大值一个最小值,然后将剩余3数据求平均)。实验表明,此方法降低了系统采集转速中出现的错误。对于转速的测量方法,是通过速度脉冲信号下降沿触发单片机的外中断,中断服务子程序在某一个脉冲的下降沿开启定时器记时,然后在下一个下降沿关闭定时器,通过对定时器数据进行运算处理可以得到信号周期进而得到速度值。其程序框图如图5.1。可以看出,此方法下的采样周期是随转速变化的,转速越高采样越快。通过这种非均匀

25、的速度采样方式可以使电机在高速情况下,实现高速度高精度的控制。 进入中断检测中断标志 为“0” 为“1”关闭定时器及总中断判断数据是否正常开定时器计时 否 是否采5处理社中断标志为1 是 否系统时间初始化 是 保存数据发送到PID控制器完成5组数据采集 否系统时间初始化 中断返回 是取3求平均值定时器初值初始化计算速度值 中断返回速度值是否正常 是 否 图4.3外中断程序框图4.3键盘程序设计 键盘程序设计的任务是赋予各按键相应的功能,完成速度设定值的输入和向PID控制器的发送。4只按键一只用来位循环选择,告诉单片机要调整的是设定值的个位、十位、百位还是千位。第二、三只按键分别是减1、加1减。

26、在没有位选择的情况下对设定值整体进行减1、加1;在有位选择的情况下仅对相应位进行减1、加1,并且当按着不释放按键时可以实现快速连续减1、加1,同时允许循环减、加(既当某位为0时,在减1则为9,某位为9时,加1则为0)。最后一只按键是确认发送键,按下它后,单片机将设定值送给PID控制器,从而实现设定控制。程序框图如图4.4。键盘子程序调用减“1”子程序位键按下否发送键按下否否 否位选循环右移 是 是键值处理保存显示 向PID控制器发送加“1”键按下否否 是 返回调用加“1”子程序减“1”键按下否 是 否 图4.4键盘程序框图 4.4显示电路的设计LCD的详细使用过程可参阅对应型号的使用手册。仅在

27、本小节强调以下内容:LCD 使用的关键是根据显示需要正确地对其进行初始化设置,而一般情况下不用考虑如何向它读写指令或数据,因为制造厂商所给的使用资料里就附有驱动程序,如果没有也可以从网上搜索下载得到。然而我们必须清楚那些初始化设置之间的关系,以及它是如何利用设置读取、显示数据字符的,不然就会发生一些不可预料的错误。因此,熟读LCD驱动芯片使用手册也是一个关键环节。 通常LCD的初始化包括复位设置、清除显示、地址归位、显示开关、游标设置、读写地址设置、反白选择以及睡眠模式等等。实际中根据需要,正确、灵活地修改这些设置可以达到较为满意的显示效果。LCD 中所有汉字、数字和字符都可以通过它的ASCI

28、I码来访问显示;图象的显示是通过将相关软件(提取汉字、图象点阵数据程序)产生的数据按照LCD手册的要求完成响应设置后写入即可。由于本设计中没有使用到图形显示,所以没有详述。对于系统使用的汉字、字符和数据的LCD显示初始化程序和写数据程序框图见图4.5。 调入待显示数据指针 系统延迟调待显示屏幕位置数据 计算DDRAM地址设定使用基本指令集调用写入指令子程序写 入DDRAM地址清屏,地址指针归位调用数据输入子程序设定游标的移动方向及指定显示的移位 待显示数据指针加1一行数据显示完? 返回 否 是显示完所有行?LCD初始化子程序 否 返回 是 LCD写入显示数据子程序 图4.5 LCD显示初始化程

29、序和写数据程序框图 4.5 PWM信号的单片机程序实现 理论上,只要PWM脉冲的周期正比于PID控制算法的输出结果结果。具体实现过程中,取u(k)的整数部分(记为:UT)保存,然后用PWM信号的周期值减去UT所得值即为定时器1的初值(记为:INIT)。其程序框图见图4.6。 定时器1中断 定时器0中断设定时器0中断优先级最高设定时器1中断优先级最高将PWM输出端置0将PWM输出端置高电平“1”装入PWM信号初值INIT 装入50ms初值 中断返回 中断返回 图4.6产生PWM控制信号程序框图 5 数字PID及其算法的改进5.1 PID控制基本原理 控制基本原理 PID控制即比例(Proport

30、ional)、积分(Integrating)、微分(Differentiation)控制。在PID控制系统中,完成PID控制规律的部分称为PID控制器。它是一种线形控制器,用输出y(t)和给定量r(t)之间的误差的时间函数e(t)=r(t)-y(t). PID控制器框图如图5.1。实际应用中,可以根据受控对象的特性和控制的性能要求,灵活地采用不同的控制组合,如: Kp Ki/S 控制对象 + U(t) C(t) R(t) E(t) + Kd*S _ + 图5.1 PID控制器框图比例(P)控制器:u(t)=Kp*e(t)比例+积分(PI)控制器:u(t)=Kpe(t)+比例+积分+微分(PID

31、)控制器:u(t)=Kpe(t)+de(t)/dt式中Kp为比例运算放大系数,Ti为积分时间,Td为微分时间。5.2三个基本参数Kp,Ti,Td在实际控制中的作用研究 比例调节作用:是按比例反映系统的偏差,系统一旦出现了偏差,比例调节 立即产生调节作用用以减少偏差,属于“即时”型调节控制。比例作用大,可以加快调节,减少误差,但是过大的比例,使系统的稳定性下降甚至造成系统的不稳定。 积分调节作用:使系统消除静态误差,提高无误差度。因为有误差,积分调节就进行,直至无误差,积分调节停止,积分调节输出一常值,属于“历史积累”型调节控制。积分作用的强弱取决与积分时间常数Ti,Ti越小,积分作用就越强。反

32、之Ti大则积分作用弱,加入积分调节可使系统稳定性下降,动态响应变慢。积分作用常与另两种调节规律结合,组成PI调节器或PID调节器。 微分调节作用:微分作用反映系统偏差信号的变化率,具有预见性,能预见偏差的变化趋势,因此能产生超前的控制作用,在偏差还没有形成之前,以被微分调节作用消除,因此属于“超前或未来”型调节控制。因此,可以改善系统的动态性能。在微分时间选择合适的情况下,可以减少超调,减少调节时间。微分作用对噪声干扰有放大作用,因此过强的加微分调节,对系统抗干扰不利。此外,微分反映的是变化率,而当输入没有变化时,微分作用输出为零。微分作用不能单独使用,需要与另外两种调节规律相结合,组成PD或

33、PID控制器。5.3数字PID控制算法 在单片机数字控制系统中,PID控制算法是通过单片机程序来实现的。对于数字信号处理,不论是积分还是微分,只能用数值计算去逼近。当采样周期相当短时,用求和代替积分,用差商来代替微商,使PID算法离散化,将描述连续时间PID算法的微积分方程,变为描述离散时间PID算法的差分方程。其算法变换如下。 控制量:u(t)u(Kt)比例比例:e(t)=e(Kt)积分求和:=微分差商: = u(k)=e(k)+ =e(k)+e(k)-e(k-1) 式中,为比例系数,=为积分系数,=为微分系数。T为采样周期。 上式PID算法为非递推形式,称为全量算法。为了求和,必须将系统偏

34、差的全部过去值e(j)(j=0,1,2)值都存储起来。这种算法得出了控制量的全量输出u(k),是控制量的绝对数值。在控制系统中,这种控制量决定了执行机构的的位置,比如,在本设计电机控制系统中,这种算法的输出对应了相应的速度值。因此,人们将这种算法称为“位置PID算法”。 除了“位置PID算法”以外,常见的还有增量式PID控制算法。当执行机构需要的不是控制量的绝对值,而是控制量的增量(例如去驱动步进电动机)时,需要用PID“增量算法”。此算法可由“位置PID算法”求出。 综合两种算法,本设计是产生一个PWM信号去控制直流电机,PWM信号的高电平持续时间对应的控制量是一个绝对值,而不是一个控制量的

35、增量。但是如果采用“位置PID算法”则需要考虑控制量的基值u0,即Kp=0时的控制量,而直接用增量式PID算法只能计算出控制量的增量。所以,设计中,先采用增量式控制控制算法计算出控制量的增量,然后加上上一次的控制量即可以得到本次的控制量,本系统的PID算法是以增量式算法实现“位置PID算法”的结果,使控制得到简化、容易实现。 5.4 PID算法的改进 抑制PID算法的“饱和”作用,通常有两种方法。一种算法是遇限削弱积分法,其基本思想是:一旦控制变量进入饱和区,将只执行削弱积分项的运算而停止进行增大积分项的运算。具体地说,在计算u(k)时,将判断上一时刻的控制量u(k)是否已超出限制范围,如果已

36、超出,那么将根据偏差的符号,判断系统输出是否在超调区域,由此决定是否将相应偏差计入积分项。 另一种算法是积分分离法。减小积分饱和的关键在于不能使积分项累积过大。第一种修正方法是一开始就积分,但进入限制范围后即停止累积。后者介绍的积分分离法正好与其 相反,它在开始时不进行积分,直到偏差达到一定的阀值后才进行积分累计,算法流程图见图6.5。图中,A,B,C分别代表q0,q1,q2。这样,一方面防止了一开始有过大的控制量,另一方面即使进入饱和后,因积分累积小,也能较快退出,减少了超调。 由于本系统的控制对象是一个具有惯性或称其为滞后特性的直流电机,一方面要求控制要尽可能高的反映速度,另一方面也要尽可

37、能减少超调。因此,积分分离法比较适合本系统。 综合上面关于PID算法的研究,已经得出一个针对本系统的PID算法“增量式积分分离PID控制算法”。在此控制算法中,误差较大时采用的是PD算法控制。 在PID控制器的实现过程中,发现不同的电机除了惯性不同外,还有一个参数不容忽略,那就是电机在转动过程中的摩擦力。由于摩擦力总是阻碍电机转动,所以相当于额外的给控制量对应的电动机转矩加了一不定量的负转矩。如果PID的输出的控制增量对应的转矩为正,则会抵消一部分增量,但如果PID输出的控制增量对应的转矩为负,则会助长这一增量。如此以来,如果电机在加速过程中使用和减速过程中同样的PID参数,就有可能出现加速欠

38、条,减速超调的情况。实验中,也证明了这一分析的正确性。 解决这一问题的方法是利用微分项的校正作用,在电机加速状态,和减速状态采用不同的微分系数,即在不同的时段采用不同的微分系数,其中加速时微分系数为Kd1,减速时微分系数为Kd2。这样系统的控制算法就成为“变系数增量式积分分离控制算法”了,可以通过设定参数得到更佳的校正作用。 5.5 PID控制算法的单片机程序实现 对于AT89S52单片机而言,有足够的内存去存储和处理这些数据。另外,为了使程序的参数修改方便,更易于应用到其他PID控制系统中去,在一开始的参数赋值程序中,参数是以十进制BCD码浮点数存储的,参数赋值完成后,紧接着就是对参数进行二

39、进制浮点数的归一化处理,以及复合参数q0,q1,q2等的计算。这些工作在系统启动后迅速就完成了,之后PID控制器只进行PID核心控制算法的计算。PID算法的程序框图如图5.2 所示算法。由于本系统采用的是单级单向调速, 所以当PID控制算法的输出结果u(k)为负数时就将其清另零了,当大于系统饱和值时,赋值u(k)为饱和值。 u(k)=q0e(k-f(k-1)U(k)=q0e(k)+q1w(k-1)+q2e(k-2) 开始 u(k)=u(k)-u(k+1)u(k)=u(k)+u(k-1)PID参数初始化取给定值r(k)和测量值c(k) 输出u(k) g(k-1)=g(k) e(k)=r(k)-c(k) f(k-1)=f(k)? e(k-1)=e(k)

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 办公文档 > 其他范文


备案号:宁ICP备20000045号-2

经营许可证:宁B2-20210002

宁公网安备 64010402000987号