Raspberry Pi este o placă bazată pe procesor de arhitectură ARM, concepută pentru ingineri electronici și pasionați. PI este una dintre cele mai de încredere platforme de dezvoltare a proiectelor de acum. Cu o viteză mai mare a procesorului și 1 GB RAM, PI poate fi utilizat pentru multe proiecte de profil înalt, cum ar fi procesarea imaginilor și Internetul obiectelor.
Pentru realizarea oricăror proiecte de profil, trebuie să înțelegeți funcțiile de bază ale PI. Vom acoperi toate funcționalitățile de bază ale Raspberry Pi în aceste tutoriale. În fiecare tutorial vom discuta una dintre funcțiile PI. Până la sfârșitul seriilor de tutoriale veți putea să faceți proiecte de înaltă calitate de unul singur. Verificați aceste informații pentru Noțiuni introductive despre configurația Raspberry Pi și Raspberry Pi.
Am discutat interfața LED intermitentă și butonul cu Raspberry Pi în tutoriale anterioare. În acest tutorial Raspberry Pi PWM vom vorbi despre obținerea ieșirii PWM cu Raspberry Pi. PWM înseamnă „ Modularea lățimii impulsurilor ”. PWM este o metodă utilizată pentru obținerea tensiunii variabile din sursa de alimentare constantă. Vom genera semnal PWM de la Raspberry PI și vom demonstra PWM variind Luminozitatea unui LED, conectat la Pi.
Modularea lățimii pulsului:
Am vorbit anterior despre PWM de multe ori în: Modularea lățimii pulsului cu ATmega32, PWM cu Arduino Uno, PWM cu 555 timer IC și PWM cu Arduino Due.
În figura de mai sus, dacă întrerupătorul este închis continuu pe o perioadă de timp, LED-ul va fi aprins în acest timp continuu. Dacă comutatorul este închis pentru jumătate de secundă și deschis pentru jumătatea următoarei secunde, atunci LED-ul va fi aprins numai în prima jumătate de secundă. Acum, proporția pentru care LED-ul este aprins în timpul total se numește ciclul de funcționare și poate fi calculată după cum urmează:
Ciclul de funcționare = Timp de pornire / (Timp de pornire + Timp de oprire)
Ciclul de funcționare = (0,5 / (0,5 + 0,5)) = 50%
Deci, tensiunea medie de ieșire va fi de 50% din tensiunea bateriei.
Acesta este cazul pentru o secundă și putem vedea LED-ul stins timp de jumătate de secundă și LED-ul aprins în cealaltă jumătate de secundă. Dacă Frecvența timpilor de PORNIT și OPRIT a crescut de la „1 pe secundă” la „50 pe secundă”. Ochiul uman nu poate capta această frecvență. Pentru un ochi normal, LED-ul va fi văzut, ca strălucitor cu jumătate din luminozitate. Deci, cu o reducere suplimentară a timpului de pornire, LED-ul apare mult mai ușor.
Vom programa PI pentru obținerea unui PWM și vom conecta un LED pentru a arăta funcționarea acestuia.
Există 40 de pini de ieșire GPIO în Raspberry Pi. Dar din 40, pot fi programate doar 26 de pini GPIO (GPIO2 până la GPIO27). Pentru a afla mai multe despre pinii GPIO, accesați: LED-ul clipește cu Raspberry Pi
Componente necesare:
Aici folosim Raspberry Pi 2 Model B cu Raspbian Jessie OS. Toate cerințele de bază privind hardware-ul și software-ul sunt discutate anterior, le puteți căuta în Introducerea Raspberry Pi, altele decât cele de care avem nevoie:
- Pinii de conectare
- Rezistor de 220Ω sau 1KΩ
- LED
- Pâine
Explicația circuitului:
După cum se arată în schema de circuit, vom conecta un LED între PIN35 (GPIO19) și PIN39 (masă). Așa cum am spus mai devreme, nu putem extrage mai mult de 15mA de la oricare dintre acești pini, deci pentru a limita curentul conectăm un rezistor de 220Ω sau 1KΩ în serie cu LED-ul.
Explicație de lucru:
Odată ce totul este conectat, putem porni Raspberry Pi pentru a scrie programul în PYHTON și a-l executa.
Vom vorbi despre câteva comenzi pe care le vom folosi în programul PYHTON.
Vom importa fișierul GPIO din bibliotecă, funcția de mai jos ne permite să programăm pinii GPIO ai PI. De asemenea, redenumim „GPIO” în „IO”, așa că în program ori de câte ori dorim să ne referim la pinii GPIO vom folosi cuvântul „IO”.
import RPi.GPIO ca IO
Uneori, când pinii GPIO, pe care încercăm să îi folosim, ar putea să îndeplinească alte funcții. În acest caz, vom primi avertismente în timpul executării programului. Comanda de mai jos îi spune PI să ignore avertismentele și să continue programul.
IO.setwarnings (Fals)
Putem consulta pinii GPIO ai PI, fie prin numărul pinului la bord, fie prin numărul funcției lor. În diagrama pin, puteți vedea „PIN 35” pe placă este „GPIO19”. Deci, spunem aici fie că vom reprezenta pinul aici cu „35”, fie cu „19”.
IO.setmode (IO.BCM)
Setăm GPIO19 (sau PIN35) ca pin de ieșire. Vom obține ieșire PWM de la acest pin.
IO.setup (19, IO.IN)
După setarea pinului ca ieșire, trebuie să configurăm pinul ca pin de ieșire PWM, p = IO.PWM (canal de ieșire, frecvența semnalului PWM)
Comanda de mai sus este pentru configurarea canalului și, de asemenea, pentru setarea frecvenței semnalului PWM. 'p' aici este o variabilă care poate fi orice. Folosim GPIO19 ca canal de ieșire PWM. „ frecvența semnalului PWM ” a fost aleasă 100, deoarece nu vrem să vedem LED-ul intermitent.
Comanda de mai jos este utilizată pentru a porni generarea semnalului PWM, „ DUTYCYCLE ” este pentru setarea raportului de pornire, 0 înseamnă LED-ul va fi aprins 0% din timp, 30 înseamnă LED-ul va fi aprins 30% din timp și 100 înseamnă complet aprins.
p.start (DUTYCYCLE)
Această comandă execută bucla de 50 de ori, x fiind incrementat de la 0 la 49.
pentru x în intervalul (50):
În timp ce 1: este utilizat pentru bucla infinită. Cu această comandă, instrucțiunile din această buclă vor fi executate continuu.
Odată cu executarea programului, ciclul de funcționare al semnalului PWM crește. Și apoi scade după ce a atins 100%. Cu un LED atașat la acest PIN, luminozitatea LED-ului crește mai întâi și apoi scade.