バーチャルリアリティグローブを作る

VRグローブ タイトル画像

VRについてもっと学びたいなら、これが最もクールなプロジェクトだ。この記事では、プログラマブル・バーチャルリアリティ・グローブの作り方を紹介します。

グローブのベースとなるのは Raspberry Pi Pico, a MCP3008 ADC と、自作も可能な5つのフレックスセンサーをご紹介します。

必要なもの

このプロジェクトに必要なものをリストアップしてみました。

をお好みの方は ビデオガイド ということであれば、私たちはあなたをカバーします。

フレックスセンサーを作る

フレックスセンサーは1個10$程度のものが多いので、自作した方が圧倒的に安くなります。

この動画 はその方法を示していますが、パフォーマンスを向上させるために若干の変更を加えています。

内部の紙片をベロスタットで、アルミ箔を銅テープで代用します。また、センサーの抵抗率を上げるために、ストリップを非常に薄くする(銅ストリップは1mm程度、ベロスタットは2mm程度)。抵抗率が上がると、解像度が上がります。

フレックスセンサー
フレックスセンサー

また、ブレッドボードからいくつかの配線を取り除くために、分圧回路をハンダ付けすることができます。片方の端に赤いワイヤーをはんだ付けします。読み取った線がプラス接点になります。もう一方の端に黄色いワイヤーをはんだ付けします。黄色の線の後に330オームの抵抗を接続する必要があり、これはグランドに接続されます。

VRグローブフレックスセンサー
フレックスセンサー

私の場合、抵抗は黒線の端にあり、熱収縮チューブで絶縁しました。

黄色の線は、データケーブルとして使用します。

分圧回路

分圧回路は、組み込みの領域でよく使われる回路です。2つの抵抗を直列に接続し、その間に出力を接続したものです。

入力電圧の何分の一かを出力し、その正確な量は両方の抵抗の抵抗率に依存する。

分圧回路
分圧回路

配線

この図に従って、MCP3008とRaspberry Pi Picoを接続してください。

VRグローブ配線
VRグローブ配線

でステップバイステップで解説しています。 動画.

図のようなフレックスセンサーを接続します。MCP3008の左側にある8本のピンが、チャンネル0~7(上から下へ)です。親指用のフレックスセンサーのデータ線をチャンネル0に、人差し指をチャンネル1に、中指をチャンネル2に、薬指をチャンネル3に、小指をチャンネル4に接続します。

順番を変えたり、センサーを追加する場合は、Picoのソフトウェアを変更する必要があります。

VR Gloveソフトウェアのセットアップ

Picoのセットアップ

このセットアップでは、MCP3008がフレックスセンサからのアナログ信号をデジタル信号に変換します。Picoはそのデータを読み取り、USBシリアルでWindows PCに送ります。

Pico では、MCP3008 モジュールを提供している Circuit Python を使用することで、より簡単に動作させることができます。PicoにCircuit Pythonをインストールするには、以下のファイルをダウンロードしてください。 .uf2 ファイルから ピコサーキットPython公式サイト.

を押しながら、PicoをUSBで接続します。 BOOTSEL ボタンをクリックします。その後、ドラッグ&ドロップで .uf2 ファイルを Pico にコピーします。Pico は以下のように再マウントします。 CIRCUITPY.

をダウンロードし、解凍してください。 エムシーピー・スリーエックス 回路 Python ライブラリ -ミーハー から 本サイト.

MCP3XXX for Circuit Pythonのダウンロード
MCP3XXX for Circuit Pythonのダウンロード

lib フォルダが含まれているので、これを Pico (現在は CIRCUITPY ドライブ) にコピーする必要があります。

次に、code.pyスクリプトを私たちのサイトからダウンロードします。 GitHubリポジトリ をPicoにコピーしてください。

これで、Picoの電源を入れるたびに(なしで BOOTSELボタンを押しながら)MCP3008から最初の5チャンネルを読み出し、そのデータをUSBシリアルに送ります。

Blenderのセットアップ

次のステップは、あなたのOS用にBlenderをインストールすることです。この例はWindowsでテストされましたが、他のOSでも少しの修正で動くはずです。

PythonスクリプトでPicoからシリアルデータを読み込むには、PySerialというPythonモジュールが必要です。Blenderには独自のPythonバージョンが付属しています。そこでPySerialをインストールすることを確認してください。

チェックする 動画 を参照して、Windows上のBlenderにPySerialをインストールする方法を学んでください。

では、ダウンロードしてください。 ハンドブレンド ファイルをGitHubから取得し、Blenderで開いてください。

左側に3Dの手、右側にPythonスクリプトが表示されているはずです。73行目で "Serial "オブジェクトが生成されています。このオブジェクトには、USBのシリアルポートの名前(私の場合は "COM4")を渡します。

結論

Raspberry Pi Picoで作れる他のプロジェクトを見たい?

このボタンをクリックして、パラゴン・プロジェクト・シリーズをご覧ください:

新しいバーチャルリアリティグローブで何をする?

コメントを残す