« 週刊myRobotを作ろう(46) | トップページ | 週刊myRobotを作ろう(48) »

2007年2月27日 (火)

週刊myRobotを作ろう(47)

■更新情報 「プログラムでID-01を動かす」 (2007/2/28)
■更新情報 「Bluetooth通信中の雑音」 (2007/2/28)
■更新情報 「テストプログラムを作成する」 (2007/3/4)

■更新情報 「格段に増えたボキャブラリー」 (2007/3/3)
■更新情報 全体的に加筆しました (2007/3/5)
 
今週は「ブレインボード取り付け」「ブレインOSインストール」「ユーザープログラム」の3編構成となり、ハード、ソフト両面のかなり多様な内容が盛り込まれています。注意深い作業が必要かと思われます。

■ブレインボード搭載、OSインストール、そのあとの感動
52号がついに出ました。今回は皆さんお待ちかねの「ブレインボード」です。Id01_52_9
 
皆様ご存知のように、ID-01はどんどん進化しています。
今までの進化シーンを思い出してみましょう。
6号で初めて「お辞儀」をしてくれた時のこと。
「サウンド追跡」で音の方を向いてくれた時のこと。
「音声認識」でコミュニケーションが出来た時のこと。
そして「Bluetooth」による、ワイヤレスでの操作が出来た時の事を・・。

今回、ブレインボードを搭載して、OSインストールした後に、今までのアクション(行動)がかなり進化した事に気付きます。
何がどうなるのかなどと、やぼな事はここでは記載しません。
この感動は、皆様がブレインボードを実際に搭載されて、じかに体験してみてください。
52号の冊子にもその辺りの配慮でしょうか、「OSのインストールがID-01の行動にどのような変化をもたらすかは、後の号で見ていこう・・・」と記載されているのみ。
さすがに分かってらっしゃるデアゴさん。Id01_52_10
この見慣れない表示はなんでしょう・・・・
 
◇今週の作業は2つある
今回の作業は主に2つの作業があります。
「ブレインボード搭載」「ブレインボー^ドOSのシンストール」です。
前者は難しくはありませんが、後者はかなりくせものです。
でも、それらが無事完了したあかつきには、生まれ変わったID-01に出会うう事が出来ます。
これらの作業を行うには、インストールに関しての下準備が必要となりますので、ご説明致します。

◇PCに「シリアルとUSBケーブル」を接続する
PCの背面にシリアルコネクターが付いている方は、50号についてきたシリアルケーブルを接続しておきます。

一方、近頃のノートPCなどにはUSBポートしかなく、シリアルポートが付いて無い機種もあります。
その場合、大手PCショップ、もしくは大手カメラ店などで「USB/シリアル変換」アダプター等を購入する必要が出てきます。
ヨドバシカメラなどのオンラインショッピングでも手に入るようです。実売価格で2千円後半から4千円代のようです。
購入される方は、シリアル変換アダプターが他に使い道があれば良いな・・・と思っています。

ID-01にはUSBケーブルも接続しますので、PCの空いたUSBポートを見つけておいて下さい。
全然あいていない場合は、今使わない機器(例プリンターなど)のUSB端子を抜いて一つ分確保しておいて下さい。
最初は、ID-01のUSBケーブルを差し込まないでおいて下さい。

◇CD-ROM2の組み立てムービーを見る
ブレインボード搭載と、ブレインボードOSインストールの解説ムービーがありますので、確認のため見ておく事をお勧めします。
CD-ROM2をセットして、「メニュー」→「(3)組み立て」→「ブレインボードとプログラミング」
「ブレインボードの取り付け」と「『ブレインボードOS』のインストール」
かなり、全貌が把握できるのでは・・・と思います。毎週号全てに解説ビデオがあれば良いのに・・と思うのは私だけでしょうか?

◇あると便利なムービープレイヤー
CD-ROM2のムービーは途中で巻き戻しが出来ないので、見逃した部分をもう一度見るには不便です。
KENさんのブログにフリーソフトの「DV」というムービープレイヤーが紹介されていました。
画面下にあるタスクバーで自由な場面に「送る」「戻す」が可能です。
KENさんに確認したところ以下のURLからダウンロード可能との事でした。http://hp.vector.co.jp/authors/VA020787/DV076f.LZHId01_53_5
 

では準備作業も出来たところで、いよいよメインの作業に入ります。

