はじめに
こんにちは。大阪国際工科専門職大学 ロボット開発コース 4 年の松上愉です。卒業研究では、LLM とロボットを組み合わせたテーマに取り組む予定です。趣味は野球観戦と PC ゲームです。
これまでは RoboCup などで家庭用ロボットを扱うことが多かったのですが、今回の臨地実務実習では、産業用ロボットを使った展示デモの開発に取り組みました。
将来メーカーの技術職として働くことを考えると、産業用ロボットを実機で扱える今回の環境は貴重だと感じました。一方、大学では産業用ロボットの実機を継続して扱える機会は多くありません。スリーアップ・テクノロジーさんで実際の産業用ロボットを使って開発できることを活かし、積極的に取り組みました。
今回のテーマ:展示会で「実際に使える」ロボットデモ
今回担当したのは、スリーアップ・テクノロジーさんが出展予定の展示会に向けたロボットデモシステムです。SAM3 による物体認識から、ロボットの動作、来場者が見る展示画面までを担当しました。
目標は、研究用のプロトタイプとして「動く」だけではなく、来場者が実際に話しかけ、その場で結果を見て、迷わず操作できる展示品質まで仕上げることです。7 週間の実習では、まず一連の動作をつなぎ、その後ハンドやデジタルツインなどを広げ、最後は処理速度・実搬送・展示 UI の改善に集中しました。
「学習レス AI VISION」とは?
今回のデモの中心は、Meta 社の物体認識 AI「SAM3」を使った学習レスの認識です。
従来の物体認識では、新しい対象物を追加するたびに、画像を集め、アノテーションを作り、モデルを学習し直す必要がありました。今回の SAM3 では、認識したい物の名前を言葉で指定すると、その場で対象物の位置と輪郭を見つけられます。
SAM3 は大規模な画像データで事前学習されたモデルです。ここでいう「学習レス」は、AI 自体が未学習という意味ではなく、新しい対象物ごとに追加の画像収集・アノテーション・再学習をしなくてよいという意味です。展示対象を追加・変更したい場合にも対応しやすいことが大きな特徴です。
言葉からロボットが動くまで
来場者が話しかけると、まず Whisper が音声を文字にします。次に LLM の Qwen が「何をするか」「何を対象にするか」「どこへ運ぶか」を読み取り、SAM3 が指定された物の位置と輪郭を検出します。
その後、作業範囲や物体寸法などを決まったルールで確認し、画面に認識結果を表示します。人が緑のボタンで確認して初めて、カメラ座標をロボット座標へ変換し、DENSO VP-6242 とハンドが動きます。
対応している動作は「認識」「把持」「指差し」「搬送」の 4 種類です。「運んで」「入れて」「持っていって」のように言い方が違っても、Qwen が意図を読み取って同じ動作につなげます。逆に、対象や動作が分からない場合は勝手に動かさず、言い直しをお願いする設計にしました。
実際に動かしてみた
黄色のボタンを押しながら「緑のコネクタを金属トレイに運んで」と話すと、Qwen が搬送の意図と対象物・搬送先を読み取り、SAM3 がコネクタとトレイを検出します。認識結果を人が確認して緑のボタンを押すと、ロボットがコネクタを掴み、金属トレイまで運びます。
続けて「サッカーボールをプラスチックコンテナに運んで」と指示しても、対象物ごとの追加学習を行わず、同じ流れで認識・搬送できます。ここが「学習レス」を一番分かりやすく見せられるポイントです。
展示だから「速さ」と「分かりやすさ」にこだわった
約 9.5 秒 → 0.48 秒まで高速化
展示では、来場者を待たせる時間も体験の一部になります。三上さんから「話し終えて 1 秒以内に反応すれば展示として素晴らしい」と教えていただき、処理時間の短縮に取り組みました。
発話終了から認識結果が表示されるまでの AI 処理時間を、8 月 18 日の約 9.5 秒から、9 月 15 日には 0.48 秒まで短縮できました。最終確認では 51 回すべて 1 秒未満でした。
※人による確認操作と、その後のロボット動作時間は含みません。
特に大きくハマったのが、開発初期に試行のたびに SAM3 を読み込み直していたことです。検出だけで 7 秒以上かかっていたため、SAM3・Whisper・Qwen をあらかじめ起動して常駐させる構成へ変更しました。さらに、案内音声の事前生成や不要な進捗読み上げの削減、必要な対象だけを検出するフローへの変更を行い、待ち時間を詰めていきました。
「動けば完成」ではなく、人に見てもらえる展示へ
もう 1 つこだわったのが展示画面です。三上さんから、展示会では「待たせると見てもらえない」「通りかかった瞬間に何をしている展示か分かること」「展示の売りが伝わっていること」が重要だと教えていただきました。
今回の売りは、「対象物ごとの追加学習なしで認識できること」と「AI を使っていても素早く反応すること」です。そのため、画面には必要な情報だけを出し、待機中は余計な文字を見せず、操作も 3 色のボタンだけにしました。
私はこれまで展示会を見に行った経験はありましたが、展示する側の視点でこうした点を意識したことはありませんでした。「動くシステムを作ること」と「人に見てもらえる展示を作ること」は違うというのは、今回の実習で特に大きな学びでした。
AI を使った開発
開発では、AI を役割ごとに使い分けました。
- ChatGPT:設計相談、デバッグの壁打ち、展示画面のデザイン案
- Claude Code:展示画面や AI 常駐化などの実装
- Codex:サブエージェントとしての作業や、3D モデルの Web 表示、発表資料制作など
三上さんが実際の業務で AI をどう使っているのかも数多く教えていただきました。AI に何をどこまで伝えるか、プロンプトで前提や制約をどう整理するか、出力をそのまま信用せず何を確認するか、といった実践的な使い方を深く学ぶことができました。
一方で、何を作るかを決めること、実機で試して結果を判断すること、座標合わせやハンドの校正、安全性を確認することは人間側の仕事です。AI に任せる部分と、人が責任を持って確認する部分を分けながら開発することの重要性も学びました。
そのほかに取り組んだこと
FinRay ハンドの取付アダプター
さまざまな形の物を掴みやすくするため、ロボットの爪を FinRay 型のソフトハンドへ交換しました。既存の IAI 製グリッパに取り付けるアダプターを TinkerCAD で設計し、3D プリントしています。
デジタルツイン
実機と同じ関節角度で動く 3D モデルを Web ブラウザに表示するデジタルツインも作りました。Fusion 360 の 3D モデルを Three.js で表示し、実機の関節角を 1 秒に 5 回読み取って同期しています。
ソースコード
今回開発した「SAM3 Learningless AI Vision」は、公開用に整理したソースコードを GitHub で公開しています。
GitHub:SAM3 Learningless AI Vision
まとめ・実習を終えて
7 週間の実習を通して、SAM3 による対象物ごとの追加学習なしの認識を、LLM による自然言語の理解から産業用ロボットの実動作までつなぎ、処理速度や展示画面まで改善できたことが、今回の大きな成果です。
実機を動かすところから、展示としての品質を高め、最後に成果を人へ伝えるところまでやり切ることができました。特に、品質と時間の両方を意識した AI 開発の進め方を三上さんから学び、自分自身の実装力も底上げされたと実感しています。
単に機能を作るだけでなく、「実際に使う人にどう見えるか」「限られた時間の中でどこまで品質を上げるか」まで考えられたことは、大きな経験になりました。今後は、今回身につけたロボット開発と AI 活用の経験を、社会人としての仕事にも活かしていきたいと思います。
7 週間にわたりご指導いただいた三上さんをはじめ、スリーアップ・テクノロジーの皆さま、本当にありがとうございました。