トイレにrestfulなapiを実装してみた
TRANSCRIPT
トイレにRESTfulなAPIを 実装してみた
吉村 圭一郎 けーいち@9SQ
Developers Summit 2016 - Day 2【19-E-7】 February 19, 2016
IoT超HOT
Internet of Thingsモノのインターネット
Internet of Toiletトイレのインターネット
遡ること3年前Internet of Toilet歴 元年 1月 1日
‒ 某mrubyとかVimの人
“便器からツィートが流れだすまであと少し”
‒ 某QRコードを焼く人
“トイレ流すリモコンの信号を受信すればすぐ実現出来そう。大小の区別も…。”
2013年1月1日のTwitter(一部省略)
トイレツイートbot
トイレツイートbot 改
あれから3年… トイレ→ネットだけでなく
Internet of Toilet歴 3年 1月 1日
ネット→トイレの時代が来る
トイレにRESTfulなAPIを 実装してみよう
ハードウェア選定
http://espressif.com/en/products/wroom/
ESP-WROOM-02
ESP8266EX chipset • TCP/IPプロトコルスタック搭載32bit MCU • Wi-Fi STA, AP, STA+AP • 10-bit ADC with HSPI, SDIO, UART, PWM, I2C, and I2S
✓簡単 ✓安い ✓無線LAN
ハードウェア構成• ESP-WROOM-02 (with オリジナル基板) • 赤外線LED
ケース 3Dプリンタで製作 基板
スイッチサイエンスPCB
リモコンからコードを取得Arduino UNOに赤外線リモコン受信モジュールを接続
PL-IRM2161-XD1
Arduino-IRremote https://github.com/z3t0/Arduino-IRremote
example/IRrecvDumpを書き込んで シリアルモニタで取得
リモコンからコードを取得トイレのリモコンが 送信している信号をGET
流す(小)流す(大)
停止1 停止2
やわらか1 やわらか2
送信開始リーダ部 約6ms, 2.9ms データ部 1.5ms=1, 0.5ms=0が続く
流す以外のコマンドは 2回に分けて送信されている
プログラムを書く&書き込む
1. 無線LAN接続する 2. サーバ起動 3. リクエストを受ける 4. 赤外線送信
ESP8266 core for Arduino https://github.com/esp8266/Arduino
ESP-WROOM-02を単体で Arduinoのように使える
IRremote ESP8266 https://github.com/markszabo/IRremoteESP8266
38kHzで変調して赤外線LEDを 点滅させるライブラリ
トータル 150行くらい
設置
toilet.local
http://toilet.local/
HTML(bootstrap3)+JavaScript
ボタンを押すとXMLHttpRequestで各コマンドを叩く
mDNS対応ブラウザ でアクセス可能 (Androidは…)
toilet.local/washlet
おしりを洗浄したいときcurl -X POST -d 'c=rear' http://toilet.local/washlet
洗浄を止めたいときcurl -X POST -d 'c=stop' http://toilet.local/washlet
example
®
ウォシュレット, WashletはTOTOの登録商標です
toilet.local/washlet
「大」を流すときcurl -X DELETE -d 'c=big' http://toilet.local/washlet
®
ウォシュレット, WashletはTOTOの登録商標です
example
もう少しスマートに しようじゃないか
Androidアプリ作りました。 Android 5.0~
✔通知領域に常駐 他のアプリ起動中もシームレスに おしりの洗浄が可能
Blog
全部まとめて公開中
トイレにRESTfulなAPIを実装してみた
赤外線リモコンで操作できる 機器, 家電に応用可能
GitHub
全部まとめて公開中
ESP-WROOM-02(ESP8266)向けコード
Androidアプリのコード
赤外線リモコンで操作できる 機器, 家電に応用可能
モノがネットワークに繋がり RESTful APIを持つ
トイレ
トイレ×???の可能性✓APIを与えるだけで出来ることが一気に広がる
+音声認識 = 対話できるトイレ? 「hey Siri, おしり洗って!」
+人工知能 = 行動予測するトイレ?? お尻を3回洗う人が来たぞ!
✓様々な既存ソフトウェア技術要素と組み合わせて…
[room].local/[device]
Let’s Enjoy おうちハック!
流行らないかなぁ…