石井英男のDigital Life

雑誌の付録で作るロボットとは?
「週刊リアルロボット」の魅力を探る(その2)
~ステージ2では簡易プログラミングやリモコン操作が可能に




 デアゴスティーニ・ジャパンの「週刊リアルロボット」は、雑誌に付属するパーツを組み立てることで、本格的なロボットを作ることができ、同時にロボットの基礎を学べるというユニークな雑誌である。

 週刊リアルロボットとその付録のロボット「サイボット」については、以前にもこの連載で取り上げたが、今回はその続きとして、ステージ2へと進化したサイボットを紹介したい(かなり間があいてしまったことをお詫びしたい)。

 なお、以前は刊行ペースが毎週であったが、2004年4月6日発売の55号以降から隔週に変更されており、誌名も「隔週刊リアルロボット」に変更されている(完結は遅くなるわけだが、内容自体は特に変わっていない)。


●ステージ2の目玉はハンドセット

 サイボットは、雑誌「隔週刊リアルロボット」の刊行とともに進化していくのだが、その進化の過程は以下の6つのステージに分けられる。

・ステージ1(1~17号)…サイボットのボディの完成
 光に反応したり、ラインを追跡する、障害物を避けるといった基本機能を装備したボディが完成する。

・ステージ2(18~35号)…ハンドセットが完成し、プログラミングが可能に
 ハンドセット(リモコン)が完成し、サイボットのリモコン操作やPCからハンドセットにプログラムを転送して、プログラミングが可能になる。

・ステージ3(36~50号)…ヘッドセットが完成し、音声認識が可能に
 ヘッドセットが完成し、音声認識とサウンド再生が可能になる。

・ステージ4(51~65号)…サッカーゲームができる
 赤外線を発するサイボールを追いかけ、赤外線を配置したゴールめがけてシュートをする。他のサイボットとの対戦も可能。

・ステージ5(66~91号)…サイボットの仲間「トム」の登場で可能性がさらに広がる!
 サイボットの持つ機能をほぼ受け継ぎながら、さらに進化した機能を持つ「トム」が登場。サイボットとかくれんぼや鬼ごっこ、サイボールで遊ぶこともできる。

・エクストラステージ(92~94号)…カスタマイズパーツの提供
 フロントバンパーや赤いフレキシブルパネル、銀色のサイドパネル、チームステッカーなど、サイボットを自分好みにカスタマイズするためのパーツが提供される。

 なお、隔週刊リアルロボットは全94号で完結の予定で、7月下旬現在で63号まで刊行されている。

 ステージ1が終了した段階でできることについては前回紹介したので、今回は、ステージ2が終了した段階でできることを紹介していく。

 ステージ1では、基本的な機能を備えたサイボットが完成するが、外からサイボットをコントロールしたり、プログラミングを行なうことはできなかった。

 ステージ2では、ハンドセット(リモコン)とドッキングステーション、プログラミング用CD-ROMが追加されるので、サイボットのコントロールや簡単なプログラミングを行なうことが可能になる。また、ハンドセットからの信号を受信する赤外線送受信ボードやプログラムを記憶するためのメモリボードなど、サイボット自体を強化するパーツもステージ2に含まれている。

 ステージ2で追加されるパーツの中でも、目玉となるのがハンドセットである。ハンドセットは、携帯ゲーム機を一回りか二回りほど大きくしたような形状をしており、両手で持って操作するようになっている。

 ハンドセット前部には、赤外線LEDとフォトトランジスタがあり、赤外線を利用してサイボットと信号のやりとりを行なう仕組みだ。表面に6つ(左右ウィング部分のボタンは上下に押せる)、裏面に4つのボタンが用意されており、これらのボタンを利用して、サイボットをコントロールすることが可能だ。ただし、ハンドセットのサイズはかなり大きめだ。大人の手ならともかく、子供が取り扱うにはやや大きすぎると思われる。

 また、PCを利用してプログラミングを行なうにも、ハンドセットが必要になる。PCとハンドセットをシリアルケーブル(RS-232Cケーブル)で接続し、PCからハンドセット経由(赤外線通信)で、サイボットにプログラムを転送することになる。

ステージ2終了時点でのハンドセット。表面には6つのボタンが用意されている ハンドセット裏面にも4つのボタンが用意されている
ハンドセットは、このように両手で持って操作するのだが、サイズはやや大きめだ ハンドセットの手前には、シリアルケーブルを接続するための端子がある。右側の2つの穴には、ステージ3以降で端子が追加される

 ステージ2は、全部で18号分(18~35号)だが、そのうち9号分にハンドセットのパーツが付属する。ハンドセットの組み立てはそれほど難しくないが、液晶ディスプレイの取り付けには注意が必要だ。液晶パネルとコントロール基板は、ゴム状の導電ストリップで接続されるのだが、導電ストリップに指の脂などがつくと接触不良の原因となる。

リアルロボット18号~20号に付属するパーツ。ハンドセットのボディやボタンなどが含まれている ハンドセットの右ウイング部分のスイッチ基板。タクトスイッチが採用されている ハンドセットに圧電スピーカーを固定しているところ
ハンドセットのボディが完成したところ。まだ液晶ディスプレイなどは装着されていない ハンドセットの液晶パネルとコントロール基板 液晶パネルの上下にゴム状の導電ストリップをはめ込む

 また、ステージ2には、サイボット自体を強化するパーツとして、光プロセッサーボードや赤外線送受信ボード、メモリボード、プログラムコントローラーボードなどが含まれている。これらのボード類は、親亀の上に子亀が乗るように積み重なって装着されていくようになっており、ステージ2が終わった段階では、4層構造となる。

 ハンドセットとサイボット本体には、プログラムや設定情報などを記憶するためのフラッシュメモリが搭載される。容量は2KB(16Kbit)とかなり小さいが、本格的なプログラミングが可能になるステージ3では、大容量のフラッシュメモリが追加される。

サイボット本体に搭載される赤外線送受信ボード。赤外線を利用してハンドセットとデータのやりとりを行なう ハンドセット側の赤外線送受信ボード。赤外線LEDとフォトトランジスタが実装されている
サイボット本体に搭載されるメモリボード。2KBのフラッシュメモリチップが実装されている ステージ2が終了した段階でのサイボットの内部。ボードが4層に積み重なっている

●同時に最大16台までのサイボットをコントロールできる

 ハンドセットの電源は、単4アルカリ電池4本である。ハンドセット内蔵ROMにはいくつかのプログラムが組み込まれており、ハンドセット単体でレースゲームの「サイボット・レーサー」やパックマンもどきの「ムンクボット」、たまごっちもどきの育成ゲーム「サイボット・トレーナー」という3種類のゲームをプレイできる。ただし、液晶ディスプレイの解像度は非常に低く、ゲームも子供だましというか、単なるおまけ程度と思ったほうがよいだろう。

 ハンドセットのメニューは階層構造になっており、トップメニューは「ゲーム」、「ロボット・セレクト」、「モード・セレクト」、「パソコンリンク」の4項目から構成されている。液晶右側の上下ボタンで項目の選択を行ない、リターンボタンで決定、ESCボタンで戻るというのが、基本操作である。なお、液晶の解像度が低いため、1行に表示できる文字数はカタカナで5文字程度であり、それ以上は横スクロール表示される。

ハンドセットの液晶ディスプレイの解像度はかなり低い。文字はカタカナで表示される ハンドセット単体で遊べるレースゲーム「サイボット・レーサー」 ハンドセット単体で遊べるパックマンもどき「ムンクボット」

 ハンドセットでサイボットをコントロールするには、最初に、サイボットとハンドセットのチャンネルを合わせる必要がある。チャンネルは1~16の範囲で指定できるので、最大で16台までのサイボットを同時にコントロールすることが可能だ。

 サイボットのチャンネルは、サイボット本体のディップスイッチ(ステージ1ではモード切替に利用していたもの)で設定でき、現在のチャンネルはサイボット後部の7セグメントLEDに表示される。ハンドセット側では、ロボット・セレクトメニューでチャンネルを指定できる。

サイボット後部の7セグメントLEDに、現在のチャンネルが表示される サイボットとハンドセットのチャンネルを一致させる必要がある

 ハンドセットとサイボットのチャンネルを一致させれば、ハンドセットからサイボットのコントロールが可能になる。

 ステージ1では、物体回避や物体追跡、光追跡などのサイボットの動作モードの切替は、本体のディップスイッチによって行なっていたが、ステージ2以降は、いちいちディップスイッチをいじらずに、ハンドセットのボタン操作でモードを切り替えることができるようになる。動作モードの変更は、モード・セレクトメニューから行なう。

 モード・セレクトメニューの下には、「ソナー」、「ライト」、「ラインツイセキ」、「リモコン」、「プログラム」の5つのサブメニューがある。ここで、ソナーを選択すると、さらに「カイヒ(コウソク)」(物体回避・高速モード)、「カイヒ(テイソク)」(物体回避・低速モード)、「ツイセキ」(物体追跡モード)の3つのメニューを選ぶことができる。

 ハンドセットの前面をサイボット上部の透明ドームに向けて、リターンボタンを押すと、ハンドセットからサイボットにモード変更の信号が送信される。同様に、ライト(光追跡/光回避)やラインツイセキについても、メニューを選ぶことで、サイボットの動作モードを切り替えることが可能だ。ディップスイッチによる動作モードの変更はやや面倒であったが、ハンドセットで動作モードを変更できるのはとても楽だ。

モード・セレクトメニューで、サイボットの動作モードを変更することができる ソナーを選択したところ。リターンボタンを押すことで、下の階層のメニューが表示される

●リモコン機能で直接サイボットを操作することも可能

 4つめの「リモコン」は、その名の通り、ハンドセットをリモコン代わりに使ってサイボットを直接操作するモードだ。ハンドセット左右のボタンで、サイボットの2個のモーターの前進後進を切り替えることができる。なお、右のボタンを前に押すと右のタイヤが前進するので、左に曲がることになる。車のハンドル操作とは逆なので、最初は戸惑うかもしれないが、慣れれば自由に操作できるようになる。

 5つめの「プログラム」は、PCで作成したプログラムを実行するモードだ(詳しくは後述)。

 ハンドセット裏面の4つのファンクションボタンは、いわゆるショートカットボタンの役割を果たすもので、機能を自由に割り当てることができる。ファンクションボタンには、各動作モードのほか、アンテナフラッシュ(サイボットのアンテナLEDをフラッシュさせる)やビープ、チャイムなどの割り当てが可能だ。

リモコンを選べば、ハンドセットをリモコン代わりに使って、サイボットを直接操作することができる 【動画】QuickTime/約2.8MB
リモコンモードでサイボットを操作している様子。その場でくるくる回転させるような動きも可能だ

●ステージ2でのプログラミング機能は非常に簡易的なもの

 サイボットは、単に用意されている動作モードを選ぶだけでなく、自分でプログラミングを行なえることがウリだ。ステージ1では、プログラミングは一切できなかったが、ステージ2では1枚目のCD-ROM(リアルロボットCD-ROM1)が付属し、プログラミングが可能になる。

 リアルロボットCD-ROM1には、簡易プログラミングツールの「プログラマー1」および「プログラマー2」、サイボットのシミュレーションを行なう「シミュレーター」、完成したプログラムをサイボットに転送するための「ダウンローダー」、3種類のゲームが収録されている。

 PCとハンドセットの接続は、シリアルケーブル経由で行なう。そのため、PCに9ピンのシリアルポートが必要になるが、最近のPCではレガシーインターフェースであるシリアルポートが用意されていないものも多い。

 ここでは、シリアルポートを装備したPCを利用したが、シリアルポートがないPCの場合は、シリアル-USB変換アダプタを利用すればよい(ただし、全てのシリアル-USB変換アダプタで動作するとは限らない。近日中に、動作検証済みのシリアル-USB変換アダプタが公表されることになっている)。

 リアルロボットCD-ROM1に収録されているソフトウェアをPCにインストールし、起動すると、研究所を模したランチャー画面が表示される。プログラミングの基礎や各ソフトの使い方を音声と文字、動画で説明してくれるチュートリアルも用意されている。チュートリアルは丁寧なので、一通り目を通しておくことをお勧めする。

PCとハンドセットを接続するためのシリアルケーブルが付属している リアルロボットCD-ROM1に収録されているソフトのランチャー画面。研究所を模したデザインになっている チュートリアルでは、プログラミングの基礎やソフトの使い方をわかりやすく解説してくれる

 サイボットのプログラミングの基本は、センサーなどで検出した情報(インプット)に対して、どのような動作を行なうか(アウトプット)を指定するというものだ(これは、サイボットに限らず、あらゆるプログラミングの基本でもある)。

 プログラマー1は、サイボットのプログラミングツールとしてはもっとも簡易的なもので、サイボットのソナーセンサーで感知された4通りのインプット(前方に障害物がない、左側に障害物あり、右側に障害物あり、正面に障害物あり)について、7通りのアウトプット(前方左旋回、直進、前方右旋回、静止、後方右旋回、後退、後方左旋回)を割り当てることができる。プログラマー1はGUIベースのツールであり、インプットに対するアウトプットの割り当ては、マウスで矢印を選択するだけで行なえる。

 プログラマー2は、プログラマー1の強化版ともいえるツールで、16通りのインプットに対して、81通りのアウトプットを割り当てることができる。プログラマー1では、障害物までの距離を感知することはできなかったが、プログラマー2では、右方向と左方向のそれぞれにつき、障害物までの距離を4段階で感知できるので、4×4=16通りのインプットがあることになる。アウトプットについても、2つのモーターの速度を前進4段階、静止、後退4段階の9通りから選べるため、全部で9×9=81通りの動作を指定できるわけだ。

 プログラマー2を使えば、障害物との距離に応じたモーターの速度制御が可能なので、移動する物体を追いかけたり、逆に物体から逃げていくような動作を実現できる。

ステージ2の段階では、プログラマー1とプログラマー2という2つのプログラミングツールを利用できる プログラマー1の画面。インプットは4通り、それに対するアウトプットは7通りしかないので、非常にシンプルでわかりやすい プログラマー2では、インプットが16通り、それに対するアウトプットが81通りの動作から指定できるので、より細かな制御が可能になる

 作成したプログラムはいきなりサイボットに転送するのではなく、シミュレーターを使って、思った通りに動くかをチェックするとよい。サイボットへのプログラムの転送は、ハンドセット経由で行なう。

 プログラム転送時は、ハンドセットとサイボットの位置をややシビアにあわせる必要があるが、34号と35号に付属するドッキングステーションを使えば、位置あわせも簡単に行なえる。

 なお、リアルロボットCD-ROM1に付属するダウンローダーでは、ハンドセットとサイボットのチャンネルを1にしておかないと、プログラムの転送ができないので注意が必要だ。

作成したプログラムの動作はシミュレーターでチェックできる 作成したプログラムはダウンローダーを使って、ハンドセット経由でサイボット本体に転送する
34号と35号に付属するパーツで完成するドッキングステーション ハンドセットを装着したドッキングステーションをサイボットの前方に置くことで、位置あわせが完了する

 プログラミングというと、C言語などのプログラミング言語を思い浮かべる人も多いだろうが、プログラマー1やプログラマー2によるプログラミングは、サイボットのソナーセンサーの情報に対して、モーターをどう動かすかを決定することしかできず、プログラミングといっても非常に簡易的なものである。これを読んで、プログラミングといっても、こんなものかとがっかりした人もいるかもしれない。

 しかし、ステージ3以降では、より本格的なプログラミングが可能になる。ステージ2は、あくまでプログラミングの基本概念を知るためのステージだと思えばよいだろう。

 リアルロボットの公式サイトには、ステージ3以降でユーザーが作成したプログラムを公開するためのファイル交換用掲示板が設置されており、すでに多数のプログラムが公開されている。

 また、質問や改造に関する掲示板もあるので、何か困ったことがあったら、掲示板の過去ログなどをチェックするとよい。ステージ2はまだまだサイボットにとっては序の口であり、その真価はステージ3以降で引き出されていくことになるのだ。

□デアゴスティーニ・ジャパンのホームページ
http://www.deagostini.co.jp/
□週刊リアルロボットのホームページ
http://www.realrobot.net/

バックナンバー

(2004年8月3日)

[Reported by 石井英男]


【PC Watchホームページ】


PC Watch編集部 pc-watch-info@impress.co.jp 個別にご回答することはいたしかねます。

Copyright (c) 2004 Impress Corporation All rights reserved.