Sadržaj:

RGB termometar pomoću PICO: 6 koraka
RGB termometar pomoću PICO: 6 koraka

Video: RGB termometar pomoću PICO: 6 koraka

Video: RGB termometar pomoću PICO: 6 koraka
Video: Феномен ChatGPT: как искусственный интеллект меняет ландшафт разработчиков! 2024, Novembar
Anonim
Image
Image

To je bio konačni rezultat našeg današnjeg napora. To je termometar koji će vam dati do znanja koliko je toplo u vašoj sobi, pomoću RGB LED trake smještene u akrilnu posudu, koja je spojena na temperaturni senzor za očitavanje temperature. Koristit ćemo PICO za oživljavanje ovog projekta.

Korak 1: Komponente

Napajanje RGB trake tranzistorima i izvorom napajanja
Napajanje RGB trake tranzistorima i izvorom napajanja
  • PICO, dostupno na mellbell.cc (17 USD)
  • 1 metar RGB LED traka
  • 3 TIP122 Darlington tranzistor, paket od 10 na ebayu (3,31 USD)
  • 1 PCA9685 16-kanalni 12-bitni PWM upravljački program, dostupan na ebayu (2,12 USD)
  • 12V izvor napajanja
  • 3 otpornika od 1 k ohma, paket od 100 na ebayu (0,99 USD)
  • Matična ploča, dostupna na ebayu (2,30 USD)
  • Muške - ženske kratkospojne žice, snop od 40 na ebayu (0,95 USD)

Korak 2: Napajanje RGB trake tranzistorima i izvorom napajanja

Napajanje RGB trake tranzistorima i izvorom napajanja
Napajanje RGB trake tranzistorima i izvorom napajanja
Napajanje RGB trake tranzistorima i izvorom napajanja
Napajanje RGB trake tranzistorima i izvorom napajanja
Napajanje RGB trake tranzistorima i izvorom napajanja
Napajanje RGB trake tranzistorima i izvorom napajanja

LED trake su fleksibilne ploče sa LED diodama. Koriste se na mnogo načina, jer ih možete koristiti u svojoj kući, automobilu ili biciklu. Pomoću njih čak možete stvoriti i cool RGB nosive uređaje.

Dakle, kako oni rade? Zapravo je prilično jednostavno. Sve LED diode u LED traci spojene su paralelno i djeluju kao jedna velika RGB LED dioda. A da biste ga pokrenuli, jednostavno morate spojiti traku na izvor 12V velike struje.

Za upravljanje LED trakom pomoću mikrokontrolera morate odvojiti izvor napajanja od izvora upravljanja. Budući da LED traci treba 12v, a naš mikrokontroler ne može ponuditi ovoliki izlazni napon, i zato povezujemo vanjski izvor 12V velike struje, dok šaljemo upravljačke signale s našeg PICO -a.

Također, trenutna potrošnja svake RGB ćelije je velika, jer je svakoj pojedinačnoj LED u njoj - crvenoj, zelenoj i plavoj LED diodi - potrebno 20 mA za rad, što znači da nam je potrebno 60 mA za rad da osvijetli jednu RGB ćeliju. I to je vrlo problematično, jer naši GPIO pinovi mogu napajati samo najviše 40mA po pinu, a spajanje RGB trake na PICO izgorjet će to, stoga nemojte to činiti.

No, rješenje postoji i zove se Darlingtonski tranzistor koji je par tranzistora s vrlo visokim pojačanjem struje, što će nam pomoći da pojačamo struju kako bismo ispunili svoje potrebe.

Naučimo prvo o trenutnom pojačanju. Trenutni dobitak je svojstvo tranzistora što znači da će se struja koja prolazi kroz tranzistor pomnožiti s njim, a njegova jednadžba izgleda ovako:

struja opterećenja = ulazna struja * pojačanje tranzistora.

Ovo je još jače u Darlingtonovom tranzistoru, jer se radi o par tranzistora, a ne o jednom, a njihovi efekti se međusobno množe, što nam daje ogromne trenutne dobitke.

Sada ćemo LED traku spojiti na naš vanjski izvor napajanja, tranzistor i naravno naš PICO.

  • Baza (tranzistor) → D3 (PICO)
  • Kolektor (tranzistor) → B (LED traka)
  • Emiter (tranzistor) → GND
  • +12 (LED traka) → +12 (izvor napajanja)

Ne zaboravite spojiti PICO -ov GND na masu izvora energije

Korak 3: Kontrola boja RGB LED trake

Kontrola boja RGB LED trake
Kontrola boja RGB LED trake
Kontrola boja RGB LED trake
Kontrola boja RGB LED trake
Kontrola boja RGB LED trake
Kontrola boja RGB LED trake

Znamo da naš PICO ima jedan PWM pin (D3) što znači da ne može izvorno kontrolirati naših 16 LED dioda. Zbog toga uvodimo PCA9685 16-kanalni 12-bitni PWM I2C modul, koji nam omogućava proširenje PICO PWM pinova.

Prije svega, šta je I2C?

I2C je komunikacijski protokol koji uključuje samo 2 žice za komunikaciju s jednim ili više uređaja adresiranjem adrese uređaja i podataka koje treba poslati.

Postoje dvije vrste uređaja: prvi je glavni uređaj, koji je odgovoran za slanje podataka, a drugi je slave uređaj, koji prima podatke. Evo pin -out modula PCA9685:

  • VCC → Ovo je snaga same ploče. 3-5v max.
  • GND → Ovo je negativni pin i mora se spojiti na GND kako bi se dovršilo kolo.
  • V+ → Ovo je opcionalni pin za napajanje koji će napajati servo pogone ako imate bilo koji od njih spojen na vaš modul. Možete ga ostaviti isključenim ako ne koristite servo pogone.
  • SCL → Pin za serijski sat i povezujemo ga sa SCL -om PICO -a.
  • SDA → Pin za serijske podatke i povezujemo ga sa SDA -om PICO -a.
  • OE → pin omogućen izlaz, ovaj pin je aktivan LOW, kada je pin LOW svi izlazi su omogućeni, kada je HIGH svi izlazi su onemogućeni. Ovaj opcionalni pin se koristi za brzo omogućavanje ili onemogućavanje pinova modula.

Postoji 16 portova, svaki port ima V+, GND, PWM. Svaki PWM pin radi potpuno nezavisno i postavljeni su za servo pogone, ali ih možete jednostavno koristiti za LED diode. Svaki PWM može podnijeti 25mA struje pa budite oprezni.

Sada kada znamo koji su pinovi našeg modula i šta on radi, dopustimo ga da povećamo broj PICO -ovih PWM pinova, tako da možemo kontrolirati našu RGB LED traku.

Ovaj ćemo modul koristiti zajedno s TIP122 tranzistorima, pa ih na ovaj način spojite na svoj PICO:

  • VCC (PCA9685) → VCC (PICO).
  • GND (PCA9685) → GND.
  • SDA (PCA9685) → D2 (PICO).
  • SCL (PCA9685) → D3 (PICO).
  • PWM 0 (PCA9685) → BAZA (prvi TIP122).
  • PWM 1 (PCA9685) → BAZA (drugi TIP122).
  • PWM 2 (PCA9685) → OSNOVA (treći TIP122).

Ne zaboravite spojiti PICO -ov GND na GND napajanja. I pazite da NE povezujete pin PCA9685 VCC sa naponom od +12 volti ili će se oštetiti

Korak 4: Upravljajte bojom RGB LED trake, ovisno o očitanju senzora

Kontrolirajte boju RGB LED trake ovisno o očitanju senzora
Kontrolirajte boju RGB LED trake ovisno o očitanju senzora
Kontrolirajte boju RGB LED trake ovisno o očitanju senzora
Kontrolirajte boju RGB LED trake ovisno o očitanju senzora

Ovo je posljednji korak u ovom projektu, a s njim će se naš projekt transformirati iz "gluposti" u pametnost i sposobnost ponašanja ovisno o okruženju. Da bismo to učinili, povezat ćemo naš PICO sa senzorom temperature LM35DZ.

Ovaj senzor ima analogni izlazni napon koji ovisi o temperaturi oko njega. Počinje pri 0v što odgovara 0 Celzijusa, a napon se povećava za 10mV za svaki stepen iznad 0c. Ova komponenta je vrlo jednostavna i ima samo 3 noge, a povezane su na sljedeći način:

  • VCC (LM35DZ) → VCC (PICO)
  • GND (LM35DZ) → GND (PICO)
  • Izlaz (LM35DZ) → A0 (PICO)

Korak 5: Završni kod

Završni kod
Završni kod
Završni kod
Završni kod

Sada kada imamo sve spojeno na naš PICO, počnimo ga programirati tako da LED diode mijenjaju boju ovisno o temperaturi.

Za to nam je potrebno sljedeće:

A const. varijabla pod nazivom "tempSensor" sa vrijednošću A0 koja prima očitavanja sa senzora temperature

Cjelobrojna varijabla pod nazivom "sensorReading" s početnom vrijednošću 0. Ovo je varijabla koja će sačuvati neobrađena očitanja senzora

Plutajuća varijabla pod nazivom "volti" s početnom vrijednošću 0. Ovo je varijabla koja će pretvoriti pretvorenu vrijednost očitavanja senzora u volte

Plutajuća varijabla pod nazivom "temp" s početnom vrijednošću 0. Ovo je varijabla koja će spremiti očitanja pretvorenih napona senzora i pretvoriti ih u temperaturu

Integer varijabla pod nazivom "mapped" sa početnom vrijednošću 0. Ovo će sačuvati PWM vrijednost u koju preslikavamo temp varijablu, a ova varijabla kontrolira boju LED trake

Koristeći ovaj kôd, PICO će pročitati podatke senzora temperature, pretvoriti ih u volte, zatim u Celzijuse i na kraju preslikati Celzijusov stupanj u vrijednost PWM -a koju može očitati naša LED traka, a to je upravo ono što nam treba.

Korak 6: Gotovi ste

Image
Image

Napravili smo i akrilnu posudu za LED traku kako bi na lijep način stajala. CAD datoteke možete pronaći ovdje ako ih želite preuzeti.

Sada imate LED termometar sjajnog izgleda koji vam automatski prikazuje temperaturu kada ga pogledate, što je u najmanju ruku prilično zgodno: P

Ostavite komentar ako imate bilo kakve prijedloge ili povratne informacije i ne zaboravite nas pratiti na facebooku ili nas posjetiti na mellbell.cc za još sjajnijih sadržaja.

Preporučuje se: