Satura rādītājs:

Wifi kontrolēta 12 V LED sloksne, izmantojot Raspberry Pi ar Tasker, Ifttt integrācija: 15 soļi (ar attēliem)
Wifi kontrolēta 12 V LED sloksne, izmantojot Raspberry Pi ar Tasker, Ifttt integrācija: 15 soļi (ar attēliem)

Video: Wifi kontrolēta 12 V LED sloksne, izmantojot Raspberry Pi ar Tasker, Ifttt integrācija: 15 soļi (ar attēliem)

Video: Wifi kontrolēta 12 V LED sloksne, izmantojot Raspberry Pi ar Tasker, Ifttt integrācija: 15 soļi (ar attēliem)
Video: МКС Monster8 — Основы 2024, Jūlijs
Anonim
Wifi kontrolēta 12 V LED sloksne, izmantojot Raspberry Pi ar Tasker, Ifttt integrācija
Wifi kontrolēta 12 V LED sloksne, izmantojot Raspberry Pi ar Tasker, Ifttt integrācija
Wifi kontrolēta 12 V LED sloksne, izmantojot Raspberry Pi ar Tasker, Ifttt integrācija
Wifi kontrolēta 12 V LED sloksne, izmantojot Raspberry Pi ar Tasker, Ifttt integrācija

Šajā projektā es jums parādīšu, kā kontrolēt vienkāršu 12 voltu analogo LED sloksni, izmantojot wifi, izmantojot aveņu pi.

Šim projektam jums būs nepieciešams:

  • 1x Raspberry Pi (es izmantoju Raspberry Pi 1 modeli B+)
  • 1x RGB 12v LED sloksne [Ebay Australia]
  • 3x IRFZ44N N-Channel Mosfet's [Ebay Australia]
  • 1x sieviešu līdzstrāvas ligzdas adapteris [Ebay Australia]
  • Daži vadi
  • Displejs, tastatūra (tikai iestatīšanai)

1. darbība: instalējiet Raspbian OS, izmantojot Windows

Instalējiet Raspbian OS, izmantojot Windows
Instalējiet Raspbian OS, izmantojot Windows
Instalējiet Raspbian OS, izmantojot Windows
Instalējiet Raspbian OS, izmantojot Windows
Instalējiet Raspbian OS, izmantojot Windows
Instalējiet Raspbian OS, izmantojot Windows

Lai instalētu Raspbian ar logiem, jums būs nepieciešams:

  • Win32 diska attēlveidotājs: [Lejupielādēt]
  • Raspbian OS Lite: [Zip], [Torrent]

** SVARĪGI, ja rīkojaties nepareizi, jūs varat zaudēt visus savus datus. Pirms turpināt, lūdzu, dublējiet savus datus **

  1. Pievienojiet SD karti karšu lasītājam un atveriet sadaļu Mans dators
  2. Atrodiet diska burtu
  3. Ar peles labo pogu noklikšķiniet uz Win32DiskImager un noklikšķiniet uz "Palaist kā administratoram"
  4. Pēc tam noklikšķiniet uz mazās zilās mapes un atrodiet savu RaspbianOS attēlu
  5. Noklikšķiniet arī uz nolaižamā lodziņa zem ierīces un nomainiet to uz SD kartes diska burtu
  6. Pēc tam noklikšķiniet uz "Rakstīt"
  7. Tiks atvērts dialoglodziņš PIRMS nospiežot Jā, pārbaudiet, vai mērķa ierīce ir pareiza
  8. Pēc tam izņemiet SD karti un ievietojiet to pi

2. darbība: instalējiet Raspbian OS, izmantojot Mac OS X

Instalējiet Raspbian OS, izmantojot Mac OS X
Instalējiet Raspbian OS, izmantojot Mac OS X
Instalējiet Raspbian OS, izmantojot Mac OS X
Instalējiet Raspbian OS, izmantojot Mac OS X
Instalējiet Raspbian OS, izmantojot Mac OS X
Instalējiet Raspbian OS, izmantojot Mac OS X
Instalējiet Raspbian OS, izmantojot Mac OS X
Instalējiet Raspbian OS, izmantojot Mac OS X

