口袋金属探测器:Arduino Pro Mini 驱动四线圈脉冲感应,3D 打印外壳
项目亮点
- 四独立脉冲感应搜索线圈,覆盖面积大、定位精准
- 自校准单键操作,USB 充电(TP4056 + LiPo)
- WS2812 RGB LED 四色指示 + 蜂鸣器 + 振动马达三重反馈
- 体积小巧,可深入狭窄空间探测钉子、图钉等微小金属
- 完整提供 3D 打印文件、电路图、Arduino 代码、测试波形
工作原理
采用脉冲感应(PI)技术:每个搜索线圈包含独立 TX(发射)与 RX(接收)线圈。Arduino 向 TX 线圈注入脉冲,在 RX 线圈感应电压。金属物体进入电磁场会产生涡流分能,导致 RX 脉冲宽度缩短。通过测量脉冲宽度衰减量判断金属存在与大小。软件包含低通滤波去噪、启动自校准建立基线阈值。
核心电路模块
1. 驱动板
Vero Board 20×9 孔,包含 4 路 TX 驱动电路(BC548 + 2N7000),输出脉冲至发射线圈。
2. 主板
Vero Board 34×9 孔,核心器件:Arduino Pro Mini、LM339 四路比较器(将 RX 模拟信号转方波)、WS2812 LED 驱动、蜂鸣器/振动马达驱动、按键输入。
3. LED 指示模组
4 颗 WS2812 贴装于线圈盖内侧,三线串联(VCC/GND/DATA)。
4. 充电供电系统
TP4056 充电板改装 4.7kΩ 电阻将充电电流限制 <300mA,配合 3.7V 350mAh LiPo 电池,微动开关控制上电。
制作步骤概览
- 3D 打印外壳:Thingiverse 模型分 5 件打印,设计贴合手型、线圈贴近被测面
- 绕制搜索线圈:每个线圈架绕 25 匝 0.3mm 漆包线,留 20cm 引线,按照片方向固定进底座,理线块管理 8 根引线
- 焊接驱动板与主板:按原理图在 Vero Board 上焊接,手工钻断铜箔隔离,反复核对无短路
- 安装 LED 模组:热熔胶固定、三线焊接、对齐外壳盖合
- 分级测试组装:先测主板代码烧录 → 接驱动板 → 接线圈观测串口/示波器波形(空载脉宽 5000-7000μS,金属靠近脉宽下降) → 接 LED → 最后接电池(严禁带电焊接 LiPo)
- 最终封装:整理走线,热熔胶固定主板,合盖锁螺丝
关键代码逻辑
- 四通道轮询:依次拉高 TX 引脚 4μs → 低电平 1μs →
pulseIn()读取 RX 低电平宽度(超时 7500μs) - 一阶低通滤波:
smoothed = α·smoothed + (1-α)·raw,α=0.85 - 启动校准:前 200 个周期采样 20 次求平均建立
calav基线 - 四级阈值判定:
calav × {0.93, 0.96, 0.99, 0.998}对应 紫/红/绿/蓝 LED,紫色触发蜂鸣器+振动 - FastLED 库驱动 WS2812,亮度限制 5/255,功耗限 1A@5V
资源下载
- 3D 打印文件:Thingiverse CAD 链接
- 测试版代码:
Pocket_Metal_Locator_V11__TEST_CODE.zip - 正式版代码:
Pocket_Metal_Locator_V11.zip - LM339 数据手册:
lm2901.pdf - TP4056 改装指南:
TP4056.pdf
制造工艺