【レゴ】 マインドストーム 実践編 プログラム

プログラムを考える
  マインドストームを動かすためのプログラムの考え方・作り方を説明します。

プログラムを組む時の考え方

   〇 命令の順番を正しく並べる。

          最終的にどのように動かすかを考えるてモータ、センサを選択する。
          最小単位で命令を作り、指示をしたい順に並べる。
                   論理的に考える

   〇 一気にプログラムを作らない
      一気に作ると不具合(バグ)を修正するのが大変になる。
      少しずつプログラムを確認しながら進める。
      バージョンアップ 、リビジョンアップを繰り返し完成させる。
     ※ バージョンアップ: 大幅な変更、機能アップ
       リビジョンアップ: 製品に細かい修正、改訂を加えること

「超音波センサーを使って障害物から手前で停止する」プログラムを考える。

 Robot Inventorの電源を入れて、プログラム実行モードをオンにする。スタートボタンを押す。その時モータは100%の出力に設定し、車が前進を始める。超音波センサが10㎝以下になったら、モータを停止させる。プログラム実行モードが自動解除され、電源を切る。

この文指示指示ごと分けると

 Robot Inventorの電源を入れて、プログラム実行モードをオンにする。①スタートボタンを押す。その時②モータは100%の出力に設定し、③車が前進を始める④超音波センサが10㎝以下になったら⑤モータを停止させる。⑥プログラム実行モードが自動解除され、電源を切る。

命令を細かく指示すると下記の様になります。

Ⅰ)文章
     ① スタート
          ② モータを100%に設定する
     ③ 前進
     ④ 超音波センサが10㎝以下になるまで待機
       ⑤ モータ停止
          ⑥ エンド

Ⅱ)フローチャート


Ⅲ)スクラッチ型


「超音波センサーを使って障害物から手前で停止する」スケッチ作成

 スクラッチ型で障害物から20cm手前で停止しするスケッチを作成してEV3 とRobot Inventorを比較します。
 EV3までのソフトには、モータ停止の設定があるため惰性回転にすると障害物から10cm手前で停止するプログラムだとぶつかってしまいます。よって、10cmから20cmに変更しました。


EV3   Robot Inventor
A) 位置を維持 b) 惰性回転 C) 位置を維持
EV3-STOP EV3-FREE Robot Inventor-STOP
EV3-20 EV3-10


A)EV3 + 位置を維持



B) EV3 + 惰性回転



C)Robot Inventor ∔ 位置を維持



まとめ


〇 超音波センサを使って障害物から手前で停止するプログラムを、①から⑥の順番通りに実行させると壁の前で停止する。
  ① スタート 
  ② モータを100%に設定する
  ③ 前進
  ④ 超音波センサが10㎝以下になるまで待機
  ⑤ モータ停止
  ⑥ エンド
 壁の前でギリギリに停止するためには、
 1) 超音波センサの感知する距離を設定する
 2) モータの出力値で細かく調整する。

 ②が無くても壁の前で停止出来ます。

 よって
 ① スタート
 ③ 前進
 ④ 超音波センサが10㎝以下になるまで待機
 ⑤ モータ停止
 ⑥ エンド
  で動かし、必要ならば
 ② モータを100%に設定する
 を追加する。これがバージョンアップ、リビジョンアップになります。

 制動距離に関しては別回で説明します。

〇 新型のマインドストーム Robot Inventor には 惰性回転 がありません。



目次