カラーセンサーによる分岐プログラム ~レゴマインドストームEV3~ | そう備忘録

カラーセンサーによる分岐プログラム ~レゴマインドストームEV3~

色毎に異なる動きをするトレーニングロボット

教育用レゴマインドストームEV3のトレーニングロボットにカラーセンサーを取り付けて赤、青、黄色などの色を判別して直進、右回り、左回りと異なる動きをするプログラムをスイッチブロックを使って作成する。

トレーニングロボットとカラーセンサー

使用するブロック

使用するブロックは以下の3種類。

ループブロック

ループ内に配置されたブロックを右側の条件に一致するまで繰り返す。

ループブロック

無条件に繰り返し

  • 番号:01
  • ループ:無限

スイッチブロック

条件を判定して処理を分岐するブロック。

”+” を押して分岐を増やすことができる。

スイッチブロック

カラーセンサーで色を判別して分岐する

  • スイッチ:カラーセンサー、測定、色
  • 色なし:1に置いたブロックを処理する
  • 青:2に置いたブロックを処理する
  • 黄:3に置いたブロックを処理する
  • 赤:4置いたブロックを処理する

タンクブロック

タンクブロックは車輪のLモーターを制御してトレーニングロボットを移動させるブロック。

今回は色によって動作の異なる下記の4パターンのタンクブロックを使用した。

タンクブロック 直進

直進する

  • タンク:オン
  • 左側パワー:10
  • 右側パワー:10
タンクブロック 左方向

左方向へ曲がる

  • タンク:オン
  • 左側パワー:2
  • 右側パワー:10
タンクブロック 右方向

右方向へ曲がる

  • タンク:オン
  • 左側パワー:10
  • 右側パワー:2
タンクブロック オフ

停止する

  • タンク:オフ
  • ブレーキ方法:真

プログラム全体

トレーニングロボットの前方に付いたカラーセンサーの前にカラーブロックをかざして色によって動作を制御する。

  • カラーブロックをかざさない:直進
  • 青のカラーブロックをかざす:左方向へ曲がる
  • 黄のカラーブロックをかざす:右方向へ曲がる
  • 赤のカラーブロックをかざす:停止

色によって分岐するプログラム

プログラム開始

3~7を繰り返す

カラーセンサーで色を判別して処理を分岐する。

  • 色が判別出来ないとき:4を実行する
  • 青のとき:5を実行する
  • 黄のとき:6を実行する
  • 赤のとき:7を実行する

直進する

左方向へ曲がる

右方向へ曲がる

停止する

実際に動かしてみた動画

プログラミングからトレーニングロボットの実際の動きまでが分かる動画。

スイッチの条件の追加の方法など動画で説明している。

souichirou

やった事を忘れない為の備忘録 同じような事をやりたい人の参考になればと思ってブログにしてます。 主にレゴ、AWS(Amazon Web Services)、WordPress、Deep Learning、RaspberryPiに関するブログを書いています。 仕事では工場に協働ロボットの導入や中小企業へのAI/IoT導入のアドバイザーをやっています。 2019年7月にJDLA(一般社団法人 日本デイープラーニング協会)Deep Learning for GENERALに合格しました。 質問は記事一番下にあるコメントかメニュー上部の問い合わせからお願いします。

おすすめ

質問やコメントや励ましの言葉などを残す

名前、メール、サイト欄は任意です。
またメールアドレスは公開されません。