チェックリスト

チュートリアルを始めるにあたって済ましておかなければならない事項について確認します。
適切なAIBOを準備していますか?
ERS-7、ERS-7M2のいずれかしか対応していません。
AIBO ERS-7

これはERS-7(M2)です。青と赤のユニフォームは関係ありません。

適切なパソコンを準備していますか?
Windows 2000/XP、またはLinuxがインストールされたPCしか対応していません。
プログラム用メモリースティックはありますか?
Memory Stick
ピンク色のAIBOプログラム用メモリースティック(8Mか16Mのもの)しか使うことはできません。
メモリースティックリーダーライターはありますか?
Memory Stick Adapter
メモリースティックを読み書きできるリーダーライターはありますか?あるいはパソコンに装備されていますか?
これらがなければAIBOのプログラムを格納することができません。

特にAIBOではSony製のものが推奨されています。大切なAIBOを傷つけないためにも安心できるものを使いましょう。

無線LANの環境はありますか?
プログラムやデータの書き換えのたびにメモリースティックを抜き差しするのはとても面倒です。また、AIBOがプログラムのどの部分を実行しているのか知ることができないとデバッグも大変です。
快適なプログラミング環境を整える上でも、無線LANの環境を用意することをお薦めします。
無線LANを使用する場合、別途設定が必要になりますので、以下の情報を把握しておいてください。

  • 無線LANのESS-ID
  • 無線LANのサブネットマスク
  • 無線LANのWEP-KEY
  • 無線LANのチャンネル
  • 無線LANのゲートウェイアドレス
  • AIBOに割り当てるIPアドレス

Defartチュートリアル

これからDefartを使ってみようと考えている方のためのページです。
最初は少しずつ、徐々に充実させていく予定です。

  1. Defart/PCの準備
  2. Defart/AIBOの準備
  3. 無線LANを使って快適Defart環境を構築する
  4. Defartで簡単なプログラムを作る
  5. ボールを追いかけるプログラムを作る
  6. ボールをゴールにシュートするプログラムを作る

Defartで簡単なプログラムを作る(5)

(現在、作成中です。完成までしばらくお待ちください)

無線LANの設定は大丈夫でしょうか?まだAIBOと無線LANによる通信ができていない場合は設定を行ってください。
Defartネットワーク設定

作成したプログラムを動かす

さて、作成したプログラムを実際に動かしてみることにしましょう。まず、AIBOを起動してAIBOセッションに青いバーが表示されていることを確認してください。
次に、作成した状態遷移図をAIBOに送信します。状態遷移図画面の下にある(送信)ボタンを押し、メニューから「この状態遷移図を送信する」を選びます。
しばらくするとAIBOの耳がパタッと動きます。これでプログラムの送信は完了です。

これからAIBOが動きだしますので机の上など不安定な場所にAIBOなどを置かないようにしてください。転げ落ちて壊れてしまうかもしれません。

送信した状態遷移図を動作させるには(開始)ボタンを押します。
どうですか?5秒間歩いた後で止まりましたか?

終了する

状態遷移図画面を閉じて、AIBOセッション画面に戻ってください。
プログラム一覧には新しく作った状態遷移図の番号が現れています。右下の(保存)ボタンを押して「全ての状態遷移図を保存する」を選んで保存したら、AIBOセッションを閉じてください。

Defartで簡単なプログラムを作る(4)

いよいよ実際にAIBOで動作するプログラムを作ってみましょう。このプログラムによってAIBOは次のように動きます。

5秒間前進しその後停止する。

この簡単な動作を状態遷移図で表現してみます。

必要な状態を考える

まず、このプログラムに必要な状態はいくつあるでしょうか?
AIBOが歩いている状態と止まっている状態の2つですね。歩いている状態が最初の状態で、5秒経過したら止まっている状態に移るわけです。この様子をDefartで表現すると以下のようになります。

tutor01.png

状態に文字が入っていますが、これは状態につけたコメントです。プログラムの動作とは何の関係もありません。状態の中央右寄りをクリックすればコメントを入力できます。

(歩いている)状態から(止まっている)状態へとアクションが結ばれているのがわかりますね。Defartで簡単なプログラムを作る(3)を参考にして実際に状態を追加し、アクションで結びつけてください。

アクションを設定する

次に(歩いている)状態から(止まっている)状態へと遷移するための条件を設定します。
アクションの●の部分をクリックしてください。するとアクションメニューがあらわれます。
メニューの先頭の「CI:」を選んだあと、続けて下のように「タイマー1」を選んでください。

tutor02.png

すぐに秒数を入力するダイアログが現れます。スライダーでは5を選べないので、表示されている数値をクリックしてキーボードから5を入力してEnterを押し、(了解)を押してください。

tutor03.png

ダイアログが消えた後のアクションは以下のようになります。「タイマー1」「5.0s」となっていることを確認して、アクションメニューを閉じてください。

tutor04.png

これにより、このアクションの条件は「タイマー1が5秒経過したとき」となりました。

tutor05.png

先ほどと比べてアクションの●の色が茶色に変化したことがわかります。アクションの●の色がグレー以外の場合は、アクションに何らかの条件が設定されていることを表しています。

歩くようにする

これで(歩いている)状態を5秒続けたら(止まっている)状態に遷移するようになりました。でも、大切なことを忘れています。そうです「歩く」ことです。
「(歩いている)状態があるじゃないか」と思う人は、これが単に状態に名付けたコメントだということを忘れています。実際AIBOを歩かせるには、それ相応のことをしなければなりません。
(歩いている)状態で実際にAIBOを歩かせる場合にもアクションを使います。(歩いている)状態の■をクリックして、新しいアクションを追加してください。

tutor06.png

新しいアクションの■をクリックして、(歩いている)状態に結びつけてください。

tutor07.png

これは「ループアクション」といって(歩いている)状態から、同じ(歩いている)状態へのアクションです。このアクションの●をクリックしてアクションメニューを出してください。

先ほどとは異なり、今度は「動:」の項目をクリックしてください。下のようなメニューが表示されるので、「前に進む」を選んでください。

tutor08.png

アクションメニューを閉じると以下のようになっています。

tutor09.png

動作を設定したループアクションの方は線の色がグリーンに変わっています。
いま設定したループアクションによって、(歩いている)状態のデフォルトのアクションが「前に進む」となりました。
このループアクションは条件を指定していませんので、何も起こらなくても条件が成立します。他の条件が成立するときには成立しませんので、先ほどのタイマーを設定したアクションで条件が成立した場合にはそちらが優先されます。つまり、5秒たって(止まっている)状態に移るまでの間、ずっと「前に進む」という動作が行われるのです。

初期状態を設定する

プログラムとして動作させるためには、どの状態からスタートさせるかを指定しなければなりません。最初の状態を初期状態といいます。この状態遷移図の初期状態は(歩いている)状態ですので、この状態の●をクリックして状態メニューから「初期状態にする」を選びます。下のように初期状態に設定された状態は黒く縁取りされます。

tutor10.png


Defartで簡単なプログラムを作る(3)

アクションを作る

sample10.png

2つの状態を作ることができたら、アクション(矢印)でそれらを結びます。どちらから初めても構わないのですが、ここでは左の状態から右の状態へとアクションを結ぶことにしましょう。

sample11.png

上の図で示したように左側の状態の黄色い四角形をクリックしてください。すると右下方向にヒゲのような線が現れます。

sample12.png

この線がアクションと呼ばれるものです。
アクションは、状態と状態との結びつきによって線の色が変化します。アクションは状態を結んでいなければならないので、ちゃんと状態同士がつながっていない時には、赤色の線で描かれます。つまり、上の図ではアクションが正しく状態に結ばれていないことを表しています。

“Defartで簡単なプログラムを作る(3)” の続きを読む

Defartで簡単なプログラムを作る(2)

AIBOセッションの画面構成

sample05.png

AIBOセッション画面は、AIBOの設定やAIBOとの通信、状態遷移図の作成などを行うためのものです。多くの機能がありますが、ここでは状態遷移図の作成に関わる部分についてだけ説明します。
画面右側には状態遷移図の一覧が表示されます。現時点では何も状態遷移図を作成していないため内容は空っぽです。
これから状態遷移図を作成していきましょう。

“Defartで簡単なプログラムを作る(2)” の続きを読む

Defartで簡単なプログラムを作る(1)

はじめにをお読みください。

ここでは、既にDefart/PCシステムがパソコンにインストールされていることを前提に進めていきます。
まだ、パソコンにDefart/PCをインストールしていなければ、Defart/PC v0.14インストール方法を参照してインストールを済ませてください。

状態遷移図によるプログラミング

Defartは状態遷移図という図を使ってプログラムを表現します。この状態遷移図とは、状態の移り変わりを○(丸)と→(矢印)によって表した図のことです。Defartでは、画面上に状態を配置し、マウスでそれらの状態をつなぐことで状態遷移図を描いていきます。

Defart/PCを起動する

sample01.png

Defart/PCを起動すると、上記のような画面があらわれます。この画面はDefart/PCのメイン画面で、これから使うロボットや作成するプログラムを選びます。
配布した状態では、エントリ一覧にERS-7とERS-210のための項目が一つずつあります。自分の使いたいロボットの種類にあわせて、どちらかを選んでください。

新しいプログラムを追加する

プログラム一覧にはサンプル項目が一つありますが、新しいプログラムを1から作成するため、プログラム一覧の下部の(追加)ボタンを押してください。

sample02.png

上のようなダイアログによって、プログラムの名前を入力するよう求められます。ここでは「test-1」のように(間にマイナス記号「-」を入れて)入力してください。

sample03.png

了解ボタンを押すとプログラム一覧が上のようになります。testの左側の三角印をクリックして、下のように1の部分を選んでください。

sample04.png

AIBOセッションを開く

エントリ一覧とプログラム一覧を選んで、画面右下の(セッションを開始する)ボタンをクリックすると、AIBOセッション画面が開きます。
この画面はAIBOと通信を行ったり、プログラムやデータをAIBOに組み込んだりするためのものです。

sample05.png


プログラミングの前に

DefartはAIBOのプログラムを作るシステムですが、普通のプログラム言語とはちょっと違います。
というのも、普通のプログラム言語が文字でプログラムを作るのに対して、Defartでは円を矢印で結んでプログラムを作るものだからです。

なぜこんなシステムになっているかというと、AIBOの標準的なプログラム環境であるC/C++言語でAIBOのプログラムを作るのは、かなり大変なことだからです。
Defartは出来る限り容易にプログラミングを始められるように、図形を使ってプログラムを作れるようになっています。

図形というとフローチャートを想像するかもしれませんが、Defartで使っているしくみはもっと単純なものです。単純なものなので誰でも使いかたをすぐに覚えることができます。フローチャートのように「四角形と平行四辺形はどう違うんだっけ?」とか考えなくて良いのです。Defartでは図形は円だけで、あとは円を矢印でつなぐだけです。

もちろん、単純だから即簡単という訳でもありません。しくみが単純なもの故に、複雑に組み合わせると訳のわからないものが出来上がってしまって、理解もできなくなってしまうのです。
また、ロボットプログラミングならではの難しさもあります。頭の中ではうまくいくことも、実際にロボットにやらせてみると、思わぬトラブルが発生してうまくいかなくなるものです。

そういったことを全てひっくるめて手軽に体験できるのがDefartの良さかもしれません。ぜひDefartを使って、プログラミングの楽しさや奥深さを体験していただければと思います。