四轴PID调试心得
精准控制PID调试技巧大揭秘
精准控制PID调试技巧大揭秘PID控制器是工业自动化领域中常用的控制器之一,它通过对系统的反馈信号进行调整,使得系统能够更稳定地运行。
然而,在实际应用中,PID调试往往是一个具有挑战的任务。
本文将揭示一些精准控制PID调试的技巧,帮助读者更好地掌握这一关键技术。
一、了解PID控制器的基本原理在进行PID调试之前,首先需要了解PID控制器的基本原理。
PID 控制器由比例(P)、积分(I)和微分(D)三个部分组成。
比例控制部分根据给定值与实际值之间的误差,产生控制输出;积分控制部分用于消除系统长期稳态误差;微分控制部分则用于抑制系统的瞬态过渡过程。
二、选择合适的调试方法在进行PID调试时,有多种调试方法可供选择。
常见的方法包括经验调试法、Ziegler-Nichols方法和模糊PID调试方法等。
在选择调试方法时,需要根据具体系统的特点和需求进行合理选择,并结合实际情况进行调整。
三、确定PID参数初值确定PID参数的初值是进行PID调试的关键一步。
可以根据经验法则提供的初值,然后根据实际系统的响应进行调整。
此外,还可以使用自整定方法,通过系统的频率响应,自动计算得到合适的PID参数初值。
四、逐步调整PID参数在进行PID调试时,一次性调整三个参数往往难以得到满意的结果。
因此,建议采用逐步调整的方法。
首先,确定比例参数,通过逐渐增大比例参数的值,观察系统的响应情况;然后,确定积分参数,通过逐渐增大积分参数的值,观察系统的稳态响应情况;最后,确定微分参数,通过逐渐增大微分参数的值,观察系统的瞬态响应情况。
通过逐步调整PID参数,可以有效提高系统的稳定性和响应速度。
五、灵活运用滤波器在某些情况下,系统可能会受到噪声或干扰的影响,从而影响PID控制效果。
为了降低噪声或干扰的影响,可以灵活运用滤波器。
常用的滤波器包括一阶低通滤波器和二阶低通滤波器等。
通过合理地选择滤波器的截止频率和阶数,可以有效地提升系统的稳定性和鲁棒性。
PID调节心得(大全)
PID调节心得(大全)第一篇:PID调节心得(大全)鉴于最近一直在研究算法,所以颇有些心得体会,整理了一下,觉得比较实用的一些PID的原理,及具体的调节方案,供大家参考学习,调节这个参量的值,需要耐心和经验,但是更多的是我们得静下心来调整,希望大家加油,马上我们就要交锋了。
如有疏忽之处请大家见谅。
模拟PID调节器模拟PID调节器的微分方程和传输函数PID调节器是一种线性调节器,它将给定值r(t)与实际输出值c(t)的偏差的比例(P)、积分(I)、微分(D)通过线性组合构成控制量,对控制对象进行控制。
PID调节器各校正环节的作用1、比例环节:即时成比例地反应控制系统的偏差信号e(t),偏差一旦产生,调节器立即产生控制作用以减小偏差。
2、积分环节:主要用于消除静差,提高系统的无差度。
积分作用的强弱取决于积分时间常数TI,TI越大,积分作用越弱,反之则越强。
3、微分环节:能反应偏差信号的变化趋势(变化速率),并能在偏差信号的值变得太大之前,在系统中引入一个有效的早期修正信号,从而加快系统的动作速度,减小调节时间。
常用的控制方式1、P控制2、PI控制3、PD控制4、PID控制PID算法的两种类型1、位置型控制――2、增量型控制微分先行和输入滤波1、微分先行微分先行是把对偏差的微分改为对被控量的微分,这样,在给定值变化时,不会产生输出的大幅度变化。
而且由于被控量一般不会突变,即使给定值已发生改变,被控量也是缓慢变化的,从而不致引起微分项的突变。
微分项的输出增量为2、输入滤波输入滤波就是在计算微分项时,不是直接应用当前时刻的误差e(n),而是采用滤波值e(n),即用过去和当前四个采样时刻的误差的平均值,再通过加权求和形式近似构成微分积分项的改进一、抗积分饱和积分作用虽能消除控制系统的静差,但它也有一个副作用,即会引起积分饱和。
在偏差始终存在的情况下,造成积分过量。
当偏差方向改变后,需经过一段时间后,输出u(n)才脱离饱和区。
经验总结四轴
四轴DIY小结徐江 cnmusic@一、概述四轴可以说是机械结构最简单的飞行器了,而且自己做起来也不是很难。
维护起来成本也比一般航模要低不少,所以我就花了差不多6个月的时间摸索着做了2个来玩。
这篇文章就是一个大概的记录,希望对后来人能有些帮助。
由于不少都是自己摸索的,难免有不少错误,所以“仅供参考”!☺在这里要感谢网友feng_matrix对我的帮助,通过和他的交流让我少走了不少弯路。
二、马达、电调、桨的选则在我第一次选择马达的时候,我选择的是有刷马达。
原因很简单,不需要复杂的电调,直接用MOS管就可以驱动了,而且响应速度又快,价格又便宜。
可惜没有买到合适的有刷马达,只好用减速组配高转速马达。
这样一来成本反而高了,而且实际的测试结果是马达里面火化直冒也无法将四轴自身拉离地面。
原因就是马达转速和减速组搭配不合理,转速过快但拉力不够。
经历过失败后,决定不在冒险,于是选择了大众配置:新西达2212,1000KV外转子无刷马达,新西达30A电调(好赢兼容的程序),在解决了如何安装的问题后,终于可以将四轴自身拉离地面了。
对于桨,由于条件所限,只能在淘宝上买到GWS三叶正反桨。
我测试的结果是10英寸桨最结实,因为它最大,最重,带来的结果就是低转速。
优点就是抗撞击。
一般的9英寸桨稍微碰到一点东西就断了,而10英寸桨一点事没有。
以前担心10英寸桨可能引起响应时间过长造成四轴无法稳定,后来发现真正影响响应时间的是电调,桨的关系倒不是很大。
当然这不是说10英寸桨就是金刚不坏之躯,只是比9英寸桨要结实一些罢了。
用商品化电调还是I2C电调?我一开始的四轴采用的就是商品电调,原因很简单,自己焊I2C电调多麻烦啊,还是用买的现成的省事。
但随着后面深入做下去,发现这2种电调的差异还是很大的。
对于我开始的商品电调,由于里面自带的PID控制器。
严重影响了转速的快速反应。
这就造成了对于四轴稳定性之一的“自动悬停”基本无法做到了。
由于自动悬停的首要要求就是在这就要求马达转速在四轴有倾斜时需要加快,而到快回到平衡位置时需要降下来。
PID调节经验总结
PID控制器参数选择的方法很多,例如试凑法、临界比例度法、扩充临界比例度法等。
但是,对于PID控制而言,参数的选择始终是一件非常烦杂的工作,需要经过不断的调整才能得到较为满意的控制效果。
依据经验,一般PID参数确定的步骤如下[42]:(1) 确定比例系数Kp确定比例系数Kp时,首先去掉PID的积分项和微分项,可以令Ti=0、Td=0,使之成为纯比例调节。
输入设定为系统允许输出最大值的60%~70%,比例系数Kp由0开始逐渐增大,直至系统出现振荡;再反过来,从此时的比例系数Kp逐渐减小,直至系统振荡消失。
记录此时的比例系数Kp,设定PID的比例系数Kp为当前值的60%~70%。
(2) 确定积分时间常数Ti比例系数Kp确定之后,设定一个较大的积分时间常数Ti,然后逐渐减小Ti,直至系统出现振荡,然后再反过来,逐渐增大Ti,直至系统振荡消失。
记录此时的Ti,设定PID的积分时间常数Ti为当前值的150%~180%。
(3) 确定微分时间常数Td微分时间常数Td一般不用设定,为0即可,此时PID调节转换为PI调节。
如果需要设定,则与确定Kp的方法相同,取不振荡时其值的30%。
(4) 系统空载、带载联调对PID参数进行微调,直到满足性能要求。
在编程时,可写成:Uo(n) = P *e(n) + I *[e(n)+e(n-1)+...+e(0)]+ D *[e(n)-e(n-1)]P-----改变P 可提高响应速度,减小静态误差,但太大会增大超调量和稳定时间。
I-----与P 的作用基本相似,但要使静态误差为0,必须使用积分。
D-----与P,I 的作用相反,主要是为了减小超调,减小稳定时间。
e(n)--------------------------本次误差e(n)+e(n-1)+...+e(0)------所有误差之和e(n)-e(n-1)------------------控制器输出与输入误差信号的微分(即误差的变化率),具有预见性,能预见偏差变化的趋势,因此能产生超前的控制作用,在偏差还没有形成之前,已被微分调节作用消除。
PID控制器的参数整定(经验总结)
PID控制器的参数整定(1)PID是比例,积分,微分的缩写.比例调节作用:是按比例反应系统的偏差,系统一旦出现了偏差,比例调节立即产生调节作用用以减少偏差。
比例作用大,可以加快调节,减少误差,但是过大的比例,使系统的稳定性下降,甚至造成系统的不稳定。
积分调节作用:是使系统消除稳态误差,提高无差度。
因为有误差,积分调节就进行,直至无差,积分调节停止,积分调节输出一常值。
积分作用的强弱取决与积分时间常数Ti,Ti越小,积分作用就越强。
反之Ti大,则积分作用弱,加入积分调节可使系统稳定性下降,动态响应变慢。
积分作用常与另两种调节规律结合,组成PI调节器或PID调节器。
微分调节作用:微分作用反映系统偏差信号的变化率,具有预见性,能预见偏差变化的趋势,因此能产生超前的控制作用,在偏差还没有形成之前,已被微分调节作用消除。
因此,可以改善系统的动态性能。
在微分时间选择合适情况下,可以减少超调,减少调节时间。
微分作用对噪声干扰有放大作用,因此过强的加微分调节,对系统抗干扰不利。
此外,微分反应的是变化率,而当输入没有变化时,微分作用输出为零。
微分作用不能单独使用,需要与另外两种调节规律相结合,组成PD或PID控制器。
(2) PID具体调节方法①方法一确定控制器参数数字PID控制器控制参数的选择,可按连续-时间PID参数整定方法进行。
在选择数字PID参数之前,首先应该确定控制器结构。
对允许有静差(或稳态误差)的系统,可以适当选择P或PD控制器,使稳态误差在允许的范围内。
对必须消除稳态误差的系统,应选择包含积分控制的PI或PID控制器。
一般来说,PI、PID和P控制器应用较多。
对于有滞后的对象,往往都加入微分控制。
选择参数控制器结构确定后,即可开始选择参数。
参数的选择,要根据受控对象的具体特性和对控制系统的性能要求进行。
工程上,一般要求整个闭环系统是稳定的,对给定量的变化能迅速响应并平滑跟踪,超调量小;在不同干扰作用下,能保证被控量在给定值;当环境参数发生变化时,整个系统能保持稳定,等等。
FANUC伺服第四轴调试
FANUC第四轴安装调试控制器形式:FAUNC OIMC参数设定步骤:1.开第四轴参数:1.1 NO.8130=4 (总轴数控制)由于新的OIMC控制器隐藏了9000号系统参数,第四轴系统参数已经开启,故只要开8130,18IMB还要开9944.2=0 可能还要开启NO.9943.3=11.2 开关机轴画面会出现B轴2.设定伺服马达型式参数: NO.2020( a4/4000i=273,a8/3000i=277,a12/3000i=293,)3.设定伺服初始化参数:3.1 NO.1023=43.2 NO.2000#1设0注意0i-MD系统下:14476#0 设1 1902#1 设0修改系统里面电机的地址需要将13112#1 修改后读取电机ID3.3 开关机NC自动设定伺服马达相关参数且伺服初始化参数NO.2000#1也自动设为1,( 相关伺服马达代码,参数参阅FAUNC AC SERVO MOTOR a seriesPARAMETER MANUAL)4.依次设定下表所列之参数参数参数说明设定值12#7 0:使用第四轴, 1: 不使用第四轴01005#7 解除轴控制 111005#3 0利用减速挡块进行参考点返回1与减速挡块无关,根据参数1005#7来选择快速定位到参考点或利用减速挡块进行参考点返回1006#1,#0 0,0:第四轴为直线轴0,1 0,1:第四轴为旋转轴0 1006#5 0:正向原点复归1:负向原点复归1 1008#0 0:旋转轴的循环功能无效1:旋转轴的循环功能有效1008#1 0:按距目标较近的旋转方向0 1:按指令值符号指定的方向1 1008#2 0:每一转的移动量不取整1:每一转的移动量取整1010 CNC控制轴数伺服第四轴设4 液压第四轴设3 4 1020 第四轴名称(65为A,66为B) 66 1023 各轴伺服轴号码 4 1260 旋转轴每一转的移动量360000 1420 各轴快速进给速度(F100%) 4000 1421 各轴快速进给F0速度400 1422 所有轴最大切削10000 1423 各轴手动慢速进给率360 1424 各轴手动快速进给率同参数1420 1425 各轴原点复归减速度300 1430 各轴最大切削进给率2000 1620 各轴快速进给线性或钟型加/减数时间常数(T1) 150 1621 各轴快速进给钟型加/减数时间常数(T2) 50 1622 各轴切削慢速进给加/减数时间常数60 1624 各轴手动慢速进给加/减数时间常数60 1816 参数计数器容量及检出倍率设定值100011820 各轴CMR指令倍率 21821 各轴的参考计数器容量依齿数比不同而设参考第四轴供应商资料1825 各轴位置回路增益30001826 各轴定位宽度201827 各轴切削进给定位宽度201828 各轴移动中位置偏差量极限值30001829 各轴停止中位置偏差量极限值5002021 各轴负载惯量比2562022 各轴马达旋转方向(C.W:-111,C.C.W:111)-1112023 各轴速度回授脉冲数81922024 各轴位置回授脉冲数125002084 各轴混合齿数比分子(N) 参考第四轴供应商资料2085 各轴混合齿数比分子(M) 参考第四轴供应商资料1422 VB系列设5000,其余设10000.以上参数设好后再设第四轴供应商提供的参数,1850.1851可以不设,2020按照实际马达规格而设,另外尽量按照第四轴供应商提供的参数设.注!1.1821设的不对可能造成关机后每次回原点都不准,具体设置如下:1821=360*NO.2084(N)/NO.2085(M)*1000此画面中的功能位设为1110003.参数2001-2017设的值与X轴一样4.正常情况下急停拉起来,第四轴七段数码管会显示0,若为横杠,把1005#7设0在试一下5.PLC参数设定(以C103-00为列)5.1 K0.1设1 第四轴必须先回原点才可程式启动5.2 K2.5设0 第四轴分别使用加紧信号和放松信号K2.5设1 第四轴只使用加紧信号5.3 K6.0设0 第四轴电磁阀动作时为松开或夹紧0: 松开,1: 夹紧所有参数设好后,把手轮打到第四轴看X3.3是否为1,X3.1是否为0, 不打到第四轴X3.1是否为1, X3.3是否为0,确认电磁阀动作油管是否冲油, 如果X3.3和X3.1刚好相反,换转接板62,63号线,再确认松开夹紧信号,用手轮摇第四轴,并在伺服调整画面下看(实际电流%)最大不要大于70,如果在100-200之间甚至更大,把K6.0设1, 对换转接板上面的62,63号线,摇手轮,再确认电流值,若还在100以上,要确认机械组装.伺服轴的一些查看参数3115.0=0 各轴当前位置显示各轴的伺服轴号1023设-1 使用主轴作为控制轴3115.0设1各轴的当前位置显示(0进行1不进行)1800.1设1不出现伺服报警1902.1设0如果伺服第四轴超程1320和1321都设为最大值第四轴参数设置说明2024 各轴位置回援派波数12500 2804 各轴混合齿数比之分子2085 各轴混合齿数比之分母》》备注《《1.检查单位=0.001(度/pulse)时候1.1参考计数器容量设定方法是(参数NO。
实用技巧快速调试PID控制器的方法
实用技巧快速调试PID控制器的方法PID控制器是工业自动化领域中常用的一种控制算法,它可以通过对系统反馈进行比例、积分和微分处理来实现精确的控制。
然而,在实际应用中,调试PID控制器可能会面临一些挑战,如参数调整、响应速度等。
本文将介绍一些实用的技巧,帮助您快速调试PID控制器,提高系统的稳定性和性能。
一、确定系统模型在调试PID控制器之前,首先需要了解被控对象的特性。
对于复杂系统,可以采用系统辨识的方法获得数学模型;对于简单系统,可以手动建立数学模型。
这有助于我们了解系统的传递函数、稳定性和频域特性,为后续参数调整提供依据。
二、初步参数调整初步参数调整是调试PID控制器的第一步,通过合理的参数选取可以快速获得较好的控制效果。
常用的方法有:1. 手动调整法:根据经验和直觉,分别调整比例、积分和微分系数,观察系统的响应。
逐步调整各个参数,直到系统的稳定性和性能达到满意的水平。
2. Ziegler-Nichols方法:该方法通过系统的阶跃响应曲线来确定PID参数。
具体步骤为:首先将积分和微分系数设为零,逐步增大比例系数,直到系统发生持续振荡;测量振荡的周期时间Tp和振幅Am,然后可以根据Ziegler-Nichols的公式计算出PID参数。
三、参数优化算法如果初步参数调整无法满足要求,可以使用一些自动化的参数优化算法来快速调试PID控制器。
常用的算法包括:1. 粒子群算法(PSO):该算法通过模拟粒子在搜索空间中的移动来寻找最优解。
将PID参数看作搜索空间中的一个点,根据目标函数(如系统稳定性、超调量等)来评估每个点的适应度,通过群体智能优化来获得最佳参数。
2. 遗传算法(GA):该算法通过模拟生物进化的过程来进行参数优化。
首先生成一个初始种群,利用交叉、变异等遗传操作产生新的种群,然后根据目标函数选择适应度高的个体进行下一轮进化。
通过多代进化,最终获得最优的PID参数。
四、频率域分析频率域分析是一种基于信号频率特性的调试方法,通过对控制系统施加不同频率的信号,分析系统的幅频特性和相频特性,从而调整PID参数。
PID调节经验
Kp: 比例系数----- 比例带(比例度)P:输入偏差信号变化的相对值与输出信号变化的相对值之比的百分数表示(比例系数的倒数)T:采样时间Ti: 积分时间Td: 微分时间温度T: P=20~60%,Ti=180~600s,Td=3-180s压力P: P=30~70%,Ti=24~180s,液位L: P=20~80%,Ti=60~300s,流量L: P=40~100%,Ti=6~60s。
(1)一般来说,在整定中,观察到曲线震荡很频繁,需把比例带增大以减少震荡;当曲线最大偏差大且趋于非周期过程时,需把比例带减少(2)当曲线波动较大时,应增大积分时间;曲线偏离给定值后,长时间回不来,则需减小积分时间,以加快消除余差。
(3)如果曲线震荡的厉害,需把微分作用减到最小,或暂时不加微分;曲线最大偏差大而衰减慢,需把微分时间加长而加大作用(4)比例带过小,积分时间过小或微分时间过大,都会产生周期性的激烈震荡。
积分时间过小,震荡周期较长;比例带过小,震荡周期较短;微分时间过大,震荡周期最短(5)比例带过大或积分时间过长,都会使过渡过程变化缓慢。
比例带过大,曲线如不规则的波浪较大的偏离给定值。
积分时间过长,曲线会通过非周期的不正常途径,慢慢回复到给定值。
注意:当积分时间过长或微分时间过大,超出允许的范围时,不管如果改变比例带,都是无法补救的1. PID调试步骤没有一种控制算法比PID调节规律更有效、更方便的了。
现在一些时髦点的调节器基本源自PID。
甚至可以这样说:PID调节器是其它控制调节算法的吗。
为什么PID应用如此广泛、又长久不衰?因为PID解决了自动控制理论所要解决的最基本问题,既系统的稳定性、快速性和准确性。
调节PID的参数,可实现在系统稳定的前提下,兼顾系统的带载能力和抗扰能力,同时,在PID调节器中引入积分项,系统增加了一个零积点,使之成为一阶或一阶以上的系统,这样系统阶跃响应的稳态误差就为零。
由于自动控制系统被控对象的千差万别,PID的参数也必须随之变化,以满足系统的性能要求。
基于APM的四轴飞行器调试
基于APM的四轴飞行器调试作者:孙彦彦来源:《中国校外教育(下旬)》2016年第10期主要讨论了四轴飞行器的调试方法:电机校准调试、电机方向调试、飞行模式调试、加速度校准及调试以及六通道遥控器调试等五个方面。
四轴飞行器调试APMPWM一、电机校准调试首先介绍一下四轴飞机的电机位置:四轴飞机正前方右上的电机为M1,对角电机为M2,四轴飞机正前方左上电机为M3,M3电机对角为M4。
将电机端口与电调连接,将电调的另一端与遥控器接收机相连(电调另一端有三条细线为黑、白、红,将端口插在接收机的3通道,红线朝上黑线朝下,即红线最接近数字3)把遥控器打开校准M1电机,把遥控器的油门挡打到最低后通电,电机会嘀嘀响两声后将遥控器油门打到最高,电机响一声,再将遥控器油门打回最低。
M1校准完成后将油门打到最高测电机最高转速,将油门打到最低点测最低转速,然后重复一次确保没有失误,把电池拔下断电,将遥控器打到最低油门挡。
M1电机校准完成后将M1电机的端口断开,把M2的电机端口连接电调,将M1电机的电调另一端与接收机的通道口断开连接在M2电机的电调端口,方法同M1,并以此方式对M3、M4进行调试。
二、电机方向调试电机校准完成后,重新连接M1电机,M1、M2电机转动方向为顺时针转动,M3、M4电机转动方向为逆时针转动,把电机螺旋桨处拧上纸片,将遥控器的油门挡慢慢向高档位移动查看M1电机上纸片的转动方向,M1电机螺旋桨上的纸片顺时针转动为正确转动,如果电机转动方式为逆时针转动,可将电机的三根端口线(红、黄、黑)的红线和黄线互换即可。
以此方法将M1、M2、M3、M4按照要求进行顺时针、逆时针调试完成。
以上是电机的校准及方向调试方式,注意在校准及调试过程中不可以在电机上安装螺旋桨。
三、飞行模式调试1.稳定模式Stabilize。
稳定模式是使用得最多的飞行模式,也是最基本的飞行模式,起飞和降落都应该使用此模式。
此模式下,飞控会让飞行器保持稳定,是初学者进行一般飞行的首选,也是FPV第一视角飞行的最佳模式。
四轴无人机项目个人总结
3.如果使用游戏手柄或飞机手柄、键盘等控制飞行器。在这一步中要点击上位机上的“飞行控制”模块,在此过程中应确保上位机的“飞行控制”开关处于“off”的状态。
检查各控制通道的行程是否合理,更为重要的是,检查遥控器的中点是否为1500。如果不为1500,在程序中将中点改为你实际看到的值。(目前匿名四轴的上位机还没出现“中点校准”设置,其实可以将这个值也放到EEPROM里)因为匿名四轴的程序里严格规定了遥控器的中点为1500。(个人觉得在飞控程序里可以加一个死区,增强系统的鲁棒性,对传感器的波动误差不那么敏感。当然了,有很多学术狗为了发论文,把死区也改成模糊控制方法,无非就是换了个名词)
P.S.建议设置为115200,而不是更高的波特率,蓝牙里更高波特率容易引起通信误码。
③AT+NAMEANOTC\n\r(注意要有回车) 这句话的字符串可以分为“AT+NAME”和“ANOTC”两个部分,第一部分是指令,第二部分是自定义的模块名称,也就是主机和从机配对的关键,可以自行更改名字,但要保证主从机名称一致。
4.装上桨叶,将上位机的“飞行控制”开关拨至“on”的状态。
按照上面的硬件装置图装配好,将A桨和B桨设置正确以后,推动油门(thr),每个桨叶产生的风力都应该是向下的,如果不是说明桨叶装配错了。
在这里要提一下,根据本人的经验,桨叶对飞行控制系统的影响是非常巨大的,建议新手测试时使用完好的桨叶来做。我平常在装配飞行器时,为了保障桨叶的重量,会用桨平衡器检测一下桨叶的两轴是否质量对称,如果不对称就给相应的地方贴胶带,这样才能保障飞行过程很平稳。另外,桨叶边缘有缺口或桨叶破损,都会对飞机有一定的影响。当你调节PID或飞控程序时,如果查不到问题可以从这方面想想。
在匿名四轴中,机身上的是蓝牙从机,每次上电后均重新配置了蓝牙从机。
pid课程设计心得体会
pid课程设计心得体会一、课程目标知识目标:使学生掌握PID控制原理的基本概念,理解其在工程领域的应用;学会运用数学模型描述物理过程,并运用PID控制器进行系统控制;掌握分析PID参数调整对系统性能影响的方法。
技能目标:培养学生运用PID理论知识解决实际问题的能力,通过实验操作,提高学生对PID参数调节的准确性和熟练度;培养学生团队协作能力和实验操作技能。
情感态度价值观目标:激发学生对自动化技术的兴趣,培养严谨的科学态度和探索精神;强化学生的环保意识,使其认识到PID控制在节能和环保方面的重要性。
课程性质:本课程为高中自动化控制技术入门课程,以理论知识与实践操作相结合的方式进行。
学生特点:高中二年级学生,具备一定的物理和数学基础,对自动化技术有一定的好奇心,但实践经验不足。
教学要求:结合学生特点,注重理论与实践相结合,强调知识的应用性和实践性;通过分组讨论和实验操作,培养学生的团队协作能力和动手能力;关注学生个体差异,提供个性化指导,确保每个学生都能达到课程目标。
将课程目标分解为具体的学习成果,以便后续教学设计和评估。
二、教学内容根据课程目标,教学内容主要包括以下几部分:1. PID控制原理:讲解比例(P)、积分(I)、微分(D)控制的基本概念,阐述PID控制器的工作原理及其在自动化系统中的应用。
2. 数学模型描述:介绍如何运用微分方程和传递函数描述物理过程,分析系统稳定性与性能指标。
3. PID参数调整:讲解PID参数对系统性能的影响,引导学生学会根据系统特点调整PID参数以优化控制效果。
4. 实践操作:安排实验,让学生分组进行PID控制器的设计、调试和优化,巩固理论知识,提高实际操作能力。
教学大纲安排如下:1. 引言和理论基础(1课时):介绍PID控制原理,引导学生了解课程内容。
2. 数学模型描述(2课时):讲解微分方程和传递函数,分析系统稳定性。
3. PID参数调整(2课时):讲解PID参数对系统性能的影响,举例说明如何调整参数。
四轴PID资料
我的四轴专用PID参数整定方法及原理---超长文慎入(转)给四轴调了好久的PID,总算是调好了,现分享PID参数整定的心得给大家,还请大家喷的时候手下留情。
首先说明一下,这篇文章的主旨并不是直接教你怎么调,而是告诉你这么调有什么道理,还要告诉大家为什么‘只’使用PID的四轴会在飞行中震荡,告诉大家为什么光使用PID并不能实现对四轴姿态‘足够好’的控制。
文章中还是涉及了不少自控原理和其他控制相关的,没有一点底子的话确实会看着很困惑(不然那么些人花好几年学控制还有什么意义?)。
如果你只想知道结论的话,直接看文章开头和结尾部分就好了(作者也支持大家这么做,这样被喷的几率就小了=_=)。
本人是刚刚转行学控制,思考错误的地方还请各位大神批评指正。
Ps:用wps画系统框图太费劲了,于是就一个豆没有画……,大家不会怪罪我吧?PID控制器是什么?我想每一个看到这里的人都对PID的概念有了足够的了解,我一遍遍叽歪比例积分微分没有任何意义。
这里我只想说一些大家提的较少的‘重点’内容:PID控制器是一个线性的控制器!从这里开始我们进入正题了,虽然若干年来PID已然成为了世界上使用最普遍的控制方法,也逐渐被人们神话到几乎可以控制一切………………但是,从理论上来说,只有‘线性的,符合要求的’被控系统才能在PID控制下实现良好的控制效果。
所以说,我们首先第一步,要保证我们的被控系统在被PID控制的区域‘表现为’一个线性系统才行。
于是这里有人会说了,现实中没有哪个系统是线性的,自然,我们的四轴飞行器在大范围内是一个非常典型的非线性系统(随便按照理论推推模型就会出现漫天的三角函数),也就是说,我们‘仅’使用标准PID控制的话是不可能让四轴从各个姿态回到目标状态的过程都能保持稳定。
于是这里出现我们使用PID时要注意的第一个问题:我们的PID控制只能工作在四轴角度偏移不大的一个近似线性的区域内。
这个区域没有定论,不过你要是飞机偏了90°的话想用PID调回到水平状态指定是非常危险的事情。
穿越机油门曲线PID综合调试篇(新手版)
穿越机油门曲线/PID/综合调试篇(新手版)首先一架穿越机拿到手以后,要先矫正一下电调最高点和最低点,具体办法就是把4个电调信号线(要接好电机)并联在一起,然后接入接收机油门通道,遥控器开机最大油门,然后接收机通电,听到滴一声,然后把油门收到最小位置,校准即完成。
接下来装好机在飞控参调软件里电机启动怠速里检查一下4个电机启动怠速是否基本一致。
接下来相信你的穿越机已经装好了,电机旋转方向,螺旋桨方向都也已经确认好没问题了。
现在需要先调试油门曲线,这个还是比较重要的,比如3S和4S电池的悬停油门位置是不一样的,假如你用4S电池,不调试曲线的话,或许在25%的油门位置就能悬停了,这样会使低速油门摇杆行程过短,造成降落困难。
所以确保悬停油门位置在45%-50%左右,如果你是210轴距的飞机,3S电池,那默认油门参数应该可以正常使用,至于油门EXP值,根据你的飞行风格来调试。
调好油门曲线以后需要调整通道的EXP值了,注意所有通道的EXP值不要在遥控器里调试,因为会影响PID的计算,遥控器里EXP全部设置为零,在参调软件里调试。
我个人喜欢把RATE值加起来,然后再调整PID,这样做动作比较灵活,容易后续调整PID判断飞机状态。
我用的是cleanflight,所以我一般把RATE值加到0.80(也可以设置为零,看个人喜好,对PID参调影响不大),然后再调整通道的EXP值,确保我悬停能控制住;如果EXP值过低,飞机会变得难以控制。
总之先不用管PID,要先确保飞机在手动模式的情况下能够悬停并且控制住,否则后面的PID调试会变得比较困难。
如果你的飞机应该能控制住,只是比自稳模式更加灵活一点,你就能接下来调整PID了。
PID:P:自稳强度,相当四轴起飞后在没有任何动作的情况下,飞机是否能够稳定住,以至于不会歪歪斜斜I:姿态保持,你不动杆的情况下,飞机是否能保持一个姿态飞下去。
D:姿态动作缓冲器,可以理解为针对P值的一个阻尼器,因为P值过高以后姿态会产生反弹,D值就是消除这个反弹以下是PID过高或者过低的表现:P过高:飞机在悬停姿态下都不停的高频抖动,左右抖,前后抖,可以通过螺旋桨声音来进行判断P过低:飞机在悬停姿态像喝醉酒一样摇摇晃晃不听控制I过高:飞机悬停的时候产生低频抖动,具体表现和P过高类似。
学会PID通用调试方法,什么控制器都不怕!
学会PID通用调试方法,什么控制器都不怕!【导读】搞懂PID基本原理和通用调试方法,不管是什么品牌的PLC还是其它控制器,都能比较快速的调试成功。
(一)先来彻底搞懂PID到底是什么?啥是PID?PID,就是“比例(proportional)、积分(integral)和微分(derivative)”,是一种很常见的控制算法。
算法是不可以吃的。
PID已经有107年的历史了。
它并不是什么很神圣的东西,大家一定都见过PID的实际应用。
比如四轴飞行器,再比如平衡小车......还有汽车的定速巡航、3D打印机上的温度控制器....就是类似于这种:需要将某一个物理量“保持稳定”的场合(比如维持平衡,稳定温度、转速等),PID都会派上大用场。
那么问题来了:比如,我想控制一个“热得快”,让一锅水的温度保持在50℃,这么简单的任务,为啥要用到微积分的理论呢。
你一定在想:这不是so easy嘛~ 小于50度就让它加热,大于50度就断电,不就行了?几行代码用Arduino分分钟写出来。
没错~在要求不高的情况下,确实可以这么干~ But!如果换一种说法,你就知道问题出在哪里了?如果我的控制对象是一辆汽车呢?要是希望汽车的车速保持在50km/h不动,你还敢这样干么。
设想一下,假如汽车的定速巡航电脑在某一时间测到车速是45km/h。
它立刻命令发动机:加速!结果,发动机那边突然来了个100%全油门,嗡的一下,汽车急加速到了60km/h。
这时电脑又发出命令:刹车!结果,吱...............哇............(乘客吐)所以,在大多数场合中,用“开关量”来控制一个物理量,就显得比较简单粗暴了。
有时候,是无法保持稳定的。
因为单片机、传感器不是无限快的,采集、控制需要时间。
而且,控制对象具有惯性。
比如你将一个加热器拔掉,它的“余热”(即热惯性)可能还会使水温继续升高一小会。
这时,就需要一种『算法』:•它可以将需要控制的物理量带到目标附近•它可以“预见”这个量的变化趋势•它也可以消除因为散热、阻力等因素造成的静态误差•....于是,当时的数学家们发明了这一历久不衰的算法——这就是PID。
基于PID控制的四轴飞行器姿态控制研究
IT 大视野数码世界 P .57基于PID 控制的四轴飞行器姿态控制研究原思杰 北方民族大学 宁夏银川市 750001摘要:随着无人机技术的发展,四轴飞行器已经广泛应用于军事与民用等领域。
军事方面,四轴飞行器凭借着体积小、飞行灵活等优势可以用于侦察。
民用方面,可以用来航拍以及植保等。
为了能使四轴飞行器在各种复杂的环境中能很好地完成飞行任务,需要提高四轴飞行器的飞行稳定性,而四轴飞行器飞行的稳定程度主要取决于飞行器姿态控制系统的优良程度。
本设计以意法半导体公司的ARM V7内核微控制处理器为核心,设计了四轴飞行器的飞行姿态控制系统。
关键字:四轴飞行器 姿态控制 ARM V7 中图分类号:TN929.12; 文献标识码: A1 飞行姿态控制系统的总体结构四轴飞行器姿态控制系统主要由主控制部分、动力部分以及航姿测量三个部分组成。
主控部分的核心是主控制器;动力部分主要由给飞行器提供动力的电机以及调速器构成;航姿测量部分主要由高度测量模块与姿态测量模块组成,高低测量模块包含气压温度计,姿态测量模块包含加速度计、陀螺仪以及磁力计等。
飞行器姿态控制系统的总体结构如下图1所示。
图1 四轴飞行器姿态控制系统的总体结构图2 飞行器坐标系建立四轴飞行器的飞行姿态可以用多种方式进行描述,例如可以用欧拉角、方向余弦等进行描述。
欧拉角主要用偏航角、俯仰角和滚转角来描述四轴飞行器的飞行姿态。
其中,偏航角为绕四轴飞行器的Z b 轴旋转得到,以机头右偏为正;俯仰角为绕四轴飞行器的Y b 轴得到,以飞行器的抬头为正;滚转角为绕四轴飞行器的X b 轴旋转得到,以飞行器的右滚为正。
假设初始时刻的两个坐标系重合,绕O e X e 得到旋转角φ;绕O e Y e 得到旋转角θ;绕O e Z e 得到旋转角Ψ,再转换到机体坐标系O b X b Y b Z b 。
它们的坐标系旋转关系如下图2所示。
图2 坐标系旋转关系示意图3 基于PID 的飞行姿态控制系统的设计本设计中飞行器飞行姿态控制回路中三维角速度的大小由加速度计与陀螺仪测量积分融合得到,通过加速度计测量的加速度数据不断补偿陀螺仪测得的角速度数据,以达到提高对四轴飞行姿态控制的准确性。
优化控制策略PID调试的实用技巧
优化控制策略PID调试的实用技巧在工程控制领域中,PID(比例-积分-微分)控制器是一种常用的控制策略。
PID调试的目标是使系统响应快速、稳定,并且能够抵抗各种扰动。
然而,PID控制器的调试并非一帆风顺,需要经验和技巧。
本文将介绍一些优化控制策略PID调试的实用技巧。
一、前期准备在进行PID调试之前,需要对被控系统进行全面了解。
这包括了解系统的动态特性、输入输出关系以及可能存在的扰动因素等。
此外,还需要明确控制目标和性能指标,以便在调试过程中进行评估。
二、增量调试法增量调试法是PID调试的一种常用方法。
其基本原理是先将积分和微分控制参数设为零,仅调试比例参数。
在这种情况下,控制器表现为纯比例控制器。
通过增大比例系数,可以加快系统响应,但可能造成系统超调。
减小比例系数,则可能导致系统响应迟缓。
在调试过程中,可以逐步增大比例系数,直到出现轻微超调,然后进行微调以达到最佳效果。
之后再逐步增加积分和微分控制参数,逐步完善控制效果。
三、频率响应法频率响应法是另一种常用的PID调试方法。
通过对系统进行频率响应测试,可以获取系统的频率特性曲线,从而确定PID控制参数。
在频率响应测试中,通过输入具有一定频率和振幅的信号,观察系统的输出响应。
根据输出相位和幅值的变化情况来确定PID参数。
在实际应用中,可以使用专业的频率响应测试设备或者MATLAB等软件进行频率响应分析。
四、变动幅值法变动幅值法是一种相对简单且实用的PID调试方法。
它基于对系统的步跃响应测试。
首先,将系统的控制参数设为初始值。
然后,输入一个幅值较大的步跃信号,观察系统的响应。
根据输出的超调量、响应时间等信息,逐步调整PID参数,直到系统的响应符合要求。
五、鲁棒性设计PID控制器的鲁棒性是指对系统参数变化和扰动干扰的抵抗能力。
在PID调试中,也需要考虑系统的鲁棒性设计。
通过增加相应控制策略的鲁棒性,可以提高系统的稳定性和鲁棒性。
例如,可以采用自适应PID控制策略,根据实时的系统状态和参数调整PID参数。
PID经验
同样,飞行器结构决定四轴翻滚与俯仰控制方式相同,前后或左右两颗电机转速变化,所以锁定pitch和roll
悬停pid p 用于控制飞机试图保持位置时用多大的俯仰角飞向盘旋目标。
悬停pid参数影响飞行器上下方向稳定,当飞行器定点模式,三通道在油门中立点,飞行器上下抖动,尝试改大或改小悬停pid p
当参数大于稳定值时,飞行器,出现前后方向抖动,高频率
自稳pitch p 实验稳定值为6 同roll
自稳yaw p 实验稳定值为5.5 同roll,pitch
飞行器转向目标航线的预期速率。如果这个值太高,可能引起振荡,但是自动模式下可以设置飞行方式,当改成对尾飞行时,不存在转向问题
Yaw速率 p
如果这个值太低,你永远不能停止旋转。如果太高,将会偏航振荡
悬停速率 p 飞行器朝目标点飞行的速率。如果这个值不够高,飞行器将不能在强风中飞行,而会漂移。如果太高,将会在目标点附近振荡
微分作用I 消除误差
微分作用d,在误差产生前抑制误差的控制,具有超前性,是跟随误差变化率的控制
Yaw速率
悬停速率
先p,再d,在i,一般p,d调节就可以解决问题
所有参数中一共有下列几个量是与油门有关系的,高度保持p / 油门加速度p,i,d / 油门速率 p 这些参数对自稳模式下飞行是有影响的,当自稳模式下感觉油门非常不跟手时,尝试改变上述参数,
在自稳模式试飞时,油门出现过下述现象,三通道推一点杆,油门有零点几秒的迟钝,然后飞行器快速爬升,然后改小油门加速度的i,现象消失。
3 roll与pitch就是两个非常相似的量(在重心在中心点的四轴而言)。
四轴PID调试心得-图文
四轴PID调试心得-图文本人曾在大二,大三参加过第六,第七届飞思卡尔智能车比赛,之后在考研过后在飞思卡尔智能车为我打下的良好基础下开始制作四轴飞行器。
在年中到现在陆续调试了两架四轴,一架十字,一架某。
其中四轴的平衡是很重要的一环,其中涉及到的PID整定,因为听闻今年摄像头也要站起来了,个人认为PID整定过程都有可以互相借鉴之处,顾在此一贴,也顺便为我的ARM-ST校园比赛求支持。
PID调试心得本人不是自动化出身,也没有受过专业训练,都是自己摸索,在这里浅述一下自己的PID参数整定心得。
所言之物皆由实践及自己的理解得出,如有不当之处还请指正。
首先例举第一个例子,我调的第一台四轴飞行器,十字型四轴飞行器,讲下配置:网上一百多的650机架,好赢20A电调,新西达22121000kV,1045的桨,2200mah电池。
采用位置式PID控制,位置式PID公式如下PID的基本意义我在次就不作阐述了,我只讲我的设计,我以姿态角作为被控制对象,所以e(k)=期望-测量=给定值-测量姿态角对于微分项D,我做了一点改变,标准PID的微分项D=kd某(e(k)-e(k-1)),我在实践过程中因为角度的微分就是角速度,而陀螺仪可以直接测出角速度,所以我没有将微分项作为偏差的差而是直接用D=kd某Gyro实现代码如下floatpidUpdate(piduite某pid,contfloatmeaured,floate某pect,floatgyro){floatoutput;taticfloatlatoutput=0;pid->deired=e某pect;//获取期望角度pid->error=pid->deired-meaured;//偏差:期望-测量值pid->integ+=pid->error某IMU_UPDATE_DT;//偏差积分if(pid->integ>pid->iLimit)//作积分限制{pid->integ=pid->iLimit;}eleif(pid->integ<-pid->iLimit){pid->integ=-pid->iLimit;}//pid->deriv=(pid->error-pid->prevError)/IMU_UPDATE_DT;//微分应该可用陀螺仪角速度代替pid->deriv=-gyro;if(fab(pid->error)>Piddeadband)//pid死区{pid->outP=pid->kp某pid->error;//方便独立观察pid->outI=pid->ki某pid->integ;pid->outD=pid->kd某pid->deriv;output=(pid->kp某pid->error)+(pid->ki某pid->integ)+(pid->kd某pid->deriv);}ele{output=latoutput;}pid->prevError=pid->error;//更新前一次偏差latoutput=output;returnoutput;}我这么做的原因是因为,如果使用传统的D的形式,在我快速打舵时会产生输入的设定值变化频繁且幅度较大,四轴飞行器会迅速回到新的期望点,说白了就是非常灵活,四轴回复很猛,也许造成系统的振荡,对PID参数要求较高。
四轴和多轴飞行器调PID平衡的绝招分析课件
位置PID控制
总结词
位置PID控制用于调整四轴飞行器在空间中的位置,通过不断比较实际位置与目标位置的误差,对误差进行比例、 积分和微分运算,以实现对位置的精确控制。
详细描述
在位置PID控制中,比例参数(P)用于调节当前位置与目标位置之间的误差,积分参数(I)用于减小稳态误差, 微分参数(D)则用于改善系统的动态性能。通过合理设置这些参数,可以确保四轴飞行器能够准确到达指定的 空间位置。
通过PID控制器结合GPS、IMU等传感器实 现多轴飞行器的导航控制,完成自主飞行、 避障和路径规划等任务。
04
PID平衡调整技巧与经验
PID参数整定方法
比例调节
通过调整比例系数来改变输出量 的大小,使系统快速响应。
积分调节
通过累积误差来调整输出量,消除 系统的稳态误差。
微分调节
通过预测误差的变化趋势来调整输 出量,改善系统的动态特性。
案例一
四轴飞行器PID参数调整步骤
案例二
四轴飞行器PID平衡调整实战
案例三
四轴飞行器PID平衡调整常见问题及解决方法
多轴飞行器PID平衡调整案例
案例一
多轴飞行器PID参数调整步骤
案例二
多轴飞行器PID平衡调整实战
案例三
多轴飞行器PID平衡调整常见问题及解决方法
实战经验分享与交流
Hale Waihona Puke 经验一01PID平衡调整的技巧与心得
微分系数(D)
用于改善系统的动态性能, 增大微分系数可以使系统 对误差的变化更加敏感。
PID控制优缺点
优点
PID控制具有简单易实现、稳定性 好、可靠性高等优点,广泛应用 于各种工业控制系统中。
缺点
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
在这里还应注意一点,当P太小时,四轴在很大倾斜的地方,在重力与P的作用下也会震荡,这种震荡不是等幅的,对称的,震荡波谷明显要比波峰绝对值大而且距离0度会很远。这种情况要加以区分。
我把P从0.2到0.8开始尝试,找到一个适合的点,最后我定为0.5。在这个过程中一开始我一直想通过P来消除静差,但是我发现我把P加到很大,已经震荡的很剧烈了,四轴的震荡中心都不是在0度位置。所以我只能选择先选好P,D最后加入I来解决这个问题。
调试方法还是先调平衡杆,如图:
刚开始调X的时候我以为跟十字的差不多,于是我只是简单的把原有PID参数按照新的程序里面的PWM值域缩放了一下倍数,但是发现不行,PID完全没有起作用。
具体表现为四轴开机后直往一边倒到底。只好重新开始调。
还是P=1,I=0,D=0开始,这组参数我发现,开机后四轴往一边倒,但是没有倒下就起不来了。在倒到一个很大的角度,大概70度左右,电机力量像是突然加大,四轴起来,反向,接着倒向另外一边。进入失控的大幅震荡。
别忘了以上调试过程中每次都需要给予平衡一个干扰,看看参数在外界干扰情况下做的如何,会不会产生超调震荡,会不会长时间才能稳定。以上就是我第一台四轴的PID调试。
下面我讲讲我在调第二个X四轴过程中遇到的问题。
第二架四轴是我做了用来参加爱板网的ARM-STM32校园比赛的,因为第一架属于学校了财产留在学校了,手里没有。第二架的配置采用的是飞越的650碳纤机架,电调用的是好赢的奔腾40A,电机同样是新西达2212 1000kV。其实这个机架和电调配这个电机是大才小用了,但是我的预算实在不够了就只好买了个水一点的电机,等以后在升级。这次我才用X型四轴,主要是挂了云台。PID的设计与之前讲的一样,就不多说了直接说调试中遇到的问题。
}
// pid->deriv = (pid->error - pid->prevError) / IMU_UPDATE_DT;//微分应该可用陀螺仪角速度代替
pid->deriv = -gyro;
if(fabs(pid->error)>Piddeadband)//pid死区
{
pid->outP = pid->kp * pid->error;//方便独立观察
{
output=lastoutput;
}
pid->prevError = pid->error;//更新前一次偏差
lastoutput=output;
return output;
}
我这么做的原因是因为,如果使用传统的D的形式,在我快速打舵时会产生输入的设定值变化频繁且幅度较大,四轴飞行器会迅速回到新的期望点,说白了就是非常灵活,四轴回复很猛,也许造成系统的振荡,对PID参数要求较高。如果用角速度代替的话,那怕你打舵非常快,四轴会较平稳的回到新位置,运动较柔和。对于我这种操作菜鸟来说无疑后面一种会更合适,所以我选择了D=kd*Gyro的方式。
实现代码如下
float pidUpdate(pidsuite* pid, const float measured,float expect,floatgyro)
{
float output;
static float lastoutput=0;
pid->desired=expect;//获取期望角度
pid->error = pid->desired - measured;//偏差:期望-测量值
pid->outI = pid->ki * pid->integ;
pid->outD = pid->kd * pid->deriv;
output = (pid->kp * pid->error) +
(pid->ki * pid->integ) +
(pid->kd * pid->deriv);
}
else
采用位置式PID控制,位置式PID公式如下
PID的基本意义我在次就不作阐述了,我只讲我的设计,我以姿态角作为被控制对象,所以
e(k) = 期望-测量 = 给定值-测量姿态角
对于微分项D,我做了一点改变,标准PID的微分项D=kd*(e(k)-e(k-1)),我在实践过程中因为角度的微分就是角速度,而陀螺仪可以直接测出角速度,所以我没有将微分项作为偏差的差而是直接用D=kd*Gyro
pid->integ += pid->error * IMU_UPDATE_DT;//偏差积分
if (pid->integ > pid->iLimit)//作积分限制
{
pid->integ = pid->iLimit;
}
else if (pid->integ < -pid->iLimit)
{
pid->integ = -pid->iLimit;
从头来调P,这次我观察到新现象。我把四轴稍微倾向一边几度,比如说左边,当P小时,启动电机松手后,四轴向左倒,如果P大了,四轴回向右倒。前者是补偿不足,后者是补偿过度。在这个两个P值得区间就有我们要找的P,合适的P就是能在平衡位置挣扎左右晃几下的值。此时我的P=3.0但是光靠P四轴还是站不住,只能在平衡位置坚持个1,2s。所以得加入D,尝试D=1,2,3时没什么明显的效果只能观察到起初的短时平衡跟稳定了点。D=10时可明显观察到平衡的时间跟长了,但还是会倒。当D=20,可明显观察到四轴可以基本平衡了,但还是有有小幅震荡,一但有干扰还是不能很快恢复稳定了,D=30时四轴已经开始比之前大的等幅震荡了,此时说明D大了。在这种情况下说明P还是给小了。我把D定在25,再开始调节P,把P加大。增强恢复力。后免得的调节过程中我就是感觉我就觉得,P会产生一种震荡A,这种A震荡是会发散的,频率较低。D也会产生一种震荡B,B是等幅的,频率较高的。然后P会抑制震荡B,但会激发A,D会抑制震荡A,但会激发B。后面的调节参数就是要调好P后再调D,定好D再调节P,两个参数互相扶持的趋近一个最佳点。当然机体表现出的等幅震荡时也不一定是D大了,P不合适同样也会产生此种情况。还有调节参数时不要一味只加不减。当我P=4,D=50时我就是将P往回减了点才取得了更好的效果。最后离开平衡杆时P=3.5,D=50。这次没有静差,所以没有I项。
PID调试心得
本人不是自动化出身,也没有受过专业训练,都是自己摸索,在这里浅述一下自己的PID参数整定心得。所言之物皆由实践及自己的理解得出,如有不当之处还请指正。
首先例举第一个例子,我调的第一台四轴飞行器,十字型四轴飞行器,讲下配置:
网上一百多的650机架,好赢20A电调,新西达2212 1000kV,1045的桨,2200mah电池。
我先调一个轴的平衡再调另外一个轴,最后调YAW轴。
A:开始只调P,将I,D置0。由于不知道PID的大致范围我就随便给了一组值
:P=1,I=0,D=0观察现象。一开电机四轴就开始剧烈左右摇摆,很明显P给大了。然后P从小了往上加。从P=0.1开始试。调试的时候我就发现了一个现象就是我的四轴往一边歪,离平衡的0度差了那么一个角度A,P=0.1时A较大,除非油门推到很大否则四周根本起不来,这是P说明给小了,我再将P=0.2这时四轴状况无明显改善。于是我直接将P加大一点P=0.8,P=0.8时已经可以看出在等幅震荡了,但是不是在0度的平衡位置,也是偏离的一个角度B,此时B较小了。之后我再加大P到1四轴震荡又变大了,但是到震荡中心到零度的静差还是存在。由于此时I=0,所以我决定不管这个静差,先把P的临界震荡点找到。P=0.8时可以观察到比较明显的等幅震荡了,P=0.2时四轴又嫌的无力,所以P应该在0.2~0.8之间。临界震荡点就是P从为震荡到,刚开始震荡的点。
本人曾在大二,大三参加过第六,第七届飞思卡尔智能车比赛,之后在考研过后在飞思卡尔智能车为我打下的良好基础下开始制作四轴飞行器。在年中到现在陆续调试了两架四轴,一架十字,一架X。其中四轴的平衡是很重要的一环,其中涉及到的PID整定,因为听闻今年摄像头也要站起来了,个人认为PID整定过程都有可以互相借鉴之处,顾在此一贴,也顺便为我的ARM-ST校园比赛求支持。
我观察到的是P无论怎么给,我的四轴都倒向一边然后开始进入发散的震荡,唯一的区别就是P小一开始倒下的角度大,P越大一开始倒下得角度越小,进入震荡的越快。此种情况与前一个四轴的情况截然不同。
当我潜入困境时,以为名叫螃蟹的网友帮助了我。他告诉我定P要定在把手放开,开始震荡,只要左右晃二三次就达到大晃动幅度,大晃动幅度大概是45度左右。定下这个P值后然后加入D,而且D有可能比P大。在这个基础上我又开始了调试。
PID控制器我大概就是这么实现的,下面讲讲我在调试过程中具体遇到的问题。首先我将四轴固定在单轴平衡平台上,让飞行器完成单轴平衡,主要观察姿态角的(1)稳定性,能否平衡在期望角度;(2)响应性,当操纵命令改变时,四轴能否即时的响应期望的变化;(3)操纵性,由操纵员感受四轴的姿态是否已与操纵,会不会产生响应过冲。
因为一开始就倒,所以是P太小。于是我开始加大P,但是当我把P加到很大时,四轴还是一开始往一边倒,然后电机力量增大,四轴翻倒向另外一边,开始发散性的震荡。此时我觉得开始P比较小的时候是P不足,电机的惯性的作用下开始震荡。到后来是P太大了,直接进入震荡。我始终没有观察到一个等幅震荡或者说接近小幅震荡的点。无论P大P小我的四轴都会进入失控的发散震荡。换而言之这个X四轴光靠P根本进入不不了一个比较稳定的状态或者接近稳定的状态。连相对稳定的等幅震荡都观察不到就直接进入发散的震荡。此时我开始困惑了。这个情况跟十字的很不一样。我没有明显观察到网上流传最通俗的调节PID说法的那种情况,即:逐渐加大P直到开始发生等幅震荡,然后P不变,加入D抑制震荡。。。