ちょっと未来

ちょっと未来を感じさせるガジェットやアプリ、そして作ったものについて書きます

Oculus Riftでメーヴェを作ろう(11)機体の手摺りを作ろう!苦悩の末...

そろそろメーヴェ機体を作り始めます。
まずは手摺りをどうするか?です。

f:id:wasan:20141011185101p:plain

あれやこれや苦悩の末、こんな感じになりました。

f:id:wasan:20141011185519p:plain

以下、その苦悩の遍歴です(笑)

鉄パイプを外注

そこそこ力がかかるので、ある程度の強度が必要です。
鉄パイプなら安心だろ!てことで業者に見積を出してみました。

f:id:wasan:20141011185812p:plain

こんな感じの図面で見積依頼してみました。手書き(笑)でOKみたいです。

...しかし、見積りの結果、費用が思ったより高かった。
左右の2本合わせると3〜4万円!んー、ちょっと躊躇する。

そこで別の方法を考えることにしました。

塩ビパイプを組み合わせる

市販の塩ビパイプとジョイント部品を使って何とかできないかと考えました。

...で、出来たのがコレ。

f:id:wasan:20141011202514p:plain

んー、なんかイマイチ!
配管っぽさ満点すぎる(笑)

なのでコレもやってみたけどボツ。材料無駄になっちゃったな。

塩ビパイプを曲げる

色々調べると、塩ビパイプは熱で割りと簡単に曲げ加工が出来るようです。
塩ビ管の加工

早速トライ!

キャンプ用のバーナーで熱します。
熱湯でも一応出来ましたが、手間がかかるのでバーナーを使いました。

f:id:wasan:20141011202920p:plain

結構難しいです。一つ目はちょっと不格好になりました。2つ目はちょっと慣れてそこそこ綺麗に出来ました。

コツは引っ張りながら曲げること、ちょっとずつ根気よく曲げること、のようです。

完成品はこんな感じ。

f:id:wasan:20141011203124p:plain

それを土台に差し込むと、、、
お!なんかメーヴェっぽいですよ!
右側がはじめに作った方。ちょっとデコボコしててイマイチですね...
f:id:wasan:20141011185519p:plain

パイプのカットとか、木版の穴あけはホームセンターの工作室でやってもらいました。
1箇所あたり100円で穴あけ、カットしてくれるので助かります。
ファブラボとか行かなくてOKですね(笑)

ルンバを自作するのに必要な部品アレコレ集

f:id:wasan:20140404063136j:plain

以前に作った自作ルンバの反響が結構あります。

「 製作のために買った部品は? 」
という質問を頂いたので、主なものをリストアップしてみました。

全部、千石通商でネット購入できます♪
実際には他にも細々とした部品を使ってますが、そのへんは作りながら空気感で揃えてもらえればと ^^;

電子回路

arduino

ロボット制御の脳ミソ。マストアイテム
ARDUINO-A000066 Arduino Uno R3

モータドライバ

モータの速度や反転の制御に使います。ルンバではタイヤx2、ブラシx1で合計3つ使っています。
東芝 TA7291P DCモータ用

赤外線距離センサ

壁際走行に使いました。
シャープ GP2Y0A21YK0F 測距センサユニット

マイクロスイッチ

バンパー衝突の検知用
オムロン D2F-L 極超小形基本スイッチ(ヒンジ・レバー形/基板用)

足回り

ギアボックス

走行用とブラシ用です。モータも付属しています。
タミヤ ダブルギヤボックス(左右独立4速タイプ)

タミヤ 3速クランクギヤーボックスセット

タイヤ

これを使いましたが、キャタピラとかも走破性能が高くて良さそうですね。
タミヤ ナロータイヤセット

スプロケ&ラダーチェーン

ブラシの駆動伝達に使っています。はじめは輪ゴム&プーリーで試したけど、空回りしてNGでした。
パワーが必要な場合はこれがオススメ。
タミヤ ラダーチェーン&スプロケセット

筐体

筐体はユニバーサルプレートを駆使して。
タミヤ ユニバーサルプレート2枚セット

タミヤ ユニバーサルプレートセット

その他

電池BOX

MC304-3H 電池ボックス(単3X4・平・スナップ)

スイッチ

プッシュSW(モーメンタリ2P・赤)

Oculus Riftでメーヴェを作ろう(10)応用アイデア〜ハリーポッター、舞空術...

先日作った基板、ケースっていうかタッパー(笑)に収納してこんな感じになりました。 タッパーから各種配線が出ている感じです。

このタッパーができることは

  • 傾き検知→Unityに送る
  • フットスイッチON/OFF検知→Unityに送る
  • Unityから命令→振動モータをブルブル震わす
  • Unityから命令→扇風機で風を起こす

という感じです。

f:id:wasan:20140927075005p:plain

ところでこのタッパー、使い方次第で色々と応用がありそう。
例えば...

ハリーポッターになって魔法の世界を飛び回ったり... f:id:wasan:20140927082802p:plain

少年時代の夢、舞空術...! f:id:wasan:20140927082813p:plain

アバター3Dのドラゴン、乗ってみたい... f:id:wasan:20140927082830p:plain

ま、まずはメーヴェ
メーヴェの筐体が一番大変そうだな....

f:id:wasan:20140927082918p:plain

Oculus Riftでメーヴェを作ろう(9)Aruduino用シールド基板作成

いままでブレッドボードでやってたのを、ちゃんとハンダ付けして基板を作りました。
Arduinoにピタッと装着できるように、Arduino用のユニバーサル基板を使いました。

サンハヤト UB-ARD03 Arduino用ユニバーサル基板

GNDとかVCCとかがいい感じに1列ズラ~って並べてあるので便利。 あと仕上がりもなんかスマートになるし。

f:id:wasan:20140923221340p:plain

前よりだいぶスッキリしました。
動作も一発でちゃんと動きました♪

f:id:wasan:20140923221426p:plain

しかし、その後問題発覚、、、!

f:id:wasan:20140923221958j:plain

この前買ってきた基板ケースに入りません!
ちょっと背が高すぎました。

そこで、、、近所のスーパーに走ってタッパーを入手。
いい感じです(笑)ちゃんと収まりました。

f:id:wasan:20140923222108j:plain

これをメーヴェ筐体の上に装着して、筐体の傾きを計測するつもりです。

Oculus Riftでメーヴェを作ろう(8) フットペダルでターボ加速!

飛行スピードをコントロールする手段は、現状ありませんでした。
けど実際試してみると、ビューンって加速したくなったりします。

そこでナウシカの映画を見たところ、足元のペダルでビューンって加速していました。
ペダルを踏むとエンジンで加速するらしいです。
ふむ、これそのまま実装してみましょう(笑)

f:id:wasan:20140921193830p:plain

工作

秋葉原でフットスイッチを買ってきました。700円くらいでした。

f:id:wasan:20140921192313j:plain

ソッコー切断します。
単純に2本のケーブルがあります。仕組みは普通のスイッチですね。

f:id:wasan:20140921192348j:plain

電子回路

回路はコチラ↓を参考にプルダウン回路で組みました。
http://baticadila.dip.jp/arduino_002.html

プルアップorプルダウンのどちらにするかの判断は

  • 通常時ON→プルアップ 回路
  • 通常時OFF→プルダウン回路

って考えでよいみたいですね。

普段はターボ加速しない想定なのでプルダウンでいきます。

プログラム

今回もUnityアセットのUNIDUINOを使ったプログラムです。

Arduinoの8番ピンをデジタル入力として使います。

reportDigital()のところがちょっと謎な気配ですが、チュートリを読んだ所
(byte)(FOOT_SWITCH_PIN/8)はピンのportを調べるロジックのようです。要はどのピンだろうと、こう書いておけばOKそうです。

    int FOOT_SWITCH_PIN = 8;
     
    void Start( )
    {
        arduino = Arduino.global;
        arduino.Setup(ConfigurePins);
    }
 
    void ConfigurePins( )
    {
        arduino.pinMode(FOOT_SWITCH_PIN, PinMode.INPUT);
        arduino.reportDigital((byte)(FOOT_SWITCH_PIN/8), 1);
    }

デジタル入力の読み取りはこんな感じです。
スイッチが押されたら、メーヴェを加速させます。

    void Update () {
        if(arduino.digitalRead(FOOT_SWITCH_PIN) == 1){
            speedUp(); // 飛行速度の加速メソッド
        }
    }

実行

足元にフットスイッチを置きます。
最終的にはメーヴェ筐体(現状でいうダンボール...)の上に装着するつもりです。

f:id:wasan:20140921193820p:plain

フットスイッチ踏んで、、、
ターボ加速!画像じゃわかりませんね(笑)

f:id:wasan:20140921194033p:plain

ターボ加速中は、機体後ろから火炎のようなものを排出します。
振り返らないと見えないけど、火炎が空中に尾を引く感じは爽快です。

f:id:wasan:20140921194138p:plain

Oculus Riftでメーヴェを作ろう(7) Unity free版でもOculus開発が可能に!

Unityの公式blogでUnity free版でもOculus Riftの開発が出来るようになると報告がありました! 今まではpro版が必要で、そのコストも16万円と個人にはかなり高価だったので、これはビッグニュース!

Unity公式blog http://blogs.unity3d.com/2014/09/20/expanded-oculus-rift-support-in-unity/

That means whether you’re using the free version of Unity or Unity Pro, you’ll be able to create awesome VR experiences for the Oculus Rift and the Oculus VR Store for free!

なるほど、確かにfree版でも開発可能になるようです。

The Oculus add-on will include stereo imaging optimizations, 3D audio support, deeper Unity editor integration, inclusion of the Oculus Rift in the Unity development and debugging workflow, integration of Oculus-specific APIs within Unity, and direct publishing to the Oculus platform.

Unity側が公式アドオンを開発してるとか。よりUnityエディタと統合された形でOculus対応ソフトがつくれるようになる感じでしょうか。

To that end, we’re working with Oculus to make the current Oculus plug-in, one that has been available for free for Unity Pro users, also available for those making games with the free version of Unity. This new plugin version will be made available for free download on the Oculus developer site as soon as possible.

さらに、現行のOculusが出してるUnityプラグインも、Unity free版で使えるようになるとのこと。 いまコレ使ってるから、まずはコレを待ちかな。ASAPらしいけどいつだろう、、?楽しみ!

無料のOVR agentにいくつか不都合があり、先日からUnity proの1か月体験版を始めたとこ。 Maker Faire Tokyoまで持たないからpro版購入を覚悟してただけに、これは嬉しい!

Oculus Riftでメーヴェを作ろう(6) 振動モータでブルブルって感じる

メーヴェが木々の中を駆け抜けて行く時、手元にブルブルって振動が返ってきて欲しい。
そこで振動モータを連動させます。

振動モータはこちらを使います。
円盤型 振動モーター(2個入): パーツ一般 秋月電子通商 電子部品 ネット通販
消費電力が少ないのでArduinoのデジタルピンに直接繋いで動きます。扱いやすいですね。

f:id:wasan:20140920071849j:plain

詳しい接続やプロジェクトは過去の投稿で書いたので割愛 (^^;)

今回はコネクタとか丁寧目に作ったので、その過程を...

振動モータのケーブルがとっても細く心もとないです。。。
手持ちのケーブルをハンダ付けして繋ぎます。

f:id:wasan:20140920071858j:plain

ハンダ付けした箇所は熱収縮チューブでカバー。 見た目もよくなりますね。
熱収縮チューブを温めて縮める作業、なんか好きです(笑)
反対側にはピンコネクタを付けておきます。後々、取り外しとか何かと便利になります。

f:id:wasan:20140920071905j:plain

今回は両手用に2つ使います。
Unityプロジェクトからの制御も問題ナシでした!
あとはメーヴェの衝突に合わせて振動を制御できればOKですね。

f:id:wasan:20140920071913j:plain