Sisukord:

Veebisaidi/WiFi juhitav LED -riba Raspberry Pi -ga: 9 sammu (piltidega)
Veebisaidi/WiFi juhitav LED -riba Raspberry Pi -ga: 9 sammu (piltidega)

Video: Veebisaidi/WiFi juhitav LED -riba Raspberry Pi -ga: 9 sammu (piltidega)

Video: Veebisaidi/WiFi juhitav LED -riba Raspberry Pi -ga: 9 sammu (piltidega)
Video: Умный выключатель в круглый подрозетник с радио повторителем, легкая и быстрая установка 2024, November
Anonim
Veebisaidi/WiFi juhitav LED -riba koos Raspberry Pi -ga
Veebisaidi/WiFi juhitav LED -riba koos Raspberry Pi -ga

Taust:

Olen teismeline ning olen viimaste aastate jooksul kavandanud ja programmeerinud väikeseid elektroonikaprojekte ning osalenud robootikavõistlustel.

Töötasin hiljuti oma laua seadistuste uuendamise kallal ja otsustasin, et meeldivaks lisandiks oleks meeleoluvalgustus. Algul ostsin just 5v patareitoitega LED -riba, mida juhib pult, kuid see ei olnud väga rahuldustpakkuv protsess ja mul oli idee. Mul olid mõned varuosad lebamas ja olin püüdnud mõelda, mida teha jõuludeks saadud Raspberry Pi -ga. Loodusteaduste tunnis eriti igaval päeval mõistsin, et saan LED -tulede juhtimiseks kasutada Raspberry Pi GPIO -nööpnõelasid seni, kuni lasin neil RGB väärtusi väljastada.

Minu esialgne disainiplaan oli lasta tuled juhtida puutetundliku ekraaniga seinale või lauale, kuid pärast mõningaid muudatusi otsustasin, et lihtsaim viis oleks seda teise seadmega juhtida. Kui ma kaalusin Java jaoks oma telefonile rakenduse kirjutamist, tundus väike veebisait palju tõhusam.

See projekt on avatud paljudele täiustustele ja kuigi minu html + php on omamoodi visandlikud, saavad nad selle tööga hakkama

Teemad:

Selle juhendi peamised punktid on ---

  1. GPIO juhtimine Raspberry Pi -l
  2. Apache veebiserveri hostimine Pi -l
  3. Veebiserveri kasutamine RGB LED -valgusriba juhtimiseks

Samm: vajalikud materjalid ja tarvikud

  • 1 x Raspberry Pi (kasutasin Pi 2 mudelit B)
  • MicroSD kaart
  • Midagi teie Pi toiteks (USB -kaabel ja vahelduvvooluadapter)
  • 1 x USB WiFi -adapter VÕI Etherneti ühendus
  • 1 x USB -jadakaabel -
  • 1 x GPIO katkestus -
  • 1 x väike leivalaud -
  • USB MicroSD -le -
  • Tahke südamikuga traadi mitu värvi
  • Aedik
  • 3 x NPN tüüpi transistorid (kasutasin BC547b transistore)
  • 1x 5V LED valgusriba
  • Naiste ja meeste hüppajate juhtmed -

2. samm: Pi keskkonna seadistamine

Pi keskkonna seadistamine
Pi keskkonna seadistamine
Pi keskkonna seadistamine
Pi keskkonna seadistamine

Projekti lisamiseks kasutasin kaldus plastkarpi, et see mu riiulil välja ei paistaks. Puurisin serva USB -kaabli külge augu ja asetasin Pi leivaplaadi ja Pi Wedge kõrvale.

3. samm: Pi seadistamine (1. osa)

Pi seadistamine (1. osa)
Pi seadistamine (1. osa)

Selle projekti jaoks kasutasin töölauavälise Raspbiani uusimat versiooni

Raspbiani installimise juhendi leiate siit:

(Arvuti jaoks võib vaja minna USB -microSD -adapterit)

Kui Raspbian on SD -kaardile installitud, saate selle Raspberry Pi -ga ühendada ja Etherneti -kaabli või USB -WiFi -adapteri Pi -ga ühendada

Järgmisena installige oma arvutisse Tera Term, mis võimaldab teil arvuti kaudu Raspberry Pi terminaliga liidestuda:

Seejärel ühendage Pi -kiilu USB -jadakaabel arvutiga. Sellele pääseb juurde Tera Term kaudu. Veenduge, et jadapordi edastuskiirus on 115200.

Esiteks postitab Pi sisselogimisviiba, kui OS on õigesti installitud

Vaikimisi kasutajanimi ja parool on:

Kasutajanimi: pi

Parool: vaarikas

Samm 4: Pi seadistamine (2. osa)

WiFi seadistamine

Käivitage terminalis käsk

sudo nano/etc/network/interfaces

Seejärel kleepige see kood sisse ja asendage SSID ja PSK oma ruuteri nime ja parooliga

auto lo

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

See fail võimaldab Pi ühendada teie WiFi -ga

Seejärel taaskäivitage Pi joonega

sudo taaskäivitamine

Veebiserveri installimine

