1.高校生部門 - WRO Japan

WRO2015 • 高校生部門
京都代表 • robotics X
Team
Aim
チームとしての目標
robotics Xの戦いは昨年度の全国大会の直後から始まっていた。
WRO2014年の全国大会は不完全燃焼のまま、敗退してしまった。この
一年間、去年の悔しさを胸に幾度の反省と調整を繰り返しロボカップ
とWROに挑んできた。
今大会は robotics X の集大成だ。常にチームの目標である全走行満点
と同時に悔いのない試合をしたい。そして、去年の雪辱を果たし、世
界の切符の手に入れるために全力でこの大会に臨む!
ミッションに対する目標
ユング 開 • Kai Junge (写真右)
浅見 幸悠紀 • Koki Asami (写真左)
2010年からロボット活動をしている僕たちrobotics Xは
毎年WROとロボカップジュニア(RCJ)に参加してい
る。共に高2であるKai x Kokiペアは2013年夏から活動を
始めた。違う学校に通っている僕たちは常にSNSを利用
しコミニュケーションを取りながら活動に励んでいる。
今年の高校生のミッション「Mountaineering」=「山登り」だが、山は登
らないことにした。山を登るより山のサイドからアームを伸ばしてキュー
ブを頂上の穴に入れる方が速くて正確だと判断したからだ。WROで重要と
される「まっすぐ」、「90度回転」、そして「ライントレース」を完璧
にすることでさらに確実性を高めた。これに加え、移動経路を最短距離に
することや動きながらアームを上げるなどの動作を組み込むことで、基本
ルールのタイムも50秒を切ることができた。
活動は自主練や合同練習の他、何度か、メンターのいる
競技では、サプライズを組み込めやすいプログラムにしたため、大会の練
科学の学校に通っている。
習時間ではよりスピーディーな対応の可能になった。
世界大会での成績:
WRO2010 小学生部門 28位
WRO2012 中学生部門 10位
WRO2013 中学生部門 2位
RCJ2014 レスキューAセカンダリ 2位
RCJ2013 レスキューAプライマリ 2位 RCJ2015 レスキューLineセカンダリ 1位
WRO2015 高校生部門
Robot
EV3
Touch Sensor
C P U に は 初 めて 使 う E V 3 を 使 用 。
キューブを山に置く時、いつアーム
NXTに比べ、容量が増えたのとモー
を伸ばせばいいか判断するためにタッ
ターポートが4つ使えるメリットが
チセンサーを設置。このため、ライ
EV3を使うきっかけになった。
ントレースを秒数で制御するより確
実かつ速くなった。
さらに、リンク機構を使用して、後
Tires
ろからでも前のタッチを押せるよう
メインのタイヤはスピードが出る大
に。つまり、後ろから壁に当たって
きく薄いものを使用。後輪は直進し
も検知できる。
やすくするためにホイールを使用。
前輪は摩擦をできるだけ減らすため
Arm
にEV3の鉄球キャスターを使用。
キューブを山の頂上の穴に入れるた
Motors
めのアームは2段階に分かれている。
駆動系にはEV3のサーボモーターを
中央の写真に注目。
使用。確実な角度制御が可能に。アー
1. キューブを持ち上げる。
ムにはNXTのサーボモーターとEV3
速い動きでキューブを持ち上げるた
のMモーターを使用している。
めにEV3のMモーターを使用。さら
に、1モーターで開閉運動と上下運
Light Sensors
動の2つの動作を可能にした。
ライントレースをするために使い慣
れているNXTのライトセンサーを2
2. アームを伸ばす。
つ使用。回転軸から遠すぎず、近す
リンク機構を使用して、持ち上げた
ぎない位置に設置することで、安定
キューブを遠くに伸ばす。パワーが
かつ美しいライントレースを実現。
↓キューブの持ち上げ
↓山へ移動
Mモーターで上げたアームには2つ
主にコースの真ん中にある8つのカ
のフックが付いている。これはアー
ラータイルをの色読みをするために
ムを山の最上段に引っ掛けて確実に
使用。色番号だけでなく、RBGの値
キューブを入れるためだ。
を考慮して、確実に色を読んでいく。
さらに、それでもキューブが入らな
さらに、カラーセンサーをロボット
かった場合のため、アームを左右に
の後部に設置することで、バックし
ウントできる。
あるNXTのサーボモーターを使用。
工夫点:
Color Sensor
ながら何本の黒線を越えたのかをカ
↓アームを伸ばす
振ることで、ずれたキューブも確実
動作の流れ
に穴の中に入れることができる。
WRO2015 高校生部門
Program
色読み
Y
このミッションをクリアするための最初の動作はこの8つの
4
カラーを読むことだ。色の値はHiTechnic のカラーセンサーで
取得する。8つの情報を蓄えるために8つの変数を使用してい
る。山の向きはそれぞれの向きに当てられた変数に1か0で記
3
録される。各キューブの位置も同じく各キューブに当てられた
変数に、
2
(赤,青,黄,緑)=(1,2,3,4) の順で記録される。
色読みの後の動作は全てこの8つの情報によって制御される。
1
1
2
移動アルゴリズム
X
まず、現在の座標
次に、目標の座標を割り出す。キューブを山の
の情報をロボット
頂上に置くための移動なら、現在抱えてるキュー
に与える。(最初
ブの色により目標の座標を判断。キューブを取
山から山へ移動するために、図のようにフィールドを2x8の座標としてプログ
は赤い山にある
りに行く移動なら、まだ移動してないキューブ
ラムしている(青い丸がX軸の値、赤い三角形がY軸の値)。さらに、この座
キューブの座標)
が存在する山の情報を元に目標の座標を判断。
座標システム
標システムを使い、現在の座標と目標の座標のみの情報でフィールド上を移
動できる。つまり、サプライズルールで要求されるフィールド上の動きが楽
にできる。
現在のX座標と目標の
現在のY座標と目標のY座標の差などの情報を
X座標の差やキューブ
元にY軸上を移動する。ただ、移動するだけ
ライントレース
マイブロック
を抱えているかどうか?
ではなく、X軸上の動きからの方向転換→Y軸
確実かつ正確なライントレースをする
プログラム内には何度も繰り返
などの情報を元にX軸
上を移動→山の方を向くための方向転換、と
ためにロボカップジュニアで培った2
される計算/動きのコマンドがあ
上を移動する。
いう3パートに分けられている。
つのライントレースシステムを導入。
る。それをマイブロック(C言語
正確にラインを追いたい時はゆっく
でいうvoidやsubroutine)に変換
り走りながら比例制御でラインを追
し、沢山使うことでシンプルか
つ汎用性の高いプログラムの作
成に成功。
う。スピードを重視したい時は綺麗に
まっすぐ走るON/OFF制御を使用。
目標の座標
を現在の座
標に変換
通常ならここで最初に戻る。もし全てのキューブが頂
上に置き終えられたら、ここでプログラムは終了する。