情報系大学生の雑記帳

プログラミングや電子工作などを中心に書いていくつもりです

ESP8266でプレゼンテーション用リモコンを作ってみた

ESP8266を使ってプレゼンテーション用のワイヤレスリモコンを作りました。
リモコンを作った理由は大学で後輩に対して「技術の勉強をちゃんとすればこんな物も作れるよ!」ということを示すためです。
写真の下の方にある2つのスイッチを押すとそれぞれスライドが1枚戻ったり進んだりします。
f:id:dwight_1011:20160709012114j:plain

システムの構成・データの流れ

作った物はハードウェアとしてはESP8266ベースのリモコンで、ソフトウェアとしてはESP8266用のArduinoプログラムとPowerPointのスライドを操作するためのプログラムです。構成は以下の図の様になっています。
f:id:dwight_1011:20160709012709p:plain
リモコンのスイッチを押すと、押したボタンをESP8266からwifiでPCに飛ばします。PCではC#で書いたプログラムがサーバーをたてて待ち構えていて、ESP8266からの通信を受信するとPowerPointにキーボードのメッセージ(矢印キーの左もしくは右が押されたという情報)を送ります。この一連のデータの流れによってリモコン操作を実現しています。

ハード

プレゼンリモコンの作成には以下の表の物を使いました。

部品名
ESP8266 1
タクトスイッチ 2
抵抗 2
ジャンパケーブル、ワイヤ 適量
ブレッドボード 1

プログラム

Arduinoのプログラムでは2つのスイッチからの入力を監視し、入力があったら指定したIPにソケット通信で信号を送信します。*1

C#のプログラムではサーバーを作成し通信を待機、信号を受信したら解析してPowerPointWindowsのメッセージを投げます。*2

おわりに

今回作ったリモコンを(無理やり)他と差別化するなら、wifiで信号を飛ばしているところですかね。ただ、これにはデメリットがあってリモコンを使っている時にはPCをネットにつなぐことが出来ません(^_^;)*3また現時点ではブレッドボードに挿してあるだけなので、いずれユニバーサル基板にでも半田付けしてケースも作成したいですね。

*1:プログラムが汚いので、余裕があれば手直ししてから載せます

*2:プログラムが汚いので(以下略)

*3:まあ、プレゼンしながらネットを見ることはそんなに無いと思いますが