新しいものづくりがわかるメディア

RSS


差すだけでリモートで電源ON/OFF! USB家電を後付けでIoT化する

USBポートから電源を供給して動く「USB家電」。その種類は豊富で、私たちの生活を便利にします。USBポートに差し込むだけで充電できるので、とても気軽に利用できる点も魅力的です。

しかし、私にはひとつ物足りないことがあります。せっかくスタンドライトを買ったのなら、指定時間で点灯する目覚ましライト的な使い方もしてみたいし、卓上扇風機を買ったのなら、暑さを検知して送風して欲しい。でも安価なUSB家電には、そういう機能は備わっていません。

そこで欲求を満たすべく、世の中にあるUSB家電を少しだけ便利に制御できるIoTデバイスを作ってみることにしました。

USBを制御するIoTデバイス

これが完成したIoTデバイスです。電源とUSB家電の間に挟んで使用します。

USBメモリのようなサイズ感です。 USBメモリのようなサイズ感です。

このIoTデバイスにはフォトリレーが内蔵されており、このリレーを遠隔制御で切り替えるとUSB家電の電源のON/OFFができます。

また、ON/OFFのタイミングを細かく制御(PWM)することで、USB家電への電源量も調節も可能です。例えばスタンドライトなら、光の強さを変えられます。

スタンドライトに調光機能が追加できました。 スタンドライトに調光機能が追加できました。

ほかにも、デバイスには光センサーと温湿度センサーを内蔵しています。これらはスマホなどから値を読み取るだけではなく、ON/OFFのトリガーとしても使用可能です。光センサーは辺りが暗くなったら電源をONできるし、温度センサーは気温が高くなったらONできます。このように、周辺環境と連動した使い方ができるのです。

USB家電を制御して暮らしを便利にする

まずはスタンドライトを制御し、自動でライトをON/OFFできる仕様にしました。時刻情報も用いて、光目覚まし時計にしてみました。朝になるとライトが付いて、起床を手伝ってくれます。普段のアラーム音よりも目覚めがよい気がします。

太陽の光で起きるのと同様、目覚めスッキリです。 太陽の光で起きるのと同様、目覚めスッキリです。

同じくスタンドライトに光センサーを用いて、手元が暗くなったら自動でライトが付くようにもしてみました。見えにくい作業の手助けをしてくれます。

まるで優秀な助手がいるようです。 まるで優秀な助手がいるようです。

次に卓上扇風機を制御し、自動で送風をON/OFFできるようにしてみました。温度センサーを用いて、気温が上がったら送風してくれます。気温が下がったら自動で送風を止めてくれるので、快適に過ごせます。

ちょうどよい温度を保ってくれます。 ちょうどよい温度を保ってくれます。

この扇風機は、ノートパソコンの下に配置してみました。同じ仕組みで、ノートパソコンが発熱したら自動で冷やしてくれます。排熱の手助けになりますね。

ノートパソコンの寿命が少し伸びそうです。 ノートパソコンの寿命が少し伸びそうです。

このようにいろいろな使い方ができるIoTデバイスですが、作るのにも多くの学びや苦労がありました。製作の過程を紹介します。

類似製品を調査する

作り始める前に、世の中に似たような製品がないか調査しました。開発のヒントになるはずだと思ったからです。

・eRemote
赤外線リモコンに対応している家電を、スマホなどで遠隔操作できるデバイスです。私も自宅で愛用しています。テレビやエアコンには使用できますが、USB家電はほとんど赤外線通信を搭載していないため、今回の目的には一致しません。

(画像引用)公式サイト (画像引用)公式サイト

・SwitchBot
人の代わりにスイッチやボタンを押してくれるスマートデバイスです。ホームオートメーションの代名詞で、さまざまな種類の製品が販売されています。あくまで物理ボタンが対象なので、USB家電となると対応が難しい気がします。

(画像引用)公式サイト (画像引用)公式サイト

・MESH
身近なものとセンサーやスイッチなどの機能を組み合わせ、プログラミングすることでアイデアを形にできるツールです。こちらも種類がいくつかありますが、「MESH GPIOブロック用USBパワースイッチ」はイメージと近いものでした。課題はMESHが7000円以上するところでしょうか。ちょっと高いかもしれません。

(画像引用)公式サイト (画像引用)公式サイト

これらの製品から着想を得ながら、自分好みのオリジナルIoTデバイスを考えていきます。

仕様を決める

コンセプトは「USB家電と電源を中継し、自在にON/OFFできるデバイス」です。使用時に邪魔にならないよう、USBメモリのようなコンパクトなサイズ感にします。USBは種類がたくさんありますが、電源供給のみなので使いやすいType-Aを使用します。

リレーの選定では負荷電流に注意しました。USB家電の電力量はその製品によってさまざまですが、USBの規格で電流値は決まっています。USB2.0は0.5A以下です。しかし、家電によってはUSB3.0対応品もあるかもしれません。USB3.0の規格値は0.9A以下であることから、負荷電流1Aのフォトリレーを選定しました。

遠隔制御に無線通信は欠かせません。電子工作界隈では「ESP32」シリーズが有名ですが、その旧モデルである「ESP8266」シリーズを使用しました。決め手は低コストとコンパクトなサイズ感です。最近はESP32シリーズで小型なものもありますが、技適に不安があるものもあります(刻印がないものも多い)。基板製造を海外で実施する予定だったので、確実に技適マークが刻印されているESP8266にしました。

ESP8266がモジュール化されているものを「ESP-WROOM-02」と呼びます。(画像引用)JLCPCB ESP8266がモジュール化されているものを「ESP-WROOM-02」と呼びます。(画像引用)JLCPCB

ON/OFF動作のトリガーに使用するセンサーも実装します。センサーはマイコンのピン数を削減するため、I2C通信に対応したものにしました。

photo

基板を作る

回路設計には「Autodesk Eagle」を使用しました。仕様選定で決めた部品をもとに、回路図とアートワークを作成しました。いくつか設計の注意点を紹介します。

photo

ESP8266はWi-Fi用アンテナが付いているため、その周辺にはパターンを引かないようにしています。これは「ESP8266 Hardware Design Guidelines」を参考にしています。とは言いつつも、このデバイスのサイズ感に対し厳しい要求寸法でもあったため、クリアランスは遵守できていない部分もあります。

15mm空けるのは少しレイアウトが厳しいです。(画像引用)ESP8266 Hardware Design Guidelines 15mm空けるのは少しレイアウトが厳しいです。(画像引用)ESP8266 Hardware Design Guidelines

パターン幅についてですが、USB家電へ供給する電源は最大0.9Aを想定するため、1mmに設定しました。銅箔厚35μmの場合、パターン幅1mm=1A相当が目安となります。

基板の製造はJLCPCBで手配しました。費用は部品代、実装含めて約10ドル/枚でした。

きれいに実装された基板が1週間程度で届きました。 きれいに実装された基板が1週間程度で届きました。

カバーを作る

安全に使用できるように、基板のカバーを作ります。基板をむき出しのまま使用すると、部品の鋭利な箇所でけがをしたり、通電中に金属と触れてショートし、故障や感電をしてしまったりするリスクがあります。

カバーの設計には「Autodesk Fusion 360」を使用しました。EagleとFusion 360は3Dモデルの連携が簡単に行えます。まずはEagleで設計した基板外形モデルをFusion 360で読み込み、それをもとにカバーを設計します。

気を付ける点は、センサーをうまく露出させることです。温湿度センサーを覆ってしまっては外気温が取得できませんし、光センサーを覆ってしまうとずっと暗いままになってしまいます。

上下2部品の構成です。 上下2部品の構成です。

デバイスが小型なので、3Dプリント時間も短くできました。2部品合わせて約1時間です。

photo

プログラミングする

メインツールは「Blynk」を使用しました。Blynkは、スマホなどからマイコンへ簡単にアクセスできます。REST APIも用意されているため、ほかのサービスと連携した制御も簡単に実現できます。

まずはBlynkへログインし、トークンやテンプレ—トを取得します。そしてArduino IDEを使用し、ESP8266へ以下のプログラムを書き込みました。

photo

これで、温湿度センサー、光センサーの値がBlynkへ常時アップロードされます。逆にBlynkから指示したON/OFF、あるいはPWMデータでデバイスのリレーが動きます。

BlynkのWeb Dashboardは以下のようにレイアウトしました。値の確認やスマホやPCからの遠隔操作がここから行えます。とても簡単です。

センサーの値は分かりやすくゲージで表示されます。 センサーの値は分かりやすくゲージで表示されます。

これでUSB家電をいつでも簡単に制御できるようになりました。

さらなる進化を求めて

年々、USB家電の種類も増えています。雑貨屋に行くと個性あふれる面白USB家電も多く見かけます。そういった多種多様な製品を制御するのも楽しそうです。

ArduinoやM5Stackといった電子工作マイコンと組み合わせて使うのも可能性が広がりそうです。このデバイスに備わっている機能をフル活用することで、開発をもっと楽にできることでしょう。

USB電源で動くロボットにも使えますね。 USB電源で動くロボットにも使えますね。

おすすめ記事

 

コメント

ニュース

編集部のおすすめ

連載・シリーズ

注目のキーワード

もっと見る