Opprette en høyttaler for din Raspberry Pi ved hjelp av Piezo Element

Å legge lyd til et Raspberry Pi-prosjekt er et enkelt spørsmål om å koble til en HDMI-skjerm med innebygde høyttalere eller ved å legge til forsterkede høyttalere til lydporten. Imidlertid er ingen løsning veldig lett eller bærbar. Prosjekter som krever et lite, energieffektivt fotavtrykk, har ikke plass til store forsterkede høyttalere. Men for enkle lyder kan Pi generere frekvenser på sine GPIO-pinner som driver et piezoelement for å produsere lyder.

Denne opplæringen vil vise deg hvordan du kobler et billig piezo elektrisk element til Pi for å produsere enkle farger.


Hvordan det fungerer

Piezo elektriske elementer arbeider med prinsippet om at enkelte materialer som krystaller vil produsere strøm når de legges under stress, bøyd eller vibrasert. Enkelte bruksområder av et piezoelement inkluderer å oppdage vibrasjoner som baner eller lyder.

Piezo elektriske komponenter fungerer også i revers, hvis en strøm blir brukt på elementet, vil den bøye eller bøye seg. Ved å bruke denne metoden og å bruke et oscillerende signal, vil elementet vibrere ved samme frekvens som signalet.


Samle komponentene og verktøyene

  • Raspberry Pi - Modell A eller B med strømforsyning og SD-kort
  • Piezo Electric Element
  • Solid Core Hookup Wire (svart og rødt)
  • Kvinne til Kvinne Jumper Wire
  • Tynn plast for en vibrerende membran. Et stykke plastemballasje fungerte i mitt eksempel
  • Superlim
  • Lodding og lodding
  • Tredje håndverktøy
  • Wire Cutter / Stripper

Monter og fest opp Piezo-elementet

For å koble opp piezoelementet må du lodde de strengede ledningene til noe som kan koble til Pi-pinnene. Hvis du er villig til å begå jumper-ledninger til prosjektet, kutt og stripp den ene enden av ledningen og loddetinnet som nedenfor. Instruksjonene nedenfor bruker litt oppkoblingstråd for å unngå å skille ut jumperkabler.

  • Fest den røde ledningen fra piezoelementet i det tredje håndklippet og tinn den utsatte ledningen ved å varme opp ledningen og beleg den med lodd
  • Kutte to inches med rød oppkoblingstråd
  • Strip begge endene av ledningen med din trådstrimmel
  • Fest den røde tilkoblingskabelen i den andre klemmen på den tredje hånden slik at den overlapper ledningen fra piezoelementet
  • Løs piezoelementets røde ledning til den røde tilkoblingskabelen. Eventuelt kan du dekke dette leddet med varmekrympekabel
  • Sett den andre enden av den røde tilkoblingskabelen inn i den ene enden av den røde jumperkabelen
  • Gjenta trinnene ovenfor for den svarte ledningen, den svarte koblingsledningen og den svarte jumperkabelen
  • Kutt en stor sirkel fra plasten for å lage en vibrerende membran for elementet.
  • Sett en dråpe super lim i midten av plastmembranen og skyv elementets kobberside ned i limen, hold den inntil den har satt. Plastmembranen vil bidra til at lyden blir høyere og mer konsistent.

  • Montert lydelement
  • Koble den røde jumperen til Pi-pin GPIO 22 eller den 8. pin nede til venstre når SD-kortet er på toppen. Bruk dette pinout-diagrammet for å få hjelp
  • Koble den svarte jumperen til en jordpinne på Pi. Tredje pin ned til høyre skal gjøre.
  • Jumpers koblet til Pi Pins

Etter disse trinnene bør du ha et montert piezoelement på en membran som forsterker summen av elementet festet til Pi. Det skal se noe som bildet nedenfor.

Montert Pi og Element

Sett opp Raspberry Pi

Det er flere guider for å kjøpe og installere et OS på Raspberry Pi. Følg ditt valg av kjøp og installasjon. Når Raspberry Pi er oppstart og konfigurert, fortsett til neste trinn.


Installer ledninger Pi

Nå som elektronikken er tilkoblet, er programvaren for å kjøre GPIO-porter nødvendig. WiringPi-prosjektet gir fin kontroll over GPIO-pinnene fra kommandolinjen og C. Det finnes python og andre wrappers for wiringPi også. I dette eksemplet vil du installere wiringPi og vi vil endre et C eksempel program for å produsere lyd.

  • Pass på at du har installert git på Pi med følgende kommando
    sudo apt-get install git
  • Last ned wiringPi-prosjektet ved hjelp av Git
    git klon git: //git.drogon.net/wiringPi
  • Kompilere og installer wiringPi prosjektet
     cd wiringPi ./build

Lag musikk med Pi

I eksemplet katalogen av ledningerPi-depotet er en fil som heter softTone.c. Denne filen demonstrerer bruken av funksjonen softToneWrite som oscillerer den valgte pinnen ved en gitt frekvens. Eksempelprogrammet får piezoelementet til å spille en skala. For å teste at du har bygget og kablet, kompilerer du alt riktig, og kjører det som rot.

 CD-eksempler gjør softTone sudo ./softTone

Du bør nå høre en skala som spilles på piezoelementet flere ganger. Bruk CTRL C å stoppe programmet. Deretter får du litt mer kreativ med musikken. Følg instruksjonene nedenfor for å endre softTone.c Program for å spille noe litt mer interessant. Fordi matrisen skala er bare liste over frekvenser, du kan erstatte tallene og størrelsen på arrayet med det du vil. Bytt ut filen softTone.c med innholdet nedenfor. Det er faktisk bare noen få små endringer i originalen. Resultatet vil spille en enkelt melodi linje og stoppe.

 #inkludere  #inkludere  #inkludere  #inkludere  #inkludere  #define PIN 3 int skala [23] = 659, 659, 0, 659, 0, 523, 659, 0, 784, 0,0,0, 392, 0,0,0, 523, 0,0, 392 , 0,0,330; int main () int i; wiringPiSetup (); softToneCreate (PIN); for (i = 0; i < 23 ; ++i)  printf ("%3d\n", i) ; softToneWrite (PIN, scale [i]) ; delay (200) ;  

Lag og kjør softTone program igjen:

 lage softTone sudo ./softTone

Hvis du lytter nøye, kan du kanskje gjenkjenne denne lille melodien. Ved ganske enkelt å endre skala array og størrelsen på den på erklæring og for loop kan du gjøre melodien så lang eller kort som du vil.


Sammendrag

For prosjekter som krever bare enkle lyder og ikke et fullt forsterket lydsystem, kan et lite piezoelement være den ideelle løsningen. I denne opplæringen lærte du hvordan du knytter et piezoelement til Raspberry Pi, installer wiringPi, og bruk eksempler fra wiringPi-pakken for å spille musikk på elementet.

Endring av C-programmer kan ikke være for alle, så det er ledningerPi-pakkere for python og andre språk. Se wiringPi-prosjektets nettsted for et språk som kan være mer kjent. Nå bør du kunne bruke hvilket språk du er komfortabel med, for å lage dine egne lyder og melodier.