|
本帖最后由 reach3 于 2017-9-25 16:31 编辑
当大家装完一架穿越机,开始试飞调试的时候,一个主要的调试项目是调飞控的PID。 发现有很多飞友不明白什么是PID,被它深深困扰,这里发帖解释一下。
PID是利用反馈进行自动控制的一种方法,或者叫算法。 这种算法主要有3个可以调节的参数,分别是P、I、D。所以就被命名为PID控制。
首先我们通过遥控器告诉飞控我们想要的飞机姿态,这个对飞控的自动控制系统来说就是控制的目标值。
然后飞控通过它的加速度传感器和陀螺仪,测量到了飞机的实际姿态,这个就是飞机的实际值。
目标值-实际值=偏差,知道了偏差,飞控就要去计算该怎样调整,计算的结果就是调整量。
调整量 = P*偏差 + I*(偏差的积分) + D*(偏差微分)这就是PID控制算法。
一般情况下, 调整量的主体部分来自P*偏差。 所以P是所有飞友调整pid参数时的一个最重要也是最先调整的参数。
然后对这个主体部分进行修正。修正有两种情况。
第一种情况:针对一个持续存在的微小偏差。在飞机上的体现就是慢慢的向着一个方向倾斜。这时P的作用不够,因为偏差很小,P*偏差算出的调整量还是不够,所以引入积分运算, 偏差存在的时间越久,偏差的积分就越大, I*(偏差的积分)算出的调整量就越大(当然积分的另一个作用是形成无偏差系统,这点大家看不明白就忽略),所以当飞机缓缓向一个方向倾斜时,就应该增加那个方向上的I参数了。
第二种情况:当出现一个快速变化的偏差时。 就是我们快速打杆,或者飞机猛地被风吹了一下时,或者飞机触地时。我们希望飞控能够瞬时给出一个调整,来维持飞机的稳定。偏差的变化速度越快,偏差的微分就越大, D*(偏差微分)就越大, 所以当你希望某个方向上飞机有更快的反应时,可以增加这个方向的D参数。
这就是PID,所有过头的(太大的参数)会导致计算出的调整量太大, 结果就是飞机震荡,开始是越振越小,然后稳定。再调大参数会持续震荡。再调大参数就直接震翻。
所以我非常希望大家在开始调机时,你的飞机不会持续震荡或者直接震翻,不要一推油门就炸机。通常飞控的PID出厂参数还是可以保证这点的。
当飞机起飞了,我们迈出了第一步。然后你一定会去追求更跟手,更稳定,更灵敏的手感或者飞机的状态。其实就是追求最合理的PID参数。在追求的过程中一般我们一定会经历“越振越小”这样一个状态,因为只有这个状态可以告诉我们,参数该往小的方向调了。至于该调 P、I、D中的哪一个呢? 那就要看原因是偏差、还是偏差的持续时间、还是偏差的变化速度,它们分别对应着PID。(有一种情况我们可以接受轻微的震荡,例如飞机触地导致的弹跳,其实就是触地导致的震荡。原因是飞机触地时导致的偏差变化速度是非常大的,按飞行姿态调出的D值,这时就显得太大了,但只要这种弹跳是我们可以控制的,我们会选择飞行的效果而忍受触地的弹跳)。
当然还有很多模友都总结了飞机状态、现象、手感分别该怎样调整PID, 他们的经验之谈也是非常行之有效的方法。 还有,不良的电机或桨,会带来额外的振动,让原来合理的PID变成“太大的参数”。这时我建议更换这些零件,而不是调小参数。
|
欢迎继续阅读楼主其他信息
|