5
6

More than 3 years have passed since last update.

初心者だけどエアコン自動化してみた

Last updated at Posted at 2021-07-31

はじめに

夏場になると暑くて夜中に目が覚めることがあります。そんな時に勝手にエアコンが付いたらいいなぁと思ったのがきっかけでした。
私はSEをやっているためLinux、シェルスクリプト、Pythonなど問題ありませんでしたが、電子工作というのは初めてでした。
Top.jpg

先人のやり方を真似る

ネットでいろいろ検索した結果、今回はこちらの記事を参考に進めることにしました。
(結局最小限の実装にとどまりましたが。。。)

買い出し!

参照記事をほぼ丸パクリしながら買いました。まずはエアコン自動化に必要なものです。

買ったもの 値段 備考
Raspberyy Pi Zero W 1320 スイッチサイエンスで1つ目は安く買える
micro SD card 32GB 780 ラズパイのストレージになる
温湿度・気圧センサモジュールキット 1080 温度、湿度、気圧も測れる
赤外線受信モジュール 100 2個入り
赤外線LED 100 5個入り
電源 1100 ラズパイ用の5V電源
電源コネクタ 229 ラズパイ用(USB→microUSBに変換するやつ)
基板 346 温湿度センサ、赤外線送受信機を載せるための基板
スペーサー 270 ラズパイと基板を止めるねじ的なやつ
抵抗コンデンサLED詰め合わせパック 693 この中から必要な抵抗を見繕う
NPNトランジスタ 100 10個入り
電解コンデンサー47μF 10 やろうと思えば詰め合わせパック内のものを組み合わせて賄える
ピンソケット 2x20(RPi本体用) 80 元々ピンが付いてるラズパイを購入すれば不要
ピンヘッダ 2x20(基板用) 50 ラズパイと基板を接続するために使う
ピンソケット 1x20 50 温度センサー取付用→参照記事にもあるが、必要分買えばいいかも(切るのが大変)
ピンヘッダ 1x40 35 温度センサーに付ける用。ピンヘッダはニッパで切りやすいから問題なし

上記以外にも電子工作初心者なので、はんだごてやスターターキットやらを買いました。
ラズパイのスターターキットの中にジャンパワイヤやブレッドボードが入っていたので、試作段階ではこれらを使いました。
(なんなら温度モジュール等も入っていたのでスターターキットで代用できた部分もありそう)

買ったもの 値段 備考
はんだごて 800 はんだ付けに必要なので購入
こて台 280 始めはいらないと思っていたけど、結局必要(こて台というか、こて台にもなるクリーナー)
はんだ 210 はんだ付けに必要なので購入
ラズパイスターターキット 4374 ラズパイ本体は入っていない

ラズパイの環境準備

この記事では細かい設定手順等は省きますが、ザックリ以下の手順で初期セットアップを進めました。

  1. ラズパイのOSをmicroSDに書き込む
  2. Wifiに接続するための設定をmicroSDに追加する
  3. microSDをラズパイにセットして起動する
  4. PCからラズパイにssh接続する
  5. 必要なライブラリのインストールや、コードのダウンロードをする

回路の作成

電子回路なんて右も左も分からなかったので、こちらでも基本的には参照記事をトレースする形で作業を進めました。
しかし、そのままではうまく動かなかった部分があったり、LEDを1つにしたりといった変更を加えたため、結局部品のデータシートを見て抵抗を計算して、、と電子回路の基本を学ぶ事になりました。(抵抗の計算とか大学受験ぶりにやった気がします。まさか大人になって使う機会があるとは。。。)

電子回路図

温湿度センサーモジュール、赤外線受信モジュール、赤外線LEDのそれぞれの電子回路図(Qiita用の清書版)です。素人なりに描いてみました。
電子回路図.png

プロトタイプの試運転!

上記回路図に従ってブレッドボードに各部品を載せて配線していきます。一通り載せ終わったのが以下です。
この状態で部屋の温湿度の計測、リモコン信号の送受信が可能です。
ProtoType.jpg

ひとまずシェルスクリプトで運用

最終的にはPythonでウェブアプリを作ってスマホから操作ができるようにしたいのですが、ひとまず動作確認として一定の温度・湿度を超えたら冷房を付けるシンプルな処理をシェルスクリプトで作成して数日間試運転しました。
最初は温度・湿度それぞれに閾値を設けていたのですが、途中から不快指数というものを導入してON/OFF制御プログラムを改良していきました。

本実装

試運転がいい感じに行ったのでユニバーサル基板に実装していきます。ラズパイと同サイズの小さな基板上に各パーツを配置しなければいけないので、しっかりと設計をしてから作業をしました。

基板上の回路図

各モジュールを基板に配置する際の回路図(Qiita用の清書版)がこちらです。(こちらも我流で描いています。)
水色の太線は裏側の裸線配線で、オレンジの太線は被覆線の配線を表しています。
基板上の回路.png

完成!!

完成品をリモコンと一緒に撮影してみました。こうして見るとすごく小さいですよね。
本当はケースも作ってあげたいですが、ひとまずこれで良しとします。
Complete.jpg

後日談

結局ずっとシェルスクリプト

ひとまず動かすためにシェルスクリプトでON/OFFの制御を行っていましたが、結局その後もシェルスクリプトを使い続けています。
(ssh接続用のスマホアプリを使って、ラズパイにsshしてLinuxコマンドを直打ちして操作しています。)
一応「スマホから操作」できているので良しとします。

ピー音がうるさくて眠れない

暑くなると自動的にエアコンが付いて、冷えると切れて、たしかに部屋を適温に保ってくれるのですが、、、悪いときには10分おきに「ピッ(電源ON)」「ピー(電源OFF)」とピー音が鳴ります。私は一度寝てしまえば問題ないのですが、寝ようとしている時これではさすがに寝れません。。。
ON/OFFの閾値の幅を広げたり、一度付けたら20分間は稼働し続けるようにしたり、さらには0時までは自動制御をさせないようにしたりと試行錯誤で対策しています。

温度計がおかしい??

完成品にしてからセンサーが示す温度が高いような。。。と思っていたら、なんと、コンパクト過ぎるゆえにCPUの放熱で温度センサーが熱せられているではありませんか!

あれこれ対策を考えましたが、最終的に導線で接続してラズパイの放熱の影響のないところで温度を測る様にしました。
(なんかあんまりかっこよくない。。。)
Moyashi.jpg

終わりに

今回は初めての電子工作だったことと、「IoT=ラズパイだ!」というイメージからラズパイを使いましたが
「このためだけにラズパイってオーバースペックでは??」
「もっと安くできないのかなぁ??」
と思った節もあります。

少し調べてみると、難易度は上がりますがPICマイコンを使うことでもっと安くコンパクトにできるかも知れないことが分かりました。

今回値段の高かったパーツの代替候補をまとめてみました。(※これでできるかは分かりません)

現行品(金額) 代替品(金額)
ラズパイ+microSD(2100) PICマイコン(160)
温湿度・気圧センサモジュールキット(1080) 温湿度センサモジュール(300)
電源(1100) 電源(500)

計算してみると、4280円→960円と3320円もコストダウンに成功しています!
ということで次に電子工作をする時はPICマイコンにチャレンジしてみたいと思います。


お読みいただきありがとうございました。

5
6
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
5
6