Scan and Print - 3D扫描仪
scan-and-print
比赛/竞技、ESP32
2/5
🧩 软硬件结合
已发布
项目简介
开源3D扫描系统,使用ESP32、舵机和超声波传感器,自动扫描并校准。
使用ESP32、舵机和超声波传感器的开源3D扫描系统,基于校准的物体检测实现自动扫描,通过Python生成3D点云可视化。
标签
项目特点
**硬件控制**:自动舵机定位,实时超声波测距,LCD显示反馈,蜂鸣器提示
**双轴扫描**:水平(平移)和垂直(倾斜)双轴,可配置步进角度和范围
**数据处理**:自动校准背景减法,多次扫描中值滤波,球坐标转笛卡尔坐标
**3D可视化**:交互式3D散点图、完整图重构、表面填充映射、ASCII强度图
**文件管理**:原始数据CSV导出,处理后的3D坐标输出,时间戳文件组织
技术规格
| 扫描范围 | 2 - 80 cm |
|---|---|
| 角度分辨率 | 5° 水平,5° 垂直 |
| 扫描点数 | ~220点/全扫描(18×13网格) |
| 扫描时间 | ~45秒(3次扫描×15秒) |
| 精度 | ±2 cm(取决于表面反射率) |
| 数据速率 | 115200 波特率串口 |
| 处理时间 | 10-30秒(Python) |
项目资源
搜索资源
物料清单 (BOM)
| 物料名称 | 数量 | 参考价格 | 备注 |
|---|---|---|---|
| ESP32开发板 | 1 | — | 任意GPIO充足的型号 |
| MG995或类似5V舵机 | 2 | — | 水平和垂直轴各一个 |
| HC-SR04超声波距离传感器 | 1 | — | 测距用 |
| 16×2 I2C LCD显示屏(地址0x27) | 1 | — | 扫描状态反馈 |
| 有源蜂鸣器 | 1 | — | 用户提示音 |
| 10kΩ电阻 | 2 | — | 超声波回波信号分压保护 |
| 100-470µF电容 | 2 | — | 舵机电源平滑滤波 |
| 面包板或PCB | 1 | — | 电路连接 |
| 杜邦线/跳线 | 若干 | — | 连接各组件 |
| 5V/2A电源适配器 | 1 | — | ESP32供电(建议舵机独立供电) |
| PLA/PETG耗材 | 可选 | — | 打印机械支架 |
能力画像
⚪ 记忆与知识检索: 1/5
🔵 逻辑推演: 3/5
⚪ 表达与交流: 1/5
⚪ 感知与观察: 2/5
🔵 数理与计算: 3/5
🔵 动手与操作: 4/5
⚪ 狂热与坚持: 2/5
⚪ 创造与创新: 3/5
所需技能
🔧 **动手能力**:需要焊接、面包板接线、舵机安装等基本电子制作技能
💻 **编程能力**:需要Arduino IDE使用经验,Python基础(运行脚本、安装库)
⚡ **电子电路**:需要理解电压分压、电源管理、I2C通信等基础电路知识
适用场景
**创客教育**:用于教授3D扫描原理、传感器应用和数据处理
**DIY 3D扫描**:低成本自制3D扫描仪,用于小物体数字化
**原型验证**:快速获取物体表面点云,用于3D打印前的逆向工程
**科研实验**:验证超声波测距和点云生成算法