格安Arduinoデータグラスでマルチメーター読み取り表示
必要な部品と材料
| SparkFun Arduino Pro Mini 328 - 3.3V/8MHz | ×1 |
必要な工具と機材
- 3Dプリンター(汎用)
プロジェクト概要
動作デモ動画:YouTube
誰でも作れる安価なArduinoデータグラス(ヘッドマウントディスプレイ)を目指して開発しました。動機は単純に「欲しかったから」。
試作から完成まで4ヶ月。入手しやすい汎用材料のみで構成することにこだわりました。本プロジェクトの核心は、HMD用光学系の設計方法にあります。画面をただ目の前に置くだけではピントが合わず、見えません。
製作ログには初期実験から現在までの全過程を記録しています。光学設計が最も困難でしたが、解決策を見つけました。試作コストは約70ユーロ。これで高電圧作業用ヘッドアップディスプレイが手に入りました。
ステップ1: 内部構造と仕組み
Bluetooth受信データをOLEDディスプレイに表示 → ミラーで反射 → レンズを通過 → 透明アクリル板に結像し、目の前に映像が見えます。

ステップ2: レンズ - 最難関パート
動作はしましたが、試行錯誤の連続でした。光学の速習から始めました。
まず実像と虚像の違いを理解。人間の目は最短25cm以上離れた物体にしかピントを合わせられません。レンズ公式 1/f = 1/o + 1/i (f=焦点距離, o=物体距離, i=像距離)が鍵となります。虚像距離iは負の値になります。

使用した値:
- f = 10cm
- o = 7.3cm
→ i = -27.03cm(虚像)、倍率 M = 3.7倍
レンズ計算参考サイト: HyperPhysics
ステップ3: 代替レンズ
焦点距離100mmのレンズ入手が難しい場合の代替案:
- 安価な段ボール製VRゴーグル(Google Cardboard類似品)の中にはFL 100mmレンズを採用しているものがある(一般的なCardboardは45mm)
- 更新: 小型フレネルレンズ(FL約110mm)が最適解の可能性。安価、入手容易、カッターでカット可能。Amazon例
- ヘッドマウント型ルーペのレンズも代替候補。3-5枚セットでFL 110-120mmのものが含まれていることが多い。やや重くカットしにくい欠点あり。
ステップ4: 電子回路


最終版ではより小容量バッテリーを使用。280mAhバッテリー使用のため、基板上の3kΩ抵抗を5.6kΩに変更し、充電電流を約200mAに抑制。
ステップ5: エンクロージャ(筐体)

初期テストは段ボール筐体で実施。低コストで良好に動作。

最終版は3Dプリント(123D Designで設計)。初回試作としては上々ですが、いくつか修正が必要です。
FLDXAHDIWMQXWRP.stl / FI9NE6GIWMQXWRV.stl / F72OH47IWMQXWRW.stl / FSAHDV3IWMQXWS2.stl / F7DF5AJIWMQXWSA.stl
ステップ6: Owon B35TマルチメーターとのBluetooth接続
このマルチメーターは内蔵Bluetooth 4.0でスマホ/タブレット接続可能。シリアルプロトコルをリバースエンジニアリングしました。
BTモジュール設定(Arduino簡易プログラムでATコマンド送受信):
AT+ROLE1 // モジュールをセントラル(マスター)に設定
AT+RESET // リセット
AT+SHOW1 // デバイス名をレスポンスに表示
AT+IMME0 // 自動接続有効
AT+FILT0 // スキャンフィルター無効
AT+DISC? // デバイス検索
AT+CONE0 // Owon B35Tに接続(MACアドレス指定)
関連ソフトウェア: GitHub
ステップ7: 完成したArduinoデータグラス



全パーツの収納状態。アクリル反射板のホルダー形状を複数試作。
パーツリスト:
- Arduino Pro Micro 3.3V 8MHz ×1
- Bluetooth 4.0 HM-11 BLEモジュール ×1
- 280mAh LiPoバッテリー ×1 / 50-500mA LiPo充電回路 ×1
- 30mmアクリル平凸レンズ FL100mm ×1
- 1mm厚プラスチックミラー ×1
- 0.66インチ 64×48ピクセル Micro OLED ×1 (SparkFun)
- CDケース(反射板用) ×1
ステップ8: 初期試作の写真と動画
各種レンズでのテストセットアップ:
初期Bluetoothテスト動画 / プロトタイプ動画
今後の課題:
- Owonマルチメーターへの自動接続機能実装
- バッテリー残量表示追加(BLEモジュール対応済み)
- 着色・ミラーフィルムで明るい場所でも視認可能な反射板製作
- 軽量化と筐体再設計
- 0.49インチ小型ディスプレイでのテスト
製造プロセス
- Arduino Nano 33 IoT製 フライトシミュレーター2020用コックピットパネル - LCD&CDI表示
- Microsoft Flight Simulator 2020用Arduinoスイッチ&LEDパネル
- ArduinoとInfineon 3D磁気センサーで作る無線磁気データ転送
- Arduinoで温湿度ロガーを作る – DHT11とEthernetシールドでSDカード記録
- 学校向けスマート体温監視システム: 正確、リアルタイム、安全
- Arduino用8ビットI/Oポートライブラリ:デジタル制御を拡張
- Arduino 64キー プロトタイピング キーボードマトリックス: シフトレジスタで自作キーボード
- ArduinoセンサーデータをPHPMyAdmin経由でMySQLにアップロードする手順
- Arduino用絶縁アナログ入力回路の設計:LM331 V-F変換+フォトカプラでノイズ耐性を確保
- Arduino向けスマート屋内ナビゲーションロボットキット
- データ可視化が機械メーカーの効率を飛躍させる理由 — 生データから実用的インサイトへ