● アルファレックスだって「レゴブロック」だ
前回のコラムで、その仕組みについて理解を深めた二足歩行型ヒューマノイド「アルファレックス」を、今回は色々と改造してみることにする。
最初にアルファレックスを作るときには完成形を目指して組立図通りに組み立てるので、もしかするとプラモデルを作っているような感覚になるかもしれない。しかし、アルファレックスだってレゴブロックで作られたモデルの1つだ。レゴブロックの特性を生かし、自分の好きなようにどんどん組み替えて欲しい。
今回紹介する作例は、最後の作品以外はすべて玩具用セットに付属しているパーツだけで作ってあるので、1セット持っていればどれも気軽に試すことができる。そのおかげで、組んでる途中で「このパーツがあれば……」と思った部分も少なくない。しかし、限られた少ないパーツで工夫して作るのもレゴブロックの醍醐味だ。同じ機構を自分だったらどうやって作るか考えながら見ていただければと思う。
● 前後左右に進めるようにする
前回説明したように、アルファレックスの左足裏には転回用のストッパーがついている。この機構のおかげでモーター2つだけでも右を向くことができるのだが、反対方向の左を向くことはできない。また、この機構がじゃましてまっすぐに後進することもできない。そこで、同じストッパー機構を右足裏にも装備して、前後左右どの方向にも進めるようにする。
そういう改造を考慮してか、アルファレックスの右足裏にはすでにストッパーを取り付ける基部が用意されている。あとは左足首のストッパーと左右対称のものを作るだけだが、実はアルファレックス完全体を作ったあとだとパーツ(青いコネクタ)が足りないのだ。なので【写真1】のように、青いコネクタを長さ2ポッチのシャフトで代用することにする。これで左右に同じ形のストッパーを装備することができる。左右のパーツ構成の違いが動作に影響することはないと思うが、気になる人は左足裏のストッパーも同じ作りにするとよいだろう。
|
|
【写真1】右足裏用ストッパーのパーツ構成。右にあるのは左足裏用のストッパー
|
【写真2】両足裏にストッパーを装備したところ
|
|
【動画1】好きな方向に進めるようになったアルファレックス。モーターの現在角度を常に意識して制御する必要がある
|
この改造によって、左右のどちらかに重心を移動させた状態で脚を前後(モーターBを正転)させれば、好きな方向に転回が可能になる。また、モーターB、Cを逆転させると後ろに進むようになる(ただし地面のすべり具合や2つのモーターの相対角度によってはうまく進まない)。前回説明したように、両モーターの初期位置と回転角度、相対角度の維持には注意が必要だが、うまく制御してやれば【動画1】のように自在に動き回れるようになる。
● 改造のベースを作る
背面のモーターによって頭と両腕を振りながら動く姿はなかなか愛らしいが、見た目以外に何かの機能があるわけではないのがちょっと残念だ。遊び倒すためには数少ないモーターをフル稼働させたいところである。そこで、この頭部と腕部の動作機構を取り払って歩行機構を有する胴体だけにし、余ったモーターを別の仕組みに使えるように改造する。ついでに、NXTの背面にアクセスしやすくし、楽に電池交換できるようにする。
まず、NXTと両脚が接続されているロッドを一回取り外し、【写真3】のような3×5のL字ブロックに置き換える。そして、背中のモーターを頭部と腕部の機構ごと取り外し、2本のビームだけを残す。次に、電池交換などの利便性を考え【写真4】のようにNXTの固定方法も変更する。この変更により、二足歩行機構だけを有した非常にすっきりした胴体になる(【写真5】【写真6】)。これを今後の改造のベースとして使うことにする。
|
|
【写真3】脚部と胴体の接続部分。ロッドの支点の位置関係は変えないようにする
|
【写真4】背面から見たところ。NXTを取り外ししやすくするために、固定パーツを変更してある
|
|
|
【写真5】ベースの全身はこんな感じ。センサーも全部取り払ったため、かなりすっきりした
|
【写真6】ベースを後ろから見たところ。背面や側面に新しい機構を追加することもできる
|
|
【写真7】NXTを取り外しやすくなったため、電池を交換するのも簡単
|
● 余ったモーターを入力装置に使う
これまでの変更により、モーターが1つ自由に使えるようになった。レゴ マインドストームNXTに付属のモーターは回転センサーを内蔵しているため、入力装置にも出力装置にも使うことができる。まずは入力装置として使ってみよう。
【写真8】が今回作成した入力装置、アルファレックスの前後進を制御するコントローラーだ。モーターの回転部分にレバーを取り付けただけの簡単なモデルであるが、このレバーをしばらく前後しているとロボットのパイロットになった気分を味わえるから不思議だ。タッチセンサーを使って緊急停止用のブレーキボタンもつけてみた。
このコントローラーを使った制御プログラムが【画面1】だ。スイッチブロックでタッチセンサーが押されているかどうかを判断し、押されていれば停止、押されていなければ移動するようにしている。
移動部分では、回転センサーブロックと移動ブロックを「データワイヤー」と呼ばれる線でつなぎ、回転センサーから取得した角度と方向を、それぞれ移動ブロックのパワーおよび方向として入力している。
このように、データワイヤーを使うとプログラミングブロック間で値のやりとりができるようになり、状況に応じた動的な制御が可能になる。データワイヤーを使ったプログラミングについて理解を深めたい方は、前回紹介した拙著「入門LEGO MINDSTORMS NXT ~ レゴブロックで作る動くロボット」を参考にしていただきたい。
|
|
【写真8】アルファレックスとコントローラー。こういうモノはちょっとした雰囲気作りが大事
|
【画面1】制御プログラム。データワイヤーを使っているのがポイント。プログラムのダウンロードはこちら
|
|
【動画2】コントローラーによって前進と後進、停止をしている様子
|
● 余ったモーターでクローモジュールを作る
今度は余ったモーターを出力装置として使ってみる。まずは簡単な機構として、鎌状のパーツをブンブン振り回すクローモジュールを作成してみた。アタッチメント方式によって、ベースロボットの背面に簡単に取り付けることができる。他の機構を作るときにも、このような接続方式にするとよいだろう。
左右のギア比を変えているためにそれぞれの回転速度が違う点以外は、機構的なポイントは特にない。鎌を回転させながらせまってくる様子は、ちょっと怖くて、ちょっと滑稽だ。
|
|
【写真9】クローモジュール全体。ベースロボットの背面と側面に固定される
|
【写真10】回転機構のアップ。ギアを直列に並べても、かみ合う組み合わせとそうでない組み合わせがあるのに注意
|
|
|
【写真11】クローモジュールを装着したところ。殺戮マシーンに早変わり
|
【動画3】クローを回転しながら前進している様子。やっぱりちょっと滑稽
|
● 余ったモーターでツッパリモジュールを作る
回転モジュールの次は直線運動するモジュールにチャレンジだ。クランク機構を使ってモーターの回転を直線運動に変換し、手を交互に突き出すツッパリモジュールを作ってみた。手のパーツには、安全のためにタイヤを使った。
回転軸への取り付け角度を左右で180度ずらし、運動周期を半周期分シフトしているため、手を交互に突き出すようになっている。往復運動という意味では、ノーマルなアルファレックスの腕部や脚部の機構と同じだ。このモジュールはロボット相撲に使えるかもしれない。交互ではなく同じ周期で手を出すようにクランク部分を変更すれば、腕立て伏せだってできそうだ。
|
|
【写真12】ツッパリモジュールを装着したところ。腰高であまり力士っぽくないのはご了承を
|
【写真13】クランク機構のアップ。レールを使って直線の往復運動に変換している
|
|
|
【写真14】左手を前に出したところ。運動周期は脚部と同じくモーター3回転で1周期なので、脚の動きと同期が可能だ
|
【動画4】ツッパリを出しながら前進している様子。もう1台のアルファレックスとぶつけてみたい
|
● 1つのモーターで2つの動きを個別に制御する
回転の伝達機構を工夫すると、1つのモーターで複数の動きを個別に制御することもできる。ここでは前回紹介した五十川芳仁氏の「LEGO MINDSTORMS NXTオレンジブック ~ アイデアノタマテバコ」の90ページに掲載されている「3-27 回転方向で別作業」と同じ仕組みを利用し、モーターの回転方向によって左右の腕を個別制御するようにしてみた。右手に剣を、左手に盾を構えた戦士型のロボット【写真15】だ。剣と盾を動かす機構は、それぞれ前述の回転運動と直線運動の応用になっている。
【写真16】がこの仕組みのキモとなっている切り替え機構だ。固定されていない真ん中のギアが左右に倒れることによって、モーターの回転方向で伝達先のギアが変わるようになっている。今回の場合、正転で左腕の盾を、逆転で右腕の剣をそれぞれ動かせる。即応性はないが、なかなか面白い仕組みだ。オレンジブックにはこのような仕組みがたくさん載っているので、機構作りに困ったときには参考にしていただきたい。筆者もマインドストームNXTでロボットを作るときには常に手元に置いてる。
|
|
【写真15】剣と盾を構えたアルファレックス。勇ましい姿に変身
|
【写真16】切り替え機構のアップ。脚部の角度調整用に取り付けた20枚歯のギアをここで使っているので、脚部のほうは別のギアにしてある
|
|
|
【写真17】盾を動かす機構のアップ。構成は変わっているが、基本的にはツッパリモジュールの機構と同じ
|
【写真18】剣を振り回す機構のアップ。伝達される回転の方向が一定のため、ギアを使って機械的に回転方向を決定している
|
|
【動画5】盾と剣を個別に制御しながら動いている様子。タッチセンサーを取り付けて対戦させても面白いかも
|
● 余ったモーターでミサイルモジュールを作る
最後の改造例として、教育用レゴ マインドストームNXTの拡張セットなどに付属しているミサイルパーツとそれを飛ばす発射パーツを使って、モーターの力でミサイルを発射するモジュールを作ってみた。このパーツはよくある玩具のミサイル機構と同じで仕組みで、ミサイルパーツをセットしたあとにレバーを引くと、バネの力でミサイルを発射するようになっている。レゴブロックにはこんなパーツもあるのだ。
クランク機構の往復運動をうまく利用して、モーターの回転を、レバーを引く運動に変えているところがポイントだ。【写真20】と【写真21】を見てもらえばわかるように、往復運動の限界点でちょうどレバーが引けるように、ギアを使って位置調整をしている。こうして発射されたミサイルは【動画6】のように結構な勢いで飛んでいく。
|
|
【写真19】ミサイルモジュールを右手に装着したところ。レゴブロックらしからぬ威圧感
|
【写真20】ミサイル発車前の状態。モーターの回転がクランク機構によってレバーを引く運動に変わる
|
|
|
【写真21】ミサイル発射直後の状態。往復運動の限界点でレバーを引ききっている
|
【動画6】標的に近づいてミサイルを発射している様子。あたると結構痛い。超音波センサーや光センサーでターゲットを探すようにすると面白そう
|
● 次回からはオリジナルのロボットアームにチャレンジ
コラムの第二回と第三回にかけて、二足歩行型ヒューマノイド「アルファレックス」を遊び倒し、その魅力を紹介してきた。まだマインドストームNXTを持っていない人や、アルファレックスを組み立ててみたけど全然動かしていない人に、マインドストームシリーズが持つ「作って、いじって、動かす」楽しさが伝われば幸いである。
次回からは、オリジナルのロボットアームを作っていろいろな方法で動かすネタを、何回かのコラムに分けてお届けする。作りたいロボットのイメージから実際にモデルを作成し、プログラミングや教示機能、センサーを使ったコントローラー、マスタースレーブ型の無線コントローラーなどで動かして遊ぶ予定だ。途中からマインドストームNXTを2セット使ったりもするので、複数台のNXTでどんなことができるかを知りたい人は、参考にしていただければと思う。
■URL
レゴジャパン
http://www.legoeducation.jp/mindstorms/index.html
マインドストーム
http://mindstorms.lego.com/
レゴ マインドストーム NXT 体験ブログ
http://nxt.typepad.jp/lego_mindstorms_nxt/
協力:株式会社アフレル
http://www.afrel.co.jp/
■ 関連記事
・ 大庭慎一郎のレゴマインドストームNXT研究室 ~二足歩行型ヒューマノイド「アルファレックス」を遊び倒す(2007/01/22)
2007/03/06 01:06
- ページの先頭へ-
|