Lai instalētu Raspbian ar Mac, jums būs nepieciešams:

  • ApplePi-Baker [Lejupielādēt]
  • Raspbian OS Lite: [Zip], [Torrent]

** SVARĪGI, ja rīkojaties nepareizi, jūs varat zaudēt visus savus datus. Pirms turpināt, lūdzu, dublējiet savus datus **

  1. Atveriet diska utilītu un kreisajā pusē atrodiet savu SD karti, pēc tam noklikšķiniet uz tās
  2. Loga apakšdaļā meklējiet "Ierīce", jums vajadzētu redzēt kaut ko līdzīgu diskXsX, kur x ir skaitlis
  3. Atcerieties ierīces numuru un atveriet ApplePi-Baker
  4. Tas prasīs paroli, jo būs jāformatē SD karte
  5. Kreisajā pusē noklikšķiniet uz numura "Ierīce", kas ir pēc / dev /
  6. Noklikšķiniet uz "Atjaunot-dublēt", atrodiet RaspbianOS attēlu.
  7. Tas sāks izdzēst SD karti un instalēt tajā Raspbian
  8. Kad tas būs izdarīts, tiks parādīts brīdinājuma lodziņš, kurā teikts, ka varat noņemt SD karti, noņemt to un ievietot to savā pi.

3. darbība: Pi iestatīšana

Pirms pi ieslēgšanas jums būs jāpievieno HDMI displejs, tastatūra un Ethernet kabelis vai USB wifi (mēs to iestatīsim nākamajā darbībā).

Ieslēdzot pi, jūs redzēsit, ka ekrāns ir piepildīts ar tekstu. Tas ir normāli un ir daļa no Linux kodola palaišanas. Vienkārši pagaidiet mazliet, līdz redzat

aveņu pieteikšanās:

Jūsu lietotājvārds ir pi, un parole ir aveņu (ekrānā nekas netiks ierakstīts, bet tas joprojām tiek ievadīts)

Tad, piesakoties, jūs redzēsit:

pi@aveņu: ~ $

Tad jums jāievada:

sudo raspi-config

Pēc tam jūsu ekrāns tiks piepildīts ar zilu ekrānu ar opcijām pelēkā lodziņā centrā,

  1. Izmantojot augšup un lejup vērstos taustiņus, pēc dažām sekundēm atlasiet opciju "Izvērst failu sistēmu" un nospiediet taustiņu Enter, pēc tam tiksiet novirzīts uz brīdinājumu, kurā teikts, ka "saknes failu sistēmas izmērs ir mainīts", noklikšķiniet uz Enter
  2. Pēc tam nospiediet lejupvērsto bultiņu un dodieties uz sāknēšanas opcijām un noklikšķiniet uz Enter, pēc tam noklikšķiniet uz Enter, kad ir atlasīta opcija Desktop / CLI, pēc tam iezīmējiet “Console Autologin” un noklikšķiniet uz Enter
  3. Pēc tam atlasiet Papildu opcijas un noklikšķiniet uz Enter
  4. Pēc tam ritiniet uz leju līdz ssh un noklikšķiniet uz Enter, pēc tam atlasiet jā
  5. pēc tam nospiediet labo bultiņu, līdz tiek iezīmēta aizmugure, un nospiediet taustiņu Enter
  6. Pēc tam vēlreiz dodieties uz leju un noklikšķiniet uz Pabeigt, pēc tam sakiet jā, lai atsāknētu

Pēc pārstartēšanas, ja esat izveidojis savienojumu, izmantojot Ethernet, jums jāievada šī komanda, lai atrastu savu IP adresi, lai mēs varētu ievadīt sh

Atrodiet ip:

saimniekdatora nosaukums -es

4. darbība: iestatiet Wifi

Lai iestatītu wifi uz pi, mums ir jārediģē fails

1. ievadiet komandrindu

sudo nano /etc/wpa_supplicant/wpa_supplicant.conf

2. Dodieties uz faila beigām un ievadiet

tīkls = {

ssid = "Your_Wifi_Name" psk = "Your_wifi_password"}

3. Pēc tam pārstartējiet savu pi ar

sudo atsāknēšana

Pēc tam, kad jūsu pi reboots saņems tā IP adresi, ierakstot

saimniekdatora nosaukums -es

jums vajadzētu iegūt savu IP adresi. Bet, ja atkārtotais teksts ir tukšs, tas nozīmē, ka pi nevarēja izveidot savienojumu ar jūsu tīklu. vēlreiz pārbaudiet, vai esat pareizi ievadījis wifi vārdu un paroli, jo tie ir reģistrjutīgi.

5. solis: Attāli izveidojiet savienojumu ar savu Pi, izmantojot Windows

Attāli izveidojiet savienojumu ar savu Pi, izmantojot Windows
Attāli izveidojiet savienojumu ar savu Pi, izmantojot Windows
Attāli izveidojiet savienojumu ar savu Pi, izmantojot Windows
Attāli izveidojiet savienojumu ar savu Pi, izmantojot Windows
Attāli izveidojiet savienojumu ar savu Pi, izmantojot Windows
Attāli izveidojiet savienojumu ar savu Pi, izmantojot Windows
Attāli izveidojiet savienojumu ar savu Pi, izmantojot Windows
Attāli izveidojiet savienojumu ar savu Pi, izmantojot Windows

Tagad, kad pi ir pievienots internetam, mēs varam noņemt tastatūras peli un displeju un attālināti izveidot savienojumu ar to, izmantojot "ssh"

Lai ssh ievadītu pi ar logiem, jums ir nepieciešams lejupielādēt

tepe: [Lejupielādēt]

  1. Atveriet špakteli, IP adreses lodziņā ievadiet aveņu pi ip un pēc tam nospiediet atvērt
  2. Jūs saņemsiet dialoglodziņu, kas izskatās kā 2. attēls, nospiediet jā
  3. tad jūs redzēsit jaunu dialoglodziņu, kurā teikts "pieteikšanās kā" ievadiet "pi"
  4. tad tas prasīs paroli, ievadiet "aveņu"

Tagad esat izveidojis savienojumu ar pi, izmantojot ssh

6. darbība. Attāli izveidojiet savienojumu ar savu Pi, izmantojot Mac

Attāli izveidojiet savienojumu ar savu Pi, izmantojot Mac
Attāli izveidojiet savienojumu ar savu Pi, izmantojot Mac
Attāli izveidojiet savienojumu ar savu Pi, izmantojot Mac
Attāli izveidojiet savienojumu ar savu Pi, izmantojot Mac
Attāli izveidojiet savienojumu ar savu Pi, izmantojot Mac
Attāli izveidojiet savienojumu ar savu Pi, izmantojot Mac
Attāli izveidojiet savienojumu ar savu Pi, izmantojot Mac
Attāli izveidojiet savienojumu ar savu Pi, izmantojot Mac

Tagad, kad pi ir pievienots internetam, mēs varam noņemt tastatūru un peli un attālināti izveidot savienojumu ar to, izmantojot "ssh"

1. Atveriet "Terminal"

2. Ierakstiet

ssh pi@IP_ADDRESS

3. Tad jūs varētu saņemt ziņojumu, kurā teikts, ka resursdatora atslēga nav saglabāta. Vienkārši ierakstiet “jā”

4. Tad, kad tiek paaugstināts, ievadiet aveņu pi paroli, kas ir "Raspberry"

Tagad esat izveidojis savienojumu ar pi, izmantojot ssh

7. darbība: programmatūras instalēšana

Tā kā mums tagad ir attāla piekļuve pi, mums ir jāinstalē programmatūra, lai kontrolētu LED sloksni

Mums būs jāinstalē

  • pigpio (tas pārvērš visas GPIO tapas no digitālās uz PWM)
  • kolba (servera puses skripts, kas runā ar pigpio un tīmekļa serveri)
  • apache2 (tīmekļa serveris)

Instalējiet pigpio

1. Vispirms mums ir jālejupielādē zip mape, kurā ir nesakompilēta pigpio programmatūra, izmantojot šo komandu

wget

2. Pēc tam mums ir jāizpako un jādodas uz direktoriju

unzip pigpio.zip && cd PIGPIO

3. ziniet, ka atrodamies direktorijā, kas mums jāapkopo un jāinstalē programmatūra

make -j4 && sudo make install

4. Tagad atveriet rc.local, lai mēs varētu pateikt pi, lai palaistu pigpiod, startējot

sudo nano /etc/rc.local

tad tieši pirms izejas līnijas ievadiet

sudo pigpiod

Tagad esat instalējis pigpio programmatūru

Uzstādiet kolbu

vispirms mums ir jāatjaunina programmatūras saraksts, lai to izdarītu

sudo apt update && sudo apt upgrade -y

pēc tam instalējiet pip

sudo apt-get instalēt python-pip

tagad mēs varam uzstādīt kolbu

sudo pip instalācijas kolba

Instalējiet Apache2

sudo apt -get install apache2 -y

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

Instalējiet git

sudo apt instalēt git -y

Kad viss ir instalēts, izslēdziet pi ar

sudo tagad izslēdzas

8. solis: barošanas pieslēgšana

Strāvas pieslēgšana
Strāvas pieslēgšana
Strāvas pieslēgšana
Strāvas pieslēgšana
Strāvas pieslēgšana
Strāvas pieslēgšana

Vispirms mums ir jāpievieno barošanas savienotājs maizes dēlim

  1. Pievienojiet melno vadu strāvas ligzdas negatīvajam savienotājam
  2. Pievienojiet sarkano vadu strāvas kontaktligzdas pozitīvajam savienotājam
  3. Pievienojiet sarkanā stieples otru galu maizes dēļa pozitīvajai pusei
  4. Pievienojiet melnā stieples otru galu maizes dēļa pozitīvajai pusei
  5. Pēc tam pievienojiet zemējuma tapu no pi (kā redzams attēlā) maizes dēļa negatīvajā tapā

Tagad mums ir jāsavieno visvairākfet.

9. solis: Mosfets savienošana un Pi savienošana

Mosfets savienošana un Pi savienošana
Mosfets savienošana un Pi savienošana
Mosfets savienošana un Pi savienošana
Mosfets savienošana un Pi savienošana
Mosfets savienošana un Pi savienošana
Mosfets savienošana un Pi savienošana
Mosfets savienošana un Pi savienošana
Mosfets savienošana un Pi savienošana

Mosfet ļauj jums kontrolēt, cik daudz enerģijas var nonākt gaismas diodēs, mums būs nepieciešami trīs mosfeti, jo mums ir jākontrolē sarkanā, zaļā un zilā gaisma atsevišķi.

Mosfet ir trīs tapas, kreisajā pusē tam ir "vārtu" tapa, kas tiks savienota ar pi, lai kontrolētu, cik daudz enerģijas var plūst uz gaismas diodes

Centrālo tapu sauc par "Drenāžu", kas nonāks gaismas diodēs un piegādās spriegumu, ko vārti ļauj pagātnē

un labajā pusē esošā tapa ir "Avota" tapa. Šī tapa iet uz zemes uz maizes dēļa.

Sarkanās gaismas savienošana

  1. Ielieciet vienu mosfetu maizes dēļā
  2. savienojiet melno vadu no GND uz maizes dēļa ar avotu (labā tapa)
  3. pēc tam pievienojiet sarkano vadu no centrālās tapas uz mosfet ar sarkano tapu uz LED sloksnes
  4. pēc tam pievienojiet sarkano vadu no kreisās tapas līdz GPIO 17 uz pi

Zaļā LED savienošana

  1. Ielieciet otro mosfetu maizes dēļā
  2. tad tāpat kā pirms tam pievienojiet avotam maizes dēļa melno vadu no GND (labais tapa)
  3. pēc tam pievienojiet zaļo vadu no centrālās tapas uz mosfet ar zaļo tapu uz LED sloksnes.
  4. pēc tam pievienojiet zaļo vadu no kreisās tapas līdz GPIO 22 uz pi

Zilā LED savienošana

  1. Ievietojiet pēdējo mosfetu maizes dēļā
  2. savienojiet citu melno vadu no GND uz maizes dēļa ar avotu (labā tapa)
  3. pēc tam pievienojiet zilo vadu no centrālās tapas uz mosfet ar zilo tapu uz LED sloksnes.
  4. pēc tam pievienojiet zilo vadu no kreisās tapas līdz GPIO 24 uz pi

Tad jums būs vēl viena tapa uz LED sloksnes, kas būs baltā vai melnā krāsā, vienkārši pievienojiet vadu no maizes dēļa pozitīvās tapas ar šo papildu tapu uz LED sloksnes

Tagad, kad esam pabeiguši, mēs varam sākt to pārbaudīt.

10. darbība: LED sloksnes lejupielāde un pārbaude

Lai lejupielādētu avota kodu Led sloksnes vadīšanai

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

Lai pārbaudītu LED sloksni, palaidiet failu test.py.

python Test.py

ja kāda iemesla dēļ dažas krāsas nedeg, lūdzu, pārbaudiet, vai viss ir pievienots pareizi.

kā darbojas šis skripts?

atverot python skriptu, jums varētu rasties jautājums, kā tas darbojas, pirmajā rindā redzēsit:

importa laiks

šī mazā bibliotēka ļauj mums apturēt skriptu, lai mēs varētu ātrāk ieslēgt gaismas

importēt pigpio

šī bibliotēka ļauj mums sazināties ar vadīto sloksni

pi = pigpio.pi ()

iestatiet mainīgo, lai mēs varētu izmantot pi.set_pw… insted no pigpio.pi (). set_pw…

RedPin = 17

GreenPin = 22

BluePin = 24

tie ir tikai mainīgie, kas ļauj mums pateikt skriptam, kas ir savienots ar LED

drukāt ("sarkanās krāsas pārbaude")

tas tikai izdrukās tekstu komandrindā

pi.set_PWM_dutycycle (RedPin, 255)

šī komanda ir daļa no pigpio bibliotēkas, un tā saka, lai iestatītu "RedPin", kurā tiek meklēts iepriekš iestatītais numurs un tiek iestatīts tā spilgtums uz "255", kas ir maksimālais

laiks. miegs (2)

šī ir daļa no laika bibliotēkas un vienkārši apturēs skriptu uz 2 sekundēm

šīs elastīgās komandas atkārtosies pārējiem gaismas diodēm līdz

pi.stop ()

kas pārstās runāt ar LED joslu un izslēgs visas krāsas.

11. darbība: servera puses skripta programmēšana

** Pirms sākat iesaku izlasīt par pitonu un kolbu:

Šeit ir daži ceļveži:

www.pythonforbeginners.com

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

flask.pocoo.org

Tā kā Main.py atrodas tieši git, šis solis ir tikai koda skaidrojums.

Vispirms mums ir bibliotēkas

no kolbas importēšanas Kolba, render_template, pieprasījums

importēt pigpio no pavediena importēšanas start_new_thread

tad mums ir jāiestata daži mainīgie

app = kolba (_ name_)

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

pirmais mainīgais ir kolbai, kas ir mūsu tīmekļa serveris, mēs to sauksim par lietotni, lai būtu vieglāk piezvanīt un palaist. Tad ir 6 mainīgie, ka pirmajos trijos būs kāda krāsa, lai mainītu divus, un pārējos trīs būs iepriekšējā krāsa.

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

Šajā rindiņā teikts, ka, ja kāds tīmekļa pārlūkprogrammā ierakstīs pi IP adresi, tad tiks palaists zem tā esošais skripts, tam ir arī GET metode, ja tas nozīmē, ka jebkurš teksts pēc? Color = tiks nodots tīmekļa serverim un tiks izmanto, lai mainītu LED sloksnes krāsu.

def Galvenais ():

globālā CurrentColour

teksts def Main () nozīmē, ka tas izveidos funkciju ar nosaukumu main, kuru var izsaukt no jebkuras vietas skriptā. un globālā līnija nozīmē, ka tā atjauninās mainīgo visā skriptā.

ja request.args.get ('Krāsa'):

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 == "Black": FadeTORGB (0, 0, 0) return render_template ('index.html')

Šis skripts saņems jebkuru nosaukumu pēc GET metodes "Krāsa" un to saglabā. pēc tam tas pārbaudīs šo nosaukumu un izsauks funkciju, kas var trīs citas funkcijas vienlaicīgi mainīt sarkano, zaļo un zilo gaismu

def FadeTORGB (RedNum, BlueNum, GreenNum):

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

Tiks izsauktas trīs citas funkcijas, kas mainīs katras gaismas diodes jaudas daudzumu ar izbalēšanas efektu.

def FadeUpRed (REDUpNum):

globālais RedColourCode, ja RedColourCode <REDUpNum: kamēr RedColourCode REDUpNum: kamēr RedColourCode> REDUpNum: RedColourCode -= 1 pi.set_PWM_dutycycle (RedPin, RedColourCode)

def FadeUpBlue (BlueUpNum):

globālais BlueColourCode, ja BlueColourCode <BlueUpNum: kamēr BlueColourCode BlueUpNum: kamēr BlueColourCode> BlueUpNum: BlueColourCode -= 1 pi.set_PWM_dutycycle (BluePin, BlueColourCode)

def FadeUpGreen (GreenUpNum):

globālais GreenColourCode, ja GreenColourCode <GreenUpNum: kamēr GreenColourCode GreenUpNum: kamēr GreenColourCode> GreenUpNum: GreenColourCode -= 1 pi.set_PWM_dutycycle (GreenPin, GreenColourCode)

ja _name_ == "_main_":

app.run (resursdators = "0.0.0.0")

12. darbība: tīmekļa servera programmēšana

Tagad, kad mums ir serveris, mums ir jāizstrādā vietne.

Tā kā serveris atrodas veidnēs un statiskajās mapēs tieši git, šis solis ir tikai koda skaidrojums.

Es arī iesaku jums izlasīt par html, css, javascript

HTML

Vispirms mums ir jāprogrammē html, šeit tiek novirzīts viss saturs, kuru pēc tam var veidot, izmantojot css

1. Galvas izveide (nosaukums, failu saistīšana,)

Wifi LED josla

Pirmie divi tagi norāda tīmekļa pārlūkprogrammai, ka tā ir tīmekļa lapa, tad trešā rinda pārlūkprogrammai liek slēpt jebkuru tekstu bloka iekšpusē, un zem tā ir nosaukums, kas parādīsies cilnē

Tīmekļa lapas padarīšana pilnekrāna režīmā operētājsistēmā iOS

Lai lapa būtu pilnekrāna, ievadiet šo kodu zem atzīmes

Tālāk mēs pievienosim atsauces uz css failu, kuru mēs izveidosim, tas būs citādā veidā nekā parasti, jo kolbas dēļ ir failu pārvaldības veids

Pēc tam jums OBLIGĀTI jāaizver tags un jāizveido pamatteksts

Pamatteksts nozīmē, ka visi tajā esošie tagi tiks parādīti tīmekļa lapā

Tagad mēs izgatavosim krāsu pogas, kas var mainīt LED sloksni.

Mēs izveidosim vienu katrai krāsai un ievietojam to tabulā

Tādējādi tiek izveidots galda ārējais rāmis

tas izveidos tabulas rindu

Tagad izveidosim oranžu pogu

tags td izveido šūnu, tad funkcija "onClick" izsauks JavaScript funkciju, kuru mēs izveidosim, un funkcija "class" tiek izmantota pogas noformēšanai, un stils ir tikai tās krāsošanai.

Mums vienkārši būs jāmaina sendColour teksts un pogas stils, bet pēc katras otrās pogas mēs aizvērsim rindu un izveidosim jaunu rindu

Utt…

Pēc visu krāsu ievietošanas jums ir jāaizver galds

Javascript

Tagad mums ir jāpievieno funkcija "SendColour", uz kuru mēs iepriekš atsaucāmies, lai to izdarītu, mums vispirms jāpievieno tags, kas tīmekļa pārlūkprogrammai norāda, ka ir kāds javascript

pēc tam izveidojiet funkciju

funkcija SendColour (ClickedColour) {

Šī funkcija nosūtīs Ajax pieprasījumu aveņu pi, kas liks tai mainīt krāsu, uz kuras bijāt noklikšķinājis

xhttp = jauns XMLHttpRequest ();

xhttp.open ("IEGŪT", "? Krāsa =" + noklikšķināta krāsa, nepatiesa); xhttp.send (); }

Tagad mums ir jāaizver javascript un html

CSS

Tagad mēs izstrādāsim vietni

vispirms izvelciet CD no veidņu mapes un dodieties uz statisko mapi

cd.. && cd statisks

tagad izveidojiet failu Style.css

nano Style.css

Vispirms ļaujiet galdam aizpildīt visu ekrānu.

. Krāsas {

platums: 100%; }

.button {

polsterējums: 25 pikseļi 35 pikseļi; robežas rādiuss: 4 pikseļi; }

Servera pārbaude

lai pārbaudītu serveri, dodieties uz tīmekļa servera mapi

cd..

tad ievadiet

python Main.py

tas sāks serveri, pēc tam datorā atveriet tīmekļa pārlūkprogrammu un dodieties uz

YOUR_PI_PI: 5000the: 5000 beigās ir pagaidām svarīgs, jo tas ir ports, kurā darbojas tīmekļa serveris.

ja dodaties uz tīmekļa lapu un saņemat "Iekšējā servera kļūda", tad paskatieties uz konsoli (špakteli vai termināli), un jūs redzēsiet daudz teksta, paskatieties uz pēdējo rindiņu, un tā vajadzētu. pastāstiet, kas notiek, varat meklēt Google, lai atrastu atbildi, bet, ja ekrānā redzat krāsas, varat noklikšķināt uz vienas, un jums vajadzētu redzēt LED joslu, kas nokļūst šajā krāsā; ja tā nav, pārbaudiet, vai barošana ir pievienota un ieslēgta, vai html kods ir ievadīts pareizi.

13. darbība. Lai tas darbotos ar Apache2

Tagad, kad esam to pārbaudījuši, mums ir jārunā ar apache, lai tas varētu darboties startēšanas laikā un 80. portā (standarta tīmekļa ports)

1. WebServer mapē izveidojiet wsgi failu

nano wifiled.wsgi

Pēc tam ievadiet failā

importēt sistēmu

sys.path.insert (0, '/home/pi/Webserver/') no galvenās importēšanas lietotnes kā lietojumprogramma

tad pievienojiet lietotāju pi grupai ar nosaukumu www-data, tas ļaus apache meklēt tīmekļa servera mapē

sudo usermod -a -G www -dati pi

pēc tam noņemiet noklusējuma konfigurāciju

sudo a2dissite 000-noklusējums

pēc tam izveidojiet failu mapē Apache config

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

un ievadiet

Servera nosaukums WifiLed ServerAdmin [email protected] WSGIScriptAlias//home/pi/Webserver/wifiled.wsgi Pasūtījums atļaut, liegt Atļaut no visiem Pieprasīt visu piešķirto ErrorLog $ {APACHE_LOG_DIR} /error.log LogLevel brīdināt CustomLog $ {APACHE_LOG_DIR} kombinēts

tad pasaki apache izlasīt konfigurāciju, ievadot

sudo a2ensite wifiled.conf

Tagad restartējiet pi, kad tas tiek restartēts, ievadiet savu tīmekļa pārlūkprogrammu

YOUR_PI_IP

14. darbība: Tasker, Ifttt un citu pakalpojumu iestatīšana

Pirms šo programmu iestatīšanas jums maršrutētājā ir jāiestata porta pārnešana, jo katrs maršrutētājs ir atšķirīgs, jūs varat izlasīt, kā to izdarīt šeit

Uzdevējs

Android ierīcē atveriet lietotni

pēc tam izveidojiet jaunu profilu, kas iekļauts notikumā, varat izvēlēties jebkuru aktivizētāju. Esmu izvēlējies “Zvana tālrunī” un esmu iestatījis krāsu jebkuram “C: JEBKURS”, tad tā lūgs jums izvēlēties uzdevumu, noklikšķiniet uz “Jauns uzdevums” un nosauciet to par savu darbību. Es to saucu par “Tālruņa zvanu”, pēc tam nospiediet pievienošanas darbību un meklējiet “HTTP Head” un iestatiet Server: Port uz your_raspberry_pi_IP, tad zem ceļa varat iestatīt vienkrāsainu krāsu ar “/? Color = Green” vai arī izveidot efekts, mēs to darīsim nākamajā solī. Pēc tam noklikšķiniet atpakaļ un atpakaļ.

IFTTT

vispirms dodieties uz ifttt un izveidojiet jaunu sīklietotni Izvēlieties jebkuru aktivizētāju (es izvēlējos pogu), un pēc tam darbībai izvēlieties veidotāja kanālu un teicāt, ka jāizdara pieprasījums, pēc tam ievadiet vietrādi URL YOUR_PUBLIC_PI/? Color = LightBlue, ja nezināt savu publisko vietu ip vienkārši ievadiet "Mans Ip" Google. Pēc tam ievadiet metodi HEAD un pēc tam noklikšķiniet uz "Izveidot darbību", kad jūsu darbība notiek, ja neizdodat pieprasījumu savam pi mainīt krāsu.

Citi pakalpojumi

Varat arī savienot citus pakalpojumus, kas pieprasa HTTP HEAD vai GET pieprasījumu.

15. darbība: pielāgotu efektu izveide

Sadaļā Main.py pievienojiet importa paziņojumu, zem importēšanas ievadiet

importa laiks

arī pirms efekta radīšanas mums jāpievieno mainīgais tieši zem GreenBeforeEffect add

CanChangeColour = Patiesa

pēc tam mainiet, ja request.args.get ('Krāsa'):

uz

ja request.args.get ('Krāsa') un CanChangeColour:

sadaļa tieši zem atgriešanās render_template ('Main.html') pievienot

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

def efekts ():

Pēc tam iestatiet mainīgos uz globālajiem

x = 0

globālais RedColourCode globālais BlueColourCode globālais GreenColourCode globālais RedBeforeEffect globālais BlueBeforeEffect globālais GreenBeforeEffect

tagad radīsim pirmo efektu

if request.args.get ('Zvanīt'):

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

Šī darbība tiks veikta, kad pi saņems pieprasījumu, piemēram, "/? Effect = Call", un saglabās pašreizējo krāsu, lai mēs varētu to atzvanīt.

Tagad mēs liksim LED izgaist no melnas uz zaļu, pēc tam atkal uz melnu, un es vēlos to darīt piecas reizes

kamēr x <= 5: FadeTORGB (0, 255, 0) x += 1 laiks.sleep (1) FadeTORGB (0, 0, 0) time.sleep (1) CanChangeColour = True time.sleep (2) FadeTORGB (RedBeforeEffect, BlueBeforeEffect, GreenBeforeEffect)

Tas tiks skaitīts līdz pieciem, bet katru reizi tas kļūs zaļš, pēc tam pagaidiet sekundi un pāriet uz melnu krāsu. Tad tas, kas beidzas, mainīs krāsu uz tām, kuras jums bija pirms maiņas.

Tagad mēs tikai radām atbildi.

atgriezties ""

Pārstartējiet arī aveņu pi

sudo atsāknēšana

Ieteicams: