ObjectSquare [2010 年 6 月号]

[技術講座]


ET ロボコン 2010 チャンピオンシップ大会を目指して

〜東京連合 第 1 回集会〜

株式会社 オージス総研
組み込みソリューション部
手嶋高明

図 1 : 第 1 回集会

6 月に入り、ET ロボコン 2010 地区大会の開催まで 3 ヶ月あまりとなりました。いよいよ本格的に活動を始めたチームも多いのではないでしょうか。そんな中、東京地区では「チャンピオンシップ大会*1で上位入賞を目指す」という目標のもと、東京連合を結成し、メンバの交流と情報の共有を目的に第 1 回集会を行いました。集会には、去年のチャンピオンシップ大会に出場したチーム(勝どき 1 号サヴォイアば〜でぃ(改)田町レーシング)をはじめ、合計 6 チーム 15 名が集まり、去年の振り返りや今年の検討を行いました。

本記事では、集会で検討した内容を紹介します。参加するチームにとっては、何か役に立つ情報が見つかるかもしれません。

目次

1. 去年の振り返り

1.1. ば〜でぃ(改)

1.2. 勝どき 1 号

1.3. 田町レーシング

2. 今年の検討

2.1. モデルの見せ方

2.2. モデルの内容

2.3. 難所攻略法

2.4. おまけ

1. 去年の振り返り

まず始めに、ET ロボコン 2009 にてチャンピオンシップ大会*1に出場した 3 チーム(ば〜でぃ(改)勝どき 1 号田町レーシング)から、「去年の振り返り」をお題に発表を行いました。モデル、競技、体制、スケジュールなど、様々な面で気づいたことや改善した方が良いことが、チーム独自の視点で語られていました。

1.1. ば〜でぃ(改)

NXT 走行体

ば〜でぃ(改)さんは、ET ロボコン 2007 から参加し、出場 3 回目になるチームです。去年の大会では、それまで課題であった性能面の改善に重点を置き、PID 制御やブロック線図の習得に力を入れたそうです。結果、競技において好成績を収め、見事チャンピオンシップ大会に出場しました。今年の抱負は、去年の大会で課題として見えた「モデリング」に力を入れることだそうです。

ブロック線図の習得は必須

ET ロボコンと言えば、以前は UML でのモデリングが主流でしたが、最近は性能面をアピールするためにブロック線図を用いるチームが増えています。今やブロック線図は、ET ロボコンにおいて UML の次によく使われるモデリング言語といっても過言ではなく、性能面で高評価を得たチームはほぼ例外なくブロック線図を使いこなしています。ば〜でぃ(改)さんはこのような状況に触れて、「自チームのモデルを描く上でも、他チームのモデルを理解する上でも、ブロック線図の習得は必須である」と強調されていました。実際のところ、ET ロボコンに参加する方でも、業務ではアプリケーションレイヤの開発をしていてブロック線図を使っていないケースも少なくないと思います。そんな方はこれをキッカケに習得してみてはいかがでしょうか?組み込みエンジニアとしてきっと幅が広がるはずです。

高度な制御理論は必要ない

また、ば〜でぃ(改)さんは、「最近の ET ロボコンでは年々扱う制御理論が高度になってきているものの、決して高度な制御理論まで追う必要はない」ことも強調されていました。「PID 制御など、基本的な理論をいくつか押さえていれば、あとは戦略次第で上位を狙うことは十分可能」という主張でした。ここからは私の主観ですが、ET ロボコン 2009 の競技を振り返ってみると、地区大会では、ライントレースを滑らかに行うための PID 制御さえ適用していれば、スピードの面では上位チームと遜色ない走りができたと思います。チャンピオンシップ大会では、コースを縦横無尽に走りまわる走行も見られましたが、これも、モータエンコーダ値*2から方角や距離の算出を行うことで実現可能です。基本的な制御理論は押さえた上で、自分たちのスキルや特徴を生かした取り組みをアピールできれば良いのではないでしょうか。

*1地区大会を勝ち抜いた約40チームで競われる。組み込み総合技術展 ( Embeded Technology ) の一イベントとして、パシフィコ横浜で行われる。

*2モータの回転角度を示す値。

1.2. 勝どき 1 号

NXT 走行体

続いて、勝どき 1 号さんです。このチームは若手への教育を目的に、入社 1、2 年目の社員で構成されたチームです。活動を開始したのが新人研修後の 7 月で、地区大会まではわずか 2 ヶ月という短期間だったにも関わらず、見事チャンピオンシップ大会に出場しました。会社からは「短期間でも勝て」というミッション(ムチャぶり?)を与えられて苦労した話や、短期間で結果を出すために工夫した点について語られました。また、灰色マーカ検知の代替策についても触れていました。

短期開発ではできることに集中する

開発期間はわずか 2 ヶ月、しかも業務と両立しながらの活動だったそうです。そんな限られた時間の中で結果を出すためには、「できることにのみリソースを集中することが非常に重要」と強調していました。業務では当たり前のことかもしれませんが、こと ET ロボコンになると興味が先行してしまい、いろんなことに手を伸ばし過ぎた経験を持つ方も多いのではないでしょうか?そんな方は、勝どき 1 号さんの「できることに集中する」という主張を改めて意識すると良いかもしれません。

灰色マーカ検知の代替策

どのチームも毎年苦労しているであろう灰色マーカ検知についても触れていました。灰色マーカとは、コース上の難所や坂道の出入口に設定された灰色のポイントです。難所を攻略するためには、この灰色マーカを検知して難所用の走行に切り替えるやり方が一般的なのですが、次のような問題を抱えているため毎年非常に苦労します。

詳細な説明は割愛しますが、走行体でのライントレースは、ラインの境目、つまり白と黒の境目を光センサを使いトレースすることで実現します。このとき、PID 制御を適用することでライントレースの精度を上げることができるのですが、精度を上げれば上げるほど、光センサは白と黒の中間色である灰色を認識する割合が増えるため、ライン境目の灰色と灰色マーカの灰色との区別が難しくなってしまいます。ライントレース時の PID 制御と灰色マーカ検知は二律背反してしまうのです。そこで勝どき 1 号さんでは、光センサによる灰色マーカ検知をやめ、モータエンコーダ値から算出する方角(車体の向き)を使って難所の開始を検知していました。

まず、走行体の方角(車体の向き)は、左右 2 つのモータエンコーダ値をもとに図 2 の式で算出できます。

図 2 : 方角の算出方法
図 2 : 方角の算出方法

そしてスタート時点の方角を 0 度とし、方角が指定の角度になったところで難所の開始と判断します。今年のコースで表すと図 3 のようになります。加えて勝どき 1 号さんでは、車輪の滑りによる方角誤差を抑えるために、直線部分で方角を補正する工夫も合わせて行っていました。この結果、灰色マーカに頼ることなく難所の開始をかなり正確に検知できたそうです。

モータエンコーダ値は NXT 走行体において最も信頼できる入力値の 1 つです。今年の大会でも、モータエンコーダ値を活用したさまざまな検知方法が出てくることでしょう。

図 3 : ET ロボコン 2010 のコース
図 3 : ET ロボコン 2010 のコース

1.3. 田町レーシング

NXT 走行体

田町レーシングからは、「モデルコメント」の活用方法とその分析結果について発表しました。モデルコメントとは、モデル部門に参加したチームのモデルに対して審査員がつけたコメントです。各モデルに対し、「良かった点(プラス評価)」と「気になった点(マイナス評価)」が書かれています。田町レーシングでは、モデルコメントをモデル審査基準*3にマッピングし ( 図 4 )、それぞれのモデル審査項目においてどんなプラス評価やマイナス評価があるのか分析する上で使っていました。これにより、モデル審査の傾向が掴めるとともに、評価の具体例を把握することができます。初めて参加するチームにはオススメの方法です。

ここでは、分析の結果わかった傾向をいくつか紹介します。ただし、審査の基準や傾向は毎年変わりますし、田町レーシング独自の分析ですので、あくまでも参考程度に留めてください。

図 4 : モデルコメントのマッピング
図 4 : モデルコメントのマッピング

また、田町レーシングのモデルについては、過去記事「ETロボコン2009モデル座談会 〜ETロボコン2010で勝つモデリングテクニックを探る〜」でも検討を行っていますのでそちらも合わせて参考にしてください。

「モデルの書き方」では、マイナス評価をもらわないことが大切

「モデルの書き方*4」に関するコメントでは次のような特徴が見られました。

例えば、プラス評価コメントは、「アルゴリズムが読みやすかった」や「シンプルでわかりやすい」など、全体を通して見た意見が多い傾向にありました。半面、マイナス評価コメントは、「アクティビティ図のレーンの使い方がおかしい」や「抽象度に合わせて配置を逆向きにすべき」など、具体的な指摘が多い傾向にありました。これをもとに考えるなら、「モデルの書き方*4」においては、まずは「表記ルールや定石に従い、マイナス評価をもらわないこと」が対策として挙げられそうです。またプラス評価については、コメントが具体的ではないため対策は取りづらいものの、マイナス評価への対策を行うことによって、全体として「読みやすく」「わかりやすい」といったプラス評価につながる可能性はありそうです。

「性能」では、新たな試みや深い考察がプラス評価につながる

「性能*4」に関するコメントでは次のような特徴が見られました。

例えば、プラス評価コメントは、「〜にトライしたチャレンジは良い」や「〜について深い検討が行われている」などが多い傾向にありました。一方、マイナス評価コメントは、「〜について実現性に疑問が残る」や「〜の有効性は不明」などの指摘が多い傾向にありました。特に、実現性の低さを指摘したコメントでは、検証データの記載を求めるものが多く見られました。「新たな試みや深い考察を行いながら、検証データを載せるなどして実現性や有効性を十分にアピールする」と良いようです。

ET ロボコンのモデル選考は、1 次選考は採点方式で、最終選考は投票方式という特徴を持っています。つまり、上位を決める最終選考で良い結果を得るには、審査員に投票してもらうための強い「売り」が必要になります。「性能*4」での新たな試みや深い考察は他チームとの差別化につながるため、「売り」をアピールしやすい部分と言えるかもしれません。

*3モデル部門で審査を行う際の評価基準。

*4モデル審査基準における審査項目の 1 つ。

2. 今年の検討

モデルの見せ方や内容、また、初お目見えした難所の攻略法についても検討を行いました。

2.1. モデルの見せ方

NXT 走行体
ファットでありながらスリムなモデルを目指す

提出するモデルは、A3 で 5 枚という限られたスペースに収める必要があります。そこで毎年どのチームも悩むのは、次の 2 つのモデルのうち、どちらを目指すのかということではないでしょうか?

過去の ET ロボコンワークショップにおいても、前者を「ファット派モデル」、後者を「スリム派モデル」と名づけ、審査員の中で喧々諤々の討論が行われました。どちらが良いという答えはなく、審査員の中でも意見が分かれていたようです。

モデルの情報量と伝わりやすさの関係を問う

集会の中でもこの点に触れ、さまざまな意見は出ましたが、おおよそ次の 2 つに集約されていました。

集会での結論は、「ファット派モデルの情報量は保ちながらも、デザイン(配色や配置)の工夫によってスリム派モデルに見せることが必要」といったところでした。皆さんのチームにおいても、意見の分かれるところだと思います。答えのない選択ですが、モデルシートの根幹にあたる部分ですので、なるべく早い段階で話し合い、チーム内で合意を取っておくことをオススメします。

2.2. モデルの内容

NXT 走行体
非機能要求が熱い?!

今年は、非機能要求*5についての分析や可視化が熱いのではないかという意見が上がりました。走行体が RCX から NXT に変わり、モータエンコーダ値を用いた位置推定の正確さが増したことによって、去年はコース上のラインを無視して走る縦横無尽走行が流行りました。今年もこの傾向は続くと思いますが、そうなると、「ライン外を走行する際に相手チームの走行を妨害しないための工夫や配慮が求められる」ことになります。それに加え、今年は技術委員会から、「走行体が転倒などのバランス制御不能状態になった場合は、自動的に両輪モータを停止するフェイルセーフ機能の搭載」が推奨されています。この流れを受けて、信頼性をはじめとする非機能要求への対応に注目が集まりそうです。これまでの ET ロボコンでは、非機能要求の分析や可視化は、一部マインドマップを用いて行ったチームはあったものの、まだまだ発展余地のある部分だと思います。今年あたりから、非機能要求の分析や可視化での新たな取り組みや手法が出てくるかもしれません。

*5信頼性、安全性、使用性など、システムの品質に関わる要求。

2.3. 難所攻略法

NXT 走行体

難所のボーナスタイム*6獲得は、上位入賞を目指す上で今や必須の条件となっています。各チームでもさまざま検討されるとは思いますが、集会の中で出た意見をいくつか取り上げてみます。

エニグマ・デコーディング
衝立は 2 本解読すれば OK

エニグマ・デコーディングは、コース上に置かれた衝立*7のパターンがレースの度に変化し、衝立パターンに対応したルートを通過することによってボーナスタイムが付与される難所です。今回初めて使用解禁となった超音波センサを用いて衝立パターンを解読し、動的に走行ルートを変更する仕組みが必要になります。すでに気づかれている方も多いと思いますが、衝立パターンは 3 本あるうち 2 本を解読できればルートの特定が可能です。また、衝立の置かれた付近は毎年多くのチームがショートカットにチャレンジするエリアでもあるため、ショートカットを考慮し、どの 2 本の衝立を解読するかといった戦略が重要になりそうです。

解読パターン 衝立a 衝立b 衝立c 通過ルート
パターン1 なし なし あり A → C
パターン2 なし あり なし A → D
パターン3 あり なし なし B → C
パターン4 あり あり あり B → D
表 1 : エニグマ・デコーディング(仮称)衝立パターンと通過ルート

*6難所に設置されたゲートを通過することで発生するタイム。競技の順位は、走行タイムからボーナスタイムを引いたリザルトタイムによって決まる。

*7( 競技規約より抜粋 ) コンビニエンスストア等で売っている底の形状が円形では無い 2 リットルのペットボトル飲料の大きさ程度のもの。

シーソー・坂道
下り坂のオーバースピードに注意する

先日、ET ロボコン 2010 南関東大会のブログにて、シーソーと階段の試走動画が公開されました。その動画を見る限り、シーソーでは、下るときのオーバースピードによって、バランスを失い転倒するケースが多いようです。シーソーの上りと下りの切り替わりを検知して、下るときには減速するといった対策が必要になりそうです。また同様のことは、今年からさらに勾配を増した坂道にも言えます。集会でも、上りと下りの切り替わりの検知方法についてさまざまな意見が上がりました。おおむね、車輪モータの回転から判断するという案が優勢でした。

図 4 : シーソー図 5 : 坂道
シーソー上停止はできるのか?

シーソーの試走動画を見る限り、シーソー上停止*8の難易度はかなり高そうです。集会の中でも、「難易度の限界を測るための一種の実験ではないか!」という意見が上がるほどでした。とは言え、シーソー上停止のボーナスタイムは 60 秒です。他の難所と比較しても格段に大きく、とても魅了的です。攻略を目指すなら、シーソーの支点近くでの繊細な重心移動が求められるため、PID 制御のうち、ライントレースではあまり使用されていなかった I 制御を考慮する必要が出てきそうです。ただその前に、まずは時間を浪費しないためにも、チャレンジすべきかどうかから検討したほうが良いかもしれません。

ボーナス対象 ボーナスタイム 備考
中間ゲート通過 10秒
シーソー通過 20秒 アウトコース競技者のみ
シーソー上停止 60秒 アウトコース競技者のみ
階段通過 20秒 アウトコース競技者のみ
エニグマ・デコーディング通過 40秒 インコース競技者のみ
ガレージ・イン 20秒

*8( 競技規約より抜粋 ) 走行体がシーソー上に位置し、かつ走行体はタイヤのみがシーソーに触れている状態で、シーソーの両端がどこにも接触しない状態を 3 秒以上維持した場合にボーナスタイムの付与対象となる。

階段
段差も坂道の一種

階段の試走動画も公開されています。そして階段での失敗も、シーソーや坂道と同様に、段差を降りる際のオーバースピードによって転倒するケースが多いようです。ここで 1 つ、集会の中でおもしろい意見が出ていました。階段の段差を坂道の一種(勾配 90 度の坂道)と捉えられないかというものです。仮に、段差を坂道の一種と捉えたとすると、シーソーや坂道でのノウハウ、つまり勾配の切り替わりを判断するロジックがそのまま流用でき、オーバースピードの抑制に役立つかもしれません。

図 6 : 階段

2.4. おまけ

NXT 走行体
コースを3次元で捉える??

他におもしろい意見としては、シーソーや階段の追加によってコース全体の立体性が増したことによって、これまで 2 次元の平面として捉えていたコースを、3 次元で捉える試みが出てくるのではないかという話がありました。ただ、今の NXT 走行体で高さの把握が可能かどうかはわかりません。集会の中でも残念ながら実現方法は見出せませんでした。果たしてできるのでしょうか?

事前のアピールに目を向けよう

ET ロボコンのモデル部門では、提出したモデルシートによって評価が行われます。そのため、これまで事前のアピールに目を向けたチームはあまりなかったように思います。しかしウワサでは、審査員は YouTube やブログなどを結構チェックしているそうです。もしかすると、走行動画をアップしたり情報を公開することで、審査員の心証が良くなり、プラス評価につながるかもしれません。それは冗談としても、ET ロボコンを盛り上げる意味でプラスになることは間違いありません。皆さんどんどん公開しましょう!

 

終わりに

いかがでしたでしょうか?東京連合 第 1 回集会で行われた検討の模様を取り上げましたが、役に立つ情報はありましたでしょうか?私は、今回初めて複数チームでの検討という試みを行ってみて、思わぬ気づきや考察がたくさんありました。自チームだけで閉じていると、このような発見や刺激は得られなかったと思います。皆さんの地区でもぜひこのような検討会を行ってみてはいかがでしょうか。組み込み業界に携わるもの同士、交流の場としても非常に有意義だと思います。

また最後に、東京連合としては今後も定期的に集会やミニ競技会を行い、参加チームのレベルアップに努めていきます。東京近辺で集会に興味のある方は、ぜひ以下アドレスまでご連絡ください。一緒に切磋琢磨し、ET ロボコン 2010 チャンピオンシップ大会での上位入賞を目指しましょう!

東京連合:etrobo_tokyo_rengo-owner@yahoogroups.jp

 

© 2010 OGIS-RI Co., Ltd.
Index Next
Index Next