MESHではじめるIoT生活

第6回 SONY MESHのGPIOタグとスマホで本格IoT!大事な人の位置を知らせるメーターを作ろう!

こんにちは、ヨシケンです!
これまでMESHタグ全7種類の使い方を見てきました。(各使い方とその工作例はMESHタグで検索してみて下さい。)
前回記事では、少しハードルの高いGPIOタグも使ったので、モーターと繋ぐなど、だいぶ電子工作っぽくなってきたのではないかと思います。
今回は、電子工作ではよく使われる、指定の角度だけ回転させる事ができるサーボモーターと、スマホを連携させて、本格的な(?)IoTガジェットを作っていきたいと思います。

 

大事な人が今どの辺にいるかを指し示してしまう「いまどこメーター」

この「いまどこメーター」は、外出しているお父さんやパートナーが持っているスマホのGPS情報を使い、特定の場所に行ったら、MESHに信号を送るようにしています。
その信号に応じて、GPIOタグにつながったサーボモータが回り、その人がどの辺にいるかを指し示してしまうという、インターネットとつながったメーターです。

そんなのいらないよ!という声も聞こえてきそうですが、おうちでお父さんの帰りを首を長くして待っているお子さんや、いつも働き過ぎで心配なパートナーが、遠くから優しく見守る事ができるツールになっています。

それではいつも通り、MESH5分クッキングのビデオも作っているので、ザッとその作り方、動きをチェックしてみて下さい。

 

今回のMESH工作の流れ

  1. MESH GPIOタグとサーボモーターをつなぎます
  2. サーボモーターの角度に合わせた、いまどこにいるのか分かるメーターを工作します
  3. スマホの位置情報を使ったIFTTTの設定をします
  4. 家に置いたメーターと、外に持ったスマホの位置情報を連動させ、いまどこメーターを作り上げます

必要なモノ一覧

その他のモノ

 

サーボモーターのつなぎ方

今回はGPIOタグとサーボモーターをつなぐので、GPIOの10個空いた穴のうち、VOUT、GND、とアナログ出力のPWMを使います。

サーボモーターの赤い線を左上のVOUT、黒い線を右上のGNDにつないで、電源を供給するようにします。黄色(又は白)の線はアナログ信号を送るので、右下のPWMにつなぎます。
GPIOタグのアナログ信号(PWM)を強弱する事により、サーボモーターの回転角度を変化させる事ができます。

GPIOタグとサーボモーターをつないだら、MESHアプリ上で動きをチェックしてみましょう。
GPIOタグのアナログ出力では、0から100までの出力を選ぶことができるのですが、その適正な値はサーボモーターの種類によって若干違います。
私が使っていたサーボモーターでは、PWM値が5から25の間で動きました。サーボモーターの種類に応じて、色々変えて試してみる事をお勧めします。

 

モノの作り方

では、このサーボモーターと針をセットするメーターを作りましょう。
まずサーボモーターの回転軸に、今どこにいるかを指し示す針を、ボール紙で作ります。

また、普段いるところの絵などを描いた、メーター板作りましょう。
この例では、一番左側から、お父さんが ①家を出て、②会社に行く途中、③会社で仕事中、④会社から帰ってくる途中、⑤帰宅したところ、の5つの場所を表す絵を描いて、ボール紙に貼り付けました。

 

サーボモーターの位置調整

サーボモーターの回転角度は、先程のようにMESHアプリのGPIOタグで、PWMの数値を変えることにより行います。
このサーボモーターでは、PWM値が5毎に30°ほど回るようになっています。(これはサーボモーターの特性によりばらつきがあります。ご自分のサーボモーターで色々試してみて下さい。)

まず、最初の家の位置①をPWM値5に合わせ、PWM=10が通勤中の②、PWM=15が会社の③、PWM=20が帰宅中の④、PWM=25が帰宅時の⑤、にするようにMESHアプリ上で設定します。
絵の位置とサーボモーターの角度が合うように、試行錯誤してみて下さいね。

角度調整ができたら、サーボモーター、GPIOタグとメーター板をうまく固定します。

 

IFTTTの設定

さて次は、スマホを持っている人がある位置に来たら(又は出たら)、MESHに対して信号を送り、メーターの動きに反映させるようにします。
それには、いつもお世話になっているウェブアプリIFTTTを使います。(アカウント登録がまだな方は、事前に登録しておいてください。)

IFTTT上では、スマホに合わせて(iOSならLocation、AndroidならAndroid Device)設定を行います。この例では、iOSを使っています。

外出する時に持っているiPhoneのIFTTTアプリを開きます。
IFTTTのThis部分で、iOSのLocationを選び、自宅付近の位置を設定します。

トリガーは、指定した場所の円の部分から出たら(Exit)したら、MESHに信号を送る、という風にします。

になります。その後、MESHの「Send Event」を選んで、そのEvent IDに”ExitHome”というIDをセットします。
この事により、持っているiPhoneが(GPS情報として)ある場所から出たら、”ExitHome”というIDをインターネット越しにMESHアプリに送る、という事ができるようになります。

次は、会社の位置に入ったら(Enter)、”EnterOffice”とEvent IDをセットします。

更に帰るときに、会社付近から出たら(Exit)、”ExitOffice”とし、家の近くに来たら(Enter)、”EnterHome”というように設定します。

 

MESHアプリでのIFTTTとの紐付け

PhoneのIFTTTアプリ上で設定ができたら、自宅に置く方の(iPadなどの)MESHアプリを設定します。画面右側のカスタムタグのところで、IFTTTタグを有効にします。

そしてMESHアプリ上で、①家の位置(これはスタートポジション)とPWM=5、②通勤中ExitHomeとPWM=10、③会社EnterOfficeとPWM=15、④帰宅中ExitOfficeとPWM=20、⑤帰宅EnterHomeとPWM=25のようにそれぞれを紐付けます。

これに更に、家の玄関に人感タグをセットして、家の中に入ったら「おかえり!」などと声を出すようにしておくと、夜遅く帰ってきたお父さん、パートナーの方も寂しくないかもしれませんね!

また家に帰ってしばらくすると、スタートポジション①に戻る、ようにタイマータグをセットすると、翌朝また最初から始めることができます。

さあ、これが完成系のMESHアプリです。

では、さっそく使ってみましょう!

朝、会社に着くと、まずiPhoneのIFTTTが反応して、会社エリアに入りました、との連絡が。

そして家族から、今動いたよ!の連絡と共に、会社の位置にいるメーターの写真が送られてきました。

やー、これで昼間はちゃんとお父さんが会社で頑張っている事を、家の人も分かってくれるでしょう。

 
今回は、GPIOタグとサーボモーター、そしてスマホを使うことにより、簡単で楽しいIoTガジェットを作りました!

電子工作マニュアル Vol.3
ヨシケン(吉田 顕一)

普通の会社に勤めるサラリーマンですが、モノ作りが好きな週末メイカーで、電子書籍MESHBOOKを出したり、ブログを書いたりしています!

http://blog.ktrips.net