Innehållsförteckning:
2025 Författare: John Day | [email protected]. Senast ändrad: 2025-01-13 06:58
Ultrasonic Theremin är ett Arduino -projekt som använder ett billigt theremin för att lära ut ljudvågor. Genom att ändra avståndet från min hand till enheten ändrar jag frekvensen för ljudvågorna. Dessutom flyttar en potentiometer amplituden hos vågen. Detta kan användas som en vetenskaplig lektion om ljudvågor.
Steg 1: Verktyg och tillbehör
Tillbehör
- Arduino Uno med USB -sladd
- Ultraljudssensor för att ändra frekvens (tonhöjd)
- Piezo Buzzer för att spela ljudet
- Potentiometer för att ändra amplituden (volym)
- LED med 220ohm motstånd (visuellt för frekvensen)
- Foamcore Board för fallet
- Jumper Wires
OBS: De flesta av dessa delar kom från ett Arduino -kit.
Verktyg
- Dator med Arduino installerad
- Lim pistol
- Laserskärare för kapsling
- Power Bank om du vill göra den bärbar
Steg 2: Montering
Elektroniken
De två första bilderna, till höger, visar elektroniken vid testning men i den tredje flyttade jag runt komponenterna för att rymma fodralet. Lysdioden och ultraljudssensorn använder 40 cm manliga till kvinnliga bygelkablar som definitivt kan vara mindre men det var vad jag hade till hands. Jag lindade precis överskottet runt Arduino innan jag höljde det.
Fallet
Lådan gjordes av MakerCase med mått som var lite små, så min prototyp krävde extra lim för att sätta ihop den. När du mäter dina delar ovanpå din Arduino lägger du till några millimeter till dina värden och sätter in dem i MakerCase för en fil som sedan kan laserskäras på skumkärnan.
Steg 3: Koden
Koden styrs huvudsakligen av en variabel som kallas tonhöjd. Tonhöjden använder karta för att dölja värdena från ultraljudssensorn till något som kan läsas av piezohögtalaren och i synnerhet till frekvenser mellan A3 och C5. Begränsningen ser till att kartan inte förutsäger en hög frekvens när den ser en hög sträcka (de var irriterande). Resten av koden är att läsa sensorn, lägga till en lysdiod och lägga till seriella meddelanden.
tonhöjd = begränsning (karta (avståndCm, 1, 40, 256, 523), 220, 523);