NTTドコモR&Dの技術ブログです。

ArduinoとみちびきのCLASを使って狼型ロボットを動かしてみた 〜通信不要・基準局不要でセンチメートル級測位は実現できるか?〜

はじめに

 ドコモ・テクノロジ*1サービスインテグレーション事業部の松村です。NTTドコモ クロステック開発部の画像認識チームの中で、画像認識技術とロボティクスを活用した社会課題の解決を目指しています。 今回、私たちは獣害という社会課題に対し、ロボティクスを活用した解決を目指して開発・実験を行いました。 広大な農地や山間部でロボットを自律走行させる際、最大の課題となるのが「正確な位置情報の取得」です。 今回は、QZSS(準天頂衛星)みちびきのCLAS(Centimeter Level Augmentation Service)を活用し、Arduinoベースの安価な構成で、狼型ロボットを自律走行させてみた結果をご紹介します。

システム全体像

今回のシステム構成は以下の通りです。シンプルさを重視し、汎用的な部材を組み合わせました。

• 制御: Arduino Mega(メインコントローラ)

• 測位: ublox ZED-F9P + ublox NEO-D9C(高精度GNSS受信機+CLAS (PPP-RTK)受信機)

• 足回り: 電動台車(スズキ社製 MITRA)

図. システム構成

「ウルフムーバー」について

今回開発した機体は「ウルフムーバー」と名付けられました。野生動物対策として実績のある株式会社ウルフカムイ様*2の「モンスターウルフ」を、スズキ様*3の電動台車 MITRAに搭載することで「動く・吠える・光る」の三拍子が揃った、新たな獣害対策ロボットのプロトタイプです。

図. 実証実験中のウルフムーバー

なお、本ロボットは2025年11月17日より開催された「NTT R&D Forum 2025」にも展示しました。

図. NTT R&D Forum 2025展示の様子

高精度GNSS/CLAS (PPP-RTK) とは

自律走行には高精度な位置情報が不可欠です。今回の実験地は障害物のほぼ無い坂(スキー場)で、センチメートル精度が出なくても問題ない状況ではあったのですが、今回は精度テストを兼ねてCLAS受信機を採用しました。

従来のRTKとの違い

通常、センチメートル級の精度を出すRTK(Real Time Kinematic)は、近くに基準局を設置するか、インターネット経由で補正データを受け取る「ネットワークRTK (N-RTK)」が主流です。 しかし、RTKは基準局設置のコストや手間、N-RTKは通信を使うため通信エリアの制約があります。

CLAS (PPP-RTK) のメリット

対してCLASは、準天頂衛星「みちびき」から配信される補正信号(L6信号)を直接受信します。 従来のRTKと比較すると、受信機単体のコストはかかりますが、高額な基準局の設置コストはかかりません。またN-RTKとの比較では、携帯電話網の通信モジュールが不要なため消費電力が低く、携帯圏外エリアでも使えるという利点があります。 移動型ロボットにおいて、稼働時間に直結する「省電力性」は極めて重要な要素です。加えて、モジュールやアンテナが小型で設置場所を選ばず、単独受信機(Stand-alone)でありながら高精度という特性は、私たちの用途に最適でした。

Arduinoによる構成

制御部には、電子工作でおなじみのArduino Megaを選定しました。複雑なOSを持たないマイコンならではの、起動の速さと省電力性は、バッテリー駆動の野外ロボットにとって大きな武器になります。 測位システムには、CLAS受信機 (u-blox NEO-D9C) を接続した高精度GNSSモジュール (u-blox ZED-F9P) を使用しています。 ArduinoとはUART(シリアル通信)で接続し、モジュールから出力されるNMEAデータをパースすることで、位置情報や測位ステータス(FIX/Float/Stand-alone GNSS/D-GNSS)をリアルタイムに取得する仕組みです。 なお、今回使用したジオセンスさんのモジュールは、PCとならUSB接続、マイコンとならUART接続と柔軟に使い分けができるため、開発時のデバッグから実機への組み込みまで非常に使い勝手が良く、重宝しました。

図. GNSS+CLAS受信モジュール(F9P+D9C)
走行結果

実際に屋外(オープンスカイ環境)で走行させた結果をプロットしました。 事前に設定した5点のwaypoint座標を周回できたデータを抽出し、16周分のデータを並べています。

測位精度ごとの分布は以下の通りです。

  1. FIX (RTK Fixed) : 最高精度(cm級)[緑色]
  2. Float (RTK Float) : 収束中(数十cm〜m級)[オレンジ色]
  3. D-GNSS (Differential) : 補正あり(サブメートル級)[青色]
  4. Autonomous (Single) : 単独測位 補正なし(数m級)[赤色]
  5. Unknown (*) : 測位ステータス不明 [灰色]

CLASの補正情報を使って高精度測位ができた状態が FIX(緑色)/Float(オレンジ色) になります。残念ながら今回の周回走行ログにおいては、FIX / Float といった高精度な測位データは限定的でした。 全体として、有効な測位データの中では GNSS単独測位(赤色) と D-GNSS測位(青色) が支配的な結果となっています。

走行結果:GNSS単独 vs CLAS

16周分全てを重ねたプロットデータがこちらです。

16周分のデータを重ね合わせることで、測位方式ごとの挙動の違いが明確になりました。

CLAS (FIX/Float): 緑やオレンジの点は一直線に並んでおり、非常に安定した走行ができています。システムが迷いなくウェイポイントを目指せていることがわかります。

単独測位 (Autonomous): 赤色の点は軌跡が太く広がっており、常に位置が揺らいでいる状態です。背景のグリッド(1マス≒20m)と比較すると、左右に数メートル幅でふらつきながら走行していることが視覚的に確認できます。

D-GNSS: 青色の点は意外な健闘を見せました。単独測位のような不安定さはなく、CLASに近いルートをトレースできています。環境によってはD-GNSSでも十分な実用性がある可能性を示唆しています。

まとめ

 本実験を通じ、モバイル通信も基準局も使わずに、衛星からの信号だけでセンチメートル級の精度を出す「CLAS」のポテンシャルは実証できました。しかし、ロボットが動き回る実環境下において、その高精度を「常に維持し続けること」の難しさも同時に浮き彫りとなりました。

  1. センチメートル級測位(FIX解)の実力 データ解析の結果、CLASによる補正が有効に機能し「FIX(RTK Fixed)」となった区間(緑色プロット)では、非常に高い精度を確認できました。 この状態でのロボットの挙動は、ウェイポイント間を迷いなく滑らかに直進しており、「通信不要でこの精度が出せる」というCLASの技術的優位性を十分に証明するものでした。

  2. 実運用上の課題:FIX率の低さ 一方で、全16周の走行データ全体を見ると、FIX/Float解が得られた時間は限定的でした。 多くの時間帯で、ロボットは D-GNSS(サブメートル級) や 単独測位(数メートル級) で走行していました。これは、ロボットのアンテナ設置位置や姿勢変化、あるいは周囲の遮蔽物により、CLAS信号(L6信号)の受信が断続的になったためと推測されます。 「理論上の精度」と「現場で出し続けられる精度」のギャップが、今後のチューニング課題です。特にアンテナ設置位置については、低い場所に取り付けており、ウルフ本体の影になってしまう状況も多かったと考えられます。

  3. 意外な発見:D-GNSSのロバスト性(堅牢性) CLASが受信できない間のバックアップとして機能した D-GNSS(青色プロット) が、予想以上の健闘を見せました。 単独測位(赤色)が数メートル規模で大きくふらつく(蛇行する)のに対し、D-GNSSはCLASの理想ルートに近い軌跡を描いていました。 「CLASがダメでもD-GNSSがある」 という多層的な測位構成が、自律移動ロボットの信頼性を担保する上で極めて重要であることが実証されました。

おわりに

今回は、ウルフムーバーの自律走行を支えるGNSS/CLAS部分にフォーカスして解説しました。 安価に高精度な測位が可能なCLASの有用性が、少しでも伝われば幸いです。

今回は割愛しましたが、電動台車MITRAのCAN制御や、省電力動作のための電源制御回路など、見えない部分にも多くの工夫を凝らして開発しています。 今後は、課題であるバッテリー運用の改善やさらなる高機能化を進め、本ロボットの有効性を高めることで、獣害という社会課題の解決に貢献していきます。

*1:ドコモ・テクノロジ株式会社は株式会社 NTT ドコモの機能分担会社で、ドコモグループの研究開発を支えている企業です。 https://www.docomo-tech.co.jp/

*2:株式会社ウルフカムイ様 https://www.wolfkamuy.com/

*3:スズキ株式会社様 https://www.suzuki.co.jp/