気の向くままに辿るIT/ICT/IoT
IoT・電子工作

Arduinoでエアコンを制御

ホーム前へ次へ
Arduinoって?

Arduinoでエアコンを制御

Arduinoでエアコンを制御

2017/12/10

 Arduinoを使ってエアコンを完全制御する仕組みを作るページ。

 ArduinoやRaspberry Piでエアコンというとリモコン操作や遠隔制御が話題にのぼることが多いと思いますが、ここでは、ホームオートメーション的な?制御をすることを想定。

 ただ、今は、やる気が起きないので、とりあえず、構想だけ巡らせておくことにします。

2018/08/15

 Arduinoより、ESP8266の方が適していると思い、構想を練り直し、検証してみた結果、冷房・暖房・除湿などの自動ON、併せて無線LAN経由のブラウザからの遠隔ON/OFF操作含め、機能的には、実現可能ですが、運用面から構想に留めておくことにしました

Arduinoによるエアコン操作の構想

 曖昧な点や確認済み事項などは後述しますが、具体的な回路を思い描いているわけではないため、夢物語になる部分もあるかもしれないし、配線、配置も薄らぼんやりしているため、全く思い通りに具現化できるとは言い切れないがイメージとしてはこんな感じです。

 Arduinoボード+温度センサ+RTCモジュールを使って12月〜2月など冬期は、仮に5分以上、15度以下である場合には、暖房を、7月〜9月など夏季は、仮に5分以上、30度以上である場合には、冷房を入れるべく、スイッチ付き電源タップのスイッチをサーボモータで物理的にONさせ、少し待って予め学習させておいた送信コードを赤外線送信することで暖房or冷房をONさせ、OFFする際は人的にリモコン操作を行なうものとします。

 当然、リモコンを使えば、常時、人的にON/OFFできるものとします。

 できることなら消し忘れ防止も含め、仮に24時間連続運転した場合には、OFFにし、何らかの方法でリセットをかけるまでは自動ではONにならないようにします。

 この時、エアコン用コンセントにスイッチ付き1個口電源タップを、そこに、やはり、任意個口のスイッチ付き電源延長コードをつなぎ、前者は手動でON/OFFさせることで想定季節外や家を空ける時など当該時期でも不要な時にOFFさせ、待機電力もカット、後者のスイッチをサーボモータでON/OFFさせることを想定。

 遠隔制御も考えた場合、エアコンシーズンであっても、万一、手動ON/OFFするタップでOFFにしてあると操作不能とはなりますが、ここでは外からの遠隔制御は考慮しないものとします。

 より簡単にするため、床か、それに近い位置に設置を考えているスイッチ付き電源タップ及びサーボモータと確実を期すため、エアコンの赤外線受信部付近に設置を考えている赤外線送信器間は、有線ではなく、無線を想定。

 尚、必要性を思い描くことができないことからPCからの制御は考えていません。

 納期はかかりますが、Arduino関連は、Amazonマーケットプレイス中華系激安店でチョイスすれば、Arduinoボードが400〜500円、サーボモータはAmazon発送品でも10個セットとかなら単価250円前後、リモコン送受信には、赤外線LED、フォトトランジスタでもよいし、それぞれモジュールでもよいし、センサーキット付属のものでもよいですが、これらを合わせて300〜400円、ジャンパワイヤ、抵抗、ブレッドボードは合わせて200円で約1400円、更に1個口スイッチ付き電源タップは100均で買うとすれば108円、複数個口電源延長コードを1000円前後とすると、ザッと2500円前後。

 あとは、無線とケースですが、無線も技適はさておき、安ければ送受信セットで200円未満、技適済みなら最低でも2000円、ケースは100均にあれば、108円といったところでしょうか。

 しかし、そこまでかけるのであれば、若干、構想は変わるかもしれませんが、アプリのダウンロードでAndroid/iOSにも対応、2000〜3000円前後で家電のON/OFFを無線制御できるリレー付きワイヤレスリモコンスイッチを使う方法もありますが、これも技適対象なのでしょうか?

確認済みの事項

Arduino Nanoによる赤外線受信機

曖昧な事柄

 年月や時間を保持するにはEEPROM、SDカード何れかを使う必要がありそう。

 一定の時間、連続運転した場合にOFF、その後、リセットするまで自動でONにならないように...というのはどうやる?OFFはできるとしてリセットはArduinoボードをリセット?いけるとしても、それって微妙...もっとスマートな方法はないものか...。

 更にサーボモータで電源タップのスイッチを入れる(ON)にしてもOFFにするにはどうすれば...?人的にエアコンを切った場合も同様、トリガを何にすれば...停止の赤外線信号が入ってきたらっていうのは微妙だし...、リレーだとどうなんだっけ?ONしたまま、次の信号もONっていけるんだっけ?あ、できたとしても時間保持の話と矛盾するか...。

 Arduinoボードでsleep機能を取り入れたいが、割り込みトリガは...?温度センサのONでよさ気かと思いきや、手動用電源タップOFFの時は...手動用は、『集中』スイッチ付き2個口電源タップにすれば、手動OFFした時、Arduinoの回路も電源OFFになるからいいか...ということは、自動の場合、温度センサのONでいいってことか...しかし、人的にリモコン操作する場合は...Arduinoの(sleep)状態とは関係ないか...。

 いや、一定時間の連続運転時OFFとする場合も割り込みがいるか...Uno、Pro Mini、Nanoあたりを想定していますが、確か、これらだと割り込みに使えるのはD2、D3、温度とこれで2つとも埋まるが、他にもあったらArduinoボードを変更する必要があるのか?

 そもそもメモリ容量をオーバーする可能性もあるのか?これらArduinoボードでは厳しいのか?他ボードを使えばよいのか?これと割り込みの件を考え合わせると他ボードでもダメなのか?その場合には、ラズパイでlircを使う方法などにしないとダメか?

 ...etc.

 意外と課題は多いのか...。

既知の状況や不確定要素

 風向きや風量も変更可能なので焦電タイプやマイクロ波タイプの人感センサー(何れも200円以内で入手可)を併用する手もあるも、同じボタンの押下回数で3段階+自動が切り替わるタイプで、個々の信号が固定で直接指定できればよいですが、そうでなければ、実装できない。

SharpエアコンのリモコンA538JBその1

 使用中のシャープ製エアコンは、そこそこ古く、リモコンの[静音]と[フルパワー]が効かなくなったなとは思っていたものの、それ以外は、[冷房]、[暖房]、[除湿]、[自動]、[空清](空気清浄・プラズマクラスタ)のそれぞれのON/OFFと温度変更程度しか使わないため気づかなかったのですが、先日、赤外線受信回路を作って読み込ませてみたところ、[衣類乾燥]や[ニオイカット]など他にも押しても反応しないボタンがいくつかあることが判明。

 リモコンを分解して修理する手もありますが、ガッツリくっついているケースを外すところからして躊躇しています。

 今更新品もないでしょうし、中古品を買う気もない、エアコン用代替リモコンだと不足するボタンがあり、学習リモコンでは、使いづらいこともArduinoでタッチパネル集約リモコンを作ってみようと思うに至った理由の1つ。

SharpエアコンのリモコンA538JBその2

 当然、機能するボタンに限定され、ボタン配置が億劫でモチベーションもあがらず、長いこと放置していますが、そのArduinoかラズパイを使ったタッチパネルリモコンの利用も考えてはいます。

 これができてからなら、ダメ元で修理すべくエアコンのリモコン分解してみてもよいですが...。

 消費電力の溝は埋めることはできないため、それはさておくとして、これが実現すれば、古いエアコンにある種、最先端の新機能を取り込むことができることになるし、赤外線信号を変更すれば、エアコンを買い替えても使うことができそうです。

追記

[2019/05/04]

 あれから実用上、Arduinoよりも操作性がよいWiFiも搭載のマイコンESP8266でSHARP製エアコンを無線遠隔操作したり、これを利用して、やはり自作のラズパイスマートスピーカーでエアコンを音声操作しています。

 ってエアコンに限りませんが。

SHARPエアコンAY-M28SCのリモコンを分解

 というか、それはさておき、興味本位ながら、ようやく重い腰を上げて、リモコンを開けて状況確認、できれば修理してみようと思うに至りました。

 やはり、うまく作ってあって爪のかみ合わせがバッチリだった為、分解というか、リモコンのケースを開けるのは、固くて一苦労、最初は、精密ドライバではダメでつなぎ目に沿ってデザインナイフで何度もなぞっている内に傷はつくは、少し削れるは...やっとのことで開きました。

 カバーが開いたあとは、基板を固定してあるビスを4本外して基板にはんだ付けされた電池ボックスの電極プレートと電極バネを優しく引き上げて外し、赤外線LED部分も持ちつつ、基板を外しました。

SHARPエアコンAY-M28SCのリモコンボタン部分

 いざ中身を確認と思ったら、基板側のボタン部は回路がキレイにスクリーン印刷されているだけ、ボタンとなっている樹脂(ゴム?シリコン?)裏側には、導電体が貼られているようですが、効かないボタン含め、どれも見た目には美しいほどにキレイで摩耗している様子も見受けられません。

 とは言え、何もしないのもなんなのでアルコール消毒液に浸した綿棒で導電体含め、一通り掃除して基板を仮止め、試しにボタンを押してみると...そもそも一度も使ったことのないボタンたちが、今更ながら、機能しました。

 まさかのまさか...、単に掃除しただけで...見た目には、ホコリが付いているわけでも、汚れているわけでもないのに...。

 が、まさかの坂を真っ逆さま...、数十分後には、効かなくなりました...。

 接点が微妙なんでしょうね...そもそも長年に渡ってフタを開けることもなく、存在すら覚えておらず、よって使おうと思ったことがない機能なのでよいですが。

ホーム前へ次へ