記事を検索

toragijr.cqpub.co.jp

トラ技Jr.

【開催報告】「TI社の若手エンジニアと交流しながら学ぶ! ロボット・システム開発ワークショップ」

【開催報告】「TI社の若手エンジニアと交流しながら学ぶ! ロボット・システム開発ワークショップ」

 2022年12月18日(日),品川シーズンテラスカンファレンス(東京都港区)にて,「TI社の若手エンジニアと交流しながら学ぶ! ロボット・システム開発ワークショップ」を開催しました.日本テキサス・インスツルメンツ(TI)が主催し,本誌編集部が協力しました.

ワークショップ会場

 

 このワークショップは,テキサス・インスツルメンツの代表的マイコン「MSP432」をはじめ,電源,ロジック,タイマ,センサ,モータ・ドライバなどのさまざまなICについて,日本テキサス・インスツルメンツの現役若手エンジニアが直々に解説を行い,自分で使いこなせるようになることを目的としています.トラ技ジュニアを購読いただいている学生と先生を対象とし,北海道から長崎県まで,日本全国から23名の応募がありました.

ロボット・システム学習キット「TI-RSLK MAX」

ロボット・システム学習キット「TI-RSLK MAX」紹介動画

 

 午前前半の講義では,最初にテキサス・インスツルメンツという会社についての説明がありました.半導体業界の中で,集積回路製品を扱う会社であること,産業機器や車載機器などの分野に向けてアナログ,ディジタルを含めて8万種類を超える製品をもつこと,それらの多くを自社工場で生産していることなどが紹介されました.
 また,今回の講師陣の職種,FAE(Field Application Engineer)の仕事内容についての説明がありました.参加者の学生からは,一般的な営業職との違いや,幅広い種類の製品知識とそれらを使いこなすための技術をどのようにして身に付けたのかという質問があり,講師陣自らの経験が語られました.

講義のようす…FAEの1日

 

 午前後半は,実習に向けた準備です.ロボットの組み立てと,開発環境の動作確認を行います.講師からは,成功させるには「机の上のきれいにすること」というアドバイスがありました.
 教材として使用するロボット・システム学習キット「TI-RSLK MAX」を開封したところで,いきなり,参加者に対してクイズが出題されました.
 「TI-RSLKにテキサス・インスツルメンツ製品は何個使われているでしょうか?」
 キットは手元にあります.ボードを見て,数えることができます.「これもそうかなぁ?」と参加者同士が相談する声が聞こえてきます.参加者たちの予想は10~100個以上!とさまざまでした.
 その後,ロボットで使われているボードの機能が説明され,キットで使われているテキサス・インスツルメンツ製部品が15個であることが明かされました.100個以上と思ってしまったのは,基板上にある抵抗器やコンデンサをICと見間違えてしまったためのようです.講義で,幅広い製品があるという説明があったことに影響を受けてか,多めに見積もってしまう傾向もみられました.

キットの機能説明…実機を見ながら講師がサポート

 

 キットの組み立ては,ビデオ映像を見ながら行われました.ロボットの形にするためには多くの部品を取り付ける必要がありますが,迷うことなく進められたようです.
 また,組み立て状況は逐次,講師が確認してくれるので安心です.ボードを扱ったことがないと,例えばコネクタの接続が恐る恐るになって甘くなりがちです.そのようなときには,奥までしっかり差し込むようにとのアドバイスがありました.

ビデオを見ながらキットの組み立て…講師がサポート

 

 ソフトウェア開発環境は,参加者は皆,事前インストール済みです.実機につないで使用するための,いくつかの準備だけを行えば,ハードウェア動作確認ができます.

GUIベースで動作確認

 

 午後からの,実習は3ステップで進められました.

・ステップ1…入出力の操作
・ステップ2…モータの動作
・ステップ3…ライン・トレース

 いずれも,サンプルのCプログラムはあらかじめ用意されており,それを動作させ,パラメータを変更してみるという流れで進めていきます.限られた時間で,ロボットを動作させるうえでは,とてもわかりやすい方法だと思います.

 ステップ1は,いわゆる「Lチカ」です.GPIOの使い方を理解することを目的として,スイッチの入力に応じて,LEDを光らせます.2個のユーザLEDのうち1個がフルカラー品のため,色を変更するという課題が出されました.また入力で使用するスイッチを変更するという課題もありました.

ステップ1…入出力の操作

 

 ステップ2は,モータの制御です.スイッチを押すごとに前進,後退,左折,右折するように回転させます.モータの回転速度(PWMのデューティ)の変更と,障害物に当たったとき(スイッチが押されたとき)に停止するという課題がありました.

ステップ2…モータの動作

 

 ステップ3は,このワークショップのテーマでもあるロボット開発の体験です.ステップ1,ステップ2と比べるとプログラムは複雑になりますが,ソースコード中には,左折・右折・前進・後退時のモータの回転速度(デューティ)の設定箇所にコメントが付けられていました.このパラメータの調整だけでも動作が全く変わります.
 ここではあらかじめ用意された2種類のコースを完走する時間を短縮する課題が出されました.1台のキットを使用する2人がチームを組み,2種類のコースの完走時間の合計が短いチームが優勝です.
 与えられた時間は15分です.サンプル・プログラムのアルゴリズムから見直すには時間が短すぎます.試走して,パラメータを調整することの繰り返しになります.GUIの開発ツールにより,ソースコードの修正,ビルド,プログラムの書き込みという一連の作業を短時間に行えることもあり,5回以上試走させることができていたようです.
 どのチームも最初は前進時のモータの回転速度を上げていました…当然,すぐにコース・アウトしてしまいますが,それは想定内です.このときの動作を見て,どのくらい速度を上げられるのかイメージします.そして直進をやや速めにする代わりに,左折・右折をやや遅めにするというような調整を行ったようです.S字箇所でコース・アウトしてしまった後に,「左折と右折の間に前進の動作が入っているのかなぁ」といった分析をしているチームもありました.


ステップ3…ライン・トレース

いきなりコース・アウト…ラインを外れるとその場で回転する

 

 1回目の走行は,コース・アウトするチームが続出してしまいました.このため,最終調整のための猶予が与えられました.しかし,2回目の走行もコース・アウト続出で,2コースとも完走できたチームはありませんでした.

タイム・トライアル…スタート

タイム・トライアル…もうすぐゴール!

 

ライン・トレースに奮闘中の動画はこちら

 

タイム・トライアル結果

チーム Sコース Lコース 合計
1-1 38.33 Out
1-2 21.30 Out
2-1 Out 29.66
2-2 23.30 Out
3-1 Out Out
3-2 28.05 Out
4-1 Out Out
4-2 30.40 Out

 

 タイム・トライアルは,今回イベントの中で最も盛り上がった時間でした.ロボット制御の難しさと楽しさの両方を感じられたのではないかと思います.
 ちなみに講師によれば,サンプル・プログラムのパラメータは,相当な回数の試走の元に決めた“最適値”だったそうです.完走時間を短縮するためには,アルゴリズムからの見直しが必要で,今回のイベントでは現実的ではなかったというオチでした.

 

ワークショップ参加のみなさま

 

 ロボットでは,電子回路,制御ソフトウェア,機械・機構といった技術が求められます.すべてになじみのある人はなかなかいません.今回のワークショップは,キットを教材にした実習だったため,「専門外であっても体験できた」,「幅広い知識が得られた」と好評でした.
 とくにライン・トレースのタイム・トライアルは,「トライアンドエラーが楽しかった」,「自分の設定で完走できてうれしかった」のように多くの参加者の印象に残ったようです.そのため,「もっと時間をかけてやりたかった」という声もありました.
 また「エンジニアの方と話ができたのがよい体験だった」,「講師のサポートがうれしかった」と,本ワークショップの特徴である若手エンジニアと交流が魅力的だったという人もいました.ワークショップにもかかわらず「昼休み(エンジニアとの交流)の時間がもっとほしかった」という意見があり,ワークショップの終了後には,さらなる交流が続けられていました.

 

ワークショップ終了後の交流