- ベストアンサー
PID制御について
下記の「モータ制御の仕方」を見ています。 http://www.picfun.com/motorframe.html このPID制御によりヒータの制御をしたいと 考えています。 しかし定性的に理解できない点があり、皆様のお知恵をお借りしたく質問させていただきました。 PI制御において 結果的に操作量Vのとき現在値が目標値に達し、その状態を維持できると仮定します。 現在値が目標値になったときは 1.偏差が0になるので比例項は0になります。 2.そうすると操作量Vを維持するものは積分項のみとなります。 3.最適に制御された場合ということは目標値に達したとき積分項の値がVです。 4.もし3.での積分項の値がVより大きければ必ずオーバーシュートが発生して -偏差が発生し積分項を減らしVに近づきます。 という考えでよいのでしょうか? よろしくお願いします。
- みんなの回答 (3)
- 専門家の回答
質問者が選んだベストアンサー
PV=SVの時はMVはゼロになります 但し、問題はMVがゼロである時間です 例えば電気炉の温度制御の場合でSV=100℃でPV=100℃の時 表示上は100ですが内部演算的には100.01とか単に小数点以下は 演算には使っても普通は表示させない で、100.00℃が存在しうる時間はせいぜい1~2分 99.99℃なら数秒も経つと積分の積算が開始されます 99.99℃の状態で数分にもなると積分が溜まりMVは10%とかに増えます 99.99℃のままの状態からヒータに10%電力を投入しても炉の自然冷却の方が 大きければ焼け石に水でPV値はまだ下がり99.90℃とかになります そうすると更に積分現在値は増えてMV値が30%とかになり電力も30%に上がります そこまで上がるとやっと温度が上がり100.01℃とかになると積分値は下がります ただ、普通の温度制御ではマイナスMV値は有りません(特殊な場合は冷却になります) 質問者さんが挙げられてるモータの速度制御の場合はゼロにはなりません (モータの場合でのゼロは回転停止です) ただ回転数制御の場合は制御時間がミリセカンド単位になります (上記のような温調制御では秒単位か分単位) 例えばSV1000rpm、PV1000rpm、MV50%で回転中のモータが PV999rpmに下がったらミリセカンド単で積分が積算されMV値が上がります 要するに完全な安定状態は存在しない 有る程度の振動とゆらぎを伴って安定する それを表に出すか出さないかの違いだけです http://www.m-system.co.jp/rensai/rensai_top.htm#pid http://www.compoclub.com/products/knowledge/jidou_seigyo/index.html
その他の回答 (2)
- rabbit_cat
- ベストアンサー率40% (829/2062)
>PI制御ですからP、Iが共に0になったら操作量が0になりませんか? 普通、制御される対象の系っていうのは、微分方程式で表されるので、例えば、1/(s+1) みたいな感じになるはずなんで、制御される対象の系自身に積分の要素が入っているはずです。なんで、操作量が0になっても、出力される現在値は0にはなりません。 もし、そうではなくて、制御される対象の系には積分がまったく含まれてないとなると(かなり特殊な例ですが)、仰るようなことになりますが。
- rabbit_cat
- ベストアンサー率40% (829/2062)
PID制御っていうのは、 ・目標値から偏差に比例して操作量を変化させる(P), ・目標値から偏差の積分に比例して操作量を変化させる(I), ・目標値から偏差の微分に比例して操作量を変化させる(D), てことですので、外乱がないとして、現在値が目標値に達し、その状態を維持できるときには、P、I、Dの全てが0になります。
お礼
回答ありがとうございます。 >P、I、Dの全てが0になります。 PI制御ですからP、Iが共に0になったら操作量が 0になりませんか?