Hobby

レゴやプラモやおもちゃ

LEGO MINDSTORMS

1998/10/30

robo1.jpg 17K
基本ロボ1号の勇姿
  • MindStormsって何ぞや?
    という方は、JinSatoさんのHPをご覧ください。(^^;
  • ここでは主に、VBからRCXをコントロールする方法について研究していきます。私はVBを使うのは始めてなので、同時にVBについても勉強してゆきます。(^^;

●RCXのプログラミング方法

RCXのプログラミングには、次の3通りの手法があります。
  1. RIS付属のかっこいいソフトを使う 甘口★
  2. Spirit.ocxを使ってVB(等)からコントロールする 中辛★★
  3. 直接シリアルデータを送ってコントロールする 激辛★★★★★
添付ソフト(何て呼べばよいのだ?)はビジュアルでカッコ良いのですが、起動や操作がかったるい以外にもいくつか制約があります。
  • 変数が使えない。(Counterも変数のうちか?)
  • 乱数を分岐条件に使えない。
  • Download後、PCからRUNできない。
  • NT4.0では、RCX Code blockに数値や文字列を入力しようとすると、ブルー画面へ落っこちる。
そこで登場するのが、Spirit.ocxです。Visual Basic Ver5.0をお持ちの方なら、このOLE Controlをフォームに貼り付けるだけで、RCXのコントロールプログラミングが可能になります。

Spirit.ocxの使い方は、以下の資料が役立ちます。(まだ不完全ですが)
Programming with Lego Brick Control OCX
Lego Mindstorms : Spirit.OCX
研究された方々に感謝!

●Spirit.ocxを使うメリットは?

  • 32個のグローバル変数が使える。
  • Add,Sub,Mul,Div,And,Or,Sgn,Absの演算が可能。
  • PCから所定のProgramをRunできる。
  • .If〜.Else〜.Endif .Loop〜.EndLoop といった制御コマンドも使え、シリアルデータを操作する際のようなoffsetの計算も不要。
  • WindowsのイベントでRCXを動かしたりできちゃうかも知れない。

どうでしょ。ちょっと夢が膨らみますよね。興味を持たれた方は、次のページへ。