趣味TECHオンライン | 趣味のモノづくりを応援するオンラインメディア

趣味のモノづくりを応援するオンラインメディア

VRヘッドセットで動かせるロボットを作ってみた


f:id:tokyo_ff:20190826222815j:plain

VRヘッドセット、Oculus Goと連動するロボットを作りました。頭部カメラの映像を見ることはもちろん、操縦者の動きに合わせて首が動くので周囲を見渡すこともできます。

 

〈投稿者:スプライタ@Spri_ta

twitter.com

 

 

制作動機

f:id:tokyo_ff:20190826223120j:plain
もともと、ROBO-ONEという二足歩行ロボットによる格闘技大会に出場するためのロボットを作っていました。1~2年前にVRが話題になり始めたとき、ロボットに応用すればテレイグジスタンスみたいなことが出来るのではないかと思い、制作にとりかかりました。

ROBO‐ONEのための二足歩行ロボット製作ガイド (RoboBooks)

ROBO‐ONEのための二足歩行ロボット製作ガイド (RoboBooks)

 
ROBO-ONEにチャレンジ! 二足歩行ロボット自作ガイド

ROBO-ONEにチャレンジ! 二足歩行ロボット自作ガイド

 
ROBO-ONEで進化する二足歩行ロボットの造り方

ROBO-ONEで進化する二足歩行ロボットの造り方

 

最初はHTC Viveを使っていましたが、大会会場にVive一式(ヘッドセット、コントローラ×2、外部センサ、センサ設置用三脚、ゲーミングPC、ケーブル多数)を持っていくのは一苦労、というわけでヘッドセット単体で機能するOculus Goに移行して今の形になりました。

 

メカ設計

f:id:tokyo_ff:20190826223201j:plain
メカの設計にはFusion360を使いました。Fusion360は個人利用であれば無料で使用できる3DCADです。ジョイントを設定することで3Dモデルをぐりぐり動かすこともできるので、イメージ通りの動きができるチェックできて大変便利です。

Fusion 360 マスターズガイド ベーシック編

Fusion 360 マスターズガイド ベーシック編

 

f:id:tokyo_ff:20190826223224j:plain

設計できたら3Dプリンタで出力します。私はQIDI TECHのプリンタを使っています。Amazonで購入できる低価格帯のプリンタですが、趣味でロボットを作れるくらいのそこそこの精度は出ます。

 

回路設計

f:id:tokyo_ff:20190826223545j:plain

ロボットのサーボモータを動かすため、Raspberry Piに取り付ける専用基板を作りました。市販のサーボHATを使おうかとも考えたのですが、ジャイロセンサや冷却ファンやスピーカーなど載せたいものがたくさん出てきたので、結局自作することになりました。

 

ソフト

f:id:tokyo_ff:20190826223641j:plain

全身のサーボモータを制御するソフトウェアを作成しました。コマ送りの要領で角度を再生することで、歩行や起き上がりといった動作ができます。なお、サーボの制御以外の機能(カメラの画像取得、Oculus Goとのデータのやり取り、ゲームパッドの入力など)には、ROS(Robot Operating System)を利用しています。


一方、Oculus GoのアプリはUnityで作りました。メーカーがUnityで開発できるSDKを提供してくれているので、それなりに簡単にVRアプリを作ることができます。

作って学べる Unity 超入門

作って学べる Unity 超入門

 
現場ですぐに覚える! Unity2019逆引き大全 319の極意

現場ですぐに覚える! Unity2019逆引き大全 319の極意

 

 

最後に

動かしてみると、自分がロボットになったかのような感覚になるので楽しいです。ただ、意外と視界が狭い上に多少のタイムラグがあるので、当初の目的であったロボットの格闘技大会で有効かどうかは怪しいです。そのあたりはしょうがないので、大会での強さはさておきロマン性能を活かす方向で頑張っていきたいと思います。

 

〈投稿者:スプライタ@Spri_ta

twitter.com