2016年11月17日木曜日

第7回:GOPIGOをPYTHONで自律駆動させる(1)


訂正(2016年11月22日):GOPIGOとしてRaspberry PIを組み込んだ状態では、Micro USBの+5V電源は使えないと断言しておりましたが、Dexter IndustriesのホームページにGOPIGOの形で、「Micro USBが使える」ことが明記されておりました。回路図的には私の読んだ通りですが、ICの耐圧仕様などを鑑みるとOKということなのだと理解しました。早とちりで申し訳ありません。


GOPIGOをPYTHONで動かす事は、サンプルプログラムも多くUPされているので、比較的簡単にトライできそうである。
自律駆動の第一歩として、超音波距離センサーで前の距離を測りながら前進して、障害に近づいたら一旦止まり、左右に首を振ってそれぞれの距離を測り、遠い方へまた前進する、ということを繰り返すプログラムを作れば良いと考えた。
サンプルプログラムとしては、GITHUBにUPされているbasic_obstacle_avoid.pyというプログラム例が参考になりそうだ。

<電池問題>
PYTHONでプログラムをしながら、GOPIGOの動きを観察していると、当たり前の話では有るが、電池がへたってきて、SSHのやりとりも時間がかかるようになった。
プログラムコードを睨んでいると、どうしても時間が経ってしまうので、やっぱり電池では無理が多い。
既に持っているMicro USBのACアダプターが使えないものかと、GOPIGO2基板の回路図をじっと見てみたが、回路設計上は+5Vを外部から供給される事は想定していない様だ。GOPIGO2基板の中では、電池ホルダーからの電源を直接使っているのはモータードライバーICだけで、それ以外はレギュレータICを通過して+5Vで使っている。+5VをGOPIGO基板に強引に外部供給した場合、問題となるのはこのレギュレータICの出力ピンとFeedbackピンに想定外の+5Vがかかった場合にICが壊れるかどうかだ。Dexter Industriesにそのことを聞いても設計範囲外のことだから困るだけだろう。あまり、設計範囲外のことをしてトラブルを招くのも嫌なので、やっぱりMicro USBコネクタから電源供給をするのは止めておこう。どなたか、GOPIGOに組み込んだ状態で+5Vを外部供給してみた人が居たら、参考までに状況を教えて下さい。
電池は、やっぱりエネループかな。家にあるエネループを一部使ってみた(写真)が、8本もあるわけではなく、また古いので充電時間も7時間と長い。最新のエネループを見ると2時間程度で充電できるらしい。 +12VのACアダプターを買うのも良いが、動かしてデバッグする時は困るだろうし、最新のエネループを買うのか、迷いは多い。

<超音波距離センサー>
サンプルプログラムは、そのまま動かすと、想像どおりに、壁に向かって動き、20cm程手前で止まる。まったく、プログラム通りだ。
サンプルプログラムに手を加えて、以下の様に変えた。障害まで20cmの距離までまっすぐ進み、20cm以下の距離で止まり、右(20度)、左(160度)の距離を測定し、どちらも20cm以下であれば、少しバックして終了する。どちらかが20cmより遠ければ、より遠い方向へ回転し、まっすぐ進む。これを繰り返す。

from gopigo import *
import time

enable_servo()
servo(90)
distance_to_stop=20
print "Press ENTER to start"
raw_input() #Wait for input to start
fwd()
while True:
dist=us_dist(15) #Find the distance of the object in front
print "Dist:",dist,'cm'
if dist<distance_to_stop: #If the object is closer than the "distance_to_stop" distance, stop the GoPiGo
print "obstacle"
stop()
servo(20)
time.sleep(1)
dist=us_dist(15)
print "Right Dist:",dist,'cm'
a=dist
servo(160)
time.sleep(1)
dist=us_dist(15)
print "Left Dist:",dist,'cm'
b=dist
if a<=distance_to_stop and b<=distance_to_stop:
   servo(90)
   time.sleep(1.0)
   bwd()
   time.sleep(0.5)
   stop()
   print "I gave up and stop!"
       #Stop the GoPiGo
   break
elif a>b:
   if a>distance_to_stop:
       right_rot()
       time.sleep(0.3)
       stop()
       servo(90)
       time.sleep(1)
       print "go right"
       fwd()
