Hvordan generere PWM ved hjelp av Raspberry Pi 4

Hvordan generere PWM ved hjelp av Raspberry Pi 4
Raspberry Pi 4 er en enkelt datatavlenhet som brukes til å lage forskjellige elektroniske prosjekter både av grunnleggende så vel som avansert nivå. Raspberry Pi inneholder 27 GPIO -pinner som fire pinner er for PWM -formålet, men før vi fortsetter til generering av PWM, vil vi først forstå PWM.

Hva er en PWM

PWM er kjent som pulsbreddemodulasjonen som brukes til å kontrollere kraften til det kontinuerlige elektriske signalet ved å bytte den inn mellom det høye og lave med et bestemt tidspunkt. Ved hjelp av PWM -teknikken kan vi kontrollere forskjellige enheter.

Ved å endre pliktsyklusen kan PWM kontrolleres.

Hvordan generere en PWM ved hjelp av Raspberry Pi 4

Som vi diskutert ovenfor, har Raspberry Pi 4 to PWM -kanaler som består av fire PWM GPIO -pinner som er GPIO12, GPIO13, GPIO18 og GPIO19. Vi vil forstå generasjonen og arbeidet med PWM i Raspberry Pi 4 ved å lage en enkel elektrisk krets for å falme lysstyrken til LED. LED -endringen av lysstyrken gjøres ved å gi et kontinuerlig eller analogt elektrisk signal til LED som vi vil gi ved å bruke PWM -pinnene til Raspberry Pi 4.

Hvordan falme en ledet av PWM -teknikk i Raspberry Pi 4

For kretsen, for å falme LED, trenger vi følgende elektroniske komponenter:

  • Led
  • 1 motstand
  • Brødbrett
  • Jumper ledninger

Kretsdiagrammet for kretsen for å falme LED vil være:

For implementering av kretsen ovenfor, plasserer vi alle komponentene på brødplaten:

Nå vil vi koble katoden til LED med bakkestiften til Raspberry Pi og åpne terminalen til motstand :

Kretsen er fullført.

Hva er Python -koden for å falme LED med PWM -teknikk ved bruk av Raspberry Pi 4

Vi åpner tekstfilen med navnet “Fade.PY ”Bruke Nano Text Editor:

$ nano fade.py

Skriv inn følgende Python -skript i filen:

Importer RPI.GPIO som GPIO
#import RPI.GPIO -bibliotek
Fra tid importer søvn
#import søvnen fra Time Library
Ledpin = 18
#Declare GPIO 18 -pinnen for utgangen av LED
GPIO.Oppsett (Ledpin, GPIO.UTE)
#definer oppførselen til LEDPIN som utgang
GPIO.setwarnings (falsk)
#Ingrader advarslene
PWM = GPIO.PWM (LEDPIN, 1000)
#Create PWM -forekomsten med frekvens 1000 Hz
PWM.Start (0)
#Start PWM på 0 Duty Cycle
Mens sant:
#initialiser det uendelige mens du er loop
for plikt i rekkevidde (0,101):
#initialiserer for loop
PWM.Endreycycle (plikt)
#Skifter pliktsyklusen i henhold til verdien av for loop
søvn (0.01)
#generert forsinkelsen på 0.01 sekund i hver iterasjon av for loop
søvn (0.5)
#generert forsinkelsen på 0.5 sekunder
for plikt i rekkevidde (100, -1, -1):
#Again startet for Loop å sette sin verdi på 100 og redusert med -1 til -1
PWM.Endreycycle (plikt)
#Skifter pliktsyklusen i henhold til verdien av for loop
søvn (0.01)
#generert forsinkelsen på 0.01 sekund i hver iterasjon av for loop
søvn (0.5)
#generert forsinkelsen på 0.5 sekund

Forklaring av kode: I Python -koden ovenfor har vi importert to biblioteker med RPI.GPIO og søvn fra tid. Så erklærer vi LEDPIN -variabelen og tildeler den GPIO 18 -pinnen, og definerer den også som en PWM -pinne. Vi startet PWM -forekomsten med 0 frekvens, definert deretter området 0 til 101 og i for løkker som endret pliktsyklusen. I den første for sløyfe, ved å endre pliktsyklusen fra 0 til 101, øker vi lysstyrken og i det andre for loop, ved å endre pliktsyklusen fra 100 til -1, reduserer vi lysstyrken til LED. Begge for løkker er i kroppen til en uendelig mens du er sløyfe, så denne prosessen vil fortsette gjentatte ganger i en uendelig tid.

Å kompilere og kjøre Python -skriptet til Fade.PY, vi vil bruke kommandoen:

$ Python Fade.py

Maskinvaren som fungerer i kretsen er:

Konklusjon

PWM -teknikken i mikrokontrollerne er veldig nyttig for å kontrollere den kontinuerlige eller analoge utgangen. Å falme LED ved hjelp av PWM -teknikken er det beste eksemplet for å forklare arbeidet med PWM -teknikken. Pliktsyklusen endrer seg fra 0 til 100 prosent, noe som gjør at LED blekner inn og blekner ut. I denne oppskrivningen har vi forklart generasjonen av PWM ved å gi et eksempel på en elektronisk krets for å falme LED.