【Arduino】ペルチェ素子を一定温度に制御する(温度センサ編)
はじめに
ZAWAWORKSアドベントカレンダー2022、5日目の記事です!
以前、「心の温度が伝わるおっぱいマウスパッド」を開発しました。
このとき一定の温度にキープするために、ペルチェ素子をPID制御しました。今回は、Arduinoキットにも入っている温度センサLM35DZ
を用いた場合のペルチェ素子のPID制御の方法をまとめます。
PID制御とは?
超絶大雑把にいうと目的値を超えるとOFF、目的値より下がるとONにすることで値を調整する方法です。たとえばペルチェ素子を40℃(高い温度)にキープしたいときに、ペルチェ素子が40℃を超えると電流をOFFにして40℃冷めるのを待ち、40℃より下がると電流をONにして40℃まで熱くなるのを待ちます。同じような方法はありますが、その中でも最も精度が高いのがPID制御です。
厳密に説明しようとすると数学の知識が必要になってしまうので、この記事では説明しません。より詳しく知りたい方は、以下の記事を読んでみてください。
使ったもの
A. Arduino UNO
B. ペルチェ素子 6.3A 40×40mm TETC1-12706-T100-SS-TF01-ALO
C. ADRSRU 8回路
D. 温度センサ (LM35DZ 温度センサIC)
E. ジャンプワイヤ オス-オス 1本
F. ジャンプワイヤ オス-メス 6本
色数が多いジャンプワイヤがオススメです
G. 電池ボックス 単3 4本
H. サンハヤト ジャンプワイヤ SMP-200 ミノムシ付
I. ブレッドボード
回路
リレー・温度センサ・Arduino
完成図
リレー・ペルチェ素子・電池ボックス
温度センサ・ペルチェ素子
温度センサをペルチェ素子の文字が書いていない面(放熱する面)に着けます。
コード
長くなったので、以下のgistにまとめました。
kp
, ki
, kd
の値を変えれば、一定の温度にする精度が変えられます。どの値になれば精度になればいいのかは、それぞれ値を変えて様子を見ないとわかりません。精度を求めている方は、kp
, 'ki', 'kd'の値を変えて、様子をみてください。
おわりに
今回は、ペルチェ素子と温度センサLM35DZ
を用いたPID制御の方法についてまとめました。
ただし、温度を測定するのは温度センサだけでなくサーミスタという電子部品でも温度を測定できます。サーミスタを使う場合、配線やコードが温度センサの場合と異なるので、次回の記事ではサーミスタを用いた時のPID制御の方法についてまとめます。
宣伝|大阪の梅田で展示会を開催します!
※これは2022年のものです
12/22(木)~12/25(日)
に、まるでリア充のような体験ができる「バーチャルリアジュウ展」を開きます!
電子工作やVRで、あなたを「バーチャルリア充(ほぼリア充)」に変えます!
クリスマスシーズン、時間に余裕がある方はぜひお越しください!
著者プロフィール
ZAWA WORKS
モテない理系男子の末路。妄想を叶える装置を日々開発中。
Discussion