ARゴーグルを作りたい話

Gaming Oculus Questにするためのアクセサリを自作した話

 3DプリンターとフルカラーLEDでゲーミングなOculus Questのアクセサリを作りました。
 まあやってることは簡単で、3Dプリンタで板を作ってそれにLEDを並べているだけです。

 詳しく説明することもないので↓に作ったデバイスを置いておきます。


 今回、3Dプリンタででこれを作りましたが、Oculus Questの微妙な曲線に沿わせるためにヒートガンで温めて曲げています。自分のヒートガンは↓のようなもので出力が低いので大丈夫ですが、大型の出力が高いヒートガンは本体には使わないほうがいいと思います。

 逆に言えば、この程度の出力でも3DプリンタのPLAは曲がってしまうということが言えると思います。そうして下のように曲げてOculus Questに沿わせています。
iOS の画像 (3)

 また、使っているLEDは
に使われているようなLEDと同じものが秋月で売っているのでそれを使用しています。
 プログラムはネットに転がっているテープLED用のものがそのまま使えます。

ARゴーグルを作りたい話3

 最近なんとなく作っているARグラスの新型ができたので書きます。

ab58m-igftm
a5s3u-qio8s
ajukv-llh3f

 こんな感じです。メガネはダイソーで売ってるサングラスで、それに外付けのモジュールを付けました。細い方の筒の中は空で、ここを縮めることはできるのですが、家にある設備で切れるレンズがシートレンズしかなく、それだと焦点距離が伸びないのでしょうがなく長くなっています。また、LCD-反射板間の距離が長くなってしまったので全体的に像が暗くなってしまいました。


aqw3p-mi7xb

 内容物はこんな感じです。今回から表示したい文字をシリアル通信で送れるようにしたのでArduino nanoのほかにXBeeも積んでいます。今回はやりませんでしたが、いろいろな荒業を使えば電装の機構の体積は半減させることができます。まあ、今回使ったリポバッテリーは↓なのですが、こんなに容量はいらないので、もっと小さいものがあれば小型化できます。


 これらのことから、全力で小型化すれば細い方の筒の容量だけで実現できる気がします。まあ、やる気は起きませんが。次やるときはそもそもARじゃなくて普通に視界の一部分をふさいで表示しようと思います。普通に薄くて見にくいし、そもそも自分が見ている深度とARグラスに表示しているものの深度が違えばどうせ水晶体でピント調節しないといけないしであまり利点がないと思うっからです。

 技術的なことを言えば今回は下図のようにArduino-XBee-XBee-Arduino-LCDという風にデータを送り表示しています。これは、将来を見越してセンサーの値とかを送れるようにするのと、ワイヤレスが条件だったのでこうなりました。
Untitled Diagram
 いつもの通りプログラムは下に書いときます。今回のプログラムは過去作品の寄せ集めですが、SPIとハードウェアシリアル通信をやっているのでそこだけひねってあります。

 これを作っている間にTsukubaMiniMakerFaireにお手伝いに行って色々見てきたのでいろいろ作ろうと思います。それではまた今度。

送信側
int LED = 13;
int count = 0;
String s1 = "   Hello";//ここに表示したい文字
String s2 = "   World";

void setup() {
  Serial.begin(9600);
  pinMode(LED, OUTPUT);
}

void loop() {
  count++;
  Serial.write(count);
  if ((count % 2) == 1) {
    digitalWrite(LED, HIGH);
    Serial.write('$');
    Serial.write(s1.length());
    for (int i = 0; i < s1.length(); i++) {
      Serial.write(s1.charAt(i));
    }
  } else {
    digitalWrite(LED, LOW);
    Serial.write('$');
    Serial.write(s2.length());
    for (int i = 0; i < s2.length(); i++) {
      Serial.write(s2.charAt(i));
    }
  }
  delay(50000);
}
受信側
int LED = 13;
#include <Adafruit_GFX.h>    // Core graphics library
#include <Adafruit_ST7789.h> // Hardware-specific library for ST7789
#include <SPI.h>             // Arduino SPI library#include <Adafruit_GFX.h>    // Core graphics library

// ST7789 TFT module connections
#define TFT_CS    10  // define chip select pin
#define TFT_DC     9  // define data/command pin
#define TFT_RST    8  // define reset pin, or set to -1 and connect to Arduino RESET pin

Adafruit_ST7789 tft = Adafruit_ST7789(TFT_CS, TFT_DC, TFT_RST);

void setup() {
  pinMode(LED, OUTPUT);
  Serial.begin(9600);
}

void loop() {
  if (Serial.read() == '$') {
    int i = Serial.read();
    char s[i];
    for (int c; c < i; c++) {
      s[c] = Serial.read();
    }
    tft.init(240, 240, SPI_MODE2);
    tft.setTextColor(ST77XX_WHITE);
    tft.setRotation(0);
    tft.fillScreen(ST77XX_BLACK);
    tft.setTextSize(4);
    tft.setCursor(0, 0);
    for (int c; c < i; c++) {
      tft.print(s[c]);
      Serial.print(s[c]);
    }
    tft.println("");
    SPI.end();
  }
  delay(10);
}

ARゴーグルを自作したい話2

 前回作ったときにいろいろ思うところがあったので作り直してみました。ただ、今回のにも課題があるのですぐ作り直すと思います。

 前回の課題として、重い、バンドで固定しないといけない、表示が面倒というものがありました。特に三個めが顕著で、一回反射の像を見ることになっていたので、左右が反転してしまっていました。そのため表示したいものは左右反転画像を用意してやってそれを表示していました。これではシステムの冗長性が一切確保できないので、これを解決するために二回反射するものを作りました。

 そんなこんなで、今回はArduino LCDぐらいで簡単にできるものを目指しました。 Untitled Diagram
 いつも出てくる適当模式図です。二回反射させることで反転しません。またLCDはこの間使ったやつを使っています。このLCDはドライバが面倒だけど図形とか文字とか表示できるのでとっても便利です。
 あと今回鏡はPカッターじゃ切れないことが分かったのでガラスカッターを買いました。めっちゃきれいにガラスが切れるので最初から使えばよかったと思いました。


 まず、3Dモデルで適当に作って印刷して組み立ててのトライ&エラーを繰り返します。
 それでできた3Dモデルはこちらです。1
2
 パソコン上で見るとなんかスタイリッシュに見えなくもないので騙されてました。
 実際に組み立てるとこうなります。aott3-qy9zq
awtyp-08b5d
 なんか違う感じがするのがわかるでしょうか?アクリル板の正面にちょうど目が来るので、本体が頬の横に来ます。そうすると正面からのシルエットも相まって面白眼鏡にしか見えません。まあ、写りは下のように悪くないです。
ao640-skvnt

 こんなんで映す方法はいいんですけどデザインがいまいちなので、ver3を作ります。モーターが届いたので自転車も作りたいです。それではまた今度。

なんとなくARゴーグルっぽいものを自作してみた話。

 どーも。謎デバイスを作ったちさとです。なんか去年の年末になぜかARゴーグル?を作ろうと思ったので作りました。

 仕組みとしては、iPhoneの画面を反射板(100均の下敷き)で反射させてそれを見る感じです。
Untitled Diagram

 これを最低限のフレームで作るとこうなります。ady1d-n9xvg
 スマホの台と下敷きを固定するためのフレームです。適当にFusionでモデリングして3Dプリンタで印刷しました。フィラメントが赤いのは、フィラメントを買ったタイミングで一番赤が安かったからです。他意はありません。

 また、最初はメガネ型にしていたのですが、思ったよりもiPhone6が重く固定できなかったので、アマゾンで売ってたやすいスマホVRゴーグルを分解して作りました。
 

 これがいいように働き、眼鏡をかけたまま使用することができます。メガネの民でコンタクトをしない私にはちょうどいいです。

 実際に見てみるとこんな感じになります。a7sdw-s58vk

 実際に目につけてみても、多少焦点距離が近いですけど焦点が合わなくもないですし、つけたまま遠くを見てもある程度ぼやけはしますが見えるので満足しています。

 まあそんなこんなでなんか自分の中で満足したのでここで終了です。もとはサークルの計器をこれに表示できたらかっこいいと思っていたのですが、どう考えてもヘルメットの中に入らないので諦めました。いつかKV-40を作れる時が来たら発展させてかっこいいyつを作ってみたいです。それではまた今度。
アクセスカウンター
  • 今日:
  • 昨日:
  • 累計: