初代PID制御の温度センサ確認治具

カテゴリー: PID制御  タグ:

この記事は旧サイト2007年の製作記事から移行し再編したものです。

特注温度センサーの動作確認を行う

特注温度センサーを組み込んだ機器の動作確認に使う治具です。高精度の校正に使うものではありませんが、1℃以下の目標値に素早く追従して温度センサーの機能を確認できる性能を目指しました。

設定範囲は-10℃~70℃です。

使用部品

  • 千石で購入した80Wタイプのペルチェ素子
  • 放熱器・ファンはジャンクを秋葉原で購入
  • コントローラに秋月AKI-H8/3664F

機構部の製作

  • 上下に分けたアルミブロックにセンサー径に合わせた穴をあける。
  • フィードバックセンサはLM35を後方から挿入
  • アルミブロックを固定し、更にペルチェを接着(信越シリコーン製KE44)
  • さらに放熱器を同じくKE44で接着
  • 最終的にブロック全体をポリエチレンフォームで覆う
  • 回路を配線しケースに格納
  • ケースサイズに合う24V電源はモールドタイプを探した

回路図はここ

ソフトウェアの説明

PID制御

PIDとはP(Propotional:比例)、I(Integral:積分)、D(Defferential:微分[差分])を用いた制御の頭文字です。

【P制御】目標値との差に比例した出力を出します。目標値付近では出力値も小さくなります。

【I制御】P制御だけでは目標値付近でオフセットを生じる場合が多く(目標値直前で安定してしまう)、そのため目標値との差を積分した(加算)した値を加算してオフセットを打ち消します。この積分が大きすぎると行き過ぎ(オーバーシュート)してしまいます。

【D制御】外部からの影響で現在値が変化した場合に、微分(変化率)を加算して追従します。

PIDの基本式は

y=Kp(e+1/Ki∫edt+Kd(de/dt))

これをサンプル毎の差分方程式の形で計算する「速度型」に変形した式で内部計算しています。計算内容は基本式と同じです。初回からの累積を引きずることがないのでCPUによる計算には有利といわれますが、リミットをかけたりするのに工夫が必要です。微分は不完全微分です。

オートチューニングの実装

専用機なのでパラメータは一度決めた値で問題ありませんが、あえてチューニング機能を付けてみました。古典的なステップ応答法です。

室温にした状態からステップ応答(ヒーター100%ON)にして、無駄時間prmTと90%に達する時間prmLを測定し、

  • Kp = 120.0*prmT/prmL/(Vi-Vini)
  • Ki = 2.0 * prmL
  • Kd = 0.5 * prmL

プログラムでは自動でステップ応答させ係数を算出しています

ソースファイル TmpContorol.ZIP

LCDの表示にH8用のRTOSであるHOSを使っています。RTOSといってもLCD表示だけでも有効です。