■ブレインボードの搭載
ブレインボード搭載にあたっては、留意しなければならない事があります。
それは、CMOSケーブルのコネクター装着時に、ブレインボードが破損するケースが発生しているようです。
前週号にも記載しましたが、「CMOSカメラコネクター挿入時の注意」がイタリアデアゴ社からPDFの形で発表されています。http://www.i-droid01.com/frontend/contenuti.asp?CAT_ID=56&CONT_ID=185&page=

原因は、このブレインボードの特徴的な形状(裏側のコネクター、切り欠き部分)と、カメラコネクター挿入時の固さにあると思われます。

◇ケーブルをボードに取り付ける
マニュアルには「ボード取り付け後にケーブルを取り付ける」ように掲載されていますが、イタリアデアゴ社の注意PDFも気になるところですので、私はケーブルを先行して取り付けてしまいました。
取り付けにあたっては、52号の梱包用ダンボールを画像のように一部カットして、ブレインボード下側のコネクターが当たらないようにしました。
CMOSカメラのケーブルは53号で取り付けなくてはなりませんので、今のうちに安全な方法で取り付けた方が利点が大きいと思い実行しました。
CMOSカメラケーブル(小)の取り付けには非常に固かった事もあり、事前に平面(ダンボール上)で作業できて良かったと改めて感じました。Id01_52_6
 
次にブレインボード下側にある12品コネクターと、マザーボード上の12本ピンとを接合させます。
ピン接合部を横から覗き込むようにすれば簡単に接合でき、50号付属の2×6mmネジ2本で固定します。
ネジは2種類あるので気をつけてください。Id01_52_8
 
◇ブレイン接続ボードの配線
ブレインボードに取り付けた、シリアルとUSBの接続ケーブルにあるコネクターを「ブレイン接続ボード」に取り付けます。
ブレインボードの取り付け作業は、以上でめでたく終了しました。Id01_52_11
後は53号「CMOSカメラチップ」を待つのみ
 
■ブレインボードOSのインストール
ボード搭載が終了しましたので、いよいよ『ブレインボードOS』のインストールを行います。
OSのインストール作業は、慣れない方にとっては、結構難解かもしれません。

オペレーションを始める前に先程見たインストールムービーを思い出し、不安な場合は、再度ムービー」を良くご覧頂き、内容を理解されてから実行に移される事をお勧めします。

◇インストールの前準備
以上の2点が完了したら、いよいよ『ブレインボードOS』のインストールを開始します。

◇OSインストールのオペレーション
①ジャンパピンのセット

ブレインボード上の右側のジャンパーピンを確認し、ブリjッジをピンに差し込みます。
②シリアルケーブルをPCに接続
PCに接続しておいたシリアルケーブルのコネクターを、ID-01の接続ボードに確実に差し込みます。(カチッというまで差し込む)
③brain_config.exe
CD-ROM2をドライブに入れソフトウェアのセクションから「ブレインボードOS」のセクションを選択します。
そしてファイルの中の「brain_config.exe」(赤丸印)を選択し、実行(マウスクリック)させます。
(画面クリックで拡大します)。Id01_53_2
「ID-01の電源をONにして、イニシャライズが終了したらエンターキーを押す」とムービーでは言っています。ID-01が首を回し、正面に向き直るのを待ってEnterキーを押します。
ジャンパーピンが差し込まれているせいか、「こんにちは、私はID-01です」という、いつものセリフは喋ってくれませんでした。Id01_53_3
見やすいようにDOS実行画面を重ねて表示させてあります

④シリアルポート検索と「ブレインボードOS」のインストールId01_52_12
インストールの手順は画面に順次表紙され、
最初にシリアルポート検索が実行されます。
次に「ブレインボードOS」がインストールされます。
(DOS画面クリックで拡大します)Id01_52_13

インストールが済んだら、ID-01の電源を切り、ジャンパーピンに差してあるブリッジを外してから、再度電源を入れるよう指示が出るので実行します。

その後、USBケーブルをパソコンの対応ポートに接続する。この時点でパソコンの再起動を促す指示が出る事が有るが、「いいえ」を選択して実行しないようにします。
(私の場合はでませんでした・・)。Id01_52_14
以下は、解説ムービーのナレーションを書き写したのですが、DOS画面の指示に従って黙々とオペレーションを行うだけです。

次に「USBケーブル」を一度抜いて再度接続するように支持が有るので実効する。
この段階でパソコン上にバーチャルドライブが作製され、後で消去される。
これでID-01はVCLEで作製されたプログラムをBluetooth接続を通して受け取る事が出来る。

以上でオペレーションは終了ですので、ID-01に繋がっている、シリアルとUSBケーブルを取り外してください。
そして「Enter」キーを押すと、DOS画面が消去されます。
以上でインストール作業は終わりました。
お疲れ様でした。一旦、コーヒーブレイクでも・・・・

◇インストールとアンチウィルスソフト
インストール作業中は、アンチウィルスソフトを停止させた方が、オペレーションが楽になる可能性があります。
私はアンチウィルスソフトを停止させませんでしたので、インスール以外の余計な問いかけに答えなければなりませんでした。
安全を取るか、オペレーションを楽にするかは、皆さんのご判断にお任せします。
このブログに記載されている全ての作業は、あくまでも私の考えです。
作業に当たっては自己責任でお願いいたします。

◇新しくなったID-01の電源を入れる
いよいよ、ID-01の電源をいれますが、その際、是非ディスプレイに注目していてください。
イニシャライズ後の動作に違和感はありませんか?全く今までにない表示が出ていませんか?
最初だけ、内部メモリーのFORMATが行われるので、暫く時間がかかります。
ディスプレイの表示を見ていてください。
全ての前処理が完了したら、一旦電源を切りましょう。

電源ONで、いよいよ新しいID-01が誕生する瞬間です。Id01_52_15
イニシャライズ開始でディスプレイに・・・・

後は、皆様が実際に動かしてからのお楽しみです。
試しに、頭に手を触れてヘッドセンサーのテストをしてみましょう。如何ですか?

「かっこいい」などと呼びかけないでください。
ID-01が返答してきますので・・・。


■テストプログラムを作製する
プログラム「転送・実行など」の説明をしておきながら、肝心のプログラミングの説明をしていませんでした。
文章が後先になると分かりにくいので、「転送・実行など」の前に、この文章を追記することにしました。

VCLEをマスターするには、ユーザーガイドをうまく使いこなすのも一つのアイデアだと思います

ユーザーガイドには残念ながらいくつかの誤字などはありますが、やはり道しるべとなるものです。何時でも何処でも見るとなると、プリントアウトされた方が何かと便利です。(47頁はかなりのページ数ですが・・・)
電車でも、寝床でも、PCの電源OFF状態で好きなときにご覧(勉強?)になれます。(良く眠れるという声が・・)
まずは事前にVCLEの操作方法(P.5~12)に軽く目を通されておくと、これから後の文章を読まれる上で理解が早くなるでは・・・と思われます。

◇オリジナルプログラムを作る
それでは、「音声コマンドで命令すると、ID-01がその番号で答える」というプログラムを作ってみましょう。
と、言っても、ユーザーガイドP.31のプログラムをアレンジしていくだけです。
細かい説明はユーザーガイドにおまかせして、変更点だけを述べていきます。

まず、VCLEを起動してください。プログラムを起動することを「立ち上げる」などといいます。

①「Behavior1」~「Behavior3」
とりあえずP.31の頁の通りに「Behavior1」~「Behavior3」まで作製します。

まず「Outline」エリアの「行動」を右クリックし、ショートカットメニューから「行動を追加」をクリックします。
すると「Main」の下とプログラム」エリア下部に「Behavior1」が出来ます。(P.6に記載されています)

続けてあと二つ、同じ要領で、「Behavior2」、「Behavior3」を作りますId01_52_31_1
そして、パレット欄のプロセスフォルダーにある「Start」コマンドを3つ追加して、プロパティを各々「Behavior1」~「Behavior3」にしてください。
コマンドの追加はP.9に、プロパティの変更はP.11に記載されています。
Id01_52_27

②「WaitFor」コマンド
p.32の通り、といっても「Behavior1」はそのまま同じものを、「Behavior2」と「Behavior3」は、赤の「WaitFor」コマンドだけを、それぞれ追加してください。
「Behavior1」~「Behavior3」にある「WaitFor」コマンドアイコンの中身は全て「VoiceCommand」で、其々「Zero」「One」「Two」にしてください。
ユーザーガイドには「Behavior2」の中身が「update」なっていますが、「two」に変更します。