Logige sisse ja installige seejärel Apache server

sudo apt -get install apache2 -y

ja

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

Oma Pi IP -aadressi leidmiseks käivitage käsk

hostinimi -mina

Kasutage brauserit, et pääseda juurde kuvatavale IP -le, et kontrollida, kas see töötab.

Näiteks sisestaksin Google Chrome'i aadressiribale 192.168.1.72.

Dokumendid, mida peaksite järgima, leiate aadressilt

Samuti on vaja installida PiGPIO raamatukogu, mis võimaldab teil kontrollida GPIO kontaktide kaudu saadetavaid andmeid.

sudo apt-get install build-essential unzip wget

ja

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

Samm: koodi kirjutamine

Liikuge reaga aadressile/var/www/html

cd/var/www/html

Kataloogis on vaikimisi html -fail, mida peate muutma.

sudo nano index.html

Nano sees kustutage kõik juba olemasolev ja asendage see järgmise koodiga.

(Tera Term võib kopeerimise ja kleepimise korral olla pisut funky, kuid tavaliselt, kui olete teksti kopeerinud, peaks selle ülesande täitma alt+v)

funktsioon readRGB (värv) {if (color.length == 0) {document.getElementById ("txtHint"). internalHTML = ""; tagasipöördumine; } else {var xmlhttp = uus XMLHttpRequest (); xmlhttp.onreadystatechange = function () {if (this.readyState == 4 && this.status == 400) {document.getElementById ("txtHint"). internalHTML = this.responseText; }}; temp = kodeerimineURIComponent (värv); xmlhttp.open ("GET", "action_page.php? q =" + temp, true); xmlhttp.send (); }} Valige värv:

Seejärel salvestage see nime index.html asemel nimega main.html

Ülaltoodud kood toimib nupuna, mida vajutate, ja koodina, mis saadab teie valitud värvi teise faili.

Järgmisena käivitage käsk

sudo nano

ja kleepige sisse

$ r $ g $ b ;

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

ja salvestage see kui action_page.php

See kood võtab vastu RGB väärtuse ja määrab PWM väärtused LED -ribal.

6. etapp: vooluahela kujundus

Vooluahela disain
Vooluahela disain

Nüüd, kui kogu tarkvara on seadistatud, on aeg riistvaraga tegeleda.

Vooluahela eesmärk on saata PWM (impulsi laiuse moduleeritud) signaalid Pi -lt LED -massiivi.

LED -ribal on neli tihvti: punane, roheline, sinine ja toide (minu puhul 5 volti).

Iga PWM -tihvt juhib ühte kolmest värvist läbi transistori, mis toimib lülitina.

Igal transistoril on kolm tihvti: kollektor, alus ja emitter.

PWM -signaal juhib töötsüklit (kui kaua lüliti sisse ja välja lülitub).

Töötsükli tulemusel muutuvad tuled tumedamaks või heledamaks.

Kuna tuled lülituvad sisse ja välja nii kiiresti, näevad inimesed seda erineva heledusega pideva valgusena.

MÄRKUS. Skeemil kujutavad LED -sümbolid LED -massiivi ja voolu piiravaid takistid juhtmes.

7. samm: leiva määrimine võiga… Juhatus

Teie leiva määrimine… Juhatus
Teie leiva määrimine… Juhatus

Ühenduste loomise ajal lülitage Pi kindlasti välja.

Asetage Pi -kiil ühe tihvtide reaga leivaplaadi kummalegi poolele ja ühendage see lindi kaabli abil Pi -ga. Kasutasin tahket südamikutraati, et vähendada leivalaua segadust ja veenduda, et midagi kogemata lahti ei võtaks.

Asetage transistorid leivalaua ülemisele poolele (veerg A) ja ühendage LED -massiiv alumise poolega (read H, I või J).

Ühendage negatiivne toitekaabel kiilil oleva GND tihvtiga ja positiivne rööp 5 V tihvtiga.

Ühendage positiivne toiteliin LED -massiivi toitepistikuga.

Ühendage iga transistori jaoks emitteri tihvt negatiivse toitekaabliga ja ühendage kollektorit eraldi ridadesse, mis vastavad LED -massiivi tihvtidele (ma kasutasin rida 1 5v ja 2, 3 ja 4 rohelise, punase ja sinisena, veerus f). Seejärel ühendage leivalaualt LED -ribaga neli isast ja emast hüppajajuhtmeid.

Lõpuks ühendage roheline transistori aluse tihvt kiilu tihvtiga 17, punane transistori alus tihvtiga 22 ja sinine transistori alus tihvtiga 24.

8. etapp: testimine

Testimine
Testimine

Navigeerige veebibrauseris Pi IP -aadressile ja kirjutage pärast seda /main.html

Valige värv ja olge üllatunud "kaasaegse tehnoloogia imest"!

Samm: võtke minuga ühendust, kui teil on küsimusi/tagasisidet

Kui teil on küsimusi või ettepanekuid, jätke siia kommentaar või saatke mulle DM ja proovin vastata esimesel võimalusel.

Edu!

Soovitan: