亿迅智能制造网
工业4.0先进制造技术信息网站!
首页 | 制造技术 | 制造设备 | 工业物联网 | 工业材料 | 设备保养维修 | 工业编程 |
home  MfgRobots >> 亿迅智能制造网 >  >> Manufacturing Technology >> 制造工艺

使用 Arduino Nano 构建高灵敏度金属探测器 - DIY 指南

元件与物料

元件数量备注
Arduino Nano R31主控制器
运算放大器 (Op Amp + 比较器 + 基准)1信号放大与处理
IRF840 功率 MOSFET1驱动搜索线圈
LED (通用)6指示灯
电阻、电容、二极管1套按原理图选型

必需工具

软件与在线服务

项目简介

这是一个基于著名的俄罗斯脉冲感应金属探测器 "PIRAT" 的改进版,引入 Arduino Nano 大大简化了制作流程。该探测器可在 15 厘米距离探测硬币,40 厘米以上探测大型金属物体,考虑到其结构简单,性能相当优秀。

工作原理:脉冲感应 (PI) 技术

脉冲感应金属探测器使用单一线圈兼作发射和接收。技术原理是向线圈发送强大、短促的电流脉冲,每个脉冲产生短暂磁场。脉冲结束时磁场极性反转并迅速崩溃,产生尖锐电压尖峰,持续约 30 微秒,形成反射脉冲。随后发送下一个脉冲,循环往复。当金属进入磁力线范围,接收线圈检测到接收信号幅度和相位的变化,变化量指示金属大小、距离,并可区分铁磁性与非铁磁性金属。

核心组件

使用 Arduino Nano 构建高灵敏度金属探测器 - DIY 指南

本项目改进了早期版本:早期版本需用智能手机指示且频繁校准,而本版本为独立设备,复位 Arduino 即可自动校准。供电采用两节串联锂离子电池。指示方式升级为声光结合:靠近金属时 LED 闪烁频率与亮度增加。搜索线圈直径 20 厘米,绕制 25 匝,导线截面 0.3–0.5 平方毫米漆包铜线。

代码

// PI metal detector for arduino version_18_min (C) alex --- 1967 2015
int ss0 = 0, ss1 = 0, ss2 = 0;
long c0 = 0, c1 = 0, c2 = 0;
byte i = 0;
int sss0 = 0, sss1 = 0, sss2 = 0;
int s0 = 0, s1 = 0, s2 = 0;

void setup() {
  DDRB = 0xFF; // 端口 B 全输出
  DDRD = 0xFF; // 端口 D 全输出
  for (i = 0; i < 255; i++) { // 校准循环
    PORTB = B11111111; // 端口 B 置高,开启开关
    delayMicroseconds(200); // 等待 200 微秒
    PORTB = 0; // 关断开关,中断线圈电流
    delayMicroseconds(20);
    s0 = analogRead(A0);
    s1 = analogRead(A0);
    s2 = analogRead(A0);
    c0 += s0; c1 += s1; c2 += s2;
    delay(3);
  }
  c0 = c0 / 255 - 5;
  c1 = c1 / 255 - 5;
  c2 = c2 / 255 - 5;
}

void loop() {
  PORTB = B11111111;
  delayMicroseconds(200);
  PORTB = 0;
  delayMicroseconds(20);
  s0 = analogRead(A0);
  s1 = analogRead(A0);
  s2 = analogRead(A0);
  ss0 = s0 - c0; if (ss0 < 0) sss0 = 1; ss0 /= 16; PORTD = ss0; delay(1);
  ss1 = s1 - c1; if (ss1 < 0) sss1 = 1; ss1 /= 16; PORTD = ss1; delay(1);
  ss2 = s2 - c2; if (ss2 < 0) sss2 = 1; ss2 /= 16; PORTD = ss2; delay(1);
  if (sss0 + sss1 + sss2 > 2) {
    digitalWrite(7, HIGH); digitalWrite(6, HIGH); digitalWrite(5, HIGH);
    digitalWrite(4, HIGH); digitalWrite(3, HIGH); digitalWrite(2, HIGH);
    digitalWrite(1, HIGH); digitalWrite(0, HIGH);
    delay(1);
    sss0 = sss1 = sss2 = 0;
  }
}

原理图

使用 Arduino Nano 构建高灵敏度金属探测器 - DIY 指南

制造工艺

  1. DIY Arduino单词时钟 – 极简优雅的实时文字显示
  2. 用 Arduino Nano 和 Nokia 5110 LCD 自制 20kHz 示波器:简易 DIY 指南
  3. DIY ADXL335 地震检测仪 — 低功耗三轴加速度计项目
  4. Arduino 与智能手机打造智能电压表——简单易做的 DIY 项目
  5. Arduino 音频频率检测:基于 FFT 测量最响亮声音峰值
  6. DIY VR 滑板:用 Arduino、Google Cardboard 与蓝牙打造虚拟滑雪体验
  7. Arduino 串口简易计算器:两数四则运算演示
  8. 自制高精度测距轮:Arduino Nano + 旋转编码器 + 1602 LCD
  9. 轻松打造 Arduino 秒表:按钮触发计时器
  10. DIY Arduino 电子波疗设备 - 基于拉德尼克疗法的 EMR 治疗仪
  11. DIY二自由度竞速模拟器:Arduino Nano驱动SG90微型舵机
  12. 使用 Arduino UNO 和 SR04 超声波传感器构建超声波测距仪