NanoBoardAGWithMotorRasPiとRaspberry Pi&なのぼ?どAG
なのぼ?どAGは、Arduino互換Scratchセンサーボードです。Scratchからモーターも制御することができます。ちっちゃいものくらぶが製造販売しています。
NanoBoardAGWithMotorRasPiは、Raspberry Piに接続したなのぼ?どAGに接続したモーターを制御できるBased on Scratchです。なのぼ?どAGに搭載のセンサー類は標準のScratchでも制御できますが、モーターの制御には、ちっちゃいものくらぶからダウンロードできるScratch(対応OSにより名前が若干違います、Raspberry Piでは「NanoBoardAGWithMotorRasPi」)から制御することができます。→「NanoBoardAGの使い方」
なのぼ?どAGに接続したモーターを駆動するために、別途Raspberry PiにNanoBoardAGWithMotorRasPiをインストールして使います。
また「Lego Crazy Action Contraptions」を使ってレゴなのげ?た?を組み立て、NanoBoardAGWithMotorRasPiから動かします。
モーターを駆動する、レゴなのげ?た?を動かすまでをメモります。
なのぼ?どAGに接続したモーターを動かします。
- まず、Raspberry Pi(Raspbian)にNanoBoardAGWithMotorRasPiをインストールします。
詳しいインストール手順は「NanoBoardAGの使い方」にありますが、ここではpiユーザーのホームディレクトリ上でコマンド2行を実行するだけでインストールする手順を紹介します。
- LXTerminalを起動します。
- piユーザーのホームディレクトリ(/home/pi)にいることを確認します。(pwdコマンドで確認できます、他のディレクトリにいるときは「cd ~」コマンドで移動できます。)
- 以下のコマンドを実行します。これでダウンロード&インストールが完了します。またデスクトップ上に「NanoBoardAGWithMotorRasPi」のアイコンが表示されます。
pi@raspberrypi ~ $ sudo wget http://squeakland.jp/abee/tmp/NanoBoardAGWithMotorRasPi.tar.gz pi@raspberrypi ~ $ tar xvf NanoBoardAGWithMotorRasPi.tar.gz
- NanoBoardAGWithMotorRasPiとなのぼ?どAGの動作確認がてら、なのぼ?どAGに接続したモーターを動かします。
- Raspberry Pi(Raspbian)の電源を切ります。
- Raspberry Piになのぼ?どAGをつなぎ、なのぼ?どAGにモーターをつなぎます。ぼ?ど上の「M1」と書かれたピンヘッダにモーターをつなぎます。
- Raspberry Pi(Raspbian)を起動します。
- NanoBoardAGWithMotorRasPiを起動します。
- 「調べる」の「スライダーセンサーの値」の左にあるチェックボックスをクリックします。すると右上にあるステージに「スライダーセンサーの値」が表示されます。なのぼ?どAG上にあるスライダーを動かし、表示される値と連動するようならOKです。
- またステージでスライダーの値を見ている間に、左のペインが「動き」に変わり、なのぼ?どAGのモーターを動かすブロックが表示されます。このブロックをクリックします。ブロックの通りモーターが駆動すればOKです。時々「モーターをオンにする」をクリックしてもモーターが動かないときがあります。そのときは、「モーターのパワーを100にする」から小さい数値を設定してください。
レゴなのげ?た?を動かします。
なのぼ?どAGにはスライダー、明るさセンサー、マイク、スイッチがありますので、その中から明るさセンサーを使って、レゴなのげ?た?を動かします。NanoBoardAGWithMotorRasPiでスクリプトを書きます。
- レゴなのげ?た?を組み立てます。作り方はこちらに紹介されています。
- レゴなのげ?た?のモーターをなのぼ?どAGにつなぎ、なのげ?た?の口の下になのぼ?どAGを置きます。上から見てなのぼ?ど上の明るさセンサーが口で隠れないように置きます。
- NanoBoardAGWithMotorRasPiの「動き」にあるモーター用のブロックを使って、なのげ?た?の口を適度に閉じます。
- まずモーターの回転方向を確認します。「モーターの回転をXXXにする」で「こちら向き」か「あちら向き」が設定されていることを確認後、このブロックをクリックします。
- 次に「モーターを1秒オンにする」をクリックします。口が開けば「モーターの回転をXXXにする」の設定値を変更しクリックしてから、口が閉じればそのまま少しずつ「モーターをオンにする」「モーターをオフにする」をクリックして、わにげ?た?の口を閉じます。
- なのぼ?どAG上にある明るさセンサーの値を確認します。
「調べる」にある「スライダーセンサーの値」を右クリック→「ScratchBoard監視板を表示」を選択します。するとステージに「ScratchBoard監視板」が表示されます。なのぼ?どAG上にあるスライダー、明るさセンサー、マイク、スイッチの値が監視板に表示されます。
なのぼ?どAGを手でかざしたときと離したときの明るさの値を調べて、境界となる値を決めます。今回は、かざしたときが37くらい、離した時が51くらいでしたので、境界値を44にします。 - スクリプトを書きます。
- 「モーターをオンにする」「モーターをオフにする」「モーターをX秒オンにする」ブロックがあります。
- モーターの回転方向を変えることができます。
「モーターの回転をXXXにする」ブロックの「こちら向き」「あちら向き」「逆向き」でモーターの回転方向を変えることができます。 - モーターのパワーを変えることができます。
「モーターのパワーをXにする」ブロックで0から100までの整数値を入れることでモーターのパワーを変えることができます。
- 緑の旗をクリックするとスクリプトが開始します。手をかざすと口が開き、離すと口を閉じます。