Sadržaj:

LED traka s Raspberry Pi upravljanom web lokacijom/WiFi -om: 9 koraka (sa slikama)
LED traka s Raspberry Pi upravljanom web lokacijom/WiFi -om: 9 koraka (sa slikama)

Video: LED traka s Raspberry Pi upravljanom web lokacijom/WiFi -om: 9 koraka (sa slikama)

Video: LED traka s Raspberry Pi upravljanom web lokacijom/WiFi -om: 9 koraka (sa slikama)
Video: DIY - Digital LED Stair Lighting - Arduino APA102 LED 2024, Srpanj
Anonim
LED traka s web -lokacijom/WiFi -om kontrolirana s Raspberry Pi
LED traka s web -lokacijom/WiFi -om kontrolirana s Raspberry Pi

Pozadina:

Tinejdžer sam, a zadnjih nekoliko godina osmišljavam i programiram male elektroničke projekte, zajedno s sudjelovanjem na natjecanjima u robotici.

Nedavno sam radila na ažuriranju postavki svog stola i odlučila sam da bi dobar dodatak bila neka rasvjeta za raspoloženje. U početku sam upravo kupio LED traku s 5v baterijskim napajanjem kojom se upravlja daljinskim upravljačem, ali to nije bio baš zadovoljavajući proces i imao sam ideju. Ležao sam nekoliko rezervnih dijelova i pokušavao smisliti nešto s Raspberry Pi -jem koji sam dobio za Božić. Tijekom posebno dosadnog dana na satu znanosti, shvatio sam da bih mogao koristiti GPIO pinove Raspberry Pi za upravljanje LED svjetlima, pod uvjetom da izlažu RGB vrijednosti.

Moj početni plan dizajna bio je imati svjetla kontrolirana zaslonom osjetljivim na dodir montiranim na moj zid ili stol, ali nakon nekih revizija odlučio sam da ću najjednostavnije upravljati drugim uređajem. Dok sam razmišljao o tome da napišem aplikaciju za svoj telefon na Javi, mala web stranica činila se mnogo učinkovitijom.

Ovaj je projekt otvoren za mnoga poboljšanja, i iako su moji html + php nekako škripavi, oni završavaju posao

Teme:

Glavne točke koje će ovaj vodič pogoditi su ---

  1. Upravljanje GPIO -om na Raspberry Pi
  2. Hostiranje Apache web poslužitelja na Pi
  3. Korištenje web poslužitelja za upravljanje RGB LED svjetlosnom trakom

Korak 1: Potrebni materijali i pribor

  • 1 x Raspberry Pi (koristio sam Pi 2 model B)
  • MicroSD kartica
  • Nešto za napajanje vašeg Pi (USB kabel i ispravljač)
  • 1 x USB WiFi adapter ILI Ethernet veza
  • 1 x USB na serijski kabel -
  • 1 x GPIO proboj -
  • 1 x mala ploča -
  • USB na MicroSD -
  • Više boja pune žice
  • Ograđivanje
  • 3 x tranzistora tipa NPN (koristio sam tranzistore BC547b)
  • 1x 5V LED svjetlosna traka
  • Žice kratkospojnika ženski - muški -

Korak 2: Postavljanje Pi okruženja

Postavljanje Pi okruženja
Postavljanje Pi okruženja
Postavljanje Pi okruženja
Postavljanje Pi okruženja

Upotrijebio sam koso plastičnu kutiju da zatvorim projekt kako se ne bi isticao na mojoj polici. Izbušio sam rupu sa strane za serijski USB kabel i postavio Pi pored matične ploče i Pi Wedge.

Korak 3: Postavljanje vašeg Pi -a (1. dio)

Postavljanje vašeg Pi -a (1. dio)
Postavljanje vašeg Pi -a (1. dio)

Za ovaj projekt koristio sam najnoviju verziju Raspbiana koji nije za radnu površinu

Vodič o tome kako instalirati Raspbian možete pronaći ovdje:

(Možda će vam trebati adapter za USB na microSD za računalo)

Nakon što je Raspbian instaliran na SD karticu, možete ga nastaviti priključivati na Raspberry Pi i spojiti Ethernet kabel ili USB WiFi adapter na Pi

Zatim instalirajte Tera Term na svoje računalo koje vam omogućuje sučelje s terminalom Raspberry Pi putem vašeg računala:

Zatim priključite USB serijski kabel s Pi klina u računalo. Može mu se pristupiti putem termina Tera. Provjerite je li brzina prijenosa serijskog porta postavljena na 115200.

Prvo, Pi će postaviti upit za prijavu ako je OS pravilno instaliran

Zadano korisničko ime i lozinka su:

Korisničko ime: pi

Lozinka: malina

Korak 4: Postavljanje vašeg Pi -a (2. dio)

Postavljanje WiFi -a

Na terminalu pokrenite naredbu

sudo nano/etc/network/sučelja

Zatim zalijepite ovaj kôd i zamijenite SSID i PSK imenom i lozinkom usmjerivača

auto lo

iface lo inet loopback iface eth0 inet dhcp allow-hotplug wlan0 auto wlan0 iface wlan0 inet dhcp wpa-ssid "ssid" wpa-psk "lozinka"

Ova datoteka omogućuje da se Pi poveže na vaš WiFi

Zatim ponovno pokrenite Pi linijom

sudo ponovno podizanje sustava

Instaliranje web poslužitelja

Prijavite se, a zatim instalirajte Apache poslužitelj s

sudo apt -get install apache2 -y

i

sudo apt-get install php libapache2-mod-php -y

Da biste pronašli IP adresu svog Pi -a, pokrenite naredbu

naziv hosta -I

Pristupite prikazanom IP -u pomoću pregledača kako biste provjerili radi li.

Na primjer, u Google Chromeu bih upisao 192.168.1.72 u adresnu traku.

Dokumentaciju koju trebate slijediti možete pronaći na

Biblioteku PiGPIO također je potrebno instalirati, što vam omogućuje kontrolu podataka koji se šalju putem GPIO pinova.

sudo apt-get install build-essential unzip wget

i

wget https://abyz.me.uk/rpi/pigpio/pigpio.zip && raspakiraj pigpio.zip && cd PIGPIO && sudo make install

Korak 5: Pisanje koda

Idite linijom na/var/www/html

cd/var/www/html

U direktoriju će se nalaziti zadana html datoteka koju ćete morati urediti.

sudo nano index.html

Unutar Nanoa izbrišite sve što već postoji i zamijenite ga sljedećim kodom.

(Termin Term može biti pomalo duhovit s kopiranjem i lijepljenjem, ali obično nakon što kopirate tekst, alt+v bi trebao obaviti posao)

funkcija readRGB (boja) {if (color.length == 0) {document.getElementById ("txtHint"). innerHTML = ""; povratak; } else {var xmlhttp = novi XMLHttpRequest (); xmlhttp.onreadystatechange = function () {if (this.readyState == 4 && this.status == 400) {document.getElementById ("txtHint"). innerHTML = this.responseText; }}; temp = encodeURIComponent (boja); xmlhttp.open ("GET", "action_page.php? q =" + temp, true); xmlhttp.send (); }} Odaberite boju:

Zatim ga spremite kao main.html, umjesto index.html

Gornji kôd djeluje kao gumb koji pritisnete i kao kôd koji šalje boju koju odaberete drugoj datoteci.

Zatim pokrenite naredbu

sudo nano

i zalijepite

$ r $ g $ b ;

exec ("svinje p 17 $ g"); exec ("svinje p 22 $ r"); exec ("svinje p 22 $ b"); ?>

i spremite ga kao action_page.php

Ovaj kod prima RGB vrijednost i postavlja PWM vrijednosti na LED traci.

Korak 6: Dizajn kruga

Dizajn sklopa
Dizajn sklopa

Sada kada je sav softver postavljen, vrijeme je za rad na hardveru.

Cilj kruga je slanje PWM (Pulse Width Modulated) signala iz Pi u LED niz.

LED traka ima četiri igle: crvenu, zelenu, plavu i napajanje (5 volti u mom slučaju).

Svaki PWM pin upravlja jednom od tri boje kroz tranzistor, koji djeluje kao prekidač.

Svaki tranzistor ima tri pina: kolektor, bazu i emiter.

PWM signal kontrolira radni ciklus (koliko dugo se prekidač uključuje i isključuje).

Radni ciklus rezultira tamnijim ili jačim svjetlima.

Budući da se svjetla tako brzo pale i gase, ljudi ga vide kao čvrsto svjetlo s različitom svjetlinom.

NAPOMENA: Na shemi LED simboli predstavljaju niz LED dioda i otpornike za ograničavanje struje unutar žice.

Korak 7: Namažite svoj kruh… Odbor

Namažite svoj kruh maslacem… Odbor
Namažite svoj kruh maslacem… Odbor

Dok uspostavljate veze, obavezno isključite Pi.

Postavite Pi klin s jednim redom pinova na bilo koju polovicu matične ploče i spojite ga s Pi vrpčnim kabelom. Koristio sam žicu s čvrstom jezgrom kako bih smanjio nered na ploči i osigurao da se ništa slučajno ne isključi.

Tranzistore postavite na gornju polovicu matične ploče (stupac A) i spojite LED niz na donju polovicu (redovi H, I ili J).

Spojite negativni vod struje na GND pin na klinu, a pozitivni vod na pin 5V.

Spojite pozitivnu vodilicu na pin za napajanje LED niza.

Za svaki tranzistor spojite pin emitera na negativnu tračnicu napajanja i spojite pin kolektora u odvojene redove koji odgovaraju pinovima LED polja (koristio sam red 1 kao 5v, a 2, 3 i 4 kao zelenu, crvenu i plavu boju, u stupcu f). Zatim spojite četiri muške i ženske kratkospojne žice od matične ploče do LED trake.

Na kraju, spojite iglu osnove zelenog tranzistora na pin 17 na klinu, crvenu bazu tranzistora na pin 22, a plavu bazu tranzistora na pin 24.

Korak 8: Testiranje

Testiranje
Testiranje

U web pregledniku idite na Pi -ovu IP adresu, a nakon nje upišite /main.html

Odaberite boju i zadivite se "čudima moderne tehnologije"!

Korak 9: Obratite mi se ako imate pitanja/povratne informacije

Ako imate bilo kakvih pitanja ili prijedloga, ostavite komentar ili mi pošaljite poruku ovdje, a ja ću pokušati odgovoriti u najkraćem mogućem roku.

Sretno!

Preporučeni: