Innehållsförteckning:

Mini akustisk levitation: 5 steg (med bilder)
Mini akustisk levitation: 5 steg (med bilder)

Video: Mini akustisk levitation: 5 steg (med bilder)

Video: Mini akustisk levitation: 5 steg (med bilder)
Video: Acoustic levitation using Industrial Sonomechanics' Barbell horn 2024, December
Anonim
Mini akustisk levitation
Mini akustisk levitation

Se det här projektet på min webbplats för att se en kretssimulering och en video!

Akustisk levitation möjliggörs genom att ljud beter sig som en våg. När två ljudvågor skär varandra kan de antingen konstruktivt eller destruktivt störa varandra. (Så här fungerar brusreducerande hörlurar)

Detta projekt använder en ultraljudsavståndssensor för att skapa en levitationseffekt. Detta fungerar genom att skapa "fickor" där två motsatta ljudvågor stör varandra. När ett föremål placeras i fickan stannar det där och tycks sväva på plats.

Material behövs:

  • Arduino board:
  • H-bridge:
  • Avståndssensor:
  • Brödbräda:
  • Bygelkablar:
  • Diod:
  • Kondensatorer (kanske):

Originalprojekt från Make Magazine av Ulrich Schmerold.

Steg 1: Skaffa ultraljudssändare

Skaffa ultraljudssändare
Skaffa ultraljudssändare
Skaffa ultraljudssändare
Skaffa ultraljudssändare
Skaffa ultraljudssändare
Skaffa ultraljudssändare

Du måste offra en avståndssensor för detta steg (oroa dig inte, de är relativt billiga):

  • Avlöd och ta bort båda sändarna från kortet
  • Ta bort och spara nätskärmen från en
  • Lödtrådar till båda sändarna

Steg 2: Skapa krets

Skapa krets
Skapa krets

Skapa kretsen ovan och notera följande:

  • Du kanske inte nödvändigtvis behöver inkludera de två 100nF -kondensatorerna. (bara om ditt kort av någon anledning inte kan hantera kretsen och den stänger av sig själv)
  • 9v -batteriet är ett stand -in för valfri likströmförsörjning - mitt fungerade bra med ett 7,5v LiPo -batteri

Steg 3: Kod

Ladda upp den här koden till din Arduino:

// originalkod från:

byte TP = 0b10101010; // Varannan port mottar den inverterade signalens ogiltighetsinställning () {DDRC = 0b11111111; // Ställ in alla analoga portar som utgångar // Initialize Timer1 noInterrupts (); // Inaktivera avbrott TCCR1A = 0; TCCR1B = 0; TCNT1 = 0; OCR1A = 200; // Ställ in jämförregistret (16MHz / 200 = 80kHz fyrkantvåg -> 40kHz fullvåg) TCCR1B | = (1 << WGM12); // CTC -läge TCCR1B | = (1 <ingen förskalning TIMSK1 | = (1 << OCIE1A); // Aktivera jämför tidsavbrott (); // Aktivera avbrott} ISR (TIMER1_COMPA_vekt) {PORTC = TP; // Skicka värde på TP till utgångarna TP = ~ TP; // Invertera TP för nästa körning} void loop () {// Inget kvar att göra här:)}

Steg 4: Montera sändare och kalibrera

Montera sändare och kalibrera
Montera sändare och kalibrera
Montera sändare och kalibrera
Montera sändare och kalibrera
Montera sändare och kalibrera
Montera sändare och kalibrera

Du kan verkligen använda vad som helst för att göra detta, men jag slutade använda en uppsättning hjälpande händer (köp några här:

  • Börja med att placera sändarna ungefär 3/4 "från varandra
  • Ta en liten bit frigolit som är ungefär hälften så stor som en ärt (den behöver inte vara rund)
  • Placera frigolit på nätskärmen från steg 1
  • Använd en pincett eller tång och placera den mellan de två sändarna (den ska börja vicka när du kommer nära)
  • Flytta sändarna runt (närmare och längre ifrån varandra) tills frigolitet står stilla

Steg 5: Felsökning

Det tog mig ungefär femton minuter att få det att fungera första gången, men efter det var det ganska lätt att få igång det igen. Här är några saker du kan prova om det inte fungerar först:

  • Se till att du har anslutit allt korrekt
  • Öka spänningen till H-bron (annat batteri)
  • Få en mindre bit frigolit
  • Prova en annan position för sändarna
  • Prova att lägga till kondensatorerna (om du inte redan gjorde det)
  • Om det fortfarande inte fungerar kanske något är trasigt: prova en annan uppsättning sändare eller ett nytt batteri.

Rekommenderad: