VRヘッドセット、Oculus Goと連動するロボットを作りました。頭部カメラの映像を見ることはもちろん、操縦者の動きに合わせて首が動くので周囲を見渡すこともできます。
〈投稿者:スプライタ@Spri_ta〉
プロト2号も好調です pic.twitter.com/iOzQM4zmkb
— スプライタ@サクさんと梢さんの人 (@Spri_ta) July 14, 2019
制作動機
もともと、ROBO-ONEという二足歩行ロボットによる格闘技大会に出場するためのロボットを作っていました。1~2年前にVRが話題になり始めたとき、ロボットに応用すればテレイグジスタンスみたいなことが出来るのではないかと思い、制作にとりかかりました。

ROBO‐ONEのための二足歩行ロボット製作ガイド (RoboBooks)
- 作者: ROBO‐ONE委員会
- 出版社/メーカー: オーム社
- 発売日: 2004/05/01
- メディア: 単行本
- 購入: 2人 クリック: 19回
- この商品を含むブログ (3件) を見る
最初はHTC Viveを使っていましたが、大会会場にVive一式(ヘッドセット、コントローラ×2、外部センサ、センサ設置用三脚、ゲーミングPC、ケーブル多数)を持っていくのは一苦労、というわけでヘッドセット単体で機能するOculus Goに移行して今の形になりました。
メカ設計
メカの設計にはFusion360を使いました。Fusion360は個人利用であれば無料で使用できる3DCADです。ジョイントを設定することで3Dモデルをぐりぐり動かすこともできるので、イメージ通りの動きができるチェックできて大変便利です。
設計できたら3Dプリンタで出力します。私はQIDI TECHのプリンタを使っています。Amazonで購入できる低価格帯のプリンタですが、趣味でロボットを作れるくらいのそこそこの精度は出ます。
回路設計
ロボットのサーボモータを動かすため、Raspberry Piに取り付ける専用基板を作りました。市販のサーボHATを使おうかとも考えたのですが、ジャイロセンサや冷却ファンやスピーカーなど載せたいものがたくさん出てきたので、結局自作することになりました。
ソフト
全身のサーボモータを制御するソフトウェアを作成しました。コマ送りの要領で角度を再生することで、歩行や起き上がりといった動作ができます。なお、サーボの制御以外の機能(カメラの画像取得、Oculus Goとのデータのやり取り、ゲームパッドの入力など)には、ROS(Robot Operating System)を利用しています。
一方、Oculus GoのアプリはUnityで作りました。メーカーがUnityで開発できるSDKを提供してくれているので、それなりに簡単にVRアプリを作ることができます。
最後に
動かしてみると、自分がロボットになったかのような感覚になるので楽しいです。ただ、意外と視界が狭い上に多少のタイムラグがあるので、当初の目的であったロボットの格闘技大会で有効かどうかは怪しいです。そのあたりはしょうがないので、大会での強さはさておきロマン性能を活かす方向で頑張っていきたいと思います。
なんとかOculusQuestでロボットの操作できるようになってきた pic.twitter.com/zgBr2xzF3D
— スプライタ@サクさんと梢さんの人 (@Spri_ta) August 10, 2019
〈投稿者:スプライタ@Spri_ta〉