見出し画像

自作データグローブを作ってみる ハードウエア編、ソフトウエア編

お久しぶりです。今回は前回に引き続きデータグローブの作成方法を紹介したいと思います。

前回



ハードウエア編

モジュールを使った基本的な回路図を貼っておきます。ベースにして下さい。これを基にPCB設計、組み立て、動作確認を行っていますがこうしたほうが良いや回路を間違えてる等あればご指摘ください。

基本的な回路

以上の回路ではバッテリー駆動が出来ず、電圧が安定せず曲げセンサーのふらつきが大きかったのでバッテリーの先にDCDCコンバータを付けてESP32のレギュレータを低ドロップアウト電圧のADP3338に交換しています。
MT3608は反時計回りで7回転ほどさせると昇圧。出力電圧が5vになるように調整します。

曲げセンサーのふらつきを更に抑えたい場合はESP32の3v3からではなく別の3v3レギュレータをDCDCコンバータの後に付けて曲げセンサーに繋げてください。
また、ローパスフィルタを付けるとなお良しでしょう。

回路図を基に追加したパーツも合わせイラストにしました。雑ですみません💦
バッテリー残量確認の分圧抵抗は省いてます。

組み立て


今回は設計したPCBとケースを利用し組み立てます。
上記のMT3608についてはパターンカットしない回路で追加しました。
これだとSWオフでもバッテリーからMT3608に給電される為お勧めはしません。

PCB発注してからDCDCを追加したのでこのような形になりました。
発注したPCB
全ての部品をはんだ付けした状態
DCDCは熱収縮チューブで保護
曲げセンサーは素早くはんだ付けして根元を熱収縮チューブで保護
ケースにはスライドで入れます


再度の蓋ははめるだけ
1000mahのバッテリー
バッテリーケースはスライドするだけです。
手袋とハード本体にマジックテープを貼る
指にセンサー固定具を接着。薄手のゴム手を付け手にはめた状態で
固定具を瞬間接着剤(ゼリータイプ)で接着すると良い
センサーの根元は穴が少し大きいです。
センサーは奥まで挿し込む
ハード完成。左右同じ要領で作ります。

ソフトウエア編

インストール方法や基本的な使い方は省きます。
必要なソフトウエア
・VSCode(PlatformIOも) 
https://code.visualstudio.com/
ESP32にFWの書き込みするのに使用

・steamVR
https://store.steampowered.com/app/250820/SteamVR/?l=japanese
steamVRにてコントローラーとして認識させるのに使用

・SlimeVRServer
https://github.com/SlimeVR/SlimeVR-Installer/releases/latest/download/slimevr_web_installer.exe
SlimeVRトラッカーの制御やsteamVRに手トラッカーを追加するのに使用

・OpenGlove v0.5.1
https://store.steampowered.com/app/1574050/OpenGloves/
LucidGlovesの制御に使用。BTの設定とエミュレーション設定だけ

・Multi Track OSC Sender
https://kirisamenanoha.booth.pm/items/5167553
SkeltonInputデバイスに対応モーションをまとめたアプリに送信するのに使用

OpenGloveはインストール後プロパティからバージョンを0.5.1にする

説明が大変なので動画にします。


12/28追記
ファームウェアについてですがAdvancedConfig.hの#define CLAMP_FLEXION と#define ENABLE_MEDIAN_FILTER をtrueにすることで曲げセンサーのノイズによるふらつきがほぼなくなりました。
こちらの設定を有効にするにはrunningmedianライブラリが必要になるので、platformIOのlibraryからrunningmedianを検索してインストールしてください!

もしsteamVRが起動してHMDがありませんなどエラーが出る、HeadsetWindowが邪魔になる場合は以下の方法でsteamVRのNullドライバーを有効にすると解決します。

C\ProgramFiles(x86)\steam\steamapps\common\SteamVR\drivers\null\resources\settings\default.vrsettingsをsakuraエディタで以下のように編集する。

もしくはダウンロードして置き換えてください。 https://drive.google.com/file/d/1SPH8YZFaDY-Rm8vjqfGtP3mEaalyKJWS/view?usp=sharing

また、VRHMDを利用する際にopengloveが有効になっていると
コントローラーが反応しなくなるのでアドオンの管理からオフにして再起動してください。

ソフトウエア編は以上になります。

まとめ

大雑把な解説になりましたが、自作データグローブを作成することが出来ます。初めて作成しましたが普通に使えるので安価に指の曲げ、手の回転が出来るデータグローブとしてはかなり良いのでなないかと思いました。
今後表面実装やケースの再設計を行いDIYkitとして販売出来たらよいなと考えています。
Youtubeのチャンネル登録Twitterのフォローもよろしくお願いします。


この記事が気に入ったらサポートをしてみませんか?