Промышленное производство
Промышленный Интернет вещей | Промышленные материалы | Техническое обслуживание и ремонт оборудования | Промышленное программирование |
home  MfgRobots >> Промышленное производство >  >> Manufacturing Technology >> Производственный процесс

Карманный металлодетектор на Arduino Pro Mini

Компоненты и материалы

SparkFun Arduino Pro Mini 328 — 5V/16MHz1

Необходимые инструменты и станки

О проекте

Введение: Карманный металлодетектор — Arduino

Карманный металлодетектор на Arduino Pro Mini

Этот компактный металлодетектор достаточно чувствителен, чтобы находить маленькие гвоздики и кнопки в дереве, и достаточно мал, чтобы залезать в неудобные места. У него 4 независимые поисковые катушки и цветные LED-индикаторы — можно быстро охватывать большую площадь и точно локализовать цель.

Устройство само калибруется по одной кнопке, заряжается через USB, сигнализирует цветом, звуком и вибрацией о силе сигнала.

В инструкции: все чертежи, тесты, код и 3D-модели для самостоятельной сборки. Надеюсь, вам понравится процесс и результат!

Шаг 1: Список материалов и принцип работы

Карманный металлодетектор на Arduino Pro Mini

1. Принцип работы

Используется импульсный индукционный метод. Каждая из 4 катушек состоит из отдельных катушек-передатчика (TX) и приёмника (RX). Импульс в TX создаёт эл.маг. поле вокруг RX. Изменяющееся поле индуцирует напряжение в RX, которое усиливается и измеряется Arduino по длине импульса.

Алгоритм сглаживания убирает шум, алгоритм калибровки на старте устанавливает пороги.

Когда металл попадает в поле, возникают вихревые токи (Eddy currents), отнимающие энергию — длина импульса в RX падает. Мы измеряем эту потерю мощности.

Если длина импульса ниже порога — зажигаются LED, пищит пиезо-зуммер, вибрирует вибромотор (в зависимости от амплитуды падения).

Схема эволюционировала год, став очень стабильной. Геометрия катушек оптимизирована под стабильность и глубину.

2. Список материалов

3. Работа компаратора LM339

Многие спрашивали про LM339. Он работает как компаратор напряжения: сравнивает разность на входах + и –, выдаёт низкий уровень или высокоомное состояние (логическая 1 с pull-up).

В нашей схеме +вход на Vcc, pull-up на выходе. На практике выход высокий, пока на –входе напряжение < 3.5 В (Vcc − 1.5 В по даташиту).

Когда –вход выше common-mode, а +вход в диапазоне — выход низкий (ток в ногу).

Ссылка на даташит: lm2901.pdf

Шаг 2: Печать корпуса

Карманный металлодетектор на Arduino Pro Mini

Корпус печатается 5 деталями. Файлы и размеры на Thingiverse. Конструкция оптимизирована под удобный захват и максимальное приближение катушек к исследуемой поверхности.

Карманный металлодетектор на Arduino Pro Mini

Аккуратно удалите лишний пластик. Сделайте это сейчас, чтобы потом выровнять электронику в корпусе перед финальной сборкой.

Шаг 3: Намотка и монтаж поисковых катушек

Карманный металлодетектор на Arduino Pro Mini

На каждую формовку намотайте 25 витков медной проволоки, оставив ~20 см для подключения. Используйте отверстия в формовках для равномерной намотки и ориентации. По мере намотки приклеивайте формовку к основанию (вверх ногами).

Карманный металлодетектор на Arduino Pro Mini

Итог: 8 катушек (4 пары TX/RX) смонтированы в базе, провода ориентированы одинаково и достаточно длинны для подключения к основной плате в верхнем отсеке.

Два проводных блока-направляющих с отверстиями в базе помогают не перепутать катушки.

Карманный металлодетектор на Arduino Pro Mini

Провода внутренних катушек — сверху, внешних — снизу блока, чтобы легче было подключать к основной плате.

Шаг 4: Сборка схемы

Карманный металлодетектор на Arduino Pro Mini

Четыре независимых узла: драйвер катушек, основная плата, LED-модуль, заряжаемое питание. Здесь собираем драйвер и основную плату.

1. Плата драйвера (Driver Board)

Карманный металлодетектор на Arduino Pro Mini

Веро-борд режем по отверстиям до 22×11 (рабочая область 20×9). Лучше ножовкой по отверстиям с обеих сторон, затем аккуратно сломайте лишнее. Проверьте, что плата входит в основание корпуса с зазорами.

По фото и схеме 10-мм сверлом вручную перебивайте дорожки на нижней стороне. Собирайте компоненты, избегая коротких замыканий. Отложите для тестов.

2. Основная плата (Main Board)

Карманный металлодетектор на Arduino Pro Mini
Карманный металлодетектор на Arduino Pro Mini

Веро-борд режем до 36×11 (рабочая 34×9). Тоже аккуратно перебивайте дорожки 10-мм сверлом.

Карманный металлодетектор на Arduino Pro Mini

Собирайте по схеме и фото: Arduino Pro Mini, LM339, остальные компоненты. Проверяйте на короткие замыкания. Отложите.

Карманный металлодетектор на Arduino Pro Mini
Карманный металлодетектор на Arduino Pro Mini

Шаг 5: Установка LED-индикаторов

Карманный металлодетектор на Arduino Pro Mini

Используются WS2812 (встроенный драйвер, управление по одному проводу). Библиотека FastLED подключается в Arduino IDE (см. раздел тестирования).

1. Монтаж LED в крышке катушек

Установите 4 LED в отверстия крышки так, чтобы VCC и GND совпадали, и они по центру. Закрепите горячим клеем.

2. Проводка LED

Три одножильных провода ~25 см паяйте к контактам LED. Центральный провод данных — по схеме IN/OUT.

Карманный металлодетектор на Arduino Pro Mini

3. Проверка соответствия корпуса

Убедитесь, что крышка садится ровно, зафиксируйте провода горячим клеем у основания крышки. Отложите.

Шаг 6: Сборка и тестирование блока

Карманный металлодетектор на Arduino Pro Mini

1. Подготовка к сборке

Тестируем платы по очереди. Arduino Pro Mini требует FTDI-адаптер для прошивки. Перед загрузкой кода добавьте библиотеку FastLED.h в Arduino IDE.

Приложены осциллограммы для отладки и скриншот Serial Plotter с пульсами и порогами — полезно для проверки чувствительности каналов.

Карманный металлодетектор на Arduino Pro Mini
Карманный металлодетектор на Arduino Pro Mini

Две версии кода: одна с тестовым сериальным выводом.

ВНИМАНИЕ: Не подключайте LiPo до последнего шага — случайное замыкание при сборке может привести к перегреву или возгоранию.

2. Тест основной платы

Подключите FTDI, загрузите код — должен загрузиться без ошибок и дыма.

3. Подключение драйверной платы

Соедините по схеме, разместите в корпусе (подборка под размеры). Загрузите код — без ошибок и дыма.

4. Подключение катушек

Соедините катушки с основной платой по схеме, разместите в корпусе. Следите за соответствием входов драйвера и основной платы.

С тестовым кодом в Serial Monitor / Plotter на приёмных катушках должны быть импульсы 5000–7000 мкс. При поднесении монеты импульс сокращается.

При наличии осциллографа проверяйте формы сигналов на этапах схемы.

Когда все каналы работают похоже — уложите провода так, чтобы корпус закрывался.

Карманный металлодетектор на Arduino Pro Mini
Карманный металлодетектор на Arduino Pro Mini

5. Подключение LED

Три провода от LED-крышки к основной плате. Загрузите код, проверьте работу LED. Закрепите крышку горячим клеем.

Файлы кода: Pocket_Metal_Locator_V11__TEST_CODE.zip, Pocket_Metal_Locator_V11.zip

Шаг 7: Подключение перезаряжаемого аккумулятора

Карманный металлодетектор на Arduino Pro Mini

ПРЕДУПРЕЖДЕНИЯ:

  1. LiPo подключайте только в самом конце — замыкание при сборке опасно.
  2. Берегите контакты батареи и зарядки от замыканий.
  3. LiPo требуют строгого ограничения тока заряда — настройте зарядку правильно.
  4. Не подключайте FTDI-кабель, когда устройство включено (кнопка нажата) — может повредить батарею.
Карманный металлодетектор на Arduino Pro Mini

1. Ограничение тока зарядки TP4056

TP4056 модифицируется резистором 4.7 кОм вместо штатного SMD, чтобы ток заряда <300 мА. Инструкция: TP4056.pdf. Старый резистор снимите, новый припаяйте, зафиксируйте клеем.

Проверьте зарядку от телефона — красный индикатор должен загореться.

Карманный металлодетектор на Arduino Pro Mini

2. Установка кнопки питания

Кнопку смонтируйте так, чтобы она выходила в центр крышки. Припаяйте по схеме: кнопка — выход зарядки — VCC Arduino. При нажатии включается схема.

Закрепите батарею клеем, выровняйте micro-USB гнездо с отверстием в крышке для зарядки.

Шаг 8: Финальное тестирование и эксплуатация

1. Физическая сборка

Аккуратно уложите провода, чтобы корпус закрывался. Закрепите основную плату в крышке клеем, закройте корпус.

2. Работа устройства

Калибровка: нажмите и держите кнопку питания. Все LED мигнут — устройство готово. Держите кнопку нажатой во время поиска. LED меняют цвет: Голубой → Зелёный → Красный → Фиолетовый (по росту сигнала). Виброотклик срабатывает на фиолетовом.

Готово к практическому использованию!

Код

Pocket_Metal_Locator_V11.ino (C/C++)

/* Pocket Metal Locator - Arduino Pro Mini April 2018 TechKiwiGradgets Version 11 */
#include "FastLED.h"
#define NUM_LEDS 4
#define DATA_PIN 11
CRGB leds[NUM_LEDS];

const float alpha = 0.85;
float smoothedvalue1 = 1000, smoothedvalue2 = 1000, smoothedvalue3 = 1000, smoothedvalue4 = 1000;
int sthreshold = 100;
float ledthreshold1 = 0.93, ledthreshold2 = 0.96, ledthreshold3 = 0.99, ledthreshold4 = 0.998;

boolean sample = false;
int calcounter = 0, scount = 200, numsamples = 20, t1 = 100;
long calav1 = 0, calav2 = 0, calav3 = 0, calav4 = 0;
int div1 = 0, div2 = 0, div3 = 0, div4 = 0;

int divA = 0; long tempA = 0; long pcounterA = 0;
int divB = 0; long tempB = 0; long pcounterB = 0;
int divC = 0; long tempC = 0; long pcounterC = 0;
int divD = 0; long tempD = 0; long pcounterD = 0;

int pwindow = 7500;
int dly1 = 4, dly2 = 1, dly3 = 500;
int threshdiff = 15;
long pulseav = 0;

boolean haptic = false;
int vduration = 1, vcounter = vduration;

void setup() {
  pinMode(12, OUTPUT); digitalWrite(12, LOW);
  Serial.begin(115200);
  LEDS.addLeds(leds, NUM_LEDS);
  LEDS.setBrightness(5);
  FastLED.setMaxPowerInVoltsAndMilliamps(5, 100);
  FastLED.setDither(0);

  pinMode(10, OUTPUT); // Buzzer
  pinMode(2, OUTPUT); pinMode(4, OUTPUT); pinMode(6, OUTPUT); pinMode(8, OUTPUT); // TX
  pinMode(3, INPUT); pinMode(5, INPUT); pinMode(7, INPUT); pinMode(9, INPUT); // RX
}

void loop() {
  // Опрос 4 каналов с измерением pulseIn и LPF
  // ... (полный код в прикреплённых файлах)
  // Калибровка при старте (scount циклов)
  // Обновление LED и вибромотора в updateLEDs()
}

void updateLEDs() {
  // Логика порогов: Purple (сильный) → Red → Green → Blue (слабый)
  // Пиезо и вибро на фиолетовом/красном/зелёном
  FastLED.show();
}

3D-модели (Custom parts)

Файлы на Thingiverse: CAD файл — корпус, формовки катушек, крышки.

Схемы

Полная принципиальная схема устройства:

Карманный металлодетектор на Arduino Pro Mini

Производственный процесс

  1. Arduino монитор температуры в авто — предотвращение теплового удара у детей
  2. Основы кузнечного дела: 16 ключевых техник для начинающих и профессионалов
  3. Точные решения металлосрезки для стали и алюминия
  4. Ножничный раскрой листового металла: экономичное преимущество для современного производства
  5. Понимание ножничного раскроя листового металла: процесс, инструменты, применение
  6. Высокоточные станки для перфорированного металла и их применения
  7. Понимание литейных производств: где металл становится строительными блоками современной промышленности
  8. Мастерство продольной резки рулонов: точечный раскрой металлорулонов
  9. Тонкий лист металла: универсальные применения нержавеющей стали
  10. Выпрямление листового металла: что это такое и зачем нужно