Kako da upravljate LED trakama uz pomoć Raspberry Pi-ja
Submitted by 012lab on 25 April, 2014 - 18:46
Tutorijal prikazuje kako možete uz pomoć Raspberry Pi mini računara na lak način da upravljate RGB LED trakama od 12V koristeći tehniku impulsno širinske modulacije (eng. Pulse Width Modulation - PWM).
Raspberry Pi originalno ima samo jedan GPIO pin koji omogućava impulsno širinsku modulaciju (PWM), ali zahvaljujući servoblaster kernel modulu i stadnardni GPIO pinovi mogu da se koriste za PWM.
Napomena: Treperenje LED trake je primetna samo na videu, u stvarnosti se boje lagano menjaju bez vidnog treperenja.
Hardver:
Potrebne komponente:
• Raspberry Pi
• 3 x TIP120 tranzistori velike snage
• RGB LED traka
• perfboard/proto ploča
• žica sa kukicama
Montaža
Dovedite napajanje od 12V na ulaz od 12V na RGB LED traci, povežite bazu svakog TIP120 tranzistora sa odgovarajućim GPIO pinom (pinovi 18, 23 i 24 u ovom primeru), povežite kolektore sa odgovarajućim ulazima na LED traci, i na kraju, povežite emitore sa zajedničkom masom na Raspberry Pi-ju i napajanje od 12V. Evo dijagrama kola:
Softver
Konfiguracija servoblaster-a
Sledeći korak je konfiguracija servoblaster kernel drajvera .
Drajver kreira fajl za uređaj, /dev/servoblaster kome mogu da se šalju komande za kontrolu serva. Komande imaju oblik “=” sa brojevima koji označavaju željeni servo (u ovom slučaju 0-7) i poziciju serva izraženu preko širine pulsa u jedinicama od 10 µs. Na primer, ako šaljete servo 3 sa širinom pulsa od 120 µs, to izgleda ovako:
echo 3=120 > /dev/servoblaster
Da biste podesili servo upravljač (blaster) na Raspberry Pi-ju, morate da imate instaliran git kako biste poništili (pull down) izvore. Ako nemate instaliran git, otvorite terminal i pokrenite:
Ova komada takođe postavlja neophodna pravila za pristup /dev/servoblaster uređaju.
Napomena: Nakon komande ’install_autostart ’ Raspberry pi će biti podešen za učitavanje blaster kernel modula na svakom boot-u. Ako ovo ne želite, pošaljite instrukciju ‘make install’. U oba slučaja modul još uvek neće biti učitan, zato nastavite dalje i instalirajte ga koristeći modprobe:
sudo modprobe servoblaster
Primer upotrebe koda
Sada je instalirano sve što je neophodno i servo blaster uređaj je konfigurisan, na stvarnom primeru koda. Python primer skripta koristi PWM da za postepen prelaz od plave boje preko ljubičaste, crvene, žute, zelene i tirkizne preko koje opet prelazi u plavu.