elif b>a: 
   if b>distance_to_stop:
       left_rot()
       time.sleep(0.3)
       stop()
       servo(90)
                        time.sleep(1)
                        print "go left"
                        fwd()

time.sleep(0.1)
dist=us_dist(15)
time.sleep(.1)

このプログラムで、囲まれた場所では、多少ぶつかりながらも自律的に動き回ることができる。但し、超音波距離センサーが時々誤った結果を返すので、何も障害が無いのに、左右を見渡す動作が入り、どちらかに回転して進んでいるところがある。超音波距離センサーをうまく制御できていない気がする。電池の電圧が変動しているのかもしれないが、正直良くわかりません。
まあ、とりあえず自律動作の第一ステップはうまくいった様に思う。USセンサーを使う限りは、こんなところでしょう。

第二ステップは、カメラ・マイク・スピーカ等を加えて、何ができるか?というところでしょう。ということで、次の段階を検討する事にする。



2016年11月15日火曜日

第6回:GOPIGOでPYTHONのプログラムを動かす


さて、前回までにGOPIGOの組み立てとチェックを終わり、順調に各機能が動いている事まで確認した。大変うれしい限りである。
今回は、いよいよPythonのプログラムを動かしてみよう。

<Python プログラムをGOPIGOに転送する>
SSHでの接続は順調で、難なく動作チェックを終えたが、SSHで動かすのはfwdなどの1コマンドだけなので、連続動作はできない。そこで、簡単なプログラムをGOPIGOに入れて動かしてみたい。
コンピュータとしてキーボード、ディスプレイを接続すれば簡単にできることなのだが、今後の事を考えると、これも私のMACで入力したプログラムをリモートでGOPIGOに転送できたほうが余程効率が良い。いちいちキーボードやディスプレイ(私の場合はテレビを使っているので、テレビをいちいち占有するのは家族に気が引ける)をつながなくても良いのが何よりだ。
SSHは、残念ながらファイル転送機能は持っていない。FTP(File Transfer Protocol)機能が必要になる。Dexter Industriesのビデオでは、Windows SCPというアプリを使っているらしい。でもこれはWindows用であって、MACでは使えない。ネットで調べると、いろいろなアプリが世の中に有るようであるが、まあ、今のところ立派な有料アプリまたは怪しい無料アプリに手を出す必要は無く、ファイルが転送できれば良いだけである。
世の中には親切な方が居て、これもブログを参考にした。LINUXとMACにもともと備わる機能を使うだけなので、今はこれで十分。もっと高級な機能が欲しくなったらアプリを考えよう。
ブログを参照戴ければ、全くその通り行なえば良い。少々説明を加えると、
まず、SSHでGOPIGOに入り込んでから、ftpサーバー機能であるvsftpdをインストールしてCONFIGファイルで「書き込み許可」に書き換える。vsftpdをスタートさせておく。
という順序で淡々と行なえば良い。慣れた人には簡単なことだが、編集にviを使う必要があって、これに手こずった。viは、そう言えば大昔使ったことがある。リモート接続では原始的ではあるが有効な手段だ。と納得したが、viの操作は忘れている。

Vsftpdインストールのインストールは、
$ sudo apt-get update
$ sudo apt-get install vsftpd
の2行を打ち込むだけで、勝手にインストールしてくれた。便利なものだ。インストールされたサーバーをスタートしておけばFTP機能がGOPIGOで動き始める。
でも、これだけでは、ファイル転送は実は拒否されてしまう。インストールされたままでは、書き込み不可状態だからである。
そこで、vsftpd.conf を編集する作業が必要になる。ここで、viを使う羽目になる。

$ sudo service vsftpd stop
$ sudo cp /etc/vsftpd.conf /etc/vsftpd.conf-ORG
$ sudo vi /etc/vsftpd.conf
実際は、変更箇所は、
write_enable=YES #書き込み許可
だけだ。ポイントだけ書いておく。viを起動すると、ずらずらと文字列が表示される。この段階ではコマンド入力状態になっていることを覚えておく。キーボードのカーソルキーを下に押せば、次々と表示が出て来て、
#write_enable=YES #書き込み許可
という行が見つかるはずだ。この最初の#のところにカーソルが来ている事を確認してキーボードの x キーを押すと、# が削除されるはず。このまま編集を終了すればよく、
:wq
とキーボードを押下しエンターキーを押せば良い。
ちょっと面倒だが、これだけでFTP機能が使えることになる。一回きりなので、がんばりましょう。このブログの提供者には、感謝もうしあげます。

