いろいろ作るよ

今まで作った物やその過程を技術的なことを省いて残すよ

今日は夕食いらないを素早く連絡する為に矢文IoTを作った

こちらの記事は おうちハック Advent Calendar 2017 - Qiita の18日目の記事です。

突然+超私事なのですが先月末に結婚しました。

ずっと一人暮らしだったのですが二人で暮らすようになると、自分一人ではなかった問題が出てくるようになりました。 それは飲み会が多いこの時期によくある「今日は夕食いらない」連絡問題です。

急遽飲み会参加などで夕食がいらない時にラインを送ってもスマホを見ずに作ってしまうことがあります。

なので矢文を使用します。

ただ、矢文を放つ際に近くにいなければいけないので外でスマホから操作して矢文を送れるように矢文IoTを作成しました。

矢文IoT

作業工程

まずは外でスマホで操作をして何かしらでサーボモーターを動かして弓を操作します。 今回は後輩オススメのESP32(ESP-WROOM-32)を買ってきて使用しました。ESP-WROOM-32のDevKitは1500円ほどで買えるのですが、wifi付きなのでこれとサーボさえあればハード側のやりたいことがこれだけで完結します。

買ったのはこれ

ESP32−DevKitC ESP−WROOM−32開発ボード: 無線、高周波関連商品 秋月電子通商 電子部品 ネット通販

また、以下の設定を入れるとarudino IDEで使用できるようになります。

arduino-esp32 https://github.com/espressif/arduino-esp32.git (macの場合、途中でpythonでダウンロードするところがありますがpython3の場合はpythonのコードをunicodeをstrに変更しないとダウンロードできなかったので注意です) NameError: global name 'unicode' is not defined - in Python 3 - Stack Overflow

ESP32 DevKit Cp2012 USBドライバ https://jp.silabs.com/products/development-tools/software/usb-to-uart-bridge-vcp-drivers

ハード部分とやりとりする部分に関してはBlynkというアプリを使います。今回初めて使用したのですが、アプリ上でボタンを配置して共通のAPP IDを使用して簡単に繋げることができます。複雑なことをしなければ無料で利用できるのでかなりオススメです。

Blynk

Blynkを利用したコードは公式のライブラリを元に作成してサーボを動かすように変更します。

blynk-libraryのライブラリ https://github.com/blynkkk/blynk-library

作成したソースコードは以下のgistに貼ってあります。 gist:257a01807c3e8f2246a5714caa741c25 · GitHub

ここまでできたらあとはダイソーで弓のおもちゃを買って来ます。

f:id:ruteinyoyokk121:20171217173618j:plain

それを家にあるもので固定すれば完成!!

f:id:ruteinyoyokk121:20171217000128j:plain

実演

外からでもBlinkのアプリで設定したボタンを押せば矢が発射されます。

f:id:ruteinyoyokk121:20171217173100g:plain

冷蔵庫の近くに置けば好きなタイミングでメモ代わりに矢文を送れます。

f:id:ruteinyoyokk121:20171217173103g:plain

これで、今日ご飯いらない問題も解決しそうです。 これからも独身時代同様にガンガンおうちをハックしていきたいと思います!

f:id:ruteinyoyokk121:20171217173728j:plain

(矢文IoTは後日キッチンから消えていました)