2018.05.25

IoT時代に乗り遅れるな! ETロボコンへの挑戦(第0回)

プロローグ「なんで電通テックがロボコンに参加するの?」

松本 啓志

関西支社 統合プロモーションプロデュース室 デジタル・クリエーティブ部

2008年4月入社。上級ウェブ解析士。
イベント、SP、WEB、PRを経て、現在はデジタルを含むプロモーション全領域でのプランニング・プロデュース・制作ディレクションを担当。キャラクター開発などもしています。

「IoT」などの開発も積極的に進めている電通テックが、「組込みシステム」の知見を深めるべく、「ETロボコン」に挑戦するシリーズ企画。まずは第0回目として、なぜ電通テックがロボコンに参加するのか。その理由をメンバーの松本がご紹介したいと思います!

目次

ETロボコンは、電通テック関西支社発のハイテクへの新たなチャレンジです!

AI・IoTなど、テクノロジーの進化に伴い、電通テックの仕事も大きく変化しています。その内のひとつとしてIoTの開発なども積極的に進めており、いわゆる「組込みシステム」と呼ばれるプログラムの知識の習得が不可欠です。
そこで今回、関西支社の若手社員を中心に、技術教育を座学だけでなく、印象的な体験や実践を通じて習得することを目的に、「ETロボコン2018」への参加を決定しました。
参加メンバーは、プログラムに詳しい中堅社員をサポート的に加えた、若手メンバーで構成。これまでロボットやプログラミングに触れたことのないメンバーによる、関西発信の新しい挑戦です。

わからないことが多すぎるので、まずは説明会に参加

3月某日、株式会社富士通ラーニングメディア 関西ラーニングセンターにて、ETロボコンの説明会に参加しました。

ETロボコンには、デベロッパー部門アドバンストクラス(上級)とプライマリークラス(初級)があり、電通テック関西チームはプライマリークラスでエントリー。またこのほかに、ガレッジニア部門なる自由にロボットをつくれる部門もあるそうです。  ETロボコンは、いわゆる“ロボコン”のイメージである直接闘うスタイルではなく、コースを走るタイムなどを競う競技となっており、どのような動作にするかの設計書にあたるモデリングと、実際に動かすプログラミングの大きく2つの内容から審査されます。

全国的に見ると企業と学生の参加率は、ちょうど半々。関西では企業参加が多めとのことでしたが、当日は学生の方も多く見られました。

説明会では、走行デモもやっていました。小さなコースにプリントされた黒い線の上を、ロボットたちが走っている様子は、なんとなく可愛いものです。

走行デモを見ながら、すでに戦略やプログラムプランについて語る人たちもチラホラ。やはりETロボコンへ参加する人たちは、システム関係の学校や会社の人が多いようで、広告プロダクション的な人は見当たりません! 茶髪の僕は若干浮いているような気すらします。

さらに、壁に貼られた昨年大会で提出されたモデリング資料。こんなものが書けるのだろうか……と不安を煽るおびただしい情報量に圧倒されます。

過去大会チームの設計書がずらりと壁に貼り出されます

ここに掲出されているのは、アドバンストクラスばかり。我々が参加するのは、プライマリークラスなので、ひと安心と思っていたのですが、プライマリークラスのものがひとつだけ貼ってありました。

プライマリークラスのモデリング資料

おぉ、ちょっと少ないくらいで、全然変わらない……。しかも、これ、学生が書いているものなんですね……!これは負けられないです。

ロボットを動かす「設計書」、それがモデリング

後日、今回のプロジェクトのメンバーで集まり、ロボットを体験してみることに。プログラムやシステム業界に謎のつながりが多々ある頼れる先輩で、元プログラム会社出身の東リーダーのつてを辿り、ロボットを借りてきていただきました。見た目は子どもの頃に触った、初期のゲームボーイのようだ……。

競技には教育版レゴ®「マインドストーム®」を使用します
※実際競技に使われるものは走行デモのものですので、少しだけ仕様は違います

今回は、お試しということで、プログラムの打ち込みをしなくても、動作をインプットすれば動くアプリケーションを使用します。プログラムなしとはいえ、慣れないロボットに戸惑いを隠しきれないメンバー一同。

メンバーでロボットを触りながら作戦会議

このロボットには、3つのセンサーがついています。

まず、一番重要なセンサーが、機体の右前方についたセンサーで、これが明るさを判断します。なぜ重要かというと、ETロボコンでは、床に書かれた黒い線に沿ってロボットを動かすのですが、このセンサーがその黒い線を認識するためのものだからです。センサーでは、色しか判断できないため、黒い線の値と、線以外の明るさをチェックして、プログラムに落とし込んでいきます。 つまりこのセンサーでは、「いまロボットが、黒いものの上にいるのか、そうでないのか」(厳密には明るさの数値)を判断することしかできません

地面の色を認識して判定します

2つ目のセンサーはジャイロセンサーです。機体の後方についていて、角度を判別しています。45度回転する、などのオペレーションで使われるものです。

機体の傾度や角度を計測します

基本的には、この2つのセンサーを使って、いかに速く、いかにスムーズにコースを走れるかを競うわけです。

ロボットの先方にも、飛び出したセンサーがあります。これはボタンセンサーで、壁などの障害物に当たると、凹んで知らせてくれます。当たっていないときは「0」で当たったら「1」になる、という感じです。コースの中で、このセンサーがどういった役割を果たすのか、まだ正直わかりません(笑)。

物体に当たったかどうかを判定します

これら3つのセンサーを頼りに、さまざまなプログラムを組んで、ロボットを走らせます。ロボット掃除機と同じようなものと考えるとわかりやすいかもしれませんね。

ロボットのベースがわかったところで、次にどんなオペレーションをすれば、このロボットが動くのか、というのを考えなくてはいけません。

例えば、ロボットが机から落ちないようにするためにはどうすればよいのか。 仮に机の色を明るさセンサーで確認して、これより色が変わった時点で、必ずバックするというプログラムを組んだとしても、センサーは右前方にしかついていませんので、机の端っこで、ロボットが左前方から斜めに落ちてしまう、ということが起こりえます。

では、これを回避するためにはどうすればよいか……。とさまざまなシチュエーションを想定して、オペレーションを考えていくのが、モデリングという作業になります。動作の計画図みたいなものですね。それを実際にプログラムに落とし込むべく、コーディングしていくのが、プログラミングということになります。

モデリングはロボットの企画書?

私たちの普段の業務で例えると、企画書作成(設計)がモデリングで、実施計画書(実施)がプログラミングという感じでしょうか。この例え同様、モデリングと、実際のプログラミングは乖離が出てくるそうなので、あくまでモデリングはワークプランでしかないというわけです。
ETロボコンでは、このモデリングと、実際の走行内容(プログラミング)の二つの視点から、審査されます。

さらにETロボコンでは、使用するプログラミング言語は決まっていないそうなんです。そのため、どの言語を使うのか、というのも勝敗を分ける要因になります。「どの言語を使うべきか」を、「どう判断すべきか」まったくわからない……。これから勉強が必要そうです。

いよいよ、次回からロボコンへの挑戦がスタート!

今回説明会に参加して、ロボットに少し触れただけでも、機械の制御がいかに論理的な思考のもとに成り立っているのかを身をもって実感できました。ETロボコンではその基礎の基礎の知見を、体験しながら学んでいけそうです。

今回はプロローグということで、ロボットとのファーストコンタクトの模様をお届けしました。まだまだ課題は山積みですが……夏の試走会や、9月の地区大会など、挑戦の過程を紹介しつつ、ロボットとはなんぞや、モデリングってなに?という方々にも、わかりやすく説明していければと思います。 さて、次回の記事では、そもそもETロボコンとは何なのか、実行委員の方々にインタビューします。お楽しみに!

電通テック 関西支社「ETロボコン」参加メンバー

東 秀和

統合プロモーションプロデュース室 ビジネスディベロップメント部

「前職から出場したかった念願のETロボコンに、気の合う仲間と出場でき、大変張り切っております。初挑戦で初全国大会を目指し、頑張っていきたいと思います!」

辻 将志

統合プロモーションプロデュース室 ビジネスディベロップメント部

ETロボコンでは、モデリングを担当します。UML(統一モデリング言語)は初挑戦ですがオブジェクト指向で頑張ります!!」

松本 啓志

関西支社 統合プロモーションプロデュース室 デジタル・クリエーティブ部

「茶髪に長髪というロボコンと親和性のない見た目ですが、モデリング・プログラムという新領域へのチャレンジ、頑張ります! BAEでのレポート記事も担当」

竹本 祥平

統合プロモーションプロデュース室 パフォーマンス&エンゲージメント部

「社内をふらついていたらメンバー入りしました。ロボットはフラフラさせずにしっかりと走らせたいと思います!」

中田 大貴

統合プロモーションプロデュース室 プランニング&プロデュース部

「プログラミングって何?コードって何?というところからの初挑戦ですが、優勝目指して頑張ります!」

Written by:
松本 啓志