我正在寻找我的下一个模拟器开发:一辆油轮以恒定速度(350节)飞行(无加速度,高度或方向不变)。无人机需要从后面接近加油机,该加油机需要通过电线加油或传输数据。无人机知道加油机的方向,速度和相对位置,以便平稳地接近它。它知道在距加油机约5 m处是成功的联系方式。
我在互联网上找到一张照片,但显然有超过一千个字:
为了完成任务,我想实现一个控制位置和速度的“简单” PID,但为此我想到了两种不同的设计方法:
解决方案一:我系统的运动方程式提供了无人机的位置$ x,y,z $和速度$ Vx,Vy,Vz $(为简化起见,我将仅考虑$ x $,当然$ y z $也必须最终考虑)。这些信息以油轮的所需位置(5m)和速度(350节)反馈。每种状态的反馈线是分开的,PID的工作原理如下图所示:
请注意,为简化起见,我从未考虑过加速度。解决方案二:这是最棘手的问题,我昨天一直在思考。在这种情况下,仅一个状态向量将被反馈到期望的设定点。在这种情况下,我将仅反馈速度,然后对其积分,并将结果输入第二个PID。也许下面的图片更清晰:
但是在这里,我不确定第二个想法在概念上是错误的还是可以承受的。我很确定第一个可以正常工作并产生良好的结果,但是我想知道第二个是否可以负担得起或不建议用于控件设计。
注意事项
#1 楼
您提出的两种解决方案都遭受两个PID之间不必要的交互作用。您基本上是在尝试分配两个同时的目标-即最终相对位置以及终端非空速-当系统只有一个输入变量时,假设是推动无人机动态的“推力”。正确的方案应为以下所示的方案:
只有一个PID为系统提供驱动力,这是由Tanker建模动力学之间的误差提供的(加上相对偏移量)和当前无人机位置。
此处绘制了工厂$ m \ ddot {x} =-d \ dot {x} + u $的典型结果,其中$ m = 10 $,$ d = 0.1 $ $ x(0)=(0,0)'$,控制器的参数为$ P = 22.608 $,$ I = 0.874 $,$ D = 51.891 $,$ N = 10.413 $(并行形式的PID)。
如图所示,无人机的独特目标是赶上飞行中的加油机的位置;最终也将终端速度变为等于期望速度这一事实完全是由于良好的位置跟踪性能带来的积极结果。当您很好地跟踪位置时,您还可以跟踪其随时间的变化(即其速度)。
关于分层控制回路的实况消息:当设计人员选择内部和内部组合时具有两个嵌套PID的外部回路,他只能将外部回路的最终位置指定为设定点,而内部PID则被调整为具有一定的动态性能,但没有任何稳态速度。 >