- ベストアンサー
PID制御のサンプリングと制御出力の時間間隔
- PID制御を使用して水の温度を制御する際のサンプリング単位と制御出力の時間間隔について調べました。
- 通電の比率をPID制御で制御するために、1秒毎にサンプリングを行い出力を計算します。
- 速度型PID制御を使用すると、サンプリング期間のみの出力から制御対象の変化分だけの出力を行うことができます。
- みんなの回答 (4)
- 専門家の回答
質問者が選んだベストアンサー
- ベストアンサー
おまけ 私の空想では熱帯魚の水槽のような構造です。1秒で1℃上がった、0.1秒で0.5℃上がった、というけれど、それが意味が有るのかどうなのか? 温度計とヒーターの間には自然対流の水がゆらゆらとうごめいています。いま温度計を包んでいる水は、ヒーターで加熱された水であるかもしれない。とすれば、水槽の他の部分の水は放熱によって冷やされているので、温度計を基準に温度を制御しても水槽全体は設定温度に達しません。あるいは温度計の周りの水は対流によって上から押し下げられた冷たい水かもしれない。であればこれを基準に温度を制御すれば水槽の温度は上がりすぎとなるでしょう。実際にはこの二極の状況がゆらゆらと入れ替わっていると言ったところでしょう。 問題はこんなミクロな状況ではなく、ヒーター、水、温度計という系の温度がどのような速度で上昇下降してまた平均するかです。0.1秒後に温度計の温度が上がった、下がった、という情報は、平均温度の変化と相関が無いと思いますよ。 実を言うと精密に制御するのは難しいと思います。水の出入りが無いならば、温度の上昇下降を遅く、なるべく同じ速度にすることが簡単です。水の出入りがあるなら水を攪拌することです。 質問への回答としては前の中ほどに書いたように、PID制御のサンプリング単位と制御出力の時間間隔は同じでなくてよろしいです。
その他の回答 (3)
- tetsumyi
- ベストアンサー率25% (1946/7535)
温度制御は制御対象の熱容量とヒータの発熱量で変わるのでこれらを検討して必要充分なサンプリングと制御を決めることになる。 疑問があるのならプログラミングで簡単にテストできるのだからやってみれば?
- lumiheart
- ベストアンサー率47% (1141/2406)
>1秒経過後の偏差が0.5℃だと、 これは温度制御業界では超高速レンジの部類になります 秒でなく分とか時間レンジの方が遥かに多い http://www.noritake.co.jp/products/eeg/heat/kiln/rhk/ http://www.takasago-inc.co.jp/industry/#industry-2 こんなヤツは常温から2000度まで上げるのに 24時間以上かかるのは珍しくない 秒レンジで計測するのは概ねヒータ表面温度くらいでしょうかね ワーク温度(負荷対象物)は概ね分単位 例えば水温とか油温度とか金型温度、樹脂温度、流体温度 http://www.fa.omron.co.jp/product/special/tc/introduction/ https://www.rkcinst.co.jp/techno/16/techno_16.htm 身近な事例でもエアコンとかも エアコン吹き出し口温度は秒単位で変化するかも知れないが 吹き出し口から遠い場所の気温は暑いままなので 暑いと騒ぐ人と寒すぎると嘆く人が絶えない http://panasonic.jp/aircon/18feature/sensor.html 因みにモータ駆動制御にもPIDは使用されます でも、その場合はミリセカンド単位です http://www.mitsubishielectric.co.jp/fa/products/drv/servo/index.html https://www.renesas.com/ja-jp/promotions/implementation/rx23t24t-rssk.html?cid=r_top-3_prm_rx-motor_180131
お礼
回答ありがとうございます。 確かにサンプリング期間は制御対象によって決まりますね、、 あるオムロンの温度調節器のサンプリング期間が50msと書いてあったので、もしかしたら速いほうが良いかも、と思ったもので、、
ディジタルの世界がどうであっても、現実の温度計には、ヒーターから温度計までの伝達の遅れがあり、温度計自身の温度変化の遅れがあるんですから、サンプリング周期とヒーターのON/OFF周期は初めから関係がありません。逆に言えば、ヒーターから温度計までの温度伝達の遅れが問題なのであって、デジタルの世界の中で頑張って温度のサンプリング周期を短くしてもあまり効果が無いと思いますよ。むしろ水を洗濯機のように攪拌して温度計の熱容量を小さいものにするのがいいんじゃないですか。もうしてるでしょうけど。
補足
回答ありがとうございます。 おっしゃる通り、遅れが存在しているので効果はないのかもしれません。 ただ、サンプリングが1秒間隔で偏差が1℃だと、その期間の偏差が1℃として制御しますよね。ですが、サンプリングが0.1秒間隔で初期の偏差が1℃、1秒経過後の偏差が0.5℃だと、理屈上、そのぶんだけ次の制御出力を細かく調整できるのでは?と考えました。 効果のほどはわからないですが、、
お礼
回答ありがとうございます。 別の方から制御出力とサンプリング期間は同じでなくて良いとの回答をいただきましたので、実際にやってみることにします。