Plus電子デバイス・電子工作用語集モータドライバ博士のQ&A読者よりいただいたお問い合わせを元に、ロボット製作者、エンジニアのみなさんに役に立つ技術解説を発信していきます。Plus電子デバイス・電子工作用語集モータドライバ博士のQ&A読者よりいただいたお問い合わせを元に、ロボット製作者、エンジニアのみなさんに役に立つ技術解説を発信していきます。Grove、littleBitsなどを使って、ピタゴラ装置を完成させよう!こんにちは、ヨシケンです!MESHを使った工作も第12回になりました。始めから全てをつなげたピタゴラ装置を動かそう!1.ピタゴラ装置(前回)のおさらい前回の記事で作った、サーボ・ボードとUSBパワースイッチを使った装置をざっと見てみましょう。GPIOサーボ・ボードを使って、ボールを転がす装置を作りました。詳細の作り方は前記事に戻って確認してみて下さいね。その後、ドミノ倒しのように動きタグにつながります。GPIOタグ・MESHボタンタグ・MESH動きタグ・MESHサーボ・ボード・サーボモータUSBパワースイッチを使った扇風機と目覚まし続いてGPIO用USBパワースイッチを使って、扇風機をオン、オフしました。その後GPIOタグを使ったロボットと目覚まし時計を連動させました。こちらも前回の記事後半にその詳細作り方を載せています。Homeとの連携ここからは、新しい装置を作っていきます。いっても、これまでの工作を流用して、前後を工夫してつなげています。Homeに聞かせ、GPIOタグを動かすものです。設定方法は第9回のスマートスピーカーの内容を使っています。作り方iPadなどのMESHアプリが入ったものと、スマートスピーカーを近くに置くだけです。MESHアプリ設定iPadの近くで前段の装置(目覚まし)が音を立てたら、iPadのマイクでその音を検知します。Google、MESHお願い」などと吹き込んだ声をスピーカー再生します。Homeがその声に応じて予めIFTTTで設定したGhomeshというイベントを発信する仕組みです。Homeが無くてもほぼ同じものを作ることができます。Homeからのイベントを受けて、遠隔で水やりを行うスプレーに連動させます。スプレーにより植物の土が湿ったら、Grove水センサーにより湿り気を計測し、次につなげます。遠隔水やり器GPIOタグと電池式スプレーを使った工作は、第8回記事を見てみて下さい。内部のモータとのつなぎ方やGPIOとの接続方法などを説明しています。電池式スプレーとGPIOを接続するだけですが、アプリの設定方法は、次の項目にまとめて載せています。Grove拡張基盤を使ったセンサー制御GroveはSeeed社が発売している様々なセンサー群です。4本ピンの入出力コネクタが統一されていて、このコネクタ(下写真の白い部分)に接続するだけで、多様なセンサーを操る事ができるようになります。こちらのスイッチサイエンスのページで、様々なGroveセンサーを買う事ができますので、見てみて下さい。GPIO用Groveボードには4つのコネクタがあり、それぞれ接続できるものが違います。振動モジュールやブザーなどこのように様々なGroveセンサーがありますが、今回は土中の湿り気を測る為にGrove水センサー(金色の2本の端子のもの)と、振動をおこすモジュールを使います。今回はアナログ入力の水センサーと、アナログ出力の振動モジュールを使うので、それぞれCN2(アナログ入力)とCN4(アナログ出力)につなぎます。GPIOタグは入力コネクタ側を前にして差して下さい。電源はGPIOタグからとるようになっているので、外部電源は不要です。水センサーを計測できるように、植物の土の中へ入れます。振動モジュールは、ボールを転がす為に使います。Homeからのイベントを受信したら(ここではGhomeshというイベントID)、スプレーに付いたGPIOタグのデジタル出力をHIGHにします。これによりモータが回って、植物に給水が行われます。(下図の上段のGPIO設定)給水により土が湿った事を計測する為、(下段のGrove用)GPIOタグのアナログ入力を「しきい値を上回ったら」をセットします。水センサーが反応したら、アナログ出力につながった振動モジュールを動かします。この時、電源出力のオンとPWM出力のDuty比を上げて下さい。(ここではGPIO電源は常にオン、Duty比は100にしています。振動モジュールに連動、という流れが作れました。最後の工作に移っていきます。先ほどの振動モジュールによりボールが落ちたら、動きタグでそれを捉え、ラズパイのUSBにつながった加湿器がオン、オフするというものです。それを温湿度タグでチェックし、最後のピタゴラ・フラッグにつなげます。ラズパイUSBによる加湿器操作まず写真右側の加湿器制御を行っていきます。作り方ラズパイによるUSB制御は、第10回記事に詳しく載っています。後半の加湿器の制御のところを見てくださいね。MESHアプリ設定ここでは、iPhoneからラズパイのMESHアプリにつないで設定しています。前の装置でボールが動きタグにぶつかったら(振動を検知したら)、ラズパイGPIOのデジタル出力をHIGHにします。(上段のGPIO設定)それにより下段の温湿度タグで湿度が高まったら、次のアクションの人感タグを動作させます。この際もしそこに人がいたら(人感タグが検知したら)、iPhoneからその人の写真を撮ります。littleBitsビットモジュールそして最後にMESHとlittleBitsを使った旗を上げる装置を作っていきます。littleBitsは、色とりどりな端子で、見た目も楽しいセンサー・モジュール群です。各モジュールの色の違いにより入出力が一目で分かったり、それらをマグネットでつながる方向にくっ付けるだけで、子どもでも直感的に電子工作できるものです。こちらの公式サイトなどから、littleBitsで出来る事を見てみたり、気にいったものを手に入れてみて下さい。GPIOタグをつなぐ事が出来る拡張基盤が、GPIO用ビットモジュールです。ここでは先ほどiPhoneで撮った写真をツイッターに上げ、そのハッシュタグを検知して、ピタゴラ・フラグを上げて、今回のピタゴラ装置のゴールにします。GPIOタグとは、写真の向きでピンに差し、電源系モジュールと一緒に使っていきます。(littleBits自身には電源モジュールから給電します。)電源、ビットモジュール、接続モジュール、サーボ、LEDバーの順につなぎます。サーボ・モジュールに旗を付け、開始点で旗が倒れている状態に調節します。MESHアプリ設定さきほどiPhoneで撮った写真を、IFTTTを使ってTwitterに#meshprjというツイートを上げています。MESH拡張タグからTwitterを選び、#meshprjのハッシュタグがあれば、GPIOタグのPWM出力を100にセットします。(littleBitsサーボ・モジュールを一番端まで倒すようにします。)旗が上がったのと合わせて再度写真も撮れば、ピタゴラ装置のゴール記念写真が撮れます。5.全てをつなげて動かしてみよう!それでは、前回の最初のGPIO用サーボ基盤から、littleBitsビット・モジュールまで、一気に通して動かしてみましょう。それぞれを作るのはプログラミングも無く、どんどんできてしまいます。ピタゴラなビデオを撮るのは少し根気が必要で、一気に一本の動画を撮るのに何度もチャレンジしました。2回に渡って、MESH拡張基盤を使って、様々な機器を連携させたピタゴラ装置を作ってみました。MESH拡張タグやラズパイ版MESHも使って、MESH機能の総集編的なものになったのではないかと思います。MESHを使えば、身の回りにある様々なものと、インターネット、センサーなどを組み合わせて、アイデアをそのまま形にする事ができるのが分かってもらえたと思います。SHareの頭文字をとったものです。