!!! サイト改修中のため表示が乱れる場合があります(1月末頃まで) !!!
Raspberry Pi / Arduino

7-36. Arduinoで低温調理器を作ってみた(リレー、湯沸かし器、温度センサー)

やること

低温調理器が欲しかったのですが、結構高いようなので自作してみます。なお、本記事を参考にしたことによる事故の責任は負いかねます。

Arduinoに温度センサーとリレーモジュールを繋いで、リレーでキャンプ用投げ込み湯沸かし器をON/OFFします。こんなイメージです。※どの材料もAmazonで複数出品あるようなので適当に揃えてください

参考サイト

温度センサー(DS18B20)のライブラリおよび接続方法はこちら

GitHub - matmunk/DS18B20: Arduino library for the Maxim Integrated DS18B20 1-Wire temperature sensor.
Arduino library for the Maxim Integrated DS18B20 1-Wire temperature sensor. - matmunk/DS18B20

電源ケーブルをリレーに繋ぐ方法はこちら

電源タップに大電流リレーモジュールを接続 – てまりのユニバーサルデザイン

ハードウェア構成

全体像です。

まずは各モジュールの電圧と電流を考えます。温度センサーはDS18B20という素子のようで、パワーレンジが3.0~5.5V、電流は数mAらしい。リレーは5V駆動でドライバ電流は15~20mA。よっていずれもArduinoのポート(最大20mA)から制御できます。

温度センサーは参考文献のとおりに接続しますが、プルアップ抵抗4.7kΩ(文献によっては5.1kΩなど)がなかったので10kΩにしました。

湯沸かし器は本来は220Vのコンセントに繋ぐものらしいですが、100Vでも大丈夫とのレビューがありました。面白いのが、100Vだと沸騰に非常に時間がかかるというレビューが多く評価がちょっと低いです。しかし今回は60~70℃での保温が目的なためデメリットになりません!(にっこり)

湯沸かし器は大きな電流を必要とするため、一般にリレーモジュールかトランジスタでスイッチングすることになります。トランジスタのほうが小型化・静音性・応答速度のメリットがありますが、リレーは制御回路と大電流回路が物理的に絶縁されているのが特徴です。今回は100Vの電熱線ですし水回りで扱うこともあるのでリレーのほうが良いでしょう。このリレーは10Aいけるようなので大丈夫です。

最後に注意しなければならないのが、延長コードをリレーに繋ぐ方法です。参考文献では圧着端子で延長して繋いでいますが、電流によっては太さが足りずに焼ける可能性があります。湯沸かし器は220Vで600Wとのことなので、計算すると100Vでは1~2Aの電流が流れる(本当?)。2.5Aには0.2sq(スケア)の太さが必要で・・・と、このあたりでよくわからなくなったため延長コードの元々の太さを使うことにしました。

コードが多いので適当な箱に収めました。

ソフトウェア(Arduino)

まず、温度センサー(DS18B20)用のライブラリをインストールします。[ツール] > [ライブラリを管理…] から検索してインストールします。※もし以降で「OneWireライブラリも必要だよ」と言われたら同様にインストールしてください。

コードはこちら。

#include <DS18B20.h>

void setup() {
  Serial.begin(9600);
  pinMode(3, OUTPUT); //電熱線リレーはデジタル3番
  digitalWrite(3, HIGH); //HIGHで絶縁(OFF)
}

DS18B20 ds(2); //温度センサーはデジタル2番
float threshold = 63.0; //温度しきい値
float temp;

void loop() {
  //温度取得
  while (ds.selectNext()) {
    temp = ds.getTempC();
  }
  Serial.println(temp);

  //電熱線リレー動作
  if (temp < threshold){
    Serial.println("ON");
    digitalWrite(3, LOW); //LOWで導通(ON)
  } else {
    Serial.println("OFF");
    digitalWrite(3, HIGH); //HIGHで絶縁(OFF)
  }
  delay(2000);
}

注意したいのは、私が買ったリレーは無電力およびデジタルHIGHでOFF(左導通)、デジタルLOWでON(右導通)です。繋ぐ場所を入れ替えてやればHIGH=ONにもできるのですが、安全のため無電力時をOFFにしたい。そうするとどうしてもHIGH=OFFで運用するしかないのかなぁ、という感じです。ややこしいです。

もう一つの注意点は、温度センサーが外れると0℃を返すようで、永久に加熱を続けてしまいます。フェールセーフに反していますので調理中は台所を離れないようにしてください。※そもそもこの湯沸かし器は水からはみ出ると焼け焦げるようなので要注意です

台所でやる前に [ツール] > [シリアルモニタ] で動作確認しておくと良いかと思います。

本番

本当はジューシーな肉塊が食べたいのですが、とりあえず温泉卵を。ArduinoはDCジャック給電(7~12V)します。

常温の卵を使い、60℃付近からスタートして30分間動作させました。台所にあった温度計が65℃を指したあたりでリレーがカチカチと動作していました。温度計の誤差か、温度センサーの誤差か、対流がなくて温度勾配があったのか、要改善です。※製品は水を対流させています。

はい、できました。温泉卵の63℃は一般に「やや柔らかめ」なのでのちょうど良い仕上がりに見えます。

おわりに

材料費は・・・考えないことにしましょう。製品を買ったほうが楽で安全。Amazonで1万円未満からあるようですしね。

リアクションのお願い

「参考になった!」「刺激された!」と思ったらぜひリアクションをしましょう。エンジニアの世界はGive and Takeによって成り立っています。これからも無料で良質な情報にアクセスできるよう、Giveする人への感謝をリアクションで示しましょう!

この記事をシェアする

自身のブログ等で使用する場合は引用を忘れずに!

また、寄付も受け付けています。コーヒー1杯でとても喜びます(*˘︶˘*)

 Amazonでギフト券(アマギフ)を贈る

こちらのリンク から金額を指定してお贈りください。(デフォルトで10000円になっているのでご変更ください)

配送:Eメール
受取人:staffあっとvigne-cla.com
贈り主:あなたのお名前やニックネーム
メッセージ:◯◯の記事が参考になりました。など

のようにご入力ください。見返りはありませんのでご了承ください。

 Amazonで食事券(すかいらーく優待券)を贈る

500円 1000円 2000円 5000円 からお贈りください。

配送:Eメール
受取人:staffあっとvigne-cla.com
贈り主:あなたのお名前やニックネーム
メッセージ:◯◯の記事が参考になりました。など

のようにご入力ください。見返りはありませんのでご了承ください。

 その他、ギフト券やクーポン券をメールで贈る

デジタルのギフト券/クーポン券はメールアドレス(staffあっとvigne-cla.com)までお送りください。受領の返信をいたします。
紙のギフト券/クーポン券は 「郵便物はこちらへ」の住所 まで送付してください。名刺やメールアドレスを同封していただければ受領の連絡をいたします。
余った株主優待券等の処理におすすめです。
いずれも見返りはありませんのでご了承ください。

不明点はSNSでお気軽にご連絡ください

ビネクラのTwitter・Youtubeでコメントをください!


Slack・Discordの場合はこちらの公開グループに参加してShoya YasudaまでDMをください!


※当ブログに関することは何でもご相談・ご依頼可能です。

この記事を書いた人
Yasuda

博士(理学)。専門は免疫細胞、数理モデル、シミュレーション。米国、中国で研究に携わった。遺伝的アルゴリズム信者。物価上昇のため半額弁当とともに絶滅寸前。

タイトルとURLをコピーしました