Arduino UNO + HC-SR04 超声波换能器迷你声悬浮演示
核心物料
| 组件 | 数量 |
|---|---|
| Arduino UNO R3 | 1 |
| HC-SR04 超声波测距模块(拆解取发射/接收头) | 1 |
| L298N / H 桥驱动模块 | 1 |
| 7.5~9V 电池组(LiPo 或 9V 方块电池) | 1 |
| 面包板、跳线、1N4007 二极管、100 nF 电容(可选) | 若干 |
原理速记
声悬浮利用驻波:两个相向发射的 40 kHz 超声波在中间形成稳定的声压节点(低压区)与反节点(高压区)。轻质发泡聚苯乙烯微球(约豌豆大小 1/10)置于声压节点,受辐射压力托举,悬浮于半空。本项目将 HC-SR04 发射头(T)与接收头(R)拆解,分别作为上下换能器,经 H 桥反相驱动形成对向驻波。
制作步骤
- 拆解 HC-SR04:烙铁拆下金属罩网,取出发射头(标 T)与接收头(标 R),保留一个金属网罩作下换能器保护罩。引脚焊接导线并加热缩管绝缘。
- 搭建 H 桥驱动电路:按原理图连接 L298N,两路输出分别接上下换能器,输入端并联接 Arduino 模拟口 A0~A5(全部配置为数字输出)。可选 100 nF 电容跨接电源轨抑制纹波。
- 编写 40 kHz 方波驱动代码:利用 Timer1 CTC 模式产生 80 kHz 方波(全周期 40 kHz),中断中翻转 PORTC 低 6 位,实现相邻引脚反相输出。
核心驱动代码
// 40 kHz 驻波驱动,基于 Make: 项目改写
byte TP = 0b10101010; // 相邻位反相
void setup() {
DDRC = 0x3F; // A0~A5 设为输出
noInterrupts();
TCCR1A = 0; TCCR1B = 0; TCNT1 = 0;
OCR1A = 200; // 16 MHz / 200 = 80 kHz 翻转 → 40 kHz 全波
TCCR1B |= (1 << WGM12); // CTC
TCCR1B |= (1 << CS10); // 无预分频
TIMSK1 |= (1 << OCIE1A); // 比较匹配中断
interrupts();
}
ISR(TIMER1_COMPA_vect) {
PORTC = TP; // 输出当前模式
TP = ~TP; // 翻转供下次
}
void loop() {} // 后台自动运行
调试与悬浮调节
- 上下换能器初始间距约 19 mm(3/4″),中间放半颗豌豆大小的泡沫球(用镊子置于下换能器金属网上)。
- 上电观察泡沫球:若剧烈抖动上下窜动,微调间距(±1 mm)直到球体稳定悬浮、仅轻微振动。
- 若完全无法悬浮:检查换能器极性(T/R 不能接反)、H 桥供电电压(尝试 9V→12V)、加装 100 nF 滤波电容、更换换能器对。
常见问题排查表
| 现象 | 可能原因 | 对策 |
|---|---|---|
| 换能器发热严重 | 驱动电压过高/占空比异常 | 降低供电电压、检查 Timer1 配置 |
| 泡沫球瞬间被弹飞 | 间距过小/驻波节点偏移 | 增大间距、微调换能器角度 |
| 串口监视器乱码/复位 | H 桥大电流干扰 MCU | 共地单点接地、加大电源电容、MCU 单独供电 |
扩展玩法
- 双轴声悬浮(XY 相控阵)实现微粒平面定位移动。
- 配合光栅/高速相机拍摄驻波节点形态。
- 更换 28 kHz/58 kHz 换能器实验不同波长悬浮能力。
原理图
制造工艺
- 构建 CMMS 商业论证:量化维护效能与 ROI,赢取高层预算
- 止汗除臭棒:科学原理、历史与制造洞察
- 树莓派车库门开启器加视频流:磁性门状态传感器与实时画面集成
- EMAR Mini:紧凑型开源紧急救援辅助机器人
- 迷你VMC详解:小型项目的紧凑型CNC铣削方案
- 迷你CNC车床全解析:功能、特性与优势
- 迷你CNC车床:功能特性与应用领域
- Clientron推出PT2500与PST750 POS终端 跨越入门至高端零售方案
- Astera Labs 推出 CXL 2.0 与 PCIe 5.0 解决方案,降低延迟赋能异构计算
- 一步声学悬浮法快速合成单原子铂纳米簇和Pt修饰微孔La₂O₃催化剂
- ReS₂/GaAs 异质结饱和吸收体实现超快被动 Q 开关 Nd:YVO₄ 激光器
- 基于电子层析成像的铅笔状GaN/(In,Ga)N核壳纳米线高分辨三维成像