組み込み初心者がETロボコンを通じて得られるもの:ETロボコン2009、挑戦記(5)
今回はETロボコンに参加している若手社員と学生が毎週行っているという勉強会を紹介。原寸大コースを使用したデモ走行も行いました。
前回「ロボコンで学ぶUMLモデリング」と称して、“機能(実現したいこと)”“構造(実現するために必要なもの)”“振る舞い(実現するための方法)”に分けたUMLの描き方を紹介しました。実際にはUMLモデルを作成した後に、モデルをソースコードに落とし込む作業がありますので、そちらについては以前@IT MONOistで紹介した解説記事「UMLモデルをどうやってC言語に落とし込むか」を参照していただければ幸いです。
なお、ETロボコン参加者には、5〜7月にかけて計2回の技術教育会が実施され、その中でUMLの表記方法と、モデルをコードに落とし込む実装方法を学ぶことができます。教育会では講師以外に審査委員の方も数名いるので、気軽に質問をして、その場で疑問点を解決することができます。また、例年のETロボコン参加チームを見ると、大学と企業が連携して学生にモデリングを指導していたり、企業が新人教育の一環として参加することでベテラン社員が若手に教えているといった風景が見られます。
今回はそうした一例として、同じ地区でエントリーしている企業と学生が定期的に行っているという勉強会を紹介します(筆者もETロボコン参加者の1人として、勉強会に参加させてもらいました)。参加チームは、昨年度モデル部門でエクセレント(1位)を受賞した東海地区のサヌック(明電システムテクノロジー)と、今年から初参加のひものエンベダーズ(沼津工業高等専門学校 牛丸研究室)、そして@IT MONOistの3チームです。3チームとも普段は組み込み分野が専門というわけではなく、ETロボコンを通じて組み込み開発を体験している、組み込み初心者です。
サヌックといえば昨年度のチームメンバー4名中、3名が沼津高専(沼津工業高等専門学校)出身というフレッシュなチーム(今年はその3名で参加しています)。よって今回の合同勉強会も、母校がエントリーするということで、試走コースのあるサヌックの社内(明電舎 沼津事業所内の明電システムテクノロジー本社)で、週に1度、勉強会を行うことにしたようです。
昨年度のチャンピオンシップ大会レポート記事はこちら: | |
---|---|
⇒ | 速さと性能の確かさを――ETロボコン2008最終章 |
⇒ | 専門家が思わずうなる、モデルの作り方 |
⇒ | モデルの情報量と伝わりやすさの関係を問う |
いざ、東海地区へ!
サヌックとひものエンベダーズがエントリーしている東海地区は、ETロボコンが開催される各地区の中でも、強豪揃いのエリアです。昨年のチャンピオンシップ大会(ETロボコンの全国大会)では、総合結果で上位3位中の2チームが東海地区でした。筆者が訪問した8月中旬は東海地区でまだ試走会が行われていなかっため、他チームの状況はまだ分からない状況でしたが、少なくともサヌックとひものエンベダーズに関しては、難所に挑戦し、走行スピードを上げるための工夫(制御)も凝らしていました。@IT MONOistはというと、まだまだ設計(モデリング)が不完全で、難所を1つも通らずに一通りコースを走行するに留まっています。
勉強会が行われている会場に着くと、実寸大のコースがあり、まずはそれに驚きました。これまで試走会で1度しか見たことのない本番コース(本物は販売していないため、白黒コピー)です。明電システムテクノロジーでは社内フロアの一角にロボコンのコースを設置し、業務終了後に開発・試走を行っているそうです。
普段は学校の研究室で開発を行っているひものエンベダーズも、週に1度、サヌックとともに勉強会を行うことで、前週にできなかった課題を持ち帰り、次の週に試走して検証する、というのを繰り返し、精度を上げているそうです。また、モデリングに関しても、お互いのチームで指摘をし合うことで非常に完成度の高いものに仕上げてきています。
「ETロボコンに参加を決めたときは、UMLって何? という状態でしたが、参考書を見たり、サヌックさんに指導していただくことで、一通りモデルが描けるようになりました。とても勉強になっています」(沼津工業高等専門学校 電子制御工学科 塚本 駿さん)。
筆者が参加した日の勉強会では、特別に3チームでの練習試合を行いました。それぞれインコース/アウトコースを走り、本番と同じ競技規約で競うというものです。
関連リンク: | |
---|---|
⇒ | ETロボコン2009 競技規約 |
結果は画像5をご覧のとおり、@IT MONOist(アイティメディア)の惨敗です。ひものエンベダーズはアウトコースゴール直前での転倒さえなければ、パーフェクトな走行でした。
それにしても、モータや電池、ハード面ではまったく同じロボットなのに、直線でさえもどうしてここまで走行速度が違うのかと、疑問に思いました。その訳を伺うと、両チームとも細かいアルゴリズムは違うものの、PID制御を行っているとのことでした。
PID制御は、安定した走行を実現する手法として、昨年度もいくつかのチームが採用していました。実際にPID制御を行ったチームからは「これでもかというほど速くなった」という声が聞かれましたが、筆者もその感覚を勉強会の場でたしかに実感しました。とにかく両チームとも、速いです(動画でその違いをご覧ください)。
*** 一部省略されたコンテンツがあります。PC版でご覧ください。 ***
動画を見ていただくと分かりますが、@IT MONOistとサヌックの走行とでは、動きがだいぶ異なります。どうやらPID制御の効果は相当ありそうです。今年から採用されたロボット(NXT)は倒立振子制御も行っているため、そのパラメータとの調整も必要なのでは……ということを考えながら、筆者もPID制御の実装に取りかかることにしました(結果は9月5、6日に行われた東京地区大会のレポートをお楽しみに!)。
なお、勉強会ではそのほかモデリングのプレゼンテーションも行いました。お互いに気になる点を指摘し合い、普段1人で行っているときには気がつかない発見ができました。なにより、人数が多いほど、さまざまなアイデアが出てくるので楽しく、良い刺激になると実感しました。
ETロボコンはまもなく各地区大会が開催されます。東京地区は一足早く、9月4〜5日に行われました。その模様は次回お伝えします(次回に続く)。
Copyright © ITmedia, Inc. All Rights Reserved.