③「SayNumber」コマンドId01_52_28_1
次に「Behavior2」と「Behavior3」に「SayNumber」コマンドを追加します。
「SayNumber」コマンドは、パレット欄の音声フォルダーに入っていて、文字通り番号を発声させるコマンドです。
「Behavior2」には「1」を、「Behavior3」には「2」を入れます。

◇プログラムを確認する
とりあえずプログラムはこれで完成です。
念のため、作製した内容があっているかチェックしておくにかぎります。「Main」「Behavior1」~「Behavior3」の4つのプログラムエリアの内容を一覧にまとめました。宜しければ確認してください。
(画面クリックで拡大します。)Id01_52_26_2

  
◇プログラムを保存

大事な事を忘れていました。
VCLE上段にあるフロッピーのマークをクリックして、適当な名前を入れて保存しておきましょう。(私は
<VoiceCommand01.vclike>という名前で保存しました)
テスト用のプログラムですが、後で読み込んで色々アレンジしたりするなど、使い道は色々あります。

◇オペレーション
次の項目、「プログラムでID-01を動かす」に進んで、「B.T立ち上げ」~「6)スタートボタンを押す」までを実行されてください。

◇「Voice(音声)コマンド」
スタートボタンを押した直後、最初は「こんにちは」「ありがとう」「ID-01」などと、通常の会話が可能な状態かテストします。
次に「アクション」と話しかけ、ID-01が「OK」と答えたら、いよいよ「Voice(音声)コマンド」のテストに入ります。
「コマンド」と話すと、耳のLEDが点滅し始めますので続けて「1(イチ)」とはっきりした声で告げます。
ID-01が「イチ」と答えれば、プログラムは正常に動作しました。
続けて「コマンド」(耳LEDが点滅)「2(ニ)」といいますが、この「ニ」が曲者です。
「アタマ」「下へ」の「下へ」同様、認識率がいまいちなのです。色々試したところ、「ニ」と奥へ通るような声で話すとうまくいきました。
この辺は皆様ご自分で色々試されてみては如何でしょうか・・・。
「コマンド」「ゼロ」でプログラムは終了するようになっています。
尚、Voice(音声)コマンドはユーザーガイドP.40に載っていますので、宜しければご覧下さい。
「コマンド」と話しかけると「WordSett11」の音声コマンドに飛ぶようです。
このコマンドは「0」~「10」の合計11の認識が出来ます。(だからWordSett11なのか・・・・な?)

◇PCにたよらず動くユーザープログラム
ユーザープログラムを一度読み込ませておくと、PCにたよらずに起動する事が出来ます。
まず、先の方法を使ってID-01にユーザープログラムをロード・コンパイルをしておきます。
ID-01の電源を入れてイニシャライズを終了させtます。Id01_52_32_1
胸のボタン、向かってA(左)
ボタンを3回押します。
「I-Droide01 User Progoram」とLCDディスプレイに表示されたら、B(中)ポタンを1回押すと「User Program Start」と表示されます。
さらにC(右)ボタンを1回押すと、ビープ音とともに「User Program Started」と表示され、プロラムがスタートします。
終了するときは、B(中)ポタンを一回押すと「User Program Stop」と表示されますので、C(右)ボタンを1回押します。するとビープ音とともにプログラムが終了し「User Program Terminated」と表示されます。

ブレインボード搭載後の拡張されたボタン機能については、イタリアデアゴ社のパーツリストNO.54のPDFマニュアルに一覧表と記事が掲載されています。宜しければ参考にされてください。

◇ユーザープログラムを拡張してみる

ここまでのユーザープログラムがうまく動くようでしたら、もう少し機能を拡張してみましょう。
ボイスコマンドは、「0」~「10」が識別可能と書いてあります。
現在のプログラムは、「0」「1」「2」しか判定していませんので、「3」~「10」まで判定させ、同時に「SayNumber」コマンドでそれに対応した数字をお喋べりさせれば良いのです。
具体的には①の処理で、「Behavior4」~「Behavior11」合計7つを追加します。
②と③の「WaitFor」コマンドと「SayNumber」コマンドセットを追加して、プロパティを「Three」~「Ten」、「3」~「10」に変更すればOKです。
そうそう、「Main」の「Start」コマンドも、「Behavior4」~「Behavior11」の分を追加しておかなければいけませんね。それと「Behavior1
」の中にある「Stop」コマンドも同様に「Behavior4」~「Behavior11」の分を追加する必要があります。
これで、1~10までのボイスコマンドを、ID-01が対応した数字で答えてくれます。Id01_52_30

