计算机控制技术PID课程设计报告

上传人:仙*** 文档编号:91584465 上传时间:2022-05-17 格式:DOC 页数:19 大小:118KB
返回 下载 相关 举报
计算机控制技术PID课程设计报告_第1页
第1页 / 共19页
计算机控制技术PID课程设计报告_第2页
第2页 / 共19页
计算机控制技术PID课程设计报告_第3页
第3页 / 共19页
点击查看更多>>
资源描述
-课 程 设 计课程名称 计算机控制技术 题目名称 高精度直流电机调速系统 学生学院 信息工程学院 专业班级 应用电子技术2班 学 号 XXXXXXXXXXX 学生 胡丛滟 指导教师 黄国宏 2014 年 06 月 16 日目录一、方案论证.31.1. PID算法.31.2. 简易工程发整定PID参数.3二、理论分析与计算.32.1. 系统设计方案.32.2. 数字PID控制器.42.3. 凑式法整定PID参数.52.4. 直流电机调速与测速.6三、硬件电路设计.63.1. 电机驱动及传感器电路.73.2. 串口发送数据电路.73.3. LCD1602显示电路.7四、程序设计.84.1. PID增量式算法.84.2. 系统程序流程图.84.3. 消除积分不灵敏的方法.94.4. 抗积分饱和的方法.9五、调试过程.105.1. 只有比例环节.105.2. 参加积分环节.115.3. 参加积分别离.115.4. 参加微分环节.13六、设计心得. .15七、参考文献.15八、附录程序).16摘要本作品以单片机STC98C52为控制器,由电机、电机速度采集传感器和电机驱动组成主电路。控制器产生PWM脉冲送到电机驱动电路中,经过功率放大后控制直流电机转速,同时利用速度检测模块将当前转速反响到控制器中,控制器经过数字PID运算后改变PWM脉冲的占空比,实现电机准确控制转速和改善系统运行目的。实验数据通过LCD1602显示并通过串口发送给PC机进展波形显示。 ABSTRACTThis work STC98C52 MCU as the controller, driven by a motor, motor speed acquisition sensor and the position of the main circuit. Controller to generate PWM pulse motor drive circuit, after power amplification control dc motor speed, and speed detection module is used to change the current speed feedback to the controller, the controller through a digital PID putation after changing the duty ratio of PWM pulse, it can realize accurate control of motor speed and improve the system operation purpose. The experimental data through the LCD1602 display and waveform display through a serial port is sent to the PC.一、 方案论证1.1. PID算法方案一:采用位置式PID算法,该控制算法提供了执行机构的具体位置,PID输出与整个过去的状态有关,容易产生大的累加误差。方案二:采用增量式PID算法,增量算法不需要做累加,控制量增量确实定仅与最近几次误差采样有关,对控制量的计算影响较小,易于实现手动到自动的无冲击切换。方案采用:在本实验中采用增量式PID算法。主要原因是PWM占空比和转速不成线性关系,意思就是就算知道了现在电机速度,也无法准确改变占空比来到达期望速度,采用增量式的好处是只要有误差存在就可以不断增加或者减少占空比来到达期望速度。1.2. 简易工程法整定PID参数方案一:采用扩大临界比例度法,只需选取一个足够短的采样周期,只采用比例作用,不断改小比例度=1/Kp,直到系统发生持续等幅振荡,记下使系统发生振荡的临界比例度k及系统的临界振荡周期Tk,然后再通过选择控制度和根据表格查找参数就可以求得T、Kp、Ti、Td的值。方案二:采用凑试法,根据参数对控制过程的影响趋势,对参数实行先比例,后积分,再微分的整定步骤。方案采用:本实验采用凑试法。主要原因是扩大临界比例度法需要选择足够小的采样周期,但本系统的采样周期为1s,远大于纯滞后时间,因此不能采用扩大临界比例度法。二、 理论分析与计算2.1. 系统设计方案图2.1系统方案框图根据系统设计的任务和要求,设计系统方框图如图2.1所示。图中控制器模块为系统的核心部件,按键和显示器用来实现人机交互功能,其过按键将需要设置的参数和状态输入到单片机中,并且通过控制器显示到显示器上。在运行过程中控制器产生PWM脉冲送到电机驱动电路中,经过放大后控制直流电机转速,同时利用速度检测模块将当前转速反响到控制器中,控制器经过数字PID运算后改变PWM脉冲的占空比,实现电机转速实时控制的目的。2.2. 数字PID控制器模拟PID调节器的控制规律为2.1式中,为比例系数,为积分时间常数,为微分时间常数。当采样周期足够小时,在模拟调节器的根底上,通过数值逼近的方法,用求和代替积分、用后向差分代替微分,使模拟PID离散化变为差分方程。这样,式2.1便可离散化以下差分方程:2.2式中是偏差为零时的初值;式(2.2)第一项起比例控制作用,称为比例P项,即 2.3第二项起积分控制作用,称为积分I项即2.4第三项起微分控制作用,称为微分D项即2.5式2.2的输出量u(n)为全量输出,它对于被控对象的执行机构每次采样时刻应到达的位置。因此,式2.2又称为位置型PID算式。由2.2可看出,位置型控制算式不够方便,这是因为要累加偏差e(i),不仅要占用较多的存储单元,而且不便于编写程序,为此对式2.2进展改良。根据式2.2不难看出u(n-1)的表达式,即2.6将式2.2和式2.6相减,即得数字PID增量型控制算式为2.7式中: 称为比例增益;称为积分系数;称为微分系数。2.3. 凑试法整定PID参数增大比例系数 Kp,一般将加快系统的响应,在有静差的情况下有利于减小静差。但过大的比例 系数会使系统有较大的超调,并产生振荡,使稳定性变坏。 增大积分时间 Ti 有利于减小超调,减小振荡;使系统更加稳定,但系统静差的消除将随之减慢。 增大微分时间 Td 亦有利于加快系统响应,使超调量减小,稳定性增加,但系统对扰动的抑制能 力减弱,对扰动有较敏感的响应。在凑试时,可参考以上参数对系统控制过程的影响趋势,对参数调整实行先比例、后积分,再微分的整定步骤。1首先整定比例局部,将比例系数由小变大,并观察相应的系统响应,直至得到反响快、超调小的响应曲线。如果系统没有静差或静差已经小到允许围,并且对响应曲线已经满意,那么只需要比例调节器即可。2如果在比例调节的根底上系统的静差不能满足设计要求,那么必须参加积分环节。将已经调节好的比例系数略为缩小(一般缩小为原值的0.8),然后减小积分时间,使得系统在保持良好动态性能的情况下,静差得到消除。在此过程中,可根据响应曲线的好坏反复改变比例系数与积分时间,以期待得到满意的控制过程与整定参数。3如果在上述调整过程中对系统的动态过程反复调整还不能得到满意的结果,那么可以参加微分环节。一般的系统D=0,1或2。只有局部滞后较大的系统,D值才可能调大些。PID参数修改后,可以适度修改设定值(人为的阶跃扰动)观察系统的跟踪响应,以判断PID参数是否适宜。P值太小,I值太小或D值太大均会引起系统超调振荡。2.4. 直流电机调速与测速调速:根据PWM控制的根本原理可知,一段时间加在惯性负载两端的PWM脉冲与相等时间冲量相等的直流电加在负载上的电压等效,可通过改变输出的占空比来改变电压从而改变速度。测速:在本系统中由于要将电机本次采样的速度与上次采样的速度进展比拟,通过偏差进展PID运算,因此速度采集电路是整个系统不可缺少的局部。本次设计中应用了比拟常见的光电测速方法来实现,其具体做法是将电机轴上固定一圆盘,且其边缘上有N个等分凹槽如图3.5a所示,在圆盘的一侧固定一个发光二极管,其位置对准凹槽处,在另一侧和发光二极光平行的位置上固定一光敏三极管,如果电动机转到凹槽处时,发光二极管通过缝隙将光照射到光敏三极管上,三极管导通,反之三极管截止,电路如图3.4b所示,从图中可以得出电机每转一圈在P3.3的输出端就会产生N个低电平。这样就可根据低电平的数量来计算电机此时转速了。例如当电机以一定的转速运行时,P1.2将输出如图3.5所示的脉冲,假设知道一段时间t传感器输出的低脉冲数为n,那么电机转速v=n/t。 (a) (b)图2.2 电机速度采集方案三、 硬件电路设计3.1. 电机驱动及传感器电路图3.1 电机驱动及传感器电路3.2. 串口发送数据电路图3.2 串口电路3.3. LCD1602显示屏电路图3.3 LCD1602显示屏电路四、 程序设计4.1. PID增量式算法本系统设计的核心算法为PID算法,它根据本次采样的数据与设定值进展比拟得出偏差e(n),对偏差进展P、I、D运算最终利用运算结果控制PWM脉冲的占空比来实现对加在电机两端电压的调节10,进而控制电机转速。其运算公式为:4.2. 系统程序流程图初始化包括对时钟,中断的初始化,检测完数据再进展PID调节,输出数据,显示并发送。 开场 计算e(n) 初始化 计算Ki*e(n) 计算Kp*e(n) 检测 -e(n-1) PID 计算Kde(n) 调节 -2e(n-1)+e(n-2) 输出显示 计算出U 串口发送数据 得出占空比 speed=speed+U 图4.1 系统程序流程图 en2=en1 en1=en 返回 图4.2 PID增量式算法图4.3. 消除积分不灵敏的方法在本实验,因为转速和占空比是要成正比例关系的,当比方占空比的最小单位是1/100的时候,可能一个最小单位对应的转速是34rps,那这样的话就消除不了静差,如果把最小单位改成1/400的时候,可能一个最小单位对应不了1rps,但是占空比会累加,从而使转速改变1rps。附上某个区域的对应关系如图4.3所示:012345678910000000111121112131415161718192021223344555711222324252627282930313216222733394449556064673334353637383940414243717578808285878990919344454647484950515253549495979899991001011021021035556104104图4.3红色代表占空比,比方1代表1/400占空比,白色代表转速,黄色代表线性关系的转速。4.4. 抗积分饱和的方法如果执行机构机构已到达极限位置,仍然不能消除偏差时,由于积分作用,尽管计算PID差分方程式所得的运算结果继续增大或者减小,但执行机构已无相应动作,这就是积分饱和。当出现积分饱和时,势必使超调量增加,控制品质变坏。作为防止积分饱和的方法之一,可对计算出的控制量u(k)限幅,同时把积分作用切除掉。程序表达:if(speed400)speed=400;if(speed=5&en=-5) Un=Kp*(en-en1)+Ki*en; else Un=Kp*en;5.3. 参加积分别离按Ti从大往小调情况有:T=1;Kp=1.8;Ti=8.0;T=1;Kp=1.8;Ti=1.8;超调量3%,3s到达稳定值,波形与只有比例环节的图形有明显的改善只有比例环节,与上图进展比拟5.4. 参加微分环节系统只有比例和积分环节PI,当改变期望值时,通过下列图可看出过度波动很大,对系统不利。T=1;Kp=1.8;Ti=1.8;为此采取积分环节Td按从小调到大的规那么进展寻找适宜值T=1;Kp=1.8;Ti=1.8;Td=1;【改变调速时,用了6s时间到达稳定,过度波动还是很大】T=1;Kp=1.8;Ti=1.8;Td=1.8;【改变调速时,用5s时间到达稳定,波动明显变小】T=1;Kp=1.8;Ti=1.8;Td=2.5;【用1s时间到达稳定,过度无波动,完全符合要求】六、 设计心得为时两周时间的课程设计,不但让我对计算机控制技术有了更深的理解,而且熟悉了数字PID的编程方法,在做的过程中遇到的问题很多。比方一开场选PID参数整定方法时我们是用了扩大临界比例度法,但是在调试过程始终达不到理想效果,后来发现是我们采样周期太大的问题,远大于系统纯滞后时间,但是我们改变采样周期后,显示和采样效果均不理想,为此我们决定采用凑试法整定PID参数,在调试过程中,发现效果很明显,先只采用比例环节,待到达理想效果之后保持Kp值不变,继续参加积分环节,但是问题出现了,参加积分环节不但不能消除静差,反而使系统发生了较大超调和长时间的波动,为此我们查找了相关书籍,得出的结论是在一般的PID控制中,当有较大的扰动或大幅度改变给定值是,由于此时有较大的偏差,以及系统有惯性和滞后,故在积分项的作用下,往往会产生较大的超调和长时间的波动。为此我们采用了积分别离的方法,但到达设定误差时才启用积分环节,调试之后效果非常理想。接着再参加微分环节,此环节比拟顺利,安照书上方法把Td值从小变到大从而找到适宜值,从而使系统在期望值改变的时候不会出现超调或者波动,能实现平缓过渡。至此我们成功设计了直流电机调速系统,对学到知识感动非常开心与满足。七、 参考文献1 于海生. 计算机控制技术. :机械工业2 郭天祥. 新概念51单片机C语言教程. 电子工业3 凑试法整定PID参数. 百度文库4 ULN2003A数据手册DB/OL. .docin./p-33818289.html.八、 附录源程序#include #include /LCD/sbit RS=P26;sbit RW=P25;sbit EN=P27;sbit key=P20;sbit key1=P21;sbit key2=P22;sbit key3=P23;/motor/unsigned int tt0;unsigned int tt1;sbit A1=P12;sbit A2=P13;unsigned char flag;/抽样时间unsigned int speed=41;unsigned int a;unsigned char receive;unsigned int ReData,sum=0,summ=0;/pidfloat Kp,Ki,Kd,Ti,Td,T;/unsigned int set=100;int en,en1,en2,enx;double Un;void delay(unsigned int xms) unsigned i, j; for(i = xms; i 0; i-) for(j = 110; j 0; j-);bit test_busy()bit result;P0=0xff;RS=0;RW=1;delay(1);EN=1;delay(1);result=(bit)(P0&0x80);EN=0;return result;void write_mand(unsigned char mand)/写命令while(test_busy();RS=0;RW=0;P0=mand;delay(1);EN=1;delay(1);EN=0;void write_date(unsigned char date)/写数据while(test_busy();RS=1;RW=0;P0=date;delay(1);EN=1;delay(1);EN=0;void write_string(unsigned char *s) while (*s) write_date(*s); s+; void lcd_initial()/LCD初始化RS=1;RW=1;EN=0;write_mand(0x38);/设置16X2显示,5X7点阵,8位数据接口delay(1);write_mand(0x01);/显示清零,数据指针清零delay(1);write_mand(0x0c);/设置开显示,不显示光标delay(1);write_mand(0x06);/写一个字符后地址指针加1void keyscan()if(key=0) delay(10); if(key=0) set=set+1; if(set=138)set=138; while(!key); receive=1; if(key1=0) delay(10); if(key1=0) set=set-1; if(set=400)tt1=0;if(tt1=5&en400)speed=400;if(speed0) speed=0;en2=en1; en1=en;/* void main()T=1;Kp=1.8;Ti=1.8;Td=2.5; Ki=Kp*T/Ti;Kd=Kp*Td;keyscan();lcd_initial();write_string(INT: rps %);write_mand(0x80+0x40); /第二行write_string(VALS: rps);write_mand(0x80+6);/write_date(set/100+0x30); /设置的数据/write_date(set%100/10+0x30);/write_date(set%10+0x30);init();while(1) keyscan(); keyspeed();if(receive)receive=0;write_mand(0x80+6);write_date(set/100+0x30);write_date(set%100/10+0x30);write_date(set%10+0x30); if(flag)/100msunsigned char ge,shi,bai,num;flag=0;a=(TH2*256+TL2); /rps TH2=0; TL2=0;num+;sum=sum+a;/累加10次到达一秒if(num=10)summ=sum;num=0;sum=0;summ=summ/448;bai=summ/100;shi=(summ%100)/10;ge=summ%10;write_mand(0x80+0x40+6);write_date(bai+0x30);write_date(shi+0x30);write_date(ge+0x30); TI=1;printf(%d,summ);while(!TI);TI=0;delay(10); pid(summ); write_mand(0x80+12); write_date(speed%1000/100+0x30);write_date(speed%100/10+0x30);write_date(speed%10+0x30);. z.
展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 管理文书 > 施工组织


copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!