声悬浮的原理

     声悬浮是高强条件下的一种非线性效应,其基本原理是利用声驻波与物体的相互作用产生竖直方向的悬浮力已克服物体的重量,同时产生水平方向的定位力将物体固定于声波节处。

实验现象


超声波悬浮


基于Arduino的超声波悬浮原理:通过Arduino nano的A0和A1端口产生40KHz的方波信号,在用L298N电机驱动模块对Arduino nano产生的40KHz方波信号进行放大,在通过12V的电压对电机驱动模块进行驱动使超声波发射器产生强的相互作用力,进而使它能够产生克服物体重量的悬浮力。

材料清单:

Arduino nano开发板一块;

超声波发射器额两个;

L892N电机驱动模块一个;

小面包板一块;

接线和杜邦线若干;

Arduino nano的USB数据线一条;

可调压设备或12v的供电设备;

纸板两块;

棉签棒一根;

制作步骤:

1,先找两个超声波发射器进行拆卸,得到我们需要的部分,超声波发射器可以从HC-SR04超声波测距模块上用电焊笔拆下了两个(字母T代表是超声波的发射器、R代表的1是超声波的接收器)

python开发超声波检测脚本 超声波 arduino_超声波测距

超声波发射器与接收器上的黑色圆圈为它的负极

python开发超声波检测脚本 超声波 arduino_超声波测距_02

拆解后的到如下的超声波发射器元件

python开发超声波检测脚本 超声波 arduino_python开发超声波检测脚本_03

然后用胶枪进行粘接成如下成品

python开发超声波检测脚本 超声波 arduino_开发板_04

焊接线这里黑色的是正极

python开发超声波检测脚本 超声波 arduino_超声波测距_05

记得把从超声波发射器上拆下来的圆形滤网用热熔胶枪粘在没有棉花的棉签棒上

python开发超声波检测脚本 超声波 arduino_arduino_06

得到一个可以去放的工具。

2、用纸板做一个可以支架用来安装超声波发射装置

python开发超声波检测脚本 超声波 arduino_驱动模块_07

两个超声波发射装置的距离23.8mm,因为声音在空气中传播的速度大约是340m/s,它的波长为340m/s/40KHz=8.5mm,而在实际的过程中所需的距离应该更大为波长的三倍25.5mm,考虑到超声波发射器铝框里还有一定的距离,所以距离为23.8mm。

距离越小悬浮力越大,距离约大悬浮力越小,但稳定性不好,所以可以是距离控制在23.8mm之内

3、接线

python开发超声波检测脚本 超声波 arduino_开发板_08

L298N电机驱动模块与Arduino nano开发板

白色IN2-----A0

棕色IN1-----A1

黑色输入5V-----VIN

紫色主电源负极-----GND

L289N电机驱动模块与超声波发射装置

黑色正极与正极-----UOT1

红色负极与负极----UOT2

L298N电机驱动模块的主电源正极(蓝色)与负极(紫色)分别接一个出线用12V的电压进行供电。

4、程序

所用软件Arduino IDE

代码

byte TP = 0b10101010; 
void setup() {
DDRC = 0b11111111; 
noInterrupts();
TCCR1A = 0;
TCCR1B = 0;
TCNT1 = 0;
OCR1A = 200; 
TCCR1B |= (1 << WGM12); 
TCCR1B |= (1 << CS10); 
TIMSK1 |= (1 << OCIE1A); 
interrupts(); 

}

ISR(TIMER1_COMPA_vect) {

PORTC = TP; 
TP = ~TP; 
}
void loop() {
}

5、示波器波形的测量。

python开发超声波检测脚本 超声波 arduino_超声波测距_09

B站制作过程:


基于Arduino的超声波悬浮制作过程讲解