IoTスマートドールを作りたい
動機
新しいエアコンを買った。
通勤は一時間ほど。会社を出るときにスイッチを入れたら丁度いい。
なら、家で待ってるドールにスイッチを入れて貰おうと思った。
1/31が初めての娘(TwitterBot)の誕生日だったこともあり、
「Twitterで会話できると面白い」とか、
「eVovaloid搭載して喋ったらいいな」とか夢が広がった。
あと、今年はまだお迎えしてない。
実現方法
-ドール本体-
スマートドールと言う1/3スケールドールがある。
元々、ロボットを作ろうとして開発されたドールで、体内に空洞があり、
作者であるDannyChoo氏がスティックPCを内蔵した「ミライコン」と、
モバイルバッテリを内臓した「Smart Charge Mirai」を発表している。このモバイルバッテリは写真から判断すと
cheero Power Plus 3 mini 6700mAhサイズは
92mm x 43mm x 23mmまた、ヘッドパーツの中も空洞。
首ジョイントを改造してケーブルを通せば部品が入る。
-ハードウェア-
・Raspberry Pi Zero
$5の超小型LinuxPCを作れる基板。
2017年第1四半期に国内で販売開始予定だがまだ続報は無い。
アマゾンで3600円の輸入品を入手した。
個人輸入で2400円という記事もあるが、
直ぐには届かないし、Arduinoの性能/価格を考えたらまぁいいやと思った。
Spec CPU 1Ghz, Single-core CPU RAM 512MB IO Mini HDMI, USB On-The-Go ports, 40-pin header 電源 5V, 140mA以上 OS Debian, Fedora, Arch Linux, RISC OS
・Planex GW-USNANO2A
ネット接続はUSB Wifiドングルを使う。
・XBee ZB
開発・デバッグはSHH接続をメインにするが、やはりUARTのコンソールも欲しい。
小電力なXBeeを使ってUARTを無線化してケーブルを外に出さなくても良くする。
HDMI端子は外に出す。
XBeeのIOでエアコンの信号を記録した学習リモコンのボタンをON/OFFする。
・LP-MBLGD
2400mAhのモバイルバッテリ。ヨドバシで一番小さいのを選んだ。
バッテリを内蔵して、単体ノーワイヤで動作できるようにする。
ドールだもん、外に連れ出したり、室内を移動させたりしたい。
・電気二重層コンデンサ
秋月電子通商で5.5V1.5Fのを買う予定。
ACアダプタとバッテリの切り替え時に瞬停しないように入れる。
コインサイズでこの容量の物を手軽に買えるなんて、いい時代になったものだ。
・etc...
-消費電力-
・Raspberry Pi Zero
・Planex GW-USNANO2A
最大約1.3W(待機時最大約 0.5W)
https://www.planex.co.jp/products/gw-usnano2a/spec.shtml
・XBee ZB
送信電流:33 mA / 45 mA ブーストモード@ 3.3 V DC
受信電流:28 mA / 31 mA ブーストモード@ 3.3 V DC
パワーダウン電流:<1 μA @25℃
https://www.switch-science.com/catalog/2612/
-ソフトウェア-
PerlとPHPを使う。
Perlで何を実行するかや、GPIO等の制御を実装して、
Twitter公式のPHPライブラリを使って送受信部と細かい機能を実装する。
シェルスクリプトよりPerlの方が色々実装できて楽なので。
機能
今考えているのは
・TL・リプライ取得→特定のキーワードに反応
・ボクのアカウントからのDM or リプライでエアコンをON/OFF
・エアコンの指示がなさそうな時間帯は取得周期を長くしてWifiドングルの電源も切る
→7-9時と17-22時は3分、それ以外は10分、バッテリ駆動時はエアコンの指示は無し。
「一緒にお出かけした時はどうやって電源を入れるのか」って?
何言ってるんだ、一緒にお出かけしているんだから、入れてもらえる訳ないだろ
・外に連れ出してもテザリングでフォロワーとの会話を維持する
・電源ケーブルを挿したらバッテリの充電とシステム全体への給電
電源ケーブルを抜いたらバッテリからの給電に自動切り替え
その他
製作中に必要となった技術的な情報はQiitaに書き残し、
メンテナンスや改良で必要となった際の備忘録とする。
2017/2/12(日)にミライストアに行ってスマートドールの実物を見て、
そのままワークショップで組み立ててお迎えしようかなと画策中。
最初は初音ミクV4Xなイメージのドールにしようかと思っていたけど、
既に1/3スケールのミクが2人いるので、大人リンちゃんにしようと思う。(また変わるかも)
完成した暁には動画を作ってニコニコ技術部に投稿したいなぁ(するとは言ってない
考えるのは楽しいけどいざ作るとなると段々と面倒くさくなってくる性格なので、
ここに計画を書き記し、心がぶれないように戒めとする。
-以上-