MCUに実装されたPIDコントローラーを使用してフィードバックを実行する簡単なサーボシステムがあります。ただし、システムのプロパティは動的に変更されるため、すべての状況でPIDパラメーターを調整することはできません。
私のロボットは、これに似た逆駆動可能な電動モーターを備えた軽量アームです。
アームは、重いものを持ち上げたり、机の上で物を押したり引いたりするなど、いくつかのタスクを実行します。これらの各タスクには、簡単に予測できないさまざまなPID調整パラメーターが必要です。
私が本当に欲しいのは、腕の動作に応じてパラメータを慎重に調整できる、より高いレベルの機能です。たとえば、腕が振動していることに気付いた場合、Pを減らしてDを増やすことができます。または、腕が目標に到達していないことに気付いた場合、Iを増やすことができます。
そのようなアルゴリズムは存在しますか?アルゴリズムがすぐにパラメーターを完成しなかったとしても、私は幸せです。例えば、パラメーターが新しい値に調整される前に、腕が数回振動する可能性がありました。