出来たプログラムは違う名前で保存しておき、ID-01にロード、コンパイル、実行をしてみて、動作チェックをしてみます。うまく動けば暫く楽しんでください。
(私は
<VoiceCommand01a.vclike>という名前で保存しました)
万が一うまく動作しなければ、何かが違っていますので、もう一度、VCLEでプログラム内容を良くチェックしてみてください。


◇異なる命令で同じ動きが・・
「人生色々」などと、昔?偉い方が言っていたのを思い出しましたが、プログラムの世界でも良くあることです。
例えば、先程組んだボイスコマンドのプログラムですが、次のようにも組むことが出来ます。
(画面クリックで拡大します)Id01_52_29
Outline欄の行動には「Main」と「Behavior1」しかありません。コマンドの使いわけで、このようにスッキリさせる事もできるのです。


まず、「新規作成」を選び、新しいプログラムエリアを作製します。
続いて「Outline」エリアの「Main」を右クリックし、ショートカットメニューから「行動を追加」をクリックします。「Main」の下とプログラム」エリア下部に「Behavior1」が出来ます。

次に、「プログラム」エリア下部の「Behavior1」をクリックして、「パレット」の「プロセス」グループから、「Wait For」命令をクリックして、「プログラム」エリアの黄色いエリアをクリックする。次に、「Properties」パネルの「Sensor」の「Value」にショートカットメニューから「Voice Command」を選択します。
続いて、「パレット」の「チェック」グループから「Voice Command」命令をクリックし、「Wait For」の下の黄色いエリアをクリックすると、「Switch」がセットされます。

次に、「CMD_ZERO」、「CMD_ONE」、「CMD_TWO」、・・・・・・に、「パレット」の「音声」グループから「Say Number」を選択し、「Properties」パネルの「Value」に、それぞれ、0、1、2、・・・とセットします。
(P.41のセンテンスを参考にしています念
のため・・・・)
(私は<VoiceCommand02.vclike>として保存しました。)

お気づきの方もいらっしゃると思いますが、「zero」の所で「ゼロ」と発声するだけで、プログラムが終了しないようになっています。
単に私が「ゼロ」の発声が聞きたかったのでコマンドを変えているだけですので、そこを「Endコマンド」に置き換えてていただければ、Voiceコマンド「Zero」でプログラムは終了するようになります。
皆様のお好きなように変更されてください。自分流のマイプログラムでマイロボットを動かす・・・ですね。

◇ソースプログラム(C-Like Souce)
VCLEの一番上の段、「ファイル」「変更」「プログラム」「ヘルプ」のうち、「プログラム」を選択、ダウンドロップメニューから「ソース」を選択します。
ヴィジュアルな命令が、テキスト表示
( C-Like Souce )されました。
先に組んだプログラムと、この新しい命令を組んだプログラムでは、格段にプログラムの長さが短くなっています。
表示されたソーステキストは、変更もテキスト内容の複写も出来ませんので、PGをメモ帳から開いて内容の一部をご紹介します。
VCLEで表示された内容よりも多少割愛されていますが、ユーザーが組んだプログラムの手続き、手順部分は網羅しているものと思います。


==== ( C-Like Souce )  ===================================
<?xml version="1.0" encoding="UTF-8"?>
<?xml-stylesheet type="text/xsl" href="VisualClike.xsl"?>
<!DOCTYPE Program PUBLIC "VisualClike" "VisualClike.dtd">

<Program Version="1.0" Author="" Description="">
  <Variable Type="Counter" Name="Counter1" />
  <Main>
    <Start Target="Behavior1" />
  </Main>
  <Behavior Name="Behavior1">
    <WaitFor Source="voice_cmd" Event="update" />
    <Switch>
      <VoiceCmd />
      <Case Value="CMD_ZERO">
        <SayNumber Value="0" />
      </Case>
      <Case Value="CMD_ONE">
        <SayNumber Value="1" />
      </Case>
      <Case Value="CMD_TWO">
        <SayNumber Value="2" />
      </Case>
      <Case Value="CMD_THREE">
        <SayNumber Value="3" />
      </Case>
      <Case Value="CMD_FOUR">
        <SayNumber Value="4" />
      </Case>
(長い為、途中までしか表示しませんが、どうやら
C」のようですね)=======================================================

◇プログラムは短めに

余談ですが、ID-01に「ロード」される時は、プログラムはこのようなテキスト形式で送られ、「コンパイル」でさらにロボットに解り易いマシン語に翻訳されるようです。
長いプログラムをロードするときは時間がかかりますので、問題なく同じ動作をするのであれば短いプログラムにかぎります。
プログラムの工数(命令の数など)はステップ数と呼ばれています。
ブレインボードの16Mのメモリーにどれほどのプログラムが格納できるか分かりませんが、複雑な処理のプログラムでは、限りあるステップ数の中で、いかに効率良く多機能のプログラムを組めるかが、勝負どころという事になりそうです。
まだ習いたての私には縁のない話ですけれど・・・・・でもちょっと気になりますね。

(2007/3/4)

■プログラムでID-01を動かす
まず最初に『ビジュアルCライクエディター ユーザーガイド』の「プログラムのコンパイルと実行(P.46~47)」に軽く目を通されて下さい。

それから、言葉がやたら長すぎるので、いくつかの言葉を簡略化させていただきます。
「ヴィジュアルCライク・エディター」はVCLE
「BlueTooth」はB.T
「プログラム」はPGとします。

それではVCLEを使って、ID-01にPGを転送し、そのPGでID-01を動かしてみましょう。
まず、VCLEに何かのPGを読み込んでください。

私は「音声コマンド」識別のため、「こちらで話すナンバー(0~10)を、ID-01が言葉で答える」という簡単なPGを組んでみました。
このPGをどこかのライブラリーに入れてダウンロードが出来るのなら、皆様にお使い頂いても良いのですが・・・そのような「フィアル交換の場」があると良いですね。

まだご自分でPGを組んでらっしゃらない方は、CD-ROM2にサンプルPGが入っていますので、それをVCLEに読み込んでください。
ファイルの場所は、CD-ROM2の中
 ”esempi Visual C-like”という名のホルダーの中
  ”vision_tracking.vclike”というPGです。
このPGは、「CMOSカメラをセンサーとして使い、ある色のものが何処に見えるかによって、LEDを光らせるパターンが変わる」というものです。53号のCMOSカメラが来ないと機能はしませんが、次週はこの方法でテストできますので、その予行演習と思って、トライしてみてください。

◇PGを動かすための処理の流れ
かいつまんでお話しますと、「ID-01とB.T通信を確率」「VCLEからPGを転送」「PGのコンパイル」「PGの実行」・・処理中・・・・・「PGの停止」「B.T通信を終了」というのが一連の流れです。
VCLEの上面にある4つのボタン(四角赤印)で操作します。
左から、ロードボタン、コンパイルボタン、スタートボタン、停止ボタンです。Id01_52_18
  
1)VCLEにPGをロード

2)ID-01の電源をONにする
 イニシャライズが終了

これ以降は、PC側でアクションを起こすと、ID-01側で受けた証として、ビーブ音とディスプレイによるメッセージ表示が行われます

3)ID-01と「B.T通信」を確率する
「ID-01 PC Control」の接続ボタンを押してID-01とコネクトさせるId01_52_19
ビープ音とディスプレイ表示Id01_52_20a
  
4)ロードボタンを押す
ビープ音と伴にPGがID-01に転送されます。
PGが大きくなるとロードする時間が長くなります。
そして「うまくいった」と確認画面が出ます。Id01_52_21a_2
ビープ音とディスプレイ表示Id01_52_21b
  
5)コンパイルボタンを押す
ID-01の中でPGがロボット語に翻訳されます。
そして「うまくいった」と確認画面が出ます。Id01_52_22a
ビープ音とディスプレイ表示Id01_52_22b
  
6)スタートボタンを押す
ID-01がPGの指示を実行開始しま。
そして「うまくいった」と確認画面が出ます。Id01_52_23a_1
ビープ音とディスプレイ表示Id01_52_23b
 
こ段階ででロードされたPGにより、ID-01が指示された処理をおこないます。

7)停止ボタンを押す
PGが停止します。
そして「うまくいった」と確認画面が出ます。Id01_52_24a
ピープ音とディスプレイ表示Id01_52_24b
  
8)「B.T通信」を停止する
「ID-01 PC Control」で接続を解除する。
ビープ音とディスプレイ表示Id01_52_25a
  
この一連の流れで感じた事は、PC側でコマンドを出し「Successful(成功)」と出ると、ID-01の方から「ピー」とビープ音がしますので、確認が非常にやり易いという事です。
小さな「双方向コミニュケーション」でしょうか・・・。
ユーザが作製するPGでも、送った指示は、必らず答えさせるように組むと、操作間違いが起こりにくいかもしれませんね。

今回は、とりあえず「VCLEからID-01にPGを転送・実行する仕組み」をご紹介しました。
「音声コマンド・テスト」のPG内容については、あらためてご説明したいと思います。
(2007/2/28)

Bluetooth通信中の雑音
以前にレポートしましたが、BT通信中に録音すると雑音が入り、akkunnさんの書き込みで「緑のLEDを点灯すると雑音が軽減する」検証テストも行い、それを確認しました。
更にakkunさんは「ブレインボード搭載で雑音が軽減する」とのイタリアの記事を紹介されており、今回早速、検証テストを行いました。
パーフェクトとは言えませんが、緑のLEDを付けた状態まで低減していました。さらに緑のLED点灯を行ってみましたが、それ以上の変化はありませんでした。以上、ご報告まで・・・・

■格段に増えたボキャブラリー
CD-ROM2の中に、”WordSets.pdf”というPDFのファイルが入っています。
そのファイルを開くと「ワードセット(日本語)」という文字が飛び込んできました。
見ると、ワードセットのオンパレードです。
ワードセット1、ワードセット2、ワードセット3、ワードセット4、ワードセット5、ワードセット6、ワードセット7、ワードセット8、そしてワードセット11、ワードセット12。

ためしに見慣れたワードセット1の中をのぞいてみると、確実に言葉が増えているのです。
試しにID-01に向かって、「かっこいい」とか「かわいい」とか言ってみてください。どうなりました?
そして「つまらないやつ」と言ったときのアクションは?

全部のボイスコマンドを試してみましたが、中にはまだ搭載されていないデバイスがいくつかあるものの、コマンド自体は全て受け付けてくれました。
「アクション」で動きだすワードセット2の内容が、これまた凄いんです。
これも「ブレインボード」が搭載されたお陰です。さすがID-01の頭脳だけのことはありますね。
尚、53号についてくるCMOSカメラのコマンドもいくつか見受けられ、次週の53号はますます期待が持てそうですね。

明日更新しても良いのですが、今日は「ひな祭り」です。
ええい!更新しちゃいましょう--。
(2007/3/3)


Line01s_24
■ファイルの置き場
今週の記事で作製した単純なサンプルプログラムを公開します。
大したものでなくて恐縮ですが宜しければダウンロードしてご利用ください。
データーはウィルスチェク済みですが、安全のため、ダウンロード後再度ウィルスチェックをされてからご使用ください。
データーは、右クリック「対象をフィアルに保存(A)」で任意のフォルダーに保存してください。Id01_52_33_1
ダウンロードの時、何故か拡張子が”VCLIK”から”XML”に変わってしまうため、zip形式で圧縮してあります。
解凍ツールで解凍してからご使用ください。
ご使用にあたっては、あくまでも自己責任でお願いします。

サンプルデーター
「VoiceCommand01.zip」をダウンロード
「VoiceCommand01a.zip」をダウンロード
「VoiceCommand02.zip」をダウンロード 
(2007/3/4)

Line01s_22
■ロボザック情報
ID-01のブレインボード、その後のプログラミングなど、インパクトの強い目先の事に追われ、全くロボザックの事を忘れていました。
今週7号は『肩と背中のフレームを組み立てる』です。金属フレームのパーツで、樹脂製の頭部を取り付けるように書いてありますが、何かが完成するという訳でもなさそうなので保管することにしました。
Id01_52_34
(2007/3/5)
Line01s_25

■あとがき
アクション(行動)の変化が、これほどインパクトがあるとは思いませんでした。
次週のCMOSカメラ搭載で、更に「見る」という機能が付加されます。同時に、「色」、「明るさ」、「画像の位置情報」などもセンシング出来るようになるとの事で、期待が膨らみます。

一方、ブレインボード搭載されたことにより、プログラミングについても色々なテストが出来そうです。
小さなプログラムでも組んでみて、ID-01が思い通りに動いてくれるのは、何時になるのでしょう?
「プログラムが短くても、高機能」・・・。良いプログラムの条件のようですが、勉強あるのみ・・・・少し頑張って、ID-01に負けないように行動の改善を計りたいと思い・・・・ます。

|

« 週刊myRobotを作ろう(46) | トップページ | 週刊myRobotを作ろう(48) »

コメント

はるきさん おはようございます
はじめまして、こちらこそよろしくしくお願いします。
いつもご愛読いただきましてありがとうございます。

53号まで問題なく動いたとの事、なによりです。

それにしても、ID-01の購入目的がプログラミングという方は初めてです。
たしかにFAなどに携わった方以外は、動くものを(プログラムで)律することは稀ですからね。私も非常に興味を持っています。
プログラム経験がお長いとの事、どうぞ積極的なご意見・コメントを期待しております。
ありがとうございました。

投稿: ふみのへや | 2007年3月 7日 (水) 07:40

はじめまして。
いつもわくわくしながら拝見させていただいて
います(^^)

昨日ようやく52、53号が配達されて、
一気にCMOSカメラまで搭載しました。

このブログのおかげで、全く問題なく動作させる
ことができました。

ありがとうございます。

記事の更新、大変ですよね。
私もCのプログラム経験は長いので、
慣れた頃に色々と情報提供できればと思っています(もともとプログラミング目的がメインで
週間マイロボットを購入してるので)

ではっ

投稿: はるき | 2007年3月 7日 (水) 02:34

akkunさん こんばんは

シリアル変換ケーブルは良いお値段ですね。そして色々学ばれたようでなによりです。
私のPCはシリアルポート付きでしたので何の苦労もせずに完了してしまいました。

B.T通信のノイズテストは、私と同様な結果だったようですね。
それまでは、ノイズ低減目的で録音時に赤LEDを点灯する習慣にしていましたが、それも必要なくなっていまいました。

VCLEの件、テラさんの所ではご指摘ありがとうございました。
今後もさらに磨きをかけて、素晴らしいPGを組まれることを期待しております。
私は現在、CMOSセンサーの学習に取り掛かっています。
お互い頑張りましょう。

投稿: ふみのへや | 2007年3月 3日 (土) 20:41

ふみのへや様 こんばんは。akkunです。

●当方もこの度、ブレインボードの取り付けと、OSのインストールを行いました。
USB-シリアル変換ケーブルを使ったのですが、まずは、もともと持っていた下記の変換ケーブルでOSのインストールにチャレンジしましたが、最初のCOMポートのスキャン時に、「モジュールが見つかりません」のメッセージが出てしまい、成功しませんでした。
  http://akizukidenshi.com/catalog/items2.php?p=1&q="M-00557"

そこで、急遽最寄の電器店で下記のUSB-シリアル変換ケーブルを購入して試したところ、すんなりとOSのインストールができました。
(最初に、シリアル接続してEnterキーを押してから、全工程ものの10分もかかりませんでした。)
  型番:SRC06USB
  http://www.arvel.co.jp/equip/shu/other/src06usb.html
事前に、本ケーブル自体のドライバソフトのインストールが必要なんですが、よく考えると、brain_config.exeに対して、さもシリアルポートがあるかのようにだます(言葉は悪いですが)訳ですから、それなりの段取りが要るということですね。やはり他の機器のオプション品で済まそうというのは、考えが甘かったと反省です。(本製品は、コネクタ部に回路が仕込まれており、PCと接続時にLEDが点灯したりと、精巧な印象を受けました。)

●試しに、BT通信時における録音時のノイズと音声認識を軽くチェックしてみましたが、どちらも改善されていました。BT通信時の録音時の雑音は、若干残ってはいるのですが、後々さらにパーツ(負荷)が追加されて、より改善方向に向かうと考え、一旦静観します。
本格的な動作確認は、解説記事が掲載される54号時点で細かく見ようと思います。

以上 ID-01がバージョンアップされて、いよいよ面白くなりました。ふみのへや様も仰せのように、まずは、ID-01を使ってVCLEを掌握し、自身もバージョンアップしないとね。

投稿: akkun | 2007年3月 3日 (土) 18:56

コメントを書く



(ウェブ上には掲載しません)


コメントは記事投稿者が公開するまで表示されません。



トラックバック


この記事へのトラックバック一覧です: 週刊myRobotを作ろう(47):

« 週刊myRobotを作ろう(46) | トップページ | 週刊myRobotを作ろう(48) »