あるモデルのPID制御について
1 次查看(过去 30 天)
显示 更早的评论
Simulinkで水で動かすモータのブロックを作りました。それをP、pi、pid制御のどれかでモータの角度を制御したいと思ってます。そこで、やってみたのですが、うまくいきません。どこで、間違えているのか教えてください。 モータの可動範囲は、±45°です。 水の圧力の範囲は、0~1.75MPaとします。
2 个评论
回答(1 个)
Hiroumi Mita
2018-1-9
添付のように、 このモデルのプラント(制御対象モデル)は、入力値の大小は関係なく ある閾値を境として+側に動く、-側に動きます。 入力の大少に関係なく、同じように動くので、いかなる制御でも制御はできません。 つまり、制御対象のモデルが適切ではありません。
多分、このモデルは圧力と流量に関するものと思われますが、 一般に、油圧、水圧系のモデルは圧力と流量を如何に変換するかがモデルの最重要点になります。また、そこが最も難しい点になります。 ここがちゃんとしてないと、まともにモデルは動きません。 拝見した限りでは、流量から圧力に積分で変換するところがもっとも怪しいです。 if条件分岐がありますが、ここも怪しいです。
そこで次のようにするとよいと思います。
#1. まず、簡単なモデルで流量と圧力の関係をしっかり固める。
#2. それがPID制御できるか確認する。
#3. その後にモデルを複雑にする。
今のモデルではなく、もっと簡単にします。まず、#1,#2をクリアーします。
また、圧力が高くなると、その分流量が多くなるので抜ける量が多くなります。 抜ける量が多くなるとその分圧力も下がるような仕掛けがあれば、 流量から圧力の変換積分で無制限に増大圧力が増大するようなことにはなりません。 そのあたりも再確認しましょう、
另请参阅
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!