Мини-акустическая левитация на Arduino UNO и HC-SR04 (ультразвук)
Компоненты и материалы
- Arduino UNO — 1 шт.
- Ультразвуковой датчик HC-SR04 — 1 шт. (будет разобран на излучатели)
- H-мост (L298N или драйвер двигателей) — 1 шт. (для питания излучателей в противофазе)
- Блок питания 7.5–9V DC (LiPo 2S / 9V «Крона» / BP) — для H-моста
- Маятная плата, перемычки, диод 1N4007, конденсаторы 100 нФ (опц.)
ПО
- Arduino IDE
Принцип работы
Акустическая левитация возможна за счет стоячей волны: два ультразвуковых излучателя, работающих в противофазе, создают зоны высокого и низкого давления. В узлах стоячей волны (зонах низкого давления) легкие объекты (пенопласт, капельки) удерживаются в воздухе.
Датчик HC-SR04 содержит пару пьезо-излучателей (40 кГц). Мы извлекаем их и питaем от H-моста в противофазе, генерируя квадратную волну 40 кГц (80 кГц переключение пинов).
Шаг 1: Извлечение излучателей из HC-SR04
- Распаяйте оба излучателя (передатчик T и приемник R — они идентичны).
- С одного снимите металлическую сетку (она понадобится как подставка для объекта).
- Припаяйте провода к выводам обоих излучателей.
Шаг 2: Схема подключения
- H-мост: входы IN1, IN2 → Arduino A0–A5 (все 6 аналоговых пинов настроены как выходы, см. код).
- Выходы H-моста OUT1/OUT2 → два излучателя (аноды), катоды — на землю.
- Питание H-моста: 7.5–9V (Vmot), 5V логика от Arduino.
- Диод 1N4007 параллельно питанию мотора (защита от самOINдукции).
- Два конденсатора 100 нФ к питанию H-моста (если плата перезагружается от помех).
Шаг 3: Код (Timer1 CTC, 40 кГц)
// Based on: https://makezine.com/projects/micro-ultrasonic-levitator/
byte TP = 0b10101010; // чередование битов для противофазы на 6 пинах порта C (A0-A5)
void setup() {
DDRC = 0b11111111; // Все пины порта C (A0-A5) на выход
noInterrupts();
TCCR1A = 0;
TCCR1B = 0;
TCNT1 = 0;
OCR1A = 200; // 16 MHz / 200 = 80 kHz переключение -> 40 kHz полная волна
TCCR1B |= (1 << WGM12); // CTC mode
TCCR1B |= (1 << CS10); // Prescaler = 1
TIMSK1 |= (1 << OCIE1A); // Enable compare match interrupt
interrupts();
}
ISR(TIMER1_COMPA_vect) {
PORTC = TP; // Вывод паттерна на A0-A5
TP = ~TP; // Инверсия для следующего полупериода
}
void loop() {
// Ничего не нужно в loop — всё в прерывании таймера
}
Шаг 4: Монтаж и калибровка
- Закрепите излучатели напротив друг друга на расстоянии ~19 мм (3/4″). Удобно использовать «третьи руки» (helping hands).
- Положите кусочек пенопласта (размер с половину горошины) на снятую сетку от излучателя.
- Пинцетом поместите пенопласт между излучателями. Он должен начать дрожать/левитировать.
- Точно подвижте излучатели (ближе/дальше) до устойчивой левитации — объект замерзает в узде стоячей волны.
Устранение неполадок
- Проверьте проводку (H-мост, питание, общая земля с Arduino).
- Повысьте напряжение на H-мосте (свежий LiPo 2S = 7.4V или 9V).
- Используйте МЕНЬШИЙ кусочек пенопласта.
- Попробуйте другие позиции излучателей (расстояние 15–22 мм).
- Добавьте конденсаторы 100 нФ на питание H-моста.
- Если не работает — проверьте излучатели на работоспособность (поменяйте местами, попробуйте другую пару).
Ссылки
- Оригинал идеи: Make: Micro Ultrasonic Levitator
- Симуляция схемы и подробности на сайте автора.
Производственный процесс
- Антиперспиранты/дезодоранты-стики: наука, история и производственные инсайты
- Clientron запускает PT2500 и PST750 POS терминалы, мостя вводной и премиальный ритейл
- Astera Labs представляет решения CXL 2.0 и PCIe 5.0 для снижения задержек и питания гетерогенных вычислений
- Открыватель гаражных ворот на Raspberry Pi с живой видео-трансляцией — пошаговое руководство
- EMAR Mini: Компактный открытый робот экстренной помощи для борьбы с COVID-19
- Одностufenная акустическая левитация для быстрого синтеза одноатомных платиновых нанокластеров и Pt-декориров…
- Создание сильного бизнес-кейса для CMMS: повышение эффективности ТО и ROI
- Мини VMC станок: компактное ЧПУ фрезерование для малых проектов
- Понимание мини токарных станков с ЧПУ: функции, особенности и преимущества
- Мини ЧПУ токарные станки: функциональность и применение