3
使用遗传算法调整控制器
我已经阅读了一些有关控制非线性系统(例如非线性摆)的论文。有几种针对非线性系统的方法。最常见的是反馈线性化,后推和滑模控制器。 就我而言,我已经完成了控制简单摆的非线性模型以及C ++中其他操纵器问题的理论和实践部分。对于摆锤,我使用了后推控制器来解决角位移和速度的跟踪任务。结果是 θ¨+(k/m)θ˙+(g/L)sinθ=uθ¨+(k/m)θ˙+(g/L)sinθ=u \ddot{\theta} + (k/m) \dot{\theta} + (g/L) \sin\theta= u 其中和g = 9.81。m=0.5,k=0.0001,L=.2m=0.5,k=0.0001,L=.2m=0.5, k=0.0001, L=.2g=9.81g=9.81g=9.81 效果不错。但是,调整控制器非常耗时。大多数论文使用遗传算法来调整其控制器,例如PD,PID和反推控制器。我在这一领域一无所知,希望有人对此概念有所了解,如果有一个MATLAB示例至少可以控制一个简单的摆锤,那是更好的选择。 到目前为止,我已经在C ++ / Qt中设计了一个简单的GUI,以便手动调整控制器。在下图中,控制器对步进功能的响应。
9
control