ニュース

ロボコン初優勝をはたした東工大ロボット技術研究会チーム「Maquinista」の秘密

~MATLAB/Simulinkをフルに活用して開発期間を短縮

チームMaquinistaがNHK学生ロボコン2017のために製作した「雅」

 NHK学生ロボコンは25年を超える歴史を持つ、国内有数の学生ロボットコンテストであり、優勝したチームは日本代表として世界大会「ABUアジア・太平洋ロボットコンテスト」に出場できる。

 毎年8月に翌年の大会ルールが発表され、書類審査、第1次ビデオ審査、第2次ビデオ審査を経て、20チーム前後が6月に行なわれる本戦へと進む。2017年度のNHK学生ロボコンの競技名は「The Landing Disc」で、日本の伝統遊戯である投扇興からインスピレーションを得たものである。

 各チームは1台のロボットを製作し、フィールド上に設けられた7つのスポットに載っているボールを柔らかいフライングディスクを投げて落とし、さらに空いたスポットの上にディスクを投げて載せれば得点になる。試合時間は3分間だが、時間内にすべてのスポットに自チームのディスクを載せれば「APPARE!」となり、その時点でそのチームの勝利が決定する。

 2017年6月に開催されたNHK学生ロボコン2017で、見事優勝に輝いたのは東京工業大学のチーム「Maquinista」であり、東京工業大学のチームとしては初の優勝だった。日本代表となったチーム「Maquinista」は、世界大会でも敢闘賞(ベスト4)を受賞した。今回、Maquinistaの中心メンバー2名にその躍進の秘密を聞く機会を得たので、その内容を紹介する。

ディスクを投げる方法を片っ端から試して、一番いい方法を採用

 東京工業大学(以下東工大)のロボット技術研究会は、40年近くの歴史と150人を超える部員を持つ、東工大のなかでも最大規模のロボットサークルであり、いくつかのグループに分かれて活動を行なっている。

 ロボット技術研究会は、2003年から毎年、NHK学生ロボコンにエントリーをしているが、ビデオ審査で落とされてしまう年もあるという。NHK学生ロボコンは、書類選考、第1次ビデオ審査、第2次ビデオ審査を経て、本戦へ進むことになる。

 今年(2017年)のチームMaquinistaは総勢25名前後で、機械や電気、情報を専攻している学生が中心である。大会のルールは、前年の8月の世界大会で発表されるが、今年は投げるフライングディスクのバラツキに苦労したという。

 「ディスクの個体差がすごく激しくて。例年だと、規格の決められた物を運んだり渡したりするルールが多いのですが、今年は与えられた50枚のディスクのなかでの個体差が原因で、飛び方が大きくばらつく点に苦労しました」(野田氏)。

 ルールが発表されてから、第1次ビデオ審査までに1号機を作り、その結果を踏まえて、第2次ビデオ審査までに2号機を作る。そのあと3号機を作る年もあるそうだが、今年は2号機の改良に専念して、3号機は作らなかったとのこと。

 Maquinistaが製作したロボット「雅」は、竹とんぼのような形をしたバットを回転させてディスクを打ち出しているが、最初からその機構にしようと考えたわけではなく、さまざまな機構を実際に作って試した上で、この機構に決定したという。

 「まず、ルール発表直後にチーム全員で機構の案出しをしました。そこで挙がったもの、たとえば、ローラーで飛ばすタイプや、手で投げるときのスナップを模した機構なども試作し、性能を評価した結果的として、今回の方式を採用するに至りました」(野田氏)。

東工大ロボット技術研究会(略称ロ技研)の説明パネル。NHK学生ロボコンを目指すチームMaquinistaのほかにも、さまざまなグループがある
Maquinista紹介VTR
東京工業大学工学部制御システム工学科3年の徳田俊平氏
東京工業大学工学部制御システム工学科4年の野田光世氏
チームMaquinistaは、2017年6月11日に開催されたNHK学生ロボコン2017に優勝し、ABUアジア・太平洋ロボットコンテスト2017東京大会に日本代表として出場。ベスト4で敢闘賞を受賞した
チームMaquinistaが製作したロボット「雅」を挟んで立つ徳田氏と野田氏
NHK学生ロボコンやABUロボコンで獲得したトロフィーや賞状などが飾られていた

ディスクを打ち出す機構の改良にMATLAB/Simulinkをフル活用

 雅は、ディスクをバットで打ち出す機構を2つ備えており、4種類の軌道を打ち分けることができる。このバットの形状や材質も試行錯誤の末にたどり着いたのだ。

 「棒の形状も最初はただの角材だったのですが、カーブをつけてみたり、いろいろ試行錯誤して形を変えていって、一番分散が少なかったものを選びました」(徳田氏)。

 その機構の改良に活躍したのが、MathWorks(マスワークス)の数値解析ソフトウェア「MATLAB/Simulink」だ。射出機構の制御を担当した徳田氏は次のように語った。

 「MATLAB/Simulinkで射出機構のモデルを作成し、シミュレーションを行ない、ゲインの調整や制御パラメータなどを決めました。棒の動き方そのものはなるべく変えずに、棒の形状を変更していこうという方針だったので、形状は何回も試行錯誤で変更していました。そのさいにいちいち実機でパラメータを調整していると、とても時間がかかってしまうので、MATLAB/Simulinkを利用してシミュレーションをすることで、実際に調整する回数を減らして、開発速度をあげました」。

Simulinkによるモーター制御のシミュレーション(2016年度機体のもの)

 東工大では2015年度から、MATLABの包括ライセンスを取得し、全学科の学生がMATLABを自由に利用できるようになったため、東工大ロボット技術研究会では積極的にMATLABを活用しているとのことだ。MATLABは大学の授業でも活用されており、制御の理解を深めるのに役だったという。

 「私が所属する制御システム工学科の授業でもMATLABが使われています。初めて制御理論を勉強したときに、伝達関数などの数式だけを見ても自分はイマイチ挙動がイメージがきなかったんです。しかし、課題などでMATLAB/Simulinkを使って、実際にシステムの応答をなぞっていくにつれ、『ああ、これはこういうことだったのか』と、教科書に書いてあったものがすっと頭に入ってくる感じがしました。さらにMaquinistaで製作されたロボットを制御するなかで、現実のロボットがMATLAB/Simulinkでのシミュレーションどおりに動く部分・そうでない部分を見比べ、理解を深められたと思っています」(野田氏)。

 Maquinistaのメンバーによると、ほかの大学のロボコンチームで、MATLAB/Simulinkを活用しているところはあまりなく、MATLABが使えないので、似たようなものを自分達でがんばって作っている大学もあるそうだ。

雅は、ここからディスクを射出する仕組みである
下からせり上がってきたディスクを奥にみえるハンドで射出機構まで運び、セットする
射出するさいには、奥のハンドが開く
この竹とんぼのような形をしたバットでディスクを打ち出す。このバットの形状や表面の材質も試行錯誤の末決まったとのことだ
ラックギヤを使った機構で、ディスクを下から上へと送り出す

オペレーターの操作ミスを減らすために半自動化を実現

 NHK学生ロボコンでは、本番でのオペレーターの操作ミスを減らすために、ロボットの半自動化がトレンドとなっており、Maquinistaの雅もスタートゾーンから最初にスローイングエリアまで移動するところは完全に自動化されている。

 コントローラには、狙う7カ所のスポットに対応したボタンがスポットと同じ配置で搭載されているので、それぞれのボタンを押すと、そのスポットを狙うための位置まで自動的にロボットが移動する仕組みになっている。ディスクの軌道も最適化されているが、実際に打ち出してみて、ずれていると感じたらオペレーターが微調整できるように設計されている。

 今回、本番のフィールドでは、練習で利用していたものより、スポットの上にあるディスクを着地させる円盤が硬く、ディスクが跳ねて落ちてしまうという問題が生じたが、その場でパラメータを微調整して対応したという。その調整が功を奏し、Maquinistaは、本番のNHK学生ロボコンでは予選で負けた1試合以外すべてAPPARE!を達成するという圧倒的な強さを見せた。

 雅には、レーザーレンジファインダーがいくつか搭載されており、フィールドの外の木枠やフィールドに立っているスポットの位置を取得することができる。そこから、フィールド上の自己位置を推定し、自動的に移動する仕組みだ。この位置推定は、NVIDIAのJetson搭載ボードを利用して行なっているそうだ。走行制御に関してもMATLAB/Simulinkを使ってシミュレーションを行ない、開発の効率を高めている。

モーターのログを可視化したもの

 今回、MaquinistaがNHK学生ロボコンで初優勝を飾り、ABUアジア・太平洋ロボットコンテストでもベスト4という好成績をおさめたのも、MATLAB/Simulinkを使いこなしたからであろう。

レーザーレンジファインダーを搭載しており、ディスクを乗せるスポットの位置や高さなどを検出する
こちらにもレーザーレンジファインダーが搭載されている
底面に搭載されている制御用マイコンボード
駆動用にはマクソンモーターが採用されている。車輪はメカナムホイールを採用しており、自由自在に移動できる
ディスクを押し上げる動力としてはエアシリンダが使われており、ペットボトルをエアボンベとして活用している
雅のコントローラ。中央に並んでいる黒いボタンは、それぞれフィールドに置かれた7つのスポットに対応している

MATLAB/Simulinkのツールボックスや可視化環境も活用

 今回取材させていただいた2人に、MATLAB/Simulinkで、とくに気に入っている機能やよく使う機能を尋ねてみた。

 「今年の大会ではやはりSimulinkをかなり活用させていただきました。それから、正しく使えているのかあまり自信はありませんが、システム同定とかパラメーター推定にも手を出しています」(徳田氏)。

モーターのパラメータ推定

 「可視化環境が高機能で使いやすいです。また、システム同定や信号処理のツールボックスが使えるのもありがたいです。最初から自分で実装するとどうしても理解が足りておらずミスが出ますし、のちに自分で実装し直すときには結果の比較検証ができるので助かっています」(野田氏)。

 2人ともプロのエンジニア業や研究者が使うツールであるMATLAB/Simulinkを存分に使いこなしているようだが、授業でも多少触るとはいえ、より高度な使い方をどうやって身につけたのかも気になるところだ。

 「自分は、ちょっと場当たり的に調べて、こういう機能があるのか、じゃあ使ってみよう、という感じで進めてきています」(野田氏)。

 「僕もそうですね。場当たり的に調べてみてできたという感じですが、ちょっとだけ欲を言えば、新しいツールボックスはだいたい英語のページしか説明がないので、日本語のページももう少しほしいですね」(徳田氏)。

 最後に、東工大ロボット技術研究会に興味がある人に向けて、メッセージをいただいた。

 「ロ技研(編注:東工大ロボット技術研究会の略称)は、自由な雰囲気でものづくりができるサークルです。ロボコンに興味があったり、のびのびと好きなものを作ってみたいという人は、ぜひロ技研に来ていただけたらなと思います」(徳田氏)。

 「ものつくり系サークルをいくつか見たなかで、一番自分に合っているのがここかなと思って、入りました。大規模なサークルですが、皆仲がよく、楽しいサークルです」(野田氏)。