Styr motorhastigheder med en Raspberry Pi Pico

Styr motorhastigheder med en Raspberry Pi Pico
Læsere som dig hjælper med at støtte MUO. Når du foretager et køb ved hjælp af links på vores websted, kan vi optjene en affiliate-kommission. Læs mere.

Raspberry Pi Pico-mikrocontrollerkortet tilbyder så meget fleksibilitet for entusiaster til at udforske elektronikprojekter for at øge deres tekniske viden. Disse kan variere fra gør-det-selv hjemmeovervågning til simple vejrovervågningsstationer. At lære det grundlæggende vil give dig en solid videnbase, så du trygt kan arbejde mod mere komplekse opgaver.





Lad os undersøge, hvordan du kan bruge en transistor og en motor til at generere vindkraft ved hjælp af en Raspberry Pi Pico.





Hvad kræves for at komme i gang?

Følgende elementer er inkluderet i Kitronik Inventor's Kit til Raspberry Pi Pico. De er dog ret almindelige komponenter, så de kan nemt købes separat.





  • Ventilator Vinge
  • Motor
  • Breadboard terminalstik
  • Brødbræt
  • 2,2 kΩ modstand (bånd vil være røde, røde, røde, guld)
  • 5x han-han jumper ledninger
  • Transistor – påkrævet for at levere mere strøm til motoren, end Picos GPIO-ben kan levere

Tag et kig på vores oversigt over Kitronik Inventor's Ki til Raspberry Pi Pico for at udvide din tekniske viden til fremtidige eksperimenter. Du skal bruge en Pico med GPIO-stifthoveder tilknyttet til dette projekt; tjek ud hvordan man lodder header-stifter på en Raspberry Pi Pico .

Den indeholder tips om bedste praksis ved lodning, så du kan sikre, at dine GPIO-stifthoveder er forbundet godt med Pico-kortet første gang.



Sådan tilsluttes hardwaren

Ledningsføringen er ikke kompleks; der er dog et par trin, hvor du skal være sikker på, at dine ben er tilsluttet korrekt. Lad os med det i tankerne nedbryde, hvordan komponenterne forbindes mellem Raspberry Pi Pico og dit breadboard.

  • Pico's GP15-ben skal forbindes til den ene ende af modstanden.
  • En GND-stift på Pico'en vil blive ført til den negative skinne på brødbrættet.
  • Placer transistoren foran den negative side af motorens terminalstik, og før en ledning fra den negative side af transistoren til den negative skinne på breadboardet.
  • Dobbelttjek, at ledningerne er på linje med motorens terminalstik (dette er vigtigt).
  • Pico's VSYS-stift skal forbindes til den positive skinne på brødbrættet. Dette vil sikre, at 5V strøm bliver leveret via transistoren til motoren (i modsætning til andre Pico-ben med kun 3,3V).
  fritzing diagram, der forbinder elektroniske komponenter

Mens du foretager dine sidste ledningskontrol, skal du sørge for, at en jumperledning er forbundet fra breadboardets positive skinne til den positive side af motorens terminalstik. Derudover skal den anden ende af modstanden forbindes til transistorens midterstift. Hvis det ikke er indlysende endnu, skal du sørge for at tilslutte de negative og positive ledninger korrekt fra terminalstikket til motoren også.





Udforskning af koden

Først skal du downloade MicroPython-koden fra MUO GitHub-depot. Specifikt vil du gerne hente motor.py fil. Følg vores guide til komme i gang med MicroPython for detaljer om brug af Thonny IDE med Raspberry Pi Pico.

Når den køres, vil koden fortælle motoren om at dreje blæseren, gradvist øge hastigheden til det maksimale og derefter, efter en kort pause, reducere hastigheden, indtil den stopper igen. Dette vil blive gentaget kontinuerligt, indtil du stopper programmet.





Øverst i koden importeres maskine og tid moduler giver dig mulighed for at gøre brug af dem i programmet. Det maskine modul bruges til at tildele GP15 som udgangsben for motoren via transistoren ved hjælp af PWM (pulsbreddemodulation) til at indstille dens hastighed. Det tid modul bruges til at skabe forsinkelser i programdriften, når vi har brug for dem.

Prøv at køre koden. Det vil tage et par sekunder for blæseren at dreje op og begynde at rotere. En endelig til sløjfe gradvist øger udgangsværdien til motoren fra 0 til 65535 (eller rettere, lige under det) i trin af 100 . Der gives en meget kort forsinkelse på 5 millisekunder (med time.sleep_ms(5) ) mellem hver hastighedsændring under løkken. Når løkken er færdig, a tid.s leep forsinkelse på et sekund indstilles, før den næste sløjfe starter.

I den anden til løkke, sættes trinværdien til -100 , for gradvist at reducere udgangsværdien til motoren. Motoren vil sænke farten gradvist fra fuld hastighed, indtil den stopper helt (kl 0 ). Efter den anden tid.s leep forsinkelse på et sekund, det første til loop udføres igen, da de begge er inden for en mens det er sandt: uendelig løkke.

  python kode skærmbillede

Det er virkelig alt, hvad der er involveret i at bruge en transistor og kode til at køre din blæsermotor. Husk, at denne kode vil løkke for evigt. Så du skal trykke på stopknappen i din Thonny IDE for at stoppe motoren og blæserens cykling.

Hvor vil vinden tage dig hen næste gang?

Tilføjelse af ekstra elementer, såsom et 7-segment display, til dette eksperiment vil belønne dig med en forståelse af, hvordan vindmøller bruger kinetisk energi til at omdanne vind til elektrisk energi.

Et andet projekt, som du kunne bevæge dig hen imod, er at oprette en hjemmebaseret vejrstation, der overvåger udendørsforhold. Derudover finder du andre interessante projekter såsom en vind- og lufthastighedsindikator, som du kan oprette med din Raspberry Pi Pico.

hvad betyder rng i spil

Ved at bruge denne grundlæggende viden, hvilke eksperimenter vil du svæve til næste gang? Har du et projekt i tankerne? Hvis du tøver for længe, ​​kan du risikere, at dit sind (og vinden) ændrer retning.