pid控制,就是线性控制,是自动控制中的主力。相信大家都有接触过红外的循迹车了。最简单的就是两个红外头,左边的压倒线,那就全速向左转,这个就不是线性控制了。但是这个做的好的,其实都是利用离散控制拟合成了线性控制。类似的典型控制就是pwm控制电机的转速,这个输出的电压不是线性的,而是脉冲,同样也是利用高频控制,拟合成了线性控制。现在的电机控制的pwm最少都上k的频率了,根本不存在线性化不好的问题,可是但你把pwm频率降到10hz级别时,那么就可以感觉到控制的不线性了。同样,循迹车,如果主循环不够快(我见过有人在主循环中加入delay的)那最后出来的效果就是车抽搐的前进。
循迹车只要控制频率足够了,就算是用的开关控制,照样可以圆滑的走出弧线。就是利用了压线也不压线的时间不同,来自动调整pwm,而这个pwm的频率,就是主控制频率。所以,这样的循迹车是就p控制的。根据车压线的时间占空比控制转向。而自控系统是一定要阻尼的,而循迹车的阻尼,自然就是车轮转弯时的机械阻尼了。
那么,循迹车这样的控制理论上已经就是完美控制了,但是,在机械上,没法做到完美,轮胎的打滑,是导致控制滞后的大因素。你玩过循迹车就会知道,在大摩擦力下,循迹性能大大提高了。
最后,循迹车之所以能用快关控制就达到很好的效果,是源于他的机械响应快,外力干扰微小,有良好的机械阻尼,传感器无噪音。
现在说回四轴,在理论情况下,同样可以用开关控制来控制,欧拉角在正于负,就只有两种输出,都是全速的偏转。但是四轴的很多原因,其中的任何一条,都可以让这种控制完全失控。首先是角度的噪音。还有机械的响应,阻尼只有空气阻尼。
其实很多自控系统都是这样的,那么,就要用到线性控制了,那么就要涉及到参数大小的问题了,而前面说的开关控制,实际上就是参数无限大的线性控制,而理论上,要达到自控性能的最大极限,就是用无限大的参数。而一直强调的pid整定,就是在控制系统各种噪音和滞后影响内做到控制性能最大极限的工作。
如果对pid还不清楚的,可以去找找资料看下,或者我举个例子:有一条线,你骑着车,现在要你尽量的控制车轮压在线上。首先,骑车的人技术怎么样就好比飞控的算法怎么样。车子性能怎么样就像四轴机架性能怎么样。给你一辆轮子都歪的车,或者把手都有虚位的。你也很难骑好。如果你使用开关控制,那么你会这么做,眼睛看到轮子偏离左边了,那么你会把把手全力打向右边,直到压线了,你就会全力回中,可以想到,你肯定会摔了。而如果你的脑子使用了pid控制,那么,你是会这么做的,眼睛看下线,轮子偏离了10cm,而且是以20cm每秒的速度继续偏移,那么你经过pd计算,和一个个周期不停的控制,最后肯定可以稳定的。那么现在你就是想知道到底pd参数要多大了。很明显,这个系统的滞后有人的反应,不过这个在电子系统中会大大改善。还有手转把手的反应,这个是机械的滞后,就算是四轴也无法避免的。这个和四轴的对比,区别就在于,四轴的控制频率比人高的多,四轴的机械响应应该和单车差不多,略好而已。但是人的算**很不自然的引入各种高级算法(经验)。除非是脑残,或者不会骑单车。
到这里,好像还没有pid参数到底要多大的说法,那么现在来说,对于不同的人,对理解不能偏离线的理解有不同,有些有强迫症的,会集中精力,一看到轮子偏了一点点就尽自己最大的力量骑回去。有些人就不这样,能大概的在线附近骑就可以了。那么就不用那么累的去控制,但是,他们都能做到不偏离线这个要求。只是参数大的,会跟的很紧,但是一旦有人推他,他又只想着尽快回去的话,很容易就摔了。这个就p控制,而d呢,就是指偏离线的速度了,如果是在偏离中,那么就要加大转向力度了,如果是在回来的过程中,那么就要转向回中了甚至是反向抑制回中速度。如果还无法理解的,那我再说个例子。04赛车。但是现在的终端线不是线了,而是悬崖。那么就要求车手在终点线上必须停车,那么问题就是什么时候要刹车了,刹车块了成绩差,慢了就挂了。那么怕死的就会在有把握的地方提前刹车。不怕死的技术有烂的可能就慢了,最后挂掉,只有技术好的才能做到刚刚好全程最大动力和刹车动力下完成比赛。那么这个时间的把握,就是这套系统的参数了。那么怎么确定这个点呢,有计算的方法,那就是计算车的动力,刹车摩擦力,质量等等。还有就是车手不停的练习了。
说说i,也就是积分,就在骑车的例子中,如果路面是向左边倾斜的。那么车子肯定会总是往左边偏,当你总是这样之后,你会下意识的总是让轮子转向右边,最后达到这种平衡。这个就是积分的作用,也就是消除静差。
到这里,pid的作用就差不多了,但好像我还是没说怎么调pid吧,如果到这里还问这个问题,那我也没法怎么说了。
只要你骑车时眼睛不是近视了,看不清线,那你可以选择各种控制力度,但最后都是可以做到在线上走的,除非你对这个控制目标没兴趣,走远了才想着回来,或者想做到你手的反应达不到的控制速度,但又这么做,最后可能就会摔倒。
应该能想到,这里的自控有很大的控制力度的范围,都是可以做到的,而那些做不到的,我只能说他可能连车的平衡都不会控制,就像四轴里的电机虚焊了,电机无法按命令的转速你转,或者眼睛近视了,就像欧拉角都没计算好,虽然能大概看到线,但是确是模糊不清的。如果单车的手把向做转,车子却向右,那不用说立马摔。或许有人可以做到马上学会反着控制。 |
|