<簡単なPythonプログラムを動かす>
さて、準備は整ったので、FTP機能を実際に使ってみよう。
①プログラム例の作成
MACのユーザディレクトリにGOPIGOのプログラム例をMACのテキストエディタで作成しgopigoexample1.pyと名付けて置いた。以下の様に、単に2秒間前向きに進み、その後2秒間後ろ向きに進み、止まるだけの簡単なプログラムだ。

import gopigo
print(gopigo.__file__)
from gopigo import *
import time
fwd()
time.sleep(2)
bwd()
time.sleep(2)
stop()
②FTPサーバーをスタートさせる。
 SSHでGOPIGOに入り込み、
 $ sudo service vsftpd start
 $ exit
③MACからSSHではなく、FTP接続でGOPIGOに入り込む
 ftp pi@xxx.xxx.xxx.xxx (SSHと同じIPアドレス)
 するとパスワードを聞かれるので、これもSSHと同様のパスワードを入れる
 今回の場合は、MAC側はユーザディレクトリそのものに居て、GOPIGO側は、home/piに居る様だ。
④プログラムファイルを転送する
 ftp> put gopigoexample1.py
これだけで転送できた。
 ftp> quit
 FTPを終了する。 SSHの終了はexitで、FTPの終了はquitなのだ。
⑤プログラムを実行する
 再びSSHでGOPIGOに入り込み
$ python gopigoexample1.py
と入力するだけで、プログラム通りにモーターが動いて止まった。ちょっと2秒よりは長かった様には思うが、まあ良いだろう。

以上で、python プログラムの実行環境が整った。
次は、距離センサーを使った、プログラムによる自律走行に挑戦してまた報告する。

2016年11月14日月曜日

第5回:GOPIGO組み立て確認


#訂正します。(2016年11月22日)
GOPIGOとしての電源供給にMicro USBの+5Vが使えないと断定しておりましたが、Dexter industriesのホームページに、デバッグ時などGOPIGOの形でMicro USBを使う事が推奨されておりました。申し訳ありません。

<さて、いよいよGOPIGOの組み立て確認作業に入る>
1)電源投入
12V電源をどうするか、悩み中ではあるが、安い単三電池をAMAZONで購入してあるので、とりあえず電池で確認することにした。
GOPIGOのキットには、Raspberry PI用のAC電源アダプタ(5V)が用意されているが、GOPIGO2基板とRaspberry PI基板は電源共有状態のため、Micro USB端子から+5Vを供給することはできない。従い、GOPIGOとして組み立てた後は5VのACアダプターは使えない。Raspberry PIとして独立して使う人には好都合だが、GOPIGOの形のままいろいろ使うには、電池を充電型にするか、7-12VのACアダプタが必要に感じる。まあ、まずは電池で進めよう。

①電池を附属のボックスに8個挿入した。
②Raspberry PI基板を外した状態で、電源コネクターを入れ、電源スイッチをOnにしたところ、緑色のLEDがしっかりついた。
③Raspberry PI基板を装着して、電源を入れた。Raspberry PIのLEDが順調に点灯した。電源を入れたタイミングでサーボがちょっと動いた。見たところ順調そうだ。
④私のMACから、SSH接続をトライした。ssh pi@xxx.xxx.xxx.xxxコマンドで pi@dex:表示が出た。順調にGOPIGOのPIユーザにはいりこめた。

<要チェックポイント>
前回、ばたばたとGOPIGOを組み立ててみた。
ケーブル接続を良く確認してから電源を入れよう。
わかりにくい点を列挙しておく。以下の3点は、ホームページに英語だけではなく、写真入りで説明があったほうが親切だと思う。

1)超音波距離センサー
Attach the Ultrasonic sensor on the servo mount or on top of the GoPiGo and connect the Ultrasonic sensor using a Grove cable to Port A1.
とホームページに書いてあるので、超音波距離センサーのケーブルは、A1と書かれたコネクターに接続すれば良い事がわかる。


2)サーボ
These instructions are for the GoPiGo2.  The servo cable orientation is reversed from the GoPiGo1.  The servo cable connects on the bottom of the GoPiGo2.  The brown wire is ground, and this should be connected to the GoPiGo board so that it’s facing away from the small robot painted on the board.
GOPIGO1ボードとGOPIGO2ボードは、コネクタが逆についているらしい。(若い頃デジタル回路設計に従事していた私としては、自由奔放さにびっくり)
ケーブルの茶色の線がどうやらGRANDらしく、茶色のケーブルが白いロボットの絵の逆側になる向きに差し込めばよい。写真の様に黄色の線がSIGと書かれたところに来れば良いと思うが、電源を入れて動作確認しよう。

3)モーターケーブル
このケーブルは、ホームページに載っているGOPIGO2基板の写真が巧妙に間違っているので、ますます間違いやすいと感じる。GOPIGO2基板の裏側の写真が鏡で見た様に表現されているのだ。これでは基板をシャーシーに載せてしまってから、ホームページの写真を見ながら接続すると、逆に接続してしまう。(実際私は、一旦逆に接続していて、確認時に写真が変だ、と感じて間違いに気づいた)
この写真の様に接続すれば黒いケーブルがGND、白いケーブルが+に接続されていて、良いはずである。
(モーターの向き)
モータを駆動させてみて、初めてわかることではあるが、モータはビデオに示されている通り、ケーブルが互いに内向き(写真のとおり)にしておかないと、モータの回転方向が、プログラムとは異なる結果となるので、注意。(実際私の場合、間違えていた。写真の様に修正した。)

<動作チェック>
①モーター
SSHモードでPYTHONを起動して、
import gopigo
print(gopigo.__file__)
from gopigo import *
としておいて、
fwd()
にて、両輪が前進回転すること
bwd()
にて、両輪が後進回転すること
(実は、この段階で、両輪の動きが異なる事を発見して、モーターの向きを変えた)

②LED
led_on(LED_L)
にてGOPIGO2基板の左前方のLEDが点灯すること
led_on(LED_R)
にて同様に右前方のLEDが点灯すること

③サーボ
servo(30)で30度回転位置で停止
servo(180)で180度回転しようとして、ボディに衝突した。160度位が限界か。
servo(0)で、同様に右に回転してボディに衝突した。20度位が限界か。

④超音波距離センサー
print us_dist(15)
にて、距離計測結果を返して来た。cmで大体あっている。15というのは、センサーを接続したコネクタがA1であったので、port A1が15番であることによる。

以上、ひととおりの確認を終えたと思う。
これから、PYTHONのプログラムでいろいろとトライしようと思う。
MACのSSH接続だけでは、プログラムをリモートから書き換えることができなさそうなので、FTPとか、MACからうまい方法を見つけて、また進捗を報告したい。




2016年11月11日金曜日

第4回:GOPIGOの組み立て


前回、GOPIGOのリモート接続ができるところまで確認した。
そろそろ、GOPIGO本体を組み立てることにしよう。

<部品の確認>
GOPIGOの組み立ては、Youtubeにビデオがアップされていて、その通りやればできるだろうと確信して進めた。youtubeとは異なり、きれいな箱になっている。ビジネスがうまく回り始めたのだろうか。

 箱の中味の写真も添付する。特に欠品は無い様だ。

アクリル板の保護シールも、youtube映像とは異なり、はがしやすくなっている。また、アクリル板の上下を示すTOPという文字も刻印してある。かなり、改善されている模様だ。なかなかやるではないか。

<組み立て>
モーター部の取り付けをビデオ通りにトライした。
モーター支持部材は、ビデオとは異なり、緑色のプラスティックの様なものに代わっている。また、ビデオには無い、「ワッシャー」と「スペーサ」が登場している。ワッシャーは適当に使うこととした。スペーサは、穴の形状から明らかにモーターから出たシャフトに取り付けるものと思われた。車輪側は、ぴったりで、良い感じだったが、エンコーダ側がどうしたものやら、一つつけただけではガラガラだし、2つつけるとエンコーダがうまく付かない。まあ、どうせいくらでも修正可能なので、とりあえず両脇に一つずつつける事にした。それにして、エンコーダがぐらぐらしている。ビデオでは、紙を挟んでいるが、今回のエンコーダーは紙を挟まなくても良い様に穴がせばめてあり、何かを挟んで固定する雰囲気でもない。よくわからないので、とりあえずそのままとする。
実際、組み立ててみて、モーター取り付けの長ねじの方向をビデオから変えた。ドライバーが外から作業できる様に内向けに差し込んだ。ビデオでは、中から外向けにねじを差し込んでいるが、私の持つ、太いドライバーでは、ねじに届かないのだ。外からドライバーで作業する場合は、ナットのシャーシー側の扱いが多少難しくなるが、小型ラジオペンチでナットを保持する事で、比較的容易に組み立てられた。


後部キャスターの取り付けは、簡単であるが、ワッシャーは役に立つと思われる。しっかりと両面にワッシャーをつけた。
モーター基板も載せてねじ締めをするだけ。

 さて、Raspberry PI 基板を載せる段になって、Raspberry PIのコネクタが40pinで、GOPIGO2基板のコネクタが26pinであることに気づいた。1pin同士を合わせれば良いことは、なんとなくわかるが、心配なので、Raspberry PI3とGOPIGO2の回路図を比較してそれで正しいことを確認した。もっとも、1pin 同士の接続以外は普通しないような設定になっている。 しかし、接続コネクターだけで支持されているRaspberry PI基板はなんとも頼りない。何故、ここだけ手を抜いているのか?疑問は残る。基板自体は軽いので、コネクタだけでも、まず問題は無いとは思うが、、。
最後はサーボメカニズムをつけて、us距離センサーを載せればできあがり。
サーボメカニズムの付け方もビデオがある。少しねじが小さすぎて、扱いに困る。
また、GOPIGOで不親切なところは、ケーブルの接続がわかりにくいことである。
組み立ててみたが、正しいかどうか疑念が残る。電源を入れる前に、再チェックしよう。実際には、何が正しいのかわかりにくいので、チェックにも時間がかかりそうだ。
また、よくよく見ると、電源は単三電池が8つで12V仕様の様だ。Raspberry PI自体は、GOPIGO2基板と電源共有結合しており、Raspberry PIの電源は、GOPIGO2基板から供給される形になっている。ということは、この形でRaspberry PIをいじろうとしたら、電池駆動になってしまうということだ。うーん、これでは電池がいくつあっても足りないぞ。
充電池(エネループ?)でも買うか、、、。
次回は、動作確認だ。慎重にやらねば、、。






2016年11月8日火曜日

第3回:GOPIGOの頭脳であるRaspberry PIを使えるように

GoogleのAI関係のクラウドAPIの発表の時に、GOPIGOがデモツールとして使われ、大いに興味を持った事で、GOPIGOを作ってみる事にした経緯は既に述べた。
もうGOPIGOのキットは家に届いてしまっている。ロボットカーを組み立てるのは容易だが、GOPIGOにはRaspberry PIというCPUボードが載っており、LINUXで動くところが含まれていて、ラズパイ初心者の私がこの点を乗り越えられるかが大いに心配である。もちろん、フレキシビリティの高さや人工知能を含めた高い可能性もLINUX CPUにかかっているので、とても大切な要素だ。
そこで、まずはラズパイの辺りを攻略することにした。

ラズパイ自体をコンピュータとして扱うのは面倒なので、そのうちSSH接続といって、私のMACからリモートターミナルを使ってコントロールしたほうが便利だと思っているが、まずはラズパイ自体の表示を確認するところから始めたい。

Raspberry PIをコンピュータとして扱うため、GOPIGO到着までに以下の用意をした。
①キットに入っているMicro SDカード容量が小さい(4GB)ので16GBのMicro SDカードを購入した。(Amazonにて;Transcend microSDHCカード 16GB Class10 (無期限保証) TS16GUSDHC10E (FFP) :680円)
②HDMIケーブル(Amazonにて、598円):表示器はテレビを使う事に、、、。
③USBキーボード (AmazonにてSANWA SUPPLY USBキーボード SKB-L1U:490円):安さにびっくり。
④USBマウス (Amazonにて:Logicool ロジクール 有線光学式3ボタン マウス M100r ブラック:481円)

とりあえず、キットに入っているMicro SDカード(4GB)を挿入して、キーボード・マウス、及びHDMIケーブルでテレビをつなげて電源を入れると、いとも簡単にパソコンの様な画面が出てきた。何だ、簡単ではないか、、。
Raspberry PI 3 に備わっているWIFI機能で、家の無線LANにも簡単に接続でき、インターネット画面も見る事ができる。キットに入っているWIFIドングルは使う事が有るのだろうか? おやおやネットを見ようとしても日本語がうまく表示できていないね。

<日本語化>
GOPIGOのRaspberry PIの日本語表示は最初の段階では不要と思うが、とりあえずトライしてみた。これもブログに助けてもらった。
sudo apt-get update
sudo apt-get install fonts-ipaexfont
の2行を打ち込むだけで、少々時間がかかったが、どうやらフォントは読み込めた様だ。
ところが、Dexter社のMicro SDカードを使う分には、設定を変えようとするとWarningが出てくる。設定を変えたら知らないぞ、とのことなので、Dexter 社のカードはいじらないようにしよう。残念では有るが、ロボットが画面を持つことは無いので、今回は日本語化は止めておこう。

Dexter Industries社のカードではなく、別途アマゾンで購入したMicro SDカードを試してみる事にした。別のブログを参照した。Micro SDカードをフォーマットして、Raspberry PIのホームページからNOOBSをダウンロードし、解凍してMicro SDカードにコピーした。このMicro SDカードをRaspberry PI基板にさして、電源を入れたところ多少時間はかかったが正常にRasbianというOSがインストールされた様だ。画面がかなり違うのでびっくり。
Raspberry PI上でのインストールの際に、言語を日本語に指定できたので、指定してインストールしたところ、何をせずともWEBアクセスをしても日本語がうまく表示できた。簡単なものだ。日本語が使いたければ、Dexter Indutries社のカードではなく、このカードにDexter Industries社のソフトウエアをインストールした方が良さそうに思うが、まずは、GOPIGOがちゃんと動くまではこのままDexter Indutries社のMicro SDカードを使う事にしよう。

<SSH接続>
Raspberry PIをコンピュータとして使うなら、大きなキーボードやマウスがついていても構わないが、目的はロボット化であるから、なるべくパソコンからリモートでコントロールしたいものだ。その為に、SSH(Secure SHell)という機能が準備されていて、Raspberry PIには、SSHサーバーが搭載されている。
Dexter Industries社のMicro SDカードを使って、これもブログを参照しながら、SSH接続を試みた。
①Raspberry PIの画面上で、ターミナル画面を開き、現状無線LANでつながっているIPアドレスを取得する。(hostname -I コマンド)
②PC(私の場合はMAC)側で、やはりターミナル画面を開き、ssh コマンドを発行して、リモート接続する。
の2ステップで簡単なはずであったが、リモートログインでトラブルが発生した。初期設定上 ID:pi、Password:raspberryのはずであるが、パスワードを入れても、拒否される状況になった。何が起きたのか、よくわからないが、最後の手段として、Raspberry PI側に戻り、Passwordを書き換える方法をとった。sudo passwd pi コマンドでPIユーザのパスワードを書き換えてしまったところ、SSH接続ができた。

このSSH接続ができれば、GOPIGOの制御やプログラム書き換えなど進められるので、一つの山を越えたと感じた。参照させて戴いたブログをご提供戴いた方々には感謝申し上げたい。









2016年11月6日日曜日

第2回:GOPIGOが届いた!

 GoogleのクラウドAPIの発表の時に、デモに使われたGOPIGOというRaspberry PIを載せたおもちゃの車ロボットに魅せられ、アメリカのDexter Industries本社に発注してしまったが、発注に至る経緯は前回書いた。そのGOPIGOがなんと郵便局から届いたのだ。
最近の輸送トラッキングシステムは非常にしっかりしていて、全て追跡可能になっている。本当に驚きだ。10月25日にDexter Industries社のホームページで発注したのが、10月27日にDexter Industries社からUSPSに出荷され、10月30日にニューヨークを経由して10月31日に東京に到着し、11月3日に我が家に配達されたが、不在だった様子がすべてわかる。

但し、小さいが輸入にあたり、関税¥1000と通関料¥200、合計¥1200を請求された。米国内では、shipping freeのキャンペーン中でもあり、$199.00で手に入るものが、日本から購入すると、それに加え$64.71の輸送費+関税等¥1200を支払う必要がある。やはり、日本で安く気軽に購入できる様にならないとなかなか受け入れがたいだろうなという感じが残る。Dexter Industriesには広域代理店(Robotshop:日本を含む米国、カナダ等)があり、日本語の購入サイトが開いているが、購入者が少ないせいか品揃えも十分ではない。今回も知っていて検討はしたが、ベーシックキットしか出ておらず、使う気にはなれなかったのが本当のところ。
梱包を開けてみると、

緩衝材は無く、バラバラに部品が箱に入っている。よくまあ無事にアメリカから日本まで届いたものだ。個々の部品は、ある意味しっかりと袋や箱に入っていたりしているので、これで輸送会社の品質の高さを考慮すると、十分なのかもしれない。内容的には、オーダーした部品が全てしっかり入っていた。(というよりも、Dexter社のキットそのものではある)

いよいよ、組み立てに入ろう!

GOPIGOで難しいところは、GOPIGOカーの組み立て自体ではなくRaspberry PIというLINUXのCPUボードをうまく使いこなせるか?という点である。私は、Raspberry PIを初めて扱うので、次回からその辺りを含め報告することにする。



2016年10月30日日曜日

第1回:GOPIGOを発注する



GOPIGOというのは、自動車型のおもちゃロボットで、米国のDexter Induxtriesという会社が提供している。日本ではあまりなじみが無いかもしれない。
Googleが、AI機能APIをクラウド提供し始めたときに、デモとして使われたらしい。ブログを見てとても興味をもった。
日本では、小学校での2020年度からのプログラミング教育の必修化が検討される事になり、今後このような具体的なツールが注目されると推測される。こういうロボット自体は国内で調達した方がコストは安いと思うが、米国では既に教育に使われており、ノウハウが先行しているところは学ぶべきだろう。教育はハードコストも重要だが、教育効果のほうがはるかに重要だと思う。
また、GOPIGOは、他社の商品より若干高めであるが、その分Raspberry PI(ラズパイ)と呼ばれるクレジットカードサイズの超小型PCを搭載しており、自律行動ができる点が優れている。クラウド上のAI機能と連携させることも先述のブログの様に可能であり、「できること」が大きく広がっている。
そういった意味で、先行したノウハウを見てみたいと思い、まずはGOPIGOを入手することにした。

日本で購入できれば、楽で良いのだが、残念ながらちゃんと購入しようとすると、現在のところは米国のDexter Industriesから直接購入するのが一番確実な様だ。日本から発注するにあたり、ホームページから確認してみたが、ちゃんと反応がすぐに有り、適切な操作指示が来た。ただ、応答してくれた人の肩書きがCOOであったので、これはかなり小さな会社であるなと実感した。ホームページから会社の住所を見ても、全くの住宅街の一角にあり、まさにガレージで起業したタイプの会社であろう。
多少、不安を感じながらも以下の発注を行なった。私はラズパイも持っていないので、スターターキットを買う事にした。オーダーすると、メールですぐに反応があり、また出荷した時点でもメールがあり、一安心といったところ。



Product                            Quantity Price
GoPiGo Robot Starter Kit          1 $199.99
Subtotal:                                         $199.99
Shipping:                                           $64.71 via USPS Priority Mail International (Estimated delivery between November 2, 2016 and November 8, 2016)
Tax: $0.00
Payment Method: Credit card (Stripe)
Total:                                                  $264.70

1 x WIFI Dongle for Raspberry Pi (855947002552)
1 x Raspberry Pi Power Supply (855947002576)
1 x GoPiGo2 Base Kit (855947002583)
1 x Servo Package for GoPiGo (855947002590)
1 x Ultrasonic Sensor (855947002606)
1 x Raspberry Pi Ethernet Cable (855947002644)
1 x 4GB Micro SD Card with Custom Dex Software (855947002637)
1 x Raspberry Pi3 Model B (682710991498)

Raspberry PI 3は、WIFI機能も内包しているが、このキットはRaspberry PI 2の時代の構成の様で、WIFIドングルが含まれている。また、送料が意外に高いのは閉口する。日本のアマゾンあたりで安く買える状況にならないと普及は難しかろう。教育用ツールとしては、レゴのマインドストームが有名な様だが、このGOPIGOのような単純で安価なキットは現実的でより普及しやすいと思うので、言語的な壁を含め日本化を提案したいところだ。

実際に荷物が着くのは11月の上旬らしいので、大いに期待しながら待つ事にしよう。
到着して組み立てる時の様子はまた報告したい。