Sisukord:
- Samm: koostisosad
- Samm: ühendage ultraheliandurid Octasonic -plaadiga
- Samm: ühendage loogikataseme muundur Octasonic Boardiga
- Samm: ühendage loogikataseme muundur Raspberry Pi -ga
- Samm: ühendage Raspberry Pi 5V Octasonic 5V -ga
- Samm: installige tarkvara
- Samm: tehke muusikat
- 8. samm: žestikontroll
- 9. samm: korpuse valmistamine
- Samm: tõrkeotsing ja järgmised sammud
Video: Ultraheli Pi -klaver žestikontrollidega!: 10 sammu (piltidega)
2024 Autor: John Day | [email protected]. Viimati modifitseeritud: 2024-01-30 08:49
See projekt kasutab sisenditena odavaid HC-SR04 ultraheli andureid ja genereerib MIDI-noote, mida saab Raspberry Pi süntesaatori kaudu esitada kvaliteetse heli saamiseks.
Projekt kasutab ka žestide juhtimise põhivormi, kus muusikariista saab vahetada, hoides paar sekundit käed kahe äärepoolseima sensori kohal. Kui olete lõpetanud, saate Raspberry Pi väljalülitamiseks kasutada veel ühte žesti.
Ülaltoodud video näitab valmistoodet lihtsas laserlõigatud korpuses. Selles juhendis on hiljem põhjalikum video, mis selgitab projekti toimimist.
Lõin selle projekti koostöös The Gizmo Dojoga (minu kohalik tegijaruum Broomfieldis, CO), et teha mõned interaktiivsed eksponaadid, mida saaksime viia kohalikele STEM/STEAM üritustele ja Maker Faires'ile.
Tutvuge ka uusimate dokumentide ja õpetustega aadressil https://theotherandygrove.com/octasonic/, mis sisaldab nüüd teavet selle projekti Pythoni versiooni kohta (see juhend on kirjutatud Rust versiooni jaoks).
Samm: koostisosad
Selle juhendi jaoks vajate järgmisi koostisosi:
- Raspberry Pi (2 või 3) koos SD -kaardiga
- 8 ultraheli HC-SR04 andurit
- Octasonic Breakout Board
- Kahesuunaline loogika taseme muundur
- 32 x 12 "naissoost naissoost juhtmed ultraheliandurite ühendamiseks
- 13 x 6-tollised naissoost hüppajajuhtmed Raspberry Pi, Octasonic ja Logic Level Converter ühendamiseks
- Raspberry Pi jaoks sobiv toiteallikas
- PC kõlarid vms
Soovitan võimaluse korral kasutada Raspberry Pi 3, kuna sellel on suurem arvutusvõimsus, mille tulemuseks on reageerivam ja meeldivam heli. See võib hästi töötada koos Raspberry Pi 2 -ga, pisut kohandades, kuid ma ei prooviks selle projekti jaoks kasutada originaalset Raspberry Pi -d.
HC -SR04 ultrahelianduritel on 4 ühendust - 5V, GND, Trigger ja Echo. Tavaliselt on Trigger ja Echo ühendatud mikrokontrolleri või Raspberry Pi eraldi tihvtidega, kuid see tähendab, et 8 anduri ühendamiseks peate kasutama 16 kontakti ja see pole otstarbekas. See on koht, kus Octasonicu murdeplaat sisse tuleb. See plaat ühendub kõigi anduritega ja sellel on spetsiaalne mikrokontroller, mis jälgib andureid ja suhtleb seejärel Raspberry Pi -ga üle SPI.
HC-SR04 vajab 5 V ja Raspberry Pi on ainult 3,3 V, seetõttu vajame ka loogika taseme muundurit, mis ühendab Raspberry Pi Octasonicu murdeplaadiga.
Samm: ühendage ultraheliandurid Octasonic -plaadiga
Kasutage iga ultraheli anduri ühendamiseks plaadiga 4 naissoost naissoost hüppajajuhtmeid, olge ettevaatlik, ühendades need õigesti. Plaat on konstrueeritud nii, et tihvtid on samas järjekorras kui ultrahelianduri tihvtid. Laual vasakult paremale on tihvtid GND, Trigger, Echo, 5V.
Samm: ühendage loogikataseme muundur Octasonic Boardiga
Raspberry Pi ja Octasonic Board suhtlevad SPI kaudu. SPI kasutab 4 juhtmest:
- Kapten sisse, ori välja (MISO)
- Master Out, Slave In (MOSI)
- Seeriakell (SCK)
- Alamvalik (SS)
Lisaks peame ühendama toite (5V ja GND).
Loogika taseme muunduril on kaks külge - madalpinge (LV) ja kõrgepinge (HV). Vaarikas ühendub LV küljega, kuna see on 3.3V. Octasonic ühendub HV küljega, kuna see on 5V.
See samm on mõeldud Octasonicu ühendamiseks loogika taseme muunduri HV poolega
Vaadake sellele sammule lisatud fotot, mis näitab, millised tihvtid tuleks loogika taseme muunduriga ühendada.
Ühendused Octasonicu ja Loogika taseme muunduri vahel peaksid olema järgmised:
- 5V kuni HV
- SCK kuni HV4
- MISO kuni HV3
- MOSI kuni HV2
- SS kuni HV1
- GND kuni GND
Samm: ühendage loogikataseme muundur Raspberry Pi -ga
Raspberry Pi ja Octasonic Board suhtlevad SPI kaudu. SPI kasutab 4 juhtmest:
- Kapten sisse, ori välja (MISO)
- Master Out, Slave In (MOSI)
- Seeriakell (SCK)
- Alamvalik (SS)
Lisaks peame ühendama toite (3.3V ja GND). Loogika taseme muunduril on kaks külge - madalpinge (LV) ja kõrgepinge (HV). Vaarikas ühendub LV küljega, kuna see on 3.3V. Octasonic ühendub HV küljega, kuna see on 5V.
See samm on mõeldud Raspberry Pi ühendamiseks loogika taseme muunduri LV küljega
Ühendused Raspbery Pi ja loogikataseme muunduri vahel peaksid olema järgmised:
- 3.3V kuni LV
- GPIO11 (SPI_SCLK) kuni LV4
- GPIO09 (SPI_MISO) kuni LV3
- GPIO10 (SPI_MOSI) kuni LV2
- GPIO08 (SPI_CE0_N) SS kuni LV1
- GND kuni GND
Kasutage sellele sammule lisatud skeemi Raspberry Pi õigete tihvtide leidmiseks!
Samm: ühendage Raspberry Pi 5V Octasonic 5V -ga
Lisada tuleb üks viimane traat. Peame Octasonicu plaati tegelikult 5 V toitega varustama, nii et teeme seda, ühendades ühe Raspberry Pi 5V nööpnõelte Octasonic AVR päises oleva 5V pistikuga. See on AVR -päiseploki vasakpoolne alumine tihvt (see on 2 x 3 plokk plaadi paremas ülanurgas). Vaadake lisatud fotot, mis näitab AVR -ploki asukohta.
Vaadake teist lisatud skeemi, et leida Raspberry Pi 5V pin.
Samm: installige tarkvara
Installige Raspian
Alustage Raspbian Jessie puhta installimisega, seejärel värskendage see uusimale versioonile:
sudo apt-get update
sudo apt-get upgrade
Luba SPI
Selle projekti toimimiseks peate Raspberry Pi -s lubama SPI! Selleks kasutage utiliiti Raspberry Pi Configuration.
Samuti on oluline Pi taaskäivitada pärast SPI lubamist, et see jõustuks
Installige FluidSynth
Fluidsynth on hämmastav tasuta tarkvara MIDI süntesaator. Saate selle käsurealt installida selle käsuga:
sudo apt-get install fluidsynth
Installige rooste programmeerimiskeel
Ultraheli Pi klaver on rakendatud Mozilla Rust programmeerimiskeeles (see on nagu C ++, kuid ilma halbade osadeta). Seda kasutavad kõik lahedad lapsed tänapäeval.
Rusti installimiseks järgige juhiseid aadressil https://rustup.rs/. Aja säästmiseks on juhised selle ühe käsu käivitamiseks. Installimise ajal saate aktsepteerida vaikevastuseid kõigile küsimustele.
MÄRKUS. Pärast selle juhendi postitamist on Rusti installimisel Raspberry Pi -le mõningaid probleeme. Halb ajastus:-/ aga olen probleemi lahendamiseks muutnud allolevat käsku. Loodetavasti parandavad nad selle varsti. Töötan pildi loomisel, mille inimesed saavad alla laadida ja SD -kaardile salvestada. Kui soovite, võtke minuga ühendust.
eksport RUSTUP_USE_HYPER = 1curl https://sh.rustup.rs -sSf | sh
Laadige alla ultraheli Pi Piano lähtekood
Ultrasonic Pi Piano lähtekoodi lähtekoodi hostitakse githubis. Koodi hankimiseks on kaks võimalust. Kui olete gitiga ja githubiga tuttav, saate repot kloonida:
git kloon [email protected]: TheGizmoDojo/UltrasonicPiPiano.git
Teise võimalusena saate alla laadida uusima koodi zip -faili.
Koosta lähtekood
cd UltrasonicPiPiano
lasti ehitamine -vabastamine
Testige koodi
Enne järgmise sammuna muusika tegemise juurde asumist veenduge, et tarkvara töötaks ja et saaksime anduritelt kehtivaid andmeid lugeda.
Rakenduse käivitamiseks kasutage järgmist käsku. See loeb anduritelt andmeid ja teisendab need MIDI -märkmeteks, mis seejärel konsoolile prinditakse. Kui liigutate kätt andurite kohal, peaksite nägema andmete loomist. Kui ei, siis minge selle juhendi lõpus olevasse tõrkeotsingu jaotisse.
lastijooks -vabastamine
Kui olete uudishimulik, käsib lipp "--release" Rustil kood võimalikult tõhusalt kompileerida, mitte vaikeseade "--debug".
Samm: tehke muusikat
Veenduge, et olete endiselt kataloogis, kust allika koodi alla laadisite, ja käivitage järgmine käsk.
See skript "run.sh" tagab, et kood on kompileeritud, ja käivitab seejärel koodi, suunates väljundi fluidsünteesi.
./run.sh
Veenduge, et teil on Raspberry Pi 3,5 mm helipistikuga ühendatud võimendatud kõlarid ja kuulete muusikat, kui liigutate käsi andurite kohal.
Kui te ei kuule muusikat ja teil on HDMI -monitor ühendatud, läheb heliväljund tõenäoliselt sinna. Selle parandamiseks käivitage lihtsalt see käsk ja taaskäivitage Pi Piano:
sudo amixer cset numid = 3 1
Helitugevuse muutmine
Helitugevus (või "võimendus") määratakse parameetriga "-g" voolavussünteesiks. Saate skripti run.sh muuta ja seda väärtust muuta. Pange tähele, et selle parameetri väikesed muudatused põhjustavad suuri helitugevuse muutusi, seega proovige seda väikeste koguste (nt 0,1 või 0,2) võrra suurendada.
8. samm: žestikontroll
Vaadake selle sammu juurde lisatud videost projekti täielikku tutvustamist, sealhulgas seda, kuidas žestikontrollid toimivad.
Kontseptsioon on väga lihtne. Tarkvara jälgib, millised andurid on kaetud (10 cm raadiuses) ja millised mitte. See tähendab 8 binaararvu (1 või 0). See on väga mugav, kuna 8 -st kahendarvust koosnev jada moodustab baidi, mis võib tähistada numbreid vahemikus 0 kuni 255. Kui te veel binaararvudest ei tea, soovitan tungivalt otsida õpetust. Kahendarvud on põhioskus, mida õppida, kui soovite programmeerimise kohta rohkem teada saada.
Tarkvara kaardistab andurite hetkeoleku ühe baidini, mis esindab praegust žesti. Kui see arv jääb mitme tsükli jooksul samaks, siis tarkvara toimib selle žesti järgi.
Kuna ultraheliandurid ei ole eriti usaldusväärsed ja andurite vahel võib esineda häireid, peate žestide kasutamisel olema kannatlik. Proovige varieerida kaugust, mida hoiate kätest anduritest, samuti käe hoidmise nurka. Samuti proovite külma hoida andurite kohal, et heli paremini peegeldada.
9. samm: korpuse valmistamine
Kui soovite sellest teha püsinäituse ja saaksite seda inimestele näidata, soovite tõenäoliselt teha mingisuguse aia. See võib olla valmistatud puidust, papist või paljudest muudest materjalidest. Siin on video, mis näitab korpust, mille kallal me selle projekti jaoks töötame. See on valmistatud puidust, augud on puuritud, et hoida ultraheli andureid paigal.
Samm: tõrkeotsing ja järgmised sammud
Tõrkeotsing
Kui projekt ei tööta, on see tavaliselt seotud juhtmestiku veaga. Võtke aega, et kontrollida kõiki ühendusi.
Teine levinud probleem on SPI lubamata jätmine ja pi taaskäivitamine.
Palun külastage aadressi https://theotherandygrove.com/octasonic/, et saada täielikku dokumentatsiooni, sealhulgas veaotsingu näpunäiteid, Rust ja Pythoni spetsiifilisi artikleid ning teavet toe hankimise kohta.
Järgmised sammud
Kui olete projekti tööle pannud, soovitan koodiga katsetada ja proovida erinevaid muusikariistu. MIDI -instrumentide koodid on vahemikus 1 kuni 127 ja need on siin dokumenteeritud.
Kas soovite ühte muusikariista, kus iga andur mängib erinevat oktaavi? Võib -olla soovite, et iga andur oleks eraldi instrument? Võimalused on peaaegu piiramatud!
Loodan, et teile meeldis see õpetlik. Kui teile meeldis, siis meeldige ja tellige kindlasti mind siin ja minu YouTube'i kanalit, et näha tulevasi projekte.
Soovitan:
Ultraheli sääsetapja: 3 sammu (piltidega)
Ultrasonic Mosquito Killer: Mosquitoes SUCK! Lisaks tüütutele sügelevatele muhkudele toovad need verd imevad paganad inimestele mõned kõige surmavamad haigused; Dengue, malaaria, Chikungunya viirus … loetelu jätkub! Igal aastal sureb umbes miljon inimest
Ultraheli helipüstol (parameetriline kõlar): 3 sammu (piltidega)
Ultraheli helipüstol (parameetriline kõlar): selle projekti jaoks ehitasin relva, mis tulistab välja kitsa ultraheli kiirguse. Heli saavad kuulda ainult kitsas valgusvihus olevad inimesed või läheduses asuva allika kaudu, kui heli demoduleeritakse. Mind inspireeris selle projekti loomine pärast
Keha-ultraheli sonograafia Arduinoga: 3 sammu (piltidega)
Keha-ultraheli sonograafia koos Arduinoga: Tere! Minu hobi ja kirg on füüsikaprojektide elluviimine. Üks mu viimaseid töid on ultraheli sonograafia. Nagu alati, proovisin seda võimalikult lihtsaks teha osadega, mida saate ebayst või aliexpressist. Nii et vaatame, kui kaugele ma võin minna
Tehke kodus ultraheli tuvastamise ja mõõtmise seade: 7 sammu (piltidega)
Tehke kodus ultraheli tuvastamise ja mõõtmise seade: Tere! Olen Sourabh Kumar, soovisin teha ärevusttekitavat radarit, kuid see ebaõnnestus, proovin uuesti, kuid täna juhendan teid kodus ultrahelianduri (transiiveri) abil ultraheli tuvastamise ja mõõtmise seadme loomiseks, ma tean, et neid on palju pro
Ultraheli seade nägemispuudega inimeste navigeerimise parandamiseks: 4 sammu (piltidega)
Ultraheli seade nägemispuudega inimeste navigeerimise parandamiseks: meie südamed lähevad vähekindlustatud inimestele, kui kasutame oma andeid tehnoloogia ja uurimislahenduste täiustamiseks, et parandada haigette elu. See projekt loodi ainult sel eesmärgil. See elektrooniline kinnas kasutab ultraheli tuvastamist