Turinys:

„Wifi“valdoma 12v LED juostelė naudojant „Raspberry Pi“su „Tasker“, „Ifttt“integracija: 15 žingsnių (su paveikslėliais)
„Wifi“valdoma 12v LED juostelė naudojant „Raspberry Pi“su „Tasker“, „Ifttt“integracija: 15 žingsnių (su paveikslėliais)

Video: „Wifi“valdoma 12v LED juostelė naudojant „Raspberry Pi“su „Tasker“, „Ifttt“integracija: 15 žingsnių (su paveikslėliais)

Video: „Wifi“valdoma 12v LED juostelė naudojant „Raspberry Pi“su „Tasker“, „Ifttt“integracija: 15 žingsnių (su paveikslėliais)
Video: Управление двигателем постоянного тока с ШИМ с помощью Arduino и модуля L298N с библиотекой - Robojax 2024, Liepa
Anonim
„Wi -Fi“valdoma 12v LED juostelė naudojant „Raspberry Pi“su „Tasker“, „Ifttt“integracija
„Wi -Fi“valdoma 12v LED juostelė naudojant „Raspberry Pi“su „Tasker“, „Ifttt“integracija
„Wi -Fi“valdoma 12v LED juostelė naudojant „Raspberry Pi“su „Tasker“, „Ifttt“integracija
„Wi -Fi“valdoma 12v LED juostelė naudojant „Raspberry Pi“su „Tasker“, „Ifttt“integracija

Šiame projekte aš jums parodysiu, kaip valdyti paprastą 12 V analoginę LED juostą per „Wi -Fi“naudojant aviečių pi.

Šiam projektui jums reikės:

  • 1x Raspberry Pi (aš naudoju Raspberry Pi 1 modelį B+)
  • 1x RGB 12v LED juostelė [Ebay Australia]
  • 3x IRFZ44N N kanalo „Mosfet“[„Ebay Australia“]
  • 1x moterų nuolatinės srovės maitinimo lizdo adapteris [Ebay Australia]
  • Kai kurie laidai
  • Ekranas, klaviatūra (tik sąrankai)

1 veiksmas: įdiekite „Raspbian OS“naudodami „Windows“

Įdiekite „Raspbian OS“naudodami „Windows“
Įdiekite „Raspbian OS“naudodami „Windows“
Įdiekite „Raspbian OS“naudodami „Windows“
Įdiekite „Raspbian OS“naudodami „Windows“
Įdiekite „Raspbian OS“naudodami „Windows“
Įdiekite „Raspbian OS“naudodami „Windows“

Norėdami įdiegti „Raspbian“su „Windows“, jums reikės:

  • „Win32 Disk Imager“: [Atsisiųsti]
  • „Raspbian OS Lite“: [Zip], [Torrent]

** SVARBU, jei padarysite neteisingai, galite prarasti visus savo duomenis. Prieš tęsdami, sukurkite atsarginę duomenų kopiją **

  1. Prijunkite SD kortelę prie kortelių skaitytuvo ir atidarykite „Mano kompiuteris“
  2. Ieškokite „Drive Letter“
  3. Dešiniuoju pelės mygtuku spustelėkite „Win32DiskImager“ir spustelėkite „Vykdyti kaip administratorius“
  4. Tada spustelėkite mažą mėlyną aplanką ir suraskite savo RaspbianOS atvaizdą
  5. Taip pat spustelėkite išskleidžiamąjį laukelį po Įrenginys ir pakeiskite jį į SD kortelės disko raidę
  6. Tada spustelėkite „Rašyti“
  7. Dialogo langas bus atidarytas PRIEŠ Paspaudus Taip, patikrinkite, ar tikslinis įrenginys yra teisingas
  8. Tada išimkite SD kortelę ir įdėkite ją į pi

2 veiksmas: įdiekite „Raspbian OS“naudodami „Mac OS X“

Įdiekite „Raspbian OS“naudodami „Mac OS X“
Įdiekite „Raspbian OS“naudodami „Mac OS X“
Įdiekite „Raspbian OS“naudodami „Mac OS X“
Įdiekite „Raspbian OS“naudodami „Mac OS X“
Įdiekite „Raspbian OS“naudodami „Mac OS X“
Įdiekite „Raspbian OS“naudodami „Mac OS X“
Įdiekite „Raspbian OS“naudodami „Mac OS X“
Įdiekite „Raspbian OS“naudodami „Mac OS X“

Norėdami įdiegti „Raspbian“su „Mac“, jums reikės:

  • „ApplePi-Baker“[Atsisiųsti]
  • „Raspbian OS Lite“: [Zip], [Torrent]

** SVARBU, jei padarysite neteisingai, galite prarasti visus savo duomenis. Prieš tęsdami, sukurkite atsarginę duomenų kopiją **

  1. Atidarykite „Disk Utility“ir kairėje pusėje raskite SD kortelę, tada spustelėkite ją
  2. Lango apačioje ieškokite „Įrenginys“, kur turėtumėte pamatyti kažką panašaus į diskXsX, kur x yra skaičius
  3. Prisiminkite „Įrenginio“numerį ir atidarykite „ApplePi-Baker“
  4. Jis paprašys jūsų slaptažodžio, nes turės suformatuoti SD kortelę
  5. Kairėje pusėje spustelėkite „Įrenginio“numerį, esantį po / dev /
  6. Spustelėkite „Atkurti atsarginę kopiją“ir raskite RaspbianOS vaizdą.
  7. Jis pradės ištrinti SD kortelę ir į ją įdiegs „Raspbian“
  8. Kai tai bus padaryta, pasirodys įspėjimo langelis, kuriame sakoma, kad galite išimti SD kortelę, išimti ją ir įdėti į savo pi.

3 žingsnis: „Pi“nustatymas

Prieš įjungdami „pi“, turėsite prijungti HDMI ekraną, klaviatūrą ir eterneto kabelį arba USB „wifi“(tai nustatysime kitame žingsnyje).

Įjunkite pi, pamatysite, kad ekranas užpildys krūvą teksto. Tai normalu ir yra „Linux“branduolio paleidimo dalis. Tiesiog šiek tiek palaukite, kol pamatysite

aviečių prisijungimas:

Jūsų vartotojo vardas yra pi, o slaptažodis - avietinis (ekrane nieko nematysite, bet įvedamas)

Tada prisijungę pamatysite:

pi@raspberrypi: ~ $

Tada turite įvesti:

sudo raspi-config

Tada jūsų ekranas bus užpildytas mėlynu ekranu su parinktimis pilkoje dėžutėje centre,

  1. Naudodami aukštyn ir žemyn klavišus, po kelių sekundžių paryškinkite ir paspauskite „Enter“parinktį „Išplėsti failų sistemą“, būsite nukreipti į įspėjimą, kuriame sakoma, kad „šakninės failų sistemos dydis pakeistas“, spustelėkite „Enter“
  2. Tada paspauskite rodyklę žemyn ir eikite į „Boot Options“ir spustelėkite „Enter“, tada spustelėkite „Enter“, kai pasirinkta „Desktop / CLI“, tada pažymėkite „Console Autologin“ir spustelėkite „Enter“
  3. Tada pasirinkite Išplėstinės parinktys ir spustelėkite įvesti
  4. Tada slinkite žemyn iki ssh ir spustelėkite Enter, tada pasirinkite taip
  5. tada spauskite rodyklę į dešinę, kol paryškinsite nugarą, ir paspauskite „Enter“
  6. Tada vėl eikite į apačią ir spustelėkite „Baigti“, tada pasakykite „taip“, kad paleistumėte iš naujo

Kai jis bus paleistas iš naujo, jei esate prisijungę per eternetą, turite įvesti šią komandą, kad surastumėte savo IP adresą, kad galėtume ssh į pi

Raskite IP:

pagrindinio kompiuterio vardas -aš

4 veiksmas: nustatykite „Wifi“

Norėdami nustatyti „Wi -Fi“pi, turime redaguoti failą

1. įveskite komandų eilutę

sudo nano /etc/wpa_supplicant/wpa_supplicant.conf

2. Eikite į failo pabaigą ir įveskite

tinklas = {

ssid = "Your_Wifi_Name" psk = "Your_wifi_password"}

3. Tada iš naujo paleiskite pi

sudo perkraukite

Kai jūsų „pi“bus paleistas iš naujo, įveskite jo IP adresą įvesdami

pagrindinio kompiuterio vardas -aš

turėtumėte gauti savo IP adresą. Bet jei perdarytas tekstas tuščias, tai reiškia, kad pi negalėjo prisijungti prie jūsų tinklo. dar kartą patikrinkite, ar teisingai įvedėte „Wi -Fi“vardą ir slaptažodį, nes nesvarbu didžiosios ir mažosios raidės.

5 veiksmas: nuotoliniu būdu prisijunkite prie „Pi“naudodami „Windows“

Nuotoliniu būdu prisijunkite prie „Pi“naudodami „Windows“
Nuotoliniu būdu prisijunkite prie „Pi“naudodami „Windows“
Nuotoliniu būdu prisijunkite prie „Pi“naudodami „Windows“
Nuotoliniu būdu prisijunkite prie „Pi“naudodami „Windows“
Nuotoliniu būdu prisijunkite prie „Pi“naudodami „Windows“
Nuotoliniu būdu prisijunkite prie „Pi“naudodami „Windows“
Nuotoliniu būdu prisijunkite prie „Pi“naudodami „Windows“
Nuotoliniu būdu prisijunkite prie „Pi“naudodami „Windows“

Dabar, kai pi yra prijungtas prie interneto, galime pašalinti klaviatūros pelę ir ekraną ir nuotoliniu būdu prisijungti prie jo naudodami „ssh“

Norėdami ssh į pi su windows, turite atsisiųsti

glaistas: [Atsisiųsti]

  1. Atidarykite glaistą, IP adreso laukelyje įveskite aviečių pi ip ir paspauskite atidaryti
  2. gausite dialogo langą, kuris atrodo kaip 2 paveikslėlis, paspauskite Taip
  3. tada pamatysite naują dialogo langą, kuriame sakoma „prisijungti kaip„ įveskite „pi“
  4. tada jis paprašys slaptažodžio, įveskite „avietė“

Dabar esate prisijungę prie pi per ssh

6 veiksmas: nuotoliniu būdu prisijunkite prie „Pi“naudodami „Mac“

Nuotoliniu būdu prisijunkite prie „Pi“naudodami „Mac“
Nuotoliniu būdu prisijunkite prie „Pi“naudodami „Mac“
Nuotoliniu būdu prisijunkite prie „Pi“naudodami „Mac“
Nuotoliniu būdu prisijunkite prie „Pi“naudodami „Mac“
Nuotoliniu būdu prisijunkite prie „Pi“naudodami „Mac“
Nuotoliniu būdu prisijunkite prie „Pi“naudodami „Mac“
Nuotoliniu būdu prisijunkite prie „Pi“naudodami „Mac“
Nuotoliniu būdu prisijunkite prie „Pi“naudodami „Mac“

Dabar, kai pi yra prijungtas prie interneto, galime pašalinti klaviatūrą ir pelę ir nuotoliniu būdu prisijungti prie jos naudodami „ssh“

1. Atidarykite „Terminal“

2. Įveskite

ssh pi@IP_ADDRESS

3. Tada galite gauti pranešimą, kuriame sakoma, kad pagrindinio kompiuterio raktas neišsaugotas. Tiesiog įveskite „taip“

4. Tada paaukštinus įveskite raspberry pi slaptažodį, kuris yra „Raspberry“

Dabar esate prisijungę prie pi per ssh

7 veiksmas: programinės įrangos diegimas

Kadangi dabar turime nuotolinę prieigą prie pi, turime įdiegti tam tikrą programinę įrangą, kad valdytume LED juostą

Mums reikės įdiegti

  • „pigpio“(tai visus GPIO kaiščius paverčia skaitmeniniais į PWM)
  • kolba (serverio pusės scenarijus, kalbantis su „pigpio“ir žiniatinklio serveriu)
  • apache2 (interneto serveris)

Įdiekite „pigpio“

1. Pirmiausia turime atsisiųsti ZIP aplanką, kuriame yra nesukompiliuota „pigpio“programinė įranga, naudojant šią komandą

wget

2. Tada turime išpakuoti ir eiti į katalogą

išpakuokite pigpio.zip && cd PIGPIO

3. dabar žinome, kad esame kataloge, kurį turime sudaryti ir įdiegti programinę įrangą

make -j4 && sudo make install

4. Dabar atidarykite rc.local, kad paleisdami galėtume pasakyti pi, kad paleistų „pigpiod“

sudo nano /etc/rc.local

tada prieš pat išėjimo liniją įeikite

sudo pigpiod

Dabar įdiegėte „pigpio“programinę įrangą

Įdėkite kolbą

pirmiausia turime atnaujinti programinės įrangos sąrašą, kad tai įvestume

sudo apt update && sudo apt upgrade -y

tada įdiekite pip

sudo apt-get įdiegti python-pip

dabar galime įdiegti kolbą

sudo pip instaliavimo kolba

Įdiekite „Apache2“

sudo apt -get install apache2 -y

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

Įdiekite „git“

sudo apt install git -y

Kai viskas bus baigta diegti, išjunkite „pi“

sudo dabar išjungti

8 žingsnis: Įjunkite maitinimą

Maitinimo prijungimas
Maitinimo prijungimas
Elektros prijungimas
Elektros prijungimas
Maitinimo prijungimas
Maitinimo prijungimas

Pirmiausia reikia prijungti maitinimo jungtį prie duonos lentos

  1. Prijunkite juodą laidą prie neigiamo maitinimo lizdo jungties
  2. Prijunkite raudoną laidą prie teigiamo maitinimo lizdo jungties
  3. Kitą raudonos vielos galą prijunkite prie teigiamos duonos lentos pusės
  4. Kitą juodos vielos galą prijunkite prie teigiamos duonos lentos pusės
  5. Tada prijunkite įžeminimo kaištį nuo pi (kaip parodyta paveikslėlyje) prie neigiamo kaiščio ant duonos lentos

Dabar turime prijungti daugumą.

9 žingsnis: „Mosfets“prijungimas ir „Pi“prijungimas

„Mosfets“prijungimas ir „Pi“prijungimas
„Mosfets“prijungimas ir „Pi“prijungimas
„Mosfets“prijungimas ir „Pi“prijungimas
„Mosfets“prijungimas ir „Pi“prijungimas
„Mosfets“prijungimas ir „Pi“prijungimas
„Mosfets“prijungimas ir „Pi“prijungimas
„Mosfets“prijungimas ir „Pi“prijungimas
„Mosfets“prijungimas ir „Pi“prijungimas

„Mosfet“leidžia valdyti, kiek energijos gali patekti į LED lemputes, mums reikės trijų „mosfet“, nes raudoną, žalią ir mėlyną šviesas reikia valdyti atskirai.

„Mosfet“turi tris kaiščius, kairėje yra „vartų“kaištis, kuris bus prijungtas prie pi, kad būtų galima valdyti, kiek energijos gali tekėti į lemputę

Centrinis kaištis vadinamas „nutekėjimu“, kuris pateks į šviesos diodus ir tiekia įtampą, kurią vartai leidžia praeiti

o smeigtukas dešinėje yra „Šaltinio“kaištis. Šis smeigtukas eina ant žemės ant duonos lentos.

Prijungimas prie raudonos šviesos

  1. Įdėkite vieną mosfetą į duonos lentą
  2. prijunkite juodą laidą iš GND ant duonos lentos prie šaltinio (dešinysis kaištis)
  3. tada prijunkite raudoną laidą nuo centrinio „mosfet“kaiščio prie raudono kaiščio ant LED juostos
  4. tada prijunkite raudoną laidą iš kairiojo kaiščio prie GPIO 17 ant pi

„Green Led“prijungimas

  1. Įdėkite antrąjį „mosfet“į duonos lentą
  2. tada kaip ir prieš tai prijunkite juodą laidą iš GND ant duonos lentos prie šaltinio (dešinysis kaištis)
  3. tada prijunkite žalią laidą nuo centrinio „mosfet“kaiščio prie žalios spalvos kaiščio ant LED juostos.
  4. tada prijunkite žalią laidą iš kairiojo kaiščio prie GPIO 22 ant pi

„Blue Led“prijungimas

  1. Įdėkite paskutinį „mosfet“į duonos lentą
  2. prijunkite kitą juodą laidą iš GND ant duonos lentos prie šaltinio (dešinysis kaištis)
  3. tada prijunkite mėlyną laidą nuo centrinio „mosfet“kaiščio prie mėlyno kaiščio ant LED juostos.
  4. tada prijunkite mėlyną laidą iš kairiojo kaiščio prie GPIO 24 ant pi

Tada ant LED juostos turėsite dar vieną kaištį, kuris bus baltas arba juodas, tiesiog prijunkite laidą nuo teigiamo duonos lentos kaiščio prie to papildomo kaiščio ant LED juostos

Dabar, kai baigsime, galime pradėti tai išbandyti.

10 veiksmas: atsisiųskite ir išbandykite „Led Strip“

Norėdami atsisiųsti „Led“juostos valdymo šaltinio kodą

git klonas https://github.com/DavidMontesin/Raspberry-PI-Wifi-Led-Strip.git && cd Raspberry-PI-Wifi-Led-Strip/

Norėdami išbandyti LED juostą, paleiskite test.py failą.

python Test.py

jei kai kurios spalvos neužsidega, patikrinkite, ar viskas tinkamai prijungta.

kaip veikia šis scenarijus?

Jei atidarysite „python“scenarijų, jums gali kilti klausimas, kaip jis veikia, pirmoje eilutėje pamatysite:

importo laikas

ši maža biblioteka leidžia pristabdyti scenarijų, kad galėtume greičiau įjungti šviesą

importuoti pigpio

ši biblioteka leidžia mums bendrauti su LED juosta

pi = pigpio.pi ()

nustatykite kintamąjį, kad galėtume naudoti pi.set_pw… insted iš pigpio.pi (). set_pw…

„RedPin“= 17

„GreenPin“= 22

„BluePin“= 24

tai tik kintamieji, leidžiantys mums pasakyti scenarijui, kas yra prijungta

spausdinti („bandymas raudonai“)

tai tiesiog atspausdins tekstą į komandų eilutę

pi.set_PWM_dutycycle („RedPin“, 255)

ši komanda yra „pigpio“bibliotekos dalis ir sako, kad reikia nustatyti „RedPin“, kuris ieško anksčiau nustatyto skaičiaus ir nustato jo ryškumą „255“, kuris yra didžiausias

laikas. miegas (2)

tai yra laiko bibliotekos dalis ir tiesiog pristabdys scenarijų 2 sekundėms

šios lanksčios komandos bus kartojamos kitiems šviesos diodams, kol

pi.stop ()

kuris nustos kalbėti su LED juosta ir išjungs visas spalvas.

11 veiksmas: serverio pusės scenarijaus programavimas

** Prieš pradėdami, rekomenduoju perskaityti apie python ir kolbą:

Štai keletas vadovų:

www.pythonforbeginners.com

docs.python-guide.org/en/latest/intro/learn…

flask.pocoo.org

Kadangi „Main.py“yra tiesiogiai, šis žingsnis tik paaiškina kodą.

Pirmiausia turime bibliotekas

iš kolbos importo Kolba, render_template, request

importuoti pigpio iš siūlų importuoti start_new_thread

tada turime nustatyti kai kuriuos kintamuosius

programa = kolba (_ vardas_)

CurrentColour = "Balta" RedColourCode = 0 BlueColourCode = 0 GreenColourCode = 0 RedBeforeEffect = 0 BlueBeforeEffect = 0 GreenBeforeEffect = 0 pi = pigpio.pi ()

pirmasis kintamasis skirtas kolbai, kuri yra mūsų žiniatinklio serveris, vadinsime ją programa, kad būtų lengviau skambinti ir paleisti. Tada yra 6 kintamieji, kad pirmuose trijuose bus nurodyta, kokią spalvą pakeisti, o kituose trijuose - ankstesnė.

@app.route ('/', metodai = ['GET'])

Šioje eilutėje sakoma, kad jei kas nors įves pi formato IP adresą žiniatinklio naršyklėje, jis paleis po juo esantį scenarijų, taip pat turi GET metodą, o tai reiškia, kad bet koks tekstas po? Spalva = bus perduotas žiniatinklio serveriui ir bus naudojamas LED juostos spalvai pakeisti.

def Pagrindinis ():

pasaulinė „CurrentColour“

tekstas def Main () reiškia, kad jis sukurs funkciją, vadinamą main, kurią galima iškviesti iš bet kurios scenarijaus vietos. o pasaulinė eilutė reiškia, kad ji atnaujins kintamąjį visame scenarijuje.

if request.args.get ('Spalva'):

CurrentColour = request.args.get ('Color') if CurrentColour == "White": FadeTORGB (255, 255, 255) elif CurrentColour == "Red": FadeTORGB (255, 0, 0) elif CurrentColour == "Green ": FadeTORGB (0, 255, 0) elif CurrentColour ==" DarkBlue ": FadeTORGB (0, 0, 255) elif CurrentColour ==" LightBlue ": FadeTORGB (0, 255, 255) elif CurrentColour ==" Orange ": FadeTORGB (255, 15, 0) elif CurrentColour == "Pink": FadeTORGB (255, 0, 192) elif CurrentColour == "Yellow": FadeTORGB (255, 157, 0) elif CurrentColour == "Purple": FadeTORGB (123, 0, 255) elif CurrentColour == "Juoda": FadeTORGB (0, 0, 0) return render_template ('index.html')

Šis scenarijus gaus bet kokį pavadinimą po GET metodo „Spalva“ir jį išsaugos. tada jis patikrins šį pavadinimą ir iškvies funkciją, kuri gali tris kitas funkcijas vienu metu pakeisti raudoną, žalią ir mėlyną šviesas

def FadeTORGB („RedNum“, „BlueNum“, „GreenNum“):

start_new_thread (FadeUpRed, (RedNum,)) start_new_thread (FadeUpBlue, (BlueNum,)) start_new_thread (FadeUpGreen, (GreenNum,))

Tai iškvies tris kitas funkcijas, kurios pakeis kiekvienos lemputės energijos kiekį ir sumažins efektą.

def FadeUpRed (REDUpNum):

global RedColourCode if RedColourCode <REDUpNum: while RedColourCode REDUpNum: while RedColourCode> REDUpNum: RedColourCode -= 1 pi.set_PWM_dutycycle (RedPin, RedColourCode)

def FadeUpBlue („BlueUpNum“):

global BlueColourCode if BlueColourCode <BlueUpNum: while BlueColourCode BlueUpNum: while BlueColourCode> BlueUpNum: BlueColourCode -= 1 pi.set_PWM_dutycycle (BluePin, BlueColourCode)

def FadeUpGreen (GreenUpNum):

global GreenColourCode if GreenColourCode <GreenUpNum: while GreenColourCode GreenUpNum: while GreenColourCode> GreenUpNum: GreenColourCode -= 1 pi.set_PWM_dutycycle (GreenPin, GreenColourCode)

jei _vardas_ == "_main_":

app.run (priegloba = "0.0.0.0")

12 žingsnis: Tinklo serverio programavimas

Dabar, kai turime serverį, turime sukurti svetainę.

Kadangi serveris yra tiesiogiai „git“šablonuose ir statiniuose aplankuose, šis žingsnis tik paaiškina kodą.

Taip pat rekomenduoju perskaityti apie html, css, javascript

HTML

Pirmiausia turime užprogramuoti html, čia yra visas turinys, kurį galima stilizuoti naudojant css

1. Galvos sukūrimas (pavadinimas, failų susiejimas,)

„Wifi Led Strip“

Pirmosios dvi žymos žiniatinklio naršyklei nurodo, kad tai yra tinklalapis, tada trečioji eilutė liepia naršyklei paslėpti bet kokį tekstą bloko viduje ir po juo yra pavadinimas, kuris bus rodomas skirtuke

Tinklalapio sukūrimas per visą ekraną naudojant „iOS“

Jei norite, kad puslapis būtų visas ekranas, įveskite šį kodą po žyma

Toliau pridėsime nuorodas į css failą, kurį padarysime, tai bus kitaip nei įprasta, nes kolba yra failų valdymo būdas

Tada po to PRIVALOT uždaryti žymą ir sukurti kūno žymą

Kūno žyma reiškia, kad visos jos viduje esančios žymos bus rodomos tinklalapyje

Dabar mes pagaminsime spalvų mygtukus, kurie gali pakeisti LED juostą.

Mes sukursime po vieną kiekvienai spalvai ir įdėsime ją į lentelę

Tai sukuria išorinį stalo rėmą

tai sukurs lentelės eilutę

Dabar sukurkime oranžinį mygtuką

žyma td sukuria langelį, tada funkcija „onClick“iškvies „JavaScript“funkciją, kurią mes sukursime, o funkcija „klasė“naudojama mygtuko stiliui, o stilius - tik spalvai.

Mes tiesiog turėsime pakeisti sendColour tekstą ir vienas kito mygtuko stilių, bet po kiekvieno 2 mygtuko uždarysime eilutę ir sukursime naują eilutę

Ir tt…

Įdėję visas spalvas, turite uždaryti stalą

Javascript

Dabar turime pridėti funkciją „SendColour“, kurią anksčiau minėjome, kad tai padarytume, pirmiausia turime pridėti žymą, nurodančią žiniatinklio naršyklei, kad yra „JavaScript“

tada sukurkite funkciją

funkcija SendColour (ClickedColour) {

Ši funkcija išsiųs „Ajax“užklausą aviečių pi, kad ji pakeistų spalvą, kurią spustelėjote

xhttp = naujas XMLHttpRequest ();

xhttp.open ("GET", "? Color =" + ClickedColour, false); xhttp.send (); }

Dabar turime uždaryti „javascript“ir „html“

CSS

Dabar mes ketiname kurti svetainę

pirmiausia išleiskite CD iš šablonų aplanko ir eikite į statinį aplanką

cd.. && cd statinis

Dabar sukurkite failą Style.css

nano stilius.css

Pirmiausia leiskite stalui užpildyti visą ekraną.

. Spalvos {

plotis: 100%; }

.button {

paminkštinimas: 25px 35px; ribos spindulys: 4 taškų; }

Serverio testavimas

Norėdami patikrinti serverį, eikite į žiniatinklio serverio aplanką

cd..

tada įveskite

python Main.py

tai paleis serverį, tada kompiuteryje atidarykite žiniatinklio naršyklę ir eikite į

YOUR_PI_PI: 5000the: 5000 pabaigoje yra svarbus dabar, nes tai yra prievadas, kuriame veikia žiniatinklio serveris.

Jei einate į tinklalapį ir gaunate „vidinę serverio klaidą“, pažvelkite į konsolę (glaistą ar terminalą) ir pamatysite krūvą teksto, tiesiog pažvelkite į paskutinę eilutę. papasakokite, kas vyksta, galite rasti „Google“, kad rastumėte atsakymą, bet jei matote spalvas ekrane, galite spustelėti vieną ir pamatysite tos spalvos lemputę, jei ne, tada patikrinkite, ar maitinimas prijungtas ir įjungtas, ar html kodas įvestas teisingai.

13 veiksmas: kad jis veiktų su „Apache2“

Dabar, kai mes jį išbandėme, turime priversti jį kalbėtis su apache, kad jis galėtų veikti paleidžiant ir naudojant 80 prievadą (standartinis žiniatinklio prievadas)

1. „WebServer“aplanke sukurkite „wsgi“failą

nano wifiled.wsgi

Tada įveskite failą

importo sistema

sys.path.insert (0, '/home/pi/Webserver/') iš pagrindinės importo programos kaip programa

tada pridėkite vartotoją pi prie grupės, pavadintos www-data, tai leis apache ieškoti žiniatinklio serverio aplanke

sudo usermod -a -G www -duomenys pi

tada pašalinkite numatytąją konfigūraciją

sudo a2dissite 000-numatytasis

tada sukurkite failą aplanke „Apache config“

sudo nano /etc/apache2/sites-available/wifiled.conf

ir įeiti

Serverio pavadinimas „WifiLed“ServerAdmin [email protected] WSGIScriptAlias//home/pi/Webserver/wifiled.wsgi Užsakymas leisti, neleisti Leisti iš visų Reikalauti viso suteikto ErrorLog $ {APACHE_LOG_DIR} /error.log LogLevel įspėti CustomLog $ {APACHE_LOG_DIR} kartu

tada liepkite apache perskaityti konfigūraciją įvesdami

sudo a2ensite wifiled.conf

Dabar iš naujo paleiskite „pi“, kai jis iš naujo paleidžiamas, įveskite savo žiniatinklio naršyklę

JŪSŲ_PI_IP

14 veiksmas: nustatykite „Tasker“, „Ifttt“ir kitas paslaugas

Prieš nustatydami šias programas, turite nustatyti maršrutizatoriaus prievadą, nes kiekvienas maršrutizatorius yra skirtingas, galite perskaityti čia

Taskeris

„Android“įrenginyje atidarykite programą

tada sukurkite naują įvykio profilį, galite pasirinkti bet kurį aktyviklį. Aš pasirinkau „Skambinti telefonu“ir bet kam nustatiau spalvą „C: ANY“, tada jūsų paprašys pasirinkti užduotį, spustelėkite „Nauja užduotis“ir pavadinkite ją savo veiksmu. Pavadinsiu jį „telefono skambučiu“, tada paspauskite pridėjimo veiksmą ir suraskite „HTTP galvutė“ir nustatykite serverio prievadą į savo_raškių_pi_IP, tada kelyje galite nustatyti vientisą spalvą naudodami „/? Spalva = žalia“arba galite sukurti padarysime tai kitame žingsnyje. Tada spustelėkite atgal ir vėl.

IFTTT

pirmiausia eikite į ifttt ir sukurkite naują programėlę Pasirinkite bet kurį trigerį (aš pasirinkau mygtuką), o tada veiksmui pasirinkite kūrėjo kanalą ir pasakėte, kad pateiktų užklausą, tada įveskite URL į YOUR_PUBLIC_PI/? Color = LightBlue, jei nežinote savo viešosios vietos ip tiesiog įveskite „Mano IP“„Google“. Tada metodui įveskite HEAD, tada spustelėkite „Sukurti veiksmą“dabar, kai jūsų veiksmas įvyks, jei nepateiksite prašymo savo pi pakeisti spalvą.

Kitos paslaugos

Taip pat galite prijungti kitas paslaugas, kurios pateikia HTTP HEAD arba GET užklausą.

15 veiksmas: pasirinktinių efektų kūrimas

Į Main.py pridėkite importo ataskaitą, įveskite importavimo dalį

importo laikas

taip pat prieš sukurdami efektą turime pridėti kintamąjį tiesiai prie „GreenBeforeEffect add“

CanChangeColour = Tiesa

tada pakeiskite, jei request.args.get ('Spalva'):

į

if request.args.get ('Color') ir CanChangeColour:

skiltis po grąžinimo render_template ('Main.html') add

@app.route ('/Efektas', metodai = ['GET'])

def efektas ():

Tada nustatykite kintamuosius į globalius

x = 0

pasaulinis RedColourCode globalinis BlueColourCode global GreenColourCode global RedBeforeEffect global BlueBeforeEffect global GreenBeforeEffect

dabar galime sukurti pirmąjį efektą

if request.args.get („Skambinti“):

RedBeforeEffect = RedColourCode BlueBeforeEffect = BlueColourCode GreenBeforeEffect = GreenColourCode FadeTORGB (0, 0, 0) time.sleep (2)

Šis veiksmas bus vykdomas, kai „pi“gaus užklausą, pvz., „/? Effect = Call“, ir išsaugos esamą spalvą, kad galėtume ją perskambinti. Tada LED juostelę padarysime juodą ir laukiame, kol tai įvyks.

Dabar ketiname padaryti, kad lemputė išbluktų nuo juodos iki žalios, tada vėl į juodą, ir aš noriu tai padaryti penkis kartus

o x <= 5: FadeTORGB (0, 255, 0) x += 1 kartas.sleep (1) FadeTORGB (0, 0, 0) time.sleep (1) CanChangeColour = Tikras laikas.sleep (2) FadeTORGB (RedBeforeEffect, „BlueBeforeEffect“, „GreenBeforeEffect“)

Tai bus skaičiuojama iki penkių, bet kiekvieną kartą ji išnyks iki žalios spalvos, tada palaukite sekundę ir pereis į juodą spalvą. Tada tai, ką baigsite, pakeis spalvą į tas, kurias turėjote prieš keisdami.

Dabar mes tik norime sukurti atsaką.

grįžti ""

Taip pat iš naujo paleiskite „Raspberry pi“

sudo perkraukite

Rekomenduojamas: