低成本 Arduino 数据眼镜:万用表读数抬头显示(HUD)
所需组件与物料
| 组件 | 数量 |
|---|---|
| SparkFun Arduino Pro Mini 328 - 3.3V/8MHz | 1 |
所需工具与设备
- 3D 打印机
项目简介
视频演示:工作视频链接
目标:用常见材料自制低成本 Arduino 数据眼镜(HMD)。从构想到原型耗时 4 个月,成本约 70 欧元。核心难点在于光学系统设计——不能直接将屏幕置于眼前,眼睛无法聚焦。
步骤 1:内部结构与光学原理

蓝牙接收数据 → 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 焦距透镜难买。我用廉价 Google Cardboard 镜片(焦距 45mm)不合适,后找到焦距约 110mm 的透镜更合适。推荐两种易得方案:
- 小型菲涅尔透镜:便宜、易切割,如 亚马逊链接。
- 头戴式放大镜镜片:通常含 3-5 片不同焦距镜片,挑选 110-120mm 焦距者即可,稍重且难切割。
步骤 4:电子电路


最终版用 280mAh 锂电,将充电板上 3k 电阻改为 5.6k,充电电流降至 ~200mA。
步骤 5:外壳设计

早期用纸板外壳验证光学,后用 3D 打印最终外壳(123D Design 建模)。STL 文件:
FLDXAHDIWMQXWRP.stlFI9NE6GIWMQXWRV.stlF72OH47IWMQXWRW.stlFSAHDV3IWMQXWS2.stlF7DF5AJIWMQXWSA.stl
步骤 6:对接 Owon B35T 蓝牙万用表
该表内置 BLE 4.0,需逆向串口协议。用 HM-11 模块配置为中心设备自动连接:
AT+ROLE1 // 设为中心角色
AT+RESET // 复位
AT+SHOW1 // 显示设备名
AT+IMME0 // 自动连接
AT+FILT0 // 扫描所有设备
AT+DISC? // 列出设备
AT+CONE0 // 连接万用表
相关软件见 GitHub:Arduino-Glass
步骤 7:成品展示



核心物料清单(BOM):
- Arduino Pro Micro 3.3V 8MHz ×1
- HM-11 BLE 4.0 模块 ×1
- 280mAh LiPo 电池 + 500mA 充电板 ×1
- 30mm 平凸透镜(焦距 100mm)×1
- 1mm 塑料平面镜 ×1
- 0.66 英寸 64×48 Micro OLED(SparkFun)×1
- CD 盒切片做反射片 ×1
步骤 8:早期原型记录与后续计划
- 不同透镜测试对比
- 首次蓝牙通讯测试视频
- 原型机演示视频
待办事项:
- 完善软件:自动连接 Owon 万用表
- 增加电池电量指示(BLE 模块支持)
- 尝试着色/镀膜反射片,提升亮环境下可视性
- 减重与外壳重设计
- 测试 0.49 英寸更小 OLED
代码仓库
3D 打印文件
同上 STL 文件列表。
原理图

制造工艺
- Arduino Nano飞行模拟2020控制面板——LCD与CDI显示
- Arduino 飞行模拟器 2020 实体开关面板
- 基于 Infineon 3D 磁传感器的 Arduino 无线磁通讯实验
- Arduino + DHT11 + 以太网盾板温湿度数据记录仪
- 校园智能体温监测系统 - 精准、实时、安全的学生健康守护方案
- Arduino 8 位并行 IO 端口库:一行代码实现 8 位数字读写
- Arduino 64 键原型键盘矩阵:用移位寄存器打造全自定义键盘
- Arduino 传感器数据上传 MySQL 数据库:PHPMyAdmin 完整指南
- Arduino Nano 专用 2.8 英寸 TFT 扩展板 – 320×240 SPI 显示屏
- 为Arduino构建隔离模拟输入电路
- 适用于 Arduino 项目的智能室内导航机器人套件
- 数据可视化如何为机器制造商驱动效率提升