壁スイッチのリモート操作

筆者が常駐している講義室にはプロジェクターとスクリーンが常設されていて、授業やイベントで使用しています。困ったことにスクリーン直上の照明スイッチが離れた場所にしかなく、状況によって誰かが走って行ってスイッチを押す、ということを行っていたので対策しました。

マイコンの電源を入れるとIPアドレスが表示されるので、同じWiFiに接続したパソコンやスマホのブラウザからアクセスするとその度にモータが動作してスイッチを押してくれます。

使った部品は次のとおりです。

  • M5StickC Plus
  • サーボモータSG90
  • 壁面への固定プレート(自作)
  • USB電源アダプタ、配線材料など

M5StickC PlusのプログラミングはArduino IDEを使いました。ソースコードは次のとおりです。

項目別に分けると次のようになっています。それぞれ基本的なことしかしていません。

  • 学内WiFiネットワークへの接続 ← 4〜9行目、59〜78行目
  • デバイスをWEBサーバーとして公開する ← 20〜46行目、68〜78行目、94〜108行目
  • サーボモータ制御 ← 12〜17行目、27〜30行目、88〜92行目
  • M5StickC Plusのシステムと表示まわり

一番難しかったのは壁面のスイッチへの固定方法でした。3Dプリンタで自作しましたが、微調整を繰り返して何度か試作を繰り返しました。モーターの回転角も設置状態に応じて「現場合わせ」しました。

コメント