Raspberrypi On Zumo Python TkInterによる操縦・超音波センサによる停止

Raspberrypi On ZumoをPCなどのVNC画面からリモコンで操作します。取り付けた超音波センサーにより、障害物があると停止するようにします。USensorZumo

  1. 超音波モジュールの製作
  2. Arduino Leonardoのプログラム
  3. RaspberryPi のリモコンプログラム

超音波モジュールの取り付け

汎用基板を12×24ピッチの大きさに切り、図のように超音波センサー、ピンヘッダー2×12を取り付けます。

UsensorBoard2ZumoPinAssignment

ボードの裏面の配線は下のようにします。

Board_Plus_Sensor

超音波センサー基板をZumo前面の下部に取り付けます。

UsensorZumo2

 

Arduino Leonardoに超音波処理のプログラム・RaspberryPiのPythonプログラムをアップロードする

前もってやっておかなければならないこと:本サイト RaspberryPi On ZumoのWi-Fiコントロールシステム(WebIOPI)構築の手引き

を参照して、次の2点を行ってください。

  • RaspbianにArduino開発環境をダウンロードします(下記リンク 4.参照)
  • ZumoMotorLibraryをダウンロードします(下記リンク5.参照)

その上で、次のArduinoプログラムをLeonardoにアップロードします。
Arduinoプログラムは次のとおり
USensor

ダウンロードリンク
UsensorCode

次のプログラムをRaspberryPiデスクトップ上でPython2.7を使って走らせる。(このコードも上のダウンロードファイル
UsensorCodeに含まれます)
TkControl-py
このプログラムをRaspberrypi上で走らせるとTkInterを利用してボタンでコントロールできるようになります。
ただし、RaspberrypiOnZumoを走らせるときはVNCを利用してリモートコントロールで動かします。

動作は:10cm以内の障害物に接近すると、Zumoはストップします。それ以外は下のTkInterのボタンで前進・後退・左旋回・右旋回をコントロールできます。終了はMotor controllerのボタンウィンドウを閉じます。
TKControl
<終わり>

RaspberryPi On ZumoのWi-Fiコントロールシステム(WebIOPI)構築の手引き

RaspberryPiOnZumoのWi-Fiコントロール(WebIOPi)システム構築の手引き

PiOnZumo

スマホやパソコンのブラウザから構内のWi-Fiステーション経由でRaspberryPiOnZumoを
操縦するシステムを構築します。WebサーバーにはWebIOPiを使用します。

コードを入手する→codes

RaspberryPiOnZumoについてのFAQ

1.Arduino LeonardoにアップロードしたCommandReceiver.inoのプログラムの意味がよくわからないのですが。

・Arduinoのプログラムは最初に1回だけ実行されるsetup()関数と,その後繰り返し実行されるloop()関数からできていて,
プログラムはその中身を書くことになります。

・setup()関数内でUSBシリアル通信の初期化をSerial.speed(9600)命令で通信速度9600baudに設定します。

・次にloop()関数内で,Serial.available()関数により通信データがあるか調べ,あれば一文字(コマンド)を変数cに読み取り,
その文字の種類によって,モーターを制御しています。

・arduinoのシリアル通信命令についてはArduino.ccのserial以下をご覧ください。

https://www.arduino.cc/reference/en/language/functions/communication/serial/

 

2.Arduinoにモーターコントロールプログラムを書き込むとエラーが出てうまく書き込めません。

・ZumoMotorLibraryの場所が違っている可能性があります。    /home/pi/sketchbook/library/Zumo-shield/ZumoMotors
というディレクトリ構造になっているか確認してください。

・ArduinoIDEから ツール>シリアルポート を確認してください。    /dev/ACMA0となっているか、たとえば/dev/ACMA1などに
なっていたら、 RaspberryPiとArduinoがUSBケーブルで接続された状態で、RaspberryPiを再起動してください。
( $ sudo reboot now )その後、/dev/ACMA0になっていることを確認してください。

 

3.WebIOPiを起動するとデモページが立ち上がってしまう。

・/etc/webiopi/configファイルが書き換えられていません。11.の項目をもう一度よくチェックして下さい。
デスクトップ環境から直接configファイルをleafPad(エディタ)で開くと、書き込みができません。
lxterminalを立ち上げ、その中で sudo leafpad /etc/webiopi/configとして編集し、保存する必要があります。
これは /etc/rc.localの編集、書き込みについても同じです。

 

4.ブラウザからRasPiのアドレスにアクセスしてもボタンのついたページが表示されない。

・ index.htmlファイルが文法的に正しくない。10.のリストと比べて字句が正しいかチェックして下さい。

 

5.プッシュボタンを押してもRasPiが終了しない。

・プッシュボタンが26, 27ピンに間違いなく差してあるか確認する。
・shutdown.pyのリストをもう一度確認してください。
・shutdown.pyの場所を確認してください。
・/etc/rc.local の内容を確認してください。

Zumo32U4 ジャンプスタートガイド

Zumo32U4

ジャンプスタートガイド

 

目次

Zumo開発元ユーザーガイド(英語版). 2

Arduino IDEをダウンロード.. 2

Arduino Librariesダウンロードリンク(説明付). 3

ライブラリファイルをArduino Librariesに加える… 3

インストール済みライブラリのサンプルにアクセスする… 4

Zumo 32U4ドライバーをインストールする。.. 5

ArduinoにZumoHardware add-onをインストールする… 5

ダウンロードと起動… 6

補足ライブラリとサンプルを追加する… 7

 

 

 

 

Zumo開発元ユーザーガイド(英語版)

Arduino IDEをダウンロード

1

  • windows installerを使う場合は、exeファイルを実行し全てのオプションを”yes”または”accept”を選択してください。

2

  • Zipファイルをダウンロードしたら、Cフォルダか、その中のProgram Filesフォルダなど任意の場所に解凍してください。
  • ダウンロードしたファイルからexeを実行し、スタートメニューかデスクトップにショートカットを作成してくさい。

Arduino Librariesダウンロードリンク(説明付)

3

ライブラリファイルをArduino Librariesに加える

 

  • Sketchbook locationを確認するために、Arduino IDEを開いてFileタブのPreferencesを選択してください。下図の場所に記載されたSketchbook locationを確認したらそのアドレスをメモして、Preferencesを閉じてください。
  • Sketchbook Locationのナビゲーションで、小文字のLで表される「libraries」と呼ばれるフォルダにあることを確認してください。そのフォルダがない場合には「libraries」フォルダを作成してください。
  • Arduinoにライブラリを加えるために、ダウンロードしたArduino Libraryを任意のフォルダで解凍し、フォルダごとすべてをlibrariesフォルダにコピーしてください。
  • Zumo 32U4フォルダに解凍する際、フォルダの名前を「zumo-32u4-arduino-library-master」から”「Zumo32U4”」へ変更してください。
  • Arduino IDEを再起動してライブラリを確認してください。

4

インストール済みライブラリのサンプルにアクセスする

  • サンプルにアクセスするために、Arduino IDEでFileタブのExamplesへ行き、ォルダ内のサンプルを確認してください。(リスト最下部にあることが多いです)
  • Arduino IDE 自体にサンプル例が多く用意されています。
  • Sketchbookを通してインストール済みサンプルにアクセスできます。

5

Zumo 32U4ドライバーをインストールする。

  • 一時フォルダの中にダウンロードし、解凍してください。: https://github.com/pololu/a-star
  • driversフォルダを開き、「a-star.inf」を右クリックして、インストールを選択してください。

6

  • インストール完了後、デバイスをプラグインすると自動的に接続が完了します。
  • WindowsXPをご利用の場合、新規のデバイスの接続または新規のポートを利用する度に、下記の追加ステップが必要になります。
    • コンピューターのUSBポートにデバイスを接続してください。
    • 「Found New Hardware Wizard」と表示される場合、「No, not this time」を選択し、「Next」をクリックしてください。
    • 二回目に「Found New Hardware Wizard」が表示される場合、「Install the software automatically」を選択し、「Next」をクリックしてください。
    • Windows XP が「このドライバーはMicorsoft社によってテスト済みのものではないのでインストールの停止をお勧めします。」と警告してきますが、「Continue Anyway」をクリックしてください。
    • 「Found New Hardware Wizard」と表示されたら、「Finish」をクリックしてください。

ArduinoにZumoHardware add-onをインストールする

  • まだ、ドライバーをダウンロードしていない場合には、https://github.com/polulu/a-starからファイルをダウンロードして解凍してください。
  • ダウンロードした「add-on」フォルダから「pololu」フォルダをコピーしてください。
  • Sketchbookのフォルダを開いて、小文字のHで表されるHardwareフォルダがあること確認してください。そのフォルダがない場合には「hardware」のフォルダを作成してください。
  • 「pololu」フォルダをsketchbook locationのhardwareフォルダにコピーしてください。
  • Arduino IDE に変更を反映させるために再起動してください。

ダウンロードと起動

  • まず、どのCOMポートがArduinoがつながっているか確認が必要あります。スタートメニューからデバイスマネジャーを起動し、「ports(COM&LPT)」の下にArduinoデバイスが見えるはずです。「Arduino Leonardo」かまたはそれに近い名前を探してください。
  • IDE内のToolsタブのBoardへ行き、「pololu A-star 32U4」を選択してください。

7

8

  • IDE内のToolsタブのPortを開き、あなたのボードのCOMportを選択してください。
  • 使いたいスケッチやスケッチサンプルへは、矢印ボタンを押してあなたのボードよりスケッチをアップロードしてください。アップロードの後直ちに起動が開始されます。

9

補足ライブラリとサンプルを追加する

ダウンロードサイトやCDから手に入れたサンプルライブラリを追加するために、Documentsタブ、Arduino内のlibraries sketchbookフォルダにて解凍し、Zumoライブラリも同様のことを行ってください。

Zumo v1.2 ジャンプスタートガイド

Zumo v1.2

ジャンプスタートガイド

目次

Zumo開発元ユーザーガイド(英語版). 2

Arduino IDEをダウンロード.. 2

Arduino Librariesダウンロードリンク(説明付). 3

ライブラリファイルをArduino Librariesに加える… 3

インストール済みライブラリのサンプルにアクセスする… 5

ダウンロードと起動… 5

Zumo用Simulink Libraryのダウンロード.. 6

補足ライブラリとサンプルを追加する… 7

 

 

 

 

 

Zumo開発元ユーザーガイド(英語版)

Arduino IDEをダウンロード

1

  • windows installerを使う場合は、exeファイルを実行し全てのオプションを”yes”または”accept”を選択してください。

2

  • Zip ファイルをダウンロードしたら、C フォルダか、その中のProgram Files フォルダなど任意の場所に解凍してください。
  • ダウンロードしたファイルからexeを実行し、スタートメニューかデスクトップにショートカットを作成してください。

Arduino Librariesダウンロードリンク(説明付)

3

 

ライブラリファイルをArduino Librariesに加える

  • Sketchbook locationを確認するために、Arduino IDEを開いてFileタブのPreferencesを選択してください。下図の場所に記載されたSketchbook locationを確認したらそのアドレスをメモして、Preferencesを閉じてください。

4

 

  • Sketchbook Locationのナビゲーションで、小文字のLで表される「libraries」と呼ばれるフォルダにあることを確認してください。そのフォルダがない場合には「libraries」フォルダを作成してください。
  • Arduinoにライブラリを加えるために、ダウンロードしたArduino Libraryを任意のフォルダで解凍し、フォルダごとすべてをlibrariesフォルダにコピーしてください。
  • L3GとLSM303のライブラリについては、それぞれ「L3G」、「LSM303」の名前のフォルダを使ってください。
  • 最終的に、Arduinoライブラリのフォルダは、下記のようになります。
  • Arduino IDEを再起動してライブラリを確認してください。

5

インストール済みライブラリのサンプルにアクセスする

  • サンプルにアクセスするために、Arduino IDEでFileタブのExamplesへ行き、フォルダ内のサンプルを確認してください。(リスト最下部にあることが多いです)
  • Arduino IDE 自体にサンプル例が多く用意されています。
  • Sketchbookを通してインストール済みサンプルにアクセスできます。

6

ダウンロードと起動

  • デバイスを差し込むことで自動的にドライバーがインストールされ、デバイスを使うことが出来るようになります。
  • ArduinoのどのCOMポートに差し込まれているか確認する必要があります。スタートメニューよりデバイスマネージャーを起動し、「Ports(COM & LPT)」内のArduino LeonardoのCOMの値を確認してください。

7

  • IDE内のToolsタブのPortを開き、あなたのボードのCOMportを選択してください。
  • 使いたいスケッチやスケッチサンプルへは、矢印ボタンを押してあなたのボードよりスケッチをアップロードしてください。アップロードの後直ちに起動が開始されます。

8

Zumo用Simulink Libraryのダウンロード

  • Zipファイルをダウンロードしてください。: http://www.mathworks.com/matlabcentral/fileexchange/45886-simulink-library-for-zumo-robot
  • MATLABのmain directory (デフォルトではマイドキュメント直下のMATLABフォルダ)にそのファイルを解凍してください。
  • ライブラリにインストールするためにmを起動してください。
  • MATLABを再起動し、ブロックを見るためにSimulinkのlibraryを開いてください。

補足ライブラリとサンプルを追加する

  • ダウンロードサイトやCDから手に入れたサンプルライブラリを追加するために、Documentsタブ、Arduino内のlibraries sketchbookフォルダにて解凍し、Zumoライブラリも同様のことを行ってください。

 

Zumo with PixyCam ジャンプスタートガイド

Zumo with PixyCam

ジャンプスタートガイド

目次

Zumo開発元ユーザーガイド(英語版). 2

Arduino IDEをダウンロード.. 2

Arduino Librariesダウンロードリンク(説明付). 3

ライブラリファイルをArduino Librariesに加える… 3

インストール済みライブラリのサンプルにアクセスする… 4

ダウンロードと起動… 5

Zumo用Simulink Libraryのダウンロード.. 6

補足ライブラリとサンプルを追加する… 6

Pixy開発元ユーザーガイド (English). 7

Arduino用Pixy Library のダウンロード.. 7

Arduino用Pixy Codeのダウンロード.. 8

Pixy に色を教えよう.. 8

ホワイトバランスの調整… 9

PixyMonをダウンロード.. 10

PixyMonを使ってみよう.. 10

ネコロボットを使ってみよう.. 11

 

 

 

 

Zumo開発元ユーザーガイド(英語版)

Arduino IDEをダウンロード

1

  • windows installerを使う場合は、exeファイルを実行し全てのオプションを”yes”または”accept”を選択してください。

2

  • Zipファイルをダウンロードしたら、Cフォルダか、その中のProgram Filesフォルダなどお好きな場所に解凍してください。
  • ダウンロードしたファイルからexeを実行し、スタートメニューかデスクトップにショートカットを作成してください。

Arduino Librariesダウンロードリンク(説明付)

3

ライブラリファイルをArduino Librariesに加える

  • Sketchbook locationを確認するために、Arduino IDEを開いてFileタブのPreferencesを選択してください。下図の場所に記載されたSketchbook locationを確認したらそのアドレスをメモして、Preferencesを閉じてください。

4

  • Sketchbook Locationのナビゲーションで、小文字のLで表される「libraries」と呼ばれるフォルダにあることを確認してください。そのフォルダがない場合には「libraries」フォルダを作成してください。
  • Arduinoにライブラリを加えるために、ダウンロードしたArduino Libraryを任意のフォルダで解凍し、フォルダごとすべてをlibrariesフォルダにコピーしてください。
  • Arduino IDEを再起動してライブラリを確認してください。

インストール済みライブラリのサンプルにアクセスする

  • サンプルにアクセスするために、Arduino IDEでFileタブのExamplesへ行き、フォルダ内のサンプルを確認してください。(リスト最下部にあることが多いです)
  • Arduino IDE 自体にサンプル例が多く用意されています。
  • Sketchbookを通してインストール済みサンプルにアクセスできます。

5

ダウンロードと起動

  • デバイスを差し込むことで自動的にドライバーがインストールされ、デバイスを使うことが出来るようになります。
  • ArduinoのどのCOMポートに差し込まれているか確認する必要があります。スタートメニューよりデバイスマネージャーを起動し、「Ports(COM & LPT)」内のArduino LeonardoのCOMの値を確認してください。

6

  • IDE内のToolsタブのPortを開き、あなたのボードのCOMportを選択してください。
  • 使いたいスケッチやスケッチサンプルへは、矢印ボタンを押してあなたのボードよりスケッチをアップロードしてください。アップロードの後直ちに起動が開始されます。

7

Zumo用Simulink Libraryのダウンロード

  • Zipファイルをダウンロードしてください。: http://www.mathworks.com/matlabcentral/fileexchange/45886-simulink-library-for-zumo-robot
  • MATLABのmain directory(デフォルトではマイドキュメント直下のMATLABフォルダ)にそのファイルを解凍してください。
  • ライブラリにインストールするためにmを起動してください。
  • restart MATLAB and open the Simulink library to view the blocks.MATLABを再起動し、ブロックを見るためにSimulinkのlibraryを開いてください。

補足ライブラリとサンプルを追加する

  • ダウンロードサイトやCDからテに入れたサンプルライブラリを追加するために、Documentsタブ、Arduino内のlibraries sketchbookフォルダにて解凍し、Zumoライブラリも同様のことを行ってください。

 

 

Pixy開発元ユーザーガイド (English)

Arduino用Pixy Library のダウンロード

8

  • ダウンロードしたZipファイルを解凍して、解凍したPixyフォルダごと「libraries」のフォルダにコピーしてください。

 

 

Arduino用Pixy Codeのダウンロード

9

  • Arduino IDEのblank programに貼り付けて保存してください。

Pixy に色を教えよう

 

  • PixyとホストPCを同梱のケーブルでつないで、Pixyのカメラを電源に接続してください。
  • カメラより15-50cmほどの距離に対象物を置いてください。
  • PixyのボタンをLEDが赤くなるまで押してください。一つ目の色の標本が登録されたらボタンを離してください。
  • 7色の標本を登録することが出来ます。二つ目の登録はボタンをオレンジになるまで押し続け、離してください。
  • LEDの色は登録された標本の色ではなく、標本の番号を示しています。もしLEDが赤ならば、赤い標本を指し示すのではなく、1番を指し示します。

 

 

  • 以下はLEDの色一覧表です
    1. オレンジ
    2. 黄色
    3. シアン
    4. 消灯

 

  • 全ての登録をリセットする際は、LEDが消灯するまでボタンを押し続け、離してください。
  • 註釈:Zumo上で稼働中のネコロボットに対してもこの動作は可能ですが、Zumoが動いている場合困難な可能性があります。初めはUSBにて固定してお使いいただくことを推奨いたします。
  • 稼働中のArduino+Zumoにて登録動作をするなら、Zumoを再起動して効果を適用させる必要があるかもしれません。

ホワイトバランスの調整

  • 明るさの異なる環境で新規に開発をする場合光量を調整する必要がありますが、デフォルト設定で、この調整は自動的に行われます。通常は、設定の必要がありませんので、この調整は任意で行ってください。
  • LEDが白く発光するまでボタンを押し続けて(すぐなのでご注意ください)離してください。
  • するとPixyは自動的にホワイトバランスを調整し始めます。白紙をPixyの前に二、三秒かざすことで、調整が完了します。
  • ボタンをクリックするとLEDが発光します。調整完了の合図です。.

 

 

PixyMonをダウンロード

  • もしもボタンがうまく稼動しない際はプログラムを使ってPixyを手動で計測しましょう。
  • ダウンロードはこちら: http://cmucam.org/projects/cmucam5/wiki/Latest_release
  • インストーラー(.exeファイル)を起動し、いんすとーるしてください。
  • PixyカメラをPCに専用ケーブルをつかって繋いでください。
  • スタートメニュー、またはインストールした場所のフォルダーからプログラムを開いてください。 (おそらく、 C:\Program Files\PixyMon\bin\PixyMon.exe に似た箇所)

PixyMonを使ってみよう

  • カメラの前に対象を固定しましょう。ビデオスクリーンから確認できます。
  • もし “ error: No Pixy devices have been detected.”というエラーが発生したら、PixyMonを閉じて、デバイスとPCが正しく繋がっているか確認してください。

10

  • ActionからSet signature 1をプルダウンメニューから選択してください。
  • マウスを使う際は、対象をクリックし、ドラッグしてください。
  • 登録した標本の訂正をする際は、 FileからConfigureを開き、 Pixy Parametersの下にあるSignature Tuningを開いてください。

11

  • 検出をクリアに改善しようとする際、バーを調整するときは、色彩エリアをほぼ全てカバーしており、対象の外側のエリアだけではないことに注意してください。 OkかApplyを押して保存してください。

 

ネコロボットを使ってみよう

  • PixypetのコードをArduinoにダウンロードしてくださ。
  • Pixyのカメラの認識する目標物の色を設定してください。
  • カメラをZumoに専用ケーブルで繋いでください。
  • Zumo+Pixyの電源を入れて、準備完了です!