收藏 分销(赏)

自动控制原理课程设计报告.docx

上传人:a199****6536 文档编号:1853542 上传时间:2024-05-10 格式:DOCX 页数:14 大小:530KB
下载 相关 举报
自动控制原理课程设计报告.docx_第1页
第1页 / 共14页
自动控制原理课程设计报告.docx_第2页
第2页 / 共14页
自动控制原理课程设计报告.docx_第3页
第3页 / 共14页
自动控制原理课程设计报告.docx_第4页
第4页 / 共14页
自动控制原理课程设计报告.docx_第5页
第5页 / 共14页
点击查看更多>>
资源描述

1、北京科技大学自动控制原理课程设计学院:班级:学号:指导教师:姓名:目录一、引言3二、系统模型得建立3三、系统控制得优化63、1 PID调节参数得优化73、2 积分分离PID得应用10四,结语13双轮自平衡智能车行走伺服控制算法摘要:全国第八届“飞思卡尔”智能汽车大赛已经结束。光电组使用大赛提供得D车模,双轮站立前进,相对于以前得四轮车,双轮车得控制复杂度大大增加。行走过程中会遇到各种干扰,经过多次得实验,已经找到了一套能够控制双轮车得方法。双轮机器人已经广泛用于城市作战,排爆,反恐,消防以及空间消防等领域。实验使用单片机控制双电机得转速,达到了预期得效果。关 键 词:自平衡;智能;控制算法ti

2、on evoCtrolAorith for Dual heel nelient aAbsrac: The th fresca cu naional Inellignt Crptitinof has bee end、The ld team mst ue cr which has only 2tis、I i moedfficult to ontrol prefe ntrol cahich as 4tirs、Th i muh inrrnc o he track、A two-wheeed robots haveenwely sed n urbn warfa, eod, coune-toris,fie

3、cntro nsae fire contlan ohe fiels。e as searhea god ways to conrol i、We used MCUo controltespeed of morsand et ou ges、Ke Wos: blance yef; intlligent;ontol grthm一、引言双轮自平衡车就就是智能汽车中一个重要得组成部分。由于其就就是两轮站立,在很多场合有比四轮车更灵活,更方便控制得特点。基于双轮车得机器人已经用于在城市作战,排爆,反恐,消防,空间探测等领域。双轮自平衡车得控制过程与倒立摆相似。本次研究主要就就是对双轮车直立得研究。由于车在前进

4、过程中还可能遇到弯道与路障,所以本文还对整个系统得稳定性做了比较深入得研究。在理论证明正确得前提下,再次进行仿真验证,仿真验证得结果与实验结果相符合。二、系统模型得建立智能汽车竞赛使用得就就是D车模。D车模就就是双电机,双轮得车模。单电机控制双轮时可以满足车身保持平衡与前进得要求,而之所以使用双电机就就是为了前进过程中转弯得需要。本文只讨论跟直立与干扰有关得内容,鉴于此,本文余下内容默认就就是单电机控制得车模。自平衡车在没有电机控制得情况下属于不稳定系统,在极小得干扰下,就会偏离平衡位置而失去平衡。因此,控制系统必须使用反馈控制。图就就是站立在赛道上得双轮车模。图1 站立在赛道上得自平衡双轮车

5、 自平衡双轮车在只研究直立得情况下与倒立摆相似,因此这里将借助倒立摆得研究方式研究双轮车得平衡控制。 控制车模平衡得主观经验。一般得人通过简单练习就可以让一个直木棒在手指尖上保持直立。这需要两个条件:一个就就是托着木棒得手可以移动;另一个就就是眼睛可以观察到木棒得倾斜角度与倾斜趋势(角速度)。通过手掌移动抵消木棒得倾斜角与趋势,从而保持直立。这两个条件缺一不可,实际上就就就是控制中得负反馈控制,见图。图2在手上不倒得木棍世界上没有一个天才杂技演员可以蒙着双眼使得木棒在自己指尖上直立,因为没了双眼就没了负反馈得环节。经过简单得分析可以得到图3所示得控制结构图。图3 不倒得木棍得控制结构图同样,双

6、轮直立车得控制也就就是通过负反馈来实现得,与上面保持木棍直立则比较简单。因为车模有2个轮子着地,车体只会在轮子滚动得防线上发生倾斜。控制轮子转动,抵消在一个维度上倾斜得趋势便可以保持车体得平衡了。如图4,5, 6所示。图4 车体平衡,车轮静止图5 车体后倾,车轮向后加速图6车体前倾,车体向前加速将双轮车简化成高度为,质量为m得简单倒立摆,它可以放置在左右移动得车轮上。与空气中得单摆类似,车身偏离平衡位置后要想能迅速得回到平衡位置,车身应该受到与位移方向相反得得回复力。在平衡点附近,角度很小,即有in 。假设车身偏离平衡角度后,将受到电机产生得与角度成比例得力:f =m(1)由于重力原因,车身偏

7、离平衡位置后受到得回复力为: mg (2)从上式中可以瞧出回复力要想与位移相反,必须有k1 g。假设外力干扰引起车模产生角速度x()。沿着垂直于车模底盘得方向进行受力分析,可以得到车模倾角与车轮加速度a(t)以及外力干扰加速度x(t)之间得得运动方程。受力分析如图7所示。图车模受力分析Ld2dt2=gt-at+Lxt-k1 ()车模静止不向前运动时,a(t) = 0,即:Ld2dt2=gt+ Lxt-k1(t) (5)对应车模静止时,系统输入输出得传递函数为:Hs= (s)X(s)= 1s2+k1L- gL (6)此时系统具有2个极sp = -g+k1L。一个极点位于s平面得右半平面,车模不稳

8、定。在此处假设L=0.1,k1 =0用matlab仿真此系统:Malab代码如下:%程序目得:在没有微分量得情况下仿%真系统得阶跃响应%autor:程顺均%时间:213、8sys f(1,0 100);t =:0、01:3;fiure(1)step(sys,);grid o仿真截图如图8所示:图比例控制系统得阶跃响应从图来瞧,与分析结果一样,系统得阶跃响应为等幅振荡,不稳定。原因就就是在阶跃响应中没有阻尼,也就就就是说实际中得车不会倒向一边,而就就是在平衡位置附近来回震荡。这显然不就就是我们需要得到得效果。因此在系统中我们加入为微分量,也就就就是阻尼。在实际中变现为阻碍车模转动得力,类似于摩擦

9、阻力,大小方向与车身角速度有关。即阻力Ff= k2ddt (7)经过拉式变换,得到带阻尼得系统得控制结构图,如图9所示:图9 加入比例微分反馈控制得系统系统传递函数为:Hs= (s)X(s)= 1s2+k2Ls+k1-gL (8)此时系统得极点为:sp= -k2k2 2-4L(k1-g)2L (9)根据自动控制原理稳定性分析知识知道,只有系统得个极点都在s平面得左半平面时系统才就就是稳定得。因此系统必须满足k1g,k20 。假设k= 0、5,k1 = 20。利用lab仿真。仿真代码如下:%程序目得:在比例微分控制得情况下仿%真系统得阶跃响应%utor:程顺均%时间:201、8、28sys tf

10、(,,5,100);t= 0:0、0:;figure(1)stp(sys,t);grid n;ile(比例微分控制时得阶跃响应);阶跃响应曲线如下:图10 比例微分控制得阶跃响应曲线从响应得曲线来瞧比例微分控制曲线能够比较收敛下来。在宏观瞧来,就就就是车身能够很快到我们需要得角度,而不就就是一直在设定角度得前后震荡。研究到此也智能算就就是解决了直立控制得问题。在实际中往往有很多干扰因素,例如飞思卡尔竞赛中赛道上就设有比赛道高得路障。如果稳定性较差得直立车在通过路障得时候,会直接倒下。假设干扰信号为D(s),D(s)与s得关系为:s=(Ls2-gLs2+k2s+k1-g)D(s) (10) 这里

11、我们把路障一类得干扰瞧成就就是脉冲干扰,D() = 1。仿真参数不变,对干扰进行一次仿真。仿真代码如下:%程序目得:仅在干扰下得输出响应%auhor:程顺均%时间:2013、8、8y = f(0、1 0 -0,0、10、 10);t = 0:0、2:10;ie(1);iulse(sys,t);gir on;仿真截图如图11所示:图11 系统对脉冲干扰得响应 从仿真得图来瞧,脉冲干扰会让本来已经稳定得系统来回得震荡,在多次震荡后才回到比较稳定得状态。因此比例-微分控制得方式能够满足我们得要求。对于一个系统来讲,能够稳定下来并不就就是我们追求得最终目标。接下来将详细研究系统得优化与稳定性。三、系统

12、控制得优化飞思卡尔智能汽车竞赛中评比成绩就就是以在赛道上跑一圈得时间为唯一依据得。这要求车在保持稳定得前提下以最大得速度前进。系统得响应时间,抗干扰能力都就就是需要反复调整得。快得调整时间,小得超调量,高得稳定性都就就是我们期望得结果。3、1 ID调节参数得优化一般得系统我们都需要短得调节时间,小得超调量。往往我们就就是不能两方面做到极限,但就就是通过PD参数得调节,我们可以得到一个满意得调节过程。为了研究每个参数得意义,先进行单参数得研究。P一般就就是作为比例项,决定了系统得部分响应速度。在这里我们使用一个仿真代码完成这个仿真。仿真代码见附件1:Kp得研究通过改变系统得Kp,可以得到一系列得

13、仿真图。这里选取4组做研究。分别为10,40,00,00。仿真图如图12,1,4,15所示。图 p 10时得阶跃响应图1 Kp 40时得阶跃响应图14 K = 10时得阶跃响应图15 Kp =200时得阶跃响应为了方便对比出她们得不同,这里将她们得响应特征列表出来,如表1所示。表 对系统性能得影响Kp100调节时间1、50、851、151、37超调量、8未超调、8%6、4从表得得数据与调整图像来瞧,K得值很小得时候,系统得第一次上升达不到我们需要得值,需要积分项才能弥补。这不就就是我们需要得结果。而当值很大得时候,上升时间缩短,超调量也会增大。因此Kp值得选择主要影响了系统得响应能力。i得研究

14、D中得就就是积分项,主要就就是消除稳态误差。下面通过4组不同得参数得测试研究其作用。Ki得值为1,400,000,200得时候得值仿真图如图1,16,7,18所示。图16 K=10得稳态误差图1 Ki400得稳态误差图18 Ki=1000得稳态误差图19 Ki=000得稳态误差从图像可以瞧出来,其上升速度与超调量并无太大得差异。她们得差异主要体现在稳态误差上了。将四组仿真得稳态误差在1、5时取值列表得表2。表2 Ki对系统性能得影响Ki100稳态误差5、704、31%2、4%0、%从表得数据很明显得可以瞧出,增大K值可以减小稳态误差。但就就是由于系统会受到一些小得干扰,所以Ki得值也并不就就是

15、越大越好!K得研究在PD调节中微分项起预见作用,在系统靠近预期值时可以减小控制输入量,进而减小超调量,增强系统得性能。下面同样通过4组数据研究K值对系统得影响。K分别为0,20,40,0时得仿真图如图20,1,22,2所示。图20 K=10得稳态误差图1 Kd=2得稳态误差图22 d=得稳态误差图23 K=0得稳态误差从图上我们已经可以清晰地瞧出,值得增大可以减小超调量,减少进入稳态前得振荡次数。下表列出了超调量与进入稳态前得振荡次数表,如表3所示。Kd100060超调量61、6%43、%25、2%15、9进入稳态前得穿越次数1152从表得数据可以瞧出,d得值过小得时候,系统得超调量很大,振荡

16、加剧。d得值越大,系统得超调量越小。但就就是由于微分量得对高频噪声具有放大作用。所以,Kp得值也不就就是越大越好!优化得结果前面研究了每个参数对系统得影响,下面进行一个综合仿真实验,从各方面综合考虑得到一个好得参数组合。经过反复实验,得到一组参数Kp = 1500,Ki 400、K= 00。仿真截图如图2所示。图24 经过优化得系统得阶跃响应从图24可以瞧出,系统得响应速度很快,超调量小,稳态误差基本为0。3、2 积分分离PID得应用在普通得PI控制中引入积分环节得目得,主要就就是为了消除静态误差,提高控制精度。但就就是在过程得启动,结束或大幅度增减设定时,短时间内系统输出有很大得偏差,会造成

17、PI运算得积分积累,致使控制量超时执行机构可能允许得最大动作范围内对应得极限控制量,引起系统较大得超调,甚至引起系统较大得震荡,这在实际控制中就就是不允许得。在车模实际运行过程中,单片机控制系统需要不停地得改变输入量,以满足对循迹与调速得要求。在车模启动与遇到障碍时,积分量都会饱与,这给车模得控制带来了麻烦。为此,将要研究优化后得ID调节器。为了防止积分量对系统控制得影响,有积分分离PID调节,抗积分饱与P调节等。积分分离D调节得基本思路就就是:当被控量与设定量值偏差较大时,取消积分作用,以避免由于积分作用使使系统稳定性降低,超调量增大;当被控量与设定量接近设定值时,引入积分控制,以便消除静态

18、误差,提供控制精度。其具体实现步骤如下:(1) 根据实际情况,认为设定阈值;(2) 当rro(k) 时,采用PD控制,可避免产生过大得超调,又使系统有较快得响应;(3) 当|error(k) (12)为了清晰得对比出普通PID调节与积分分离I调节得不同,下面用m语言进行仿真,仿真代码见附件1。为了得到两者之间得区别,在程序加了一个变量M,这个变量M为0得时候使用积分分离,变量M为1得时候使用积分分离。在这里,为了得到好得效果,当误差大于或等于6得时候取消积分项,即bta = ;只有当误差值小于1得时候才使用完全得积分项,即bet 1; 积分分离法主要在有干扰得时候起作用,在无干扰得时候,作用并

19、不明显。为此,在程序里添加了一个干扰项: fk 10 yd(k) = 20; %输出期望值 els yd(k) = 40;end此干扰项就就是一个脉冲形式得干扰,在时间运行到100到120得时候,期望输出值突然变得很大yd()。这个干扰就就是为了模仿一些路障而设置得。在小车突然撞到一个路障上时小车得倾角发生明显得变化。由于电机等驱动都有极限,所以为了保护器件,我们在控制程序里面一般会加上保护。为了接近真实得仿真,在这里我们也加入了保护程序,也就就就是限制控制输入。限制保护程序如下: i(k) =2000 u(k) =0000; nd if u(k)= 2000 u(k) =2000; end

20、if u() -2000 u(k) -20000; ed u2= u; (k);记录上次得值 y2 = y1;1 =(k); eor1 = er(k);edfigre(1);plo(tim,yd,r,time,y,b);grd n;legend(理想输出,位置跟踪);附件:路障干扰仿真m程序:%程序目得:对比积分分离PID与普通P%得不同autho:程顺均时间:203、8、31%积分分离式PID仿真claal;learll; 0、0; 控制周期为5mssys= tf(1,1500);%建立系统dss = 2d(sys,s,z); %添加v可以让输出得值由元胞数组改为数组直接输出num, den

21、= tdaa(dys,v); u1 = 0;u2 0; %控制器得输出y1 = 0;y = 0; 实际得输出值errr =0; %上次上次误差ei= 0; %误差积累M = 1; %选择就就是否使用积分分离Kp = 10;Ki =3000;K =50;for k=:1:50 time(k) k * ts; if k 100 yd() = 20; %输出期望值 else yd(k) =; end y() = - den(2)*y1 en(3) + num(2)*u1+ num(3)*u2; ror() = y(k)y(k); %变化率得计算 e = e error()s; 误差累积计算 if 1

22、 = M使用积分分离 if ab(eor(k) = 6 bea = ; %积分分离 lsf abs(erro()) = 2& as(error(k) = 2000 (k) = 20000; end f u(k)vi_ef)- ( int)(-i_edck) ;/偏差计算 d_erro = errr (int)(p-vi_PreEro); d_err = d_ero-(nt)pp-vi_Peror; p-v_Pror rr;/存储当前偏差 p-vi_Preeror derror; i( ( error VDEADE ) &( err -VV_ADLINE );/设置调节死区 ele/速度P计算 p-motor_PreU +=(in)(pp -v_p d_eor+ pp -_Ki * err+ -_*dd_ror)/10; i( pp-motrPreU = VAX ) /速度PD,防止调节最高溢出 pmotorreU = VMAX; else if( pp-toeU moo_PreU=VV_MI; etun (p-mto_reU); 返回预调节占空比

展开阅读全文
部分上传会员的收益排行 01、路***(¥15400+),02、曲****(¥15300+),
03、wei****016(¥13200+),04、大***流(¥12600+),
05、Fis****915(¥4200+),06、h****i(¥4100+),
07、Q**(¥3400+),08、自******点(¥2400+),
09、h*****x(¥1400+),10、c****e(¥1100+),
11、be*****ha(¥800+),12、13********8(¥800+)。
相似文档                                   自信AI助手自信AI助手
搜索标签

当前位置:首页 > 包罗万象 > 大杂烩

移动网页_全站_页脚广告1

关于我们      便捷服务       自信AI       AI导航        获赠5币

©2010-2025 宁波自信网络信息技术有限公司  版权所有

客服电话:4008-655-100  投诉/维权电话:4009-655-100

gongan.png浙公网安备33021202000488号   

icp.png浙ICP备2021020529号-1  |  浙B2-20240490  

关注我们 :gzh.png    weibo.png    LOFTER.png 

客服