〜TVを音声コントロール〜”ではfauxmoESPの導入までは簡単ですが、実際のプログラムなどが複雑→たとえばTVを制御する為に赤外線信号を使うのでIRRemotoというライブラリなども必要でプログラムが煩雑・・なので今回はわかりやすく、fauxmoESPを単純にalexaと連携させて、aleaxからの音声制御にてESP8266のポートをon、offさせて他の機器を制御するという簡単な仕組みを目指します。安い照明器具などはアレクサに対応していませんが、簡単な改造でアレクサによる音声制御ができてしまいます。照明を音声制御する全体像についてalexaで蛍光灯を制御する全体図は↓こんな感じ。echoを使うので、ESP8266とalexaを連携するライブラリはfauxmoESPというライブラリを使用します。〜TVを音声コントロール〜”赤外線信号をESP8266から出さなくてよく、ESP8266からはON,OFFの信号だけでいいのでプログラム的に楽です。on,offの信号を蛍光灯の既存の赤外線リモコンに出力してリモコンを操作します。それには既存のリモコンの物理ボタンをESP8266からの出力で動くように簡単な改造をします。今回使った蛍光灯のリモコンはmaruzennの赤外線リモコンです、10年以上前のもので、もちろんalexa連携できないものです。リモコンとしてはすごーく簡単な仕組みで単三電池2本(3V)で動作しており、スイッチはプッシュスイッチになっています。分解したリモコン↓プッシュスイッチはスイッチングによってリモコンのICのどこかの入力をONにしているようです。ESP8266からの信号でリモコンのICに電圧が加わるようにします。今回はフォトカプラという部品を使って電気的にリモコンのスイッチングを行うようにします。他にもトランジスタやFETやリレーなどでも応用可能だと思いますが手持ち部品にフォトカプラが余っていたので使う事にしました。フォトカプラっつうのは電気的に絶縁して他の機器のスイッチングをしたりするもので、電圧が違う機器どうしを繋いだり電気的に絶縁したい時なんかに使います。使い方は簡単で、1番のアノードに電圧を加えるとフォトカプラ内のLEDが光ってその光によって4番のコレクタから3番のエミッタへ電流が流れます。リモコンのプッシュスイッチの電圧の高い方を4番につないで、3番にもう一方を接続します。ESP8266は出力ポートから1KΩくらいの抵抗をいれて1番のアノードへ接続し2番のカソードはESP8266のGNDへ接続するだけです。蛍光灯のリモコンのプッシュスイッチも取り外して、電線を取り付けました。白色側の電線の電圧が高いので、フォトカプラの4番を白、3番に黄色を取り付ける事にします。下図のように配線します。プログラムについてとりあえずarduinoのプログラムを全文いれときます。ほとんどfauxmoESPのライブラリ通りです。ポイントは110行目の実際にポートをオンオフさせるプログラムですが、蛍光灯リモコンの特性で一度点けて消す時に一段暗くなってもう一回押すと消えるといった調光の機能がついている為プログラム上で消す司令のときは2回の出力を出すようにしています。デバイスの名前が呼ばれた時に下が反応してstateの種類により動作をわけました。{if(state==true){//lightをONして!!の反応digitalWrite(light,HIGH);delay(300);digitalWrite(light,LOW);}else{//lightをOFFして!!の反応だけど調光機能で、2回押さないと消えないので2回ボタンを押したのと同様のプログラムにする。ESP.getFreeHeap());}}書き込み時の注意点2019年10月の時点ではFaumoESPを使用してESP8266とalexaを連携する時にはなにも異常がなかったのですが、12月に入って同様のプログラムを書き込みalexa側でデバイスを検索すると、3デバイス以上を設定しているとデバイスが検索できないという事態に遭遇しました。2.6.3で色々ライブラリのバージョンをもどしたりしましが改善せず。探した結果↓同様の内容で困っている外国人を発見し書き込み時の設定を見直す事で複数のデバイスを認識させる事に成功しました。Bandwidthに変更する事で解決です。!!ライブラリの内容をほとんど変える事なく簡単に家電を音声制御できるようになりました。書いているようですが本当にライブラリの例をほとんど変更してません。〜TVを音声コントロール〜”あとは、自宅のwifi環境でこのESP8266に電源を供給してwifiと繋がる事を確認したのちに、スマホでアレクサでのデバイス検出を行い定型アクションで呼び出しの言葉を設定してやるだけです。第3世代のalexaでも動作するfauxmoESPは最高です。コメントをキャンセルメールアドレスが公開されることはありません。*サイト次回のコメントで使用するためブラウザーに自分の名前、メールアドレス、サイトを保存する。コメントデータの処理方法の詳細はこちらをご覧ください。自作UPS化Arduinoでステッピングモーターを回す。~赤外線解析編~HiLetgoの激安ESP8266を使うブログをメールで購読メールアドレスを記入して購読すれば、更新をメールで受信できます。WordPress.。