Talaan ng mga Nilalaman:

Kinokontrol ng Wifi ang 12v Led Strip Gamit ang Raspberry Pi Sa Tasker, Pagsasama ng Ifttt .: 15 Mga Hakbang (na may Mga Larawan)
Kinokontrol ng Wifi ang 12v Led Strip Gamit ang Raspberry Pi Sa Tasker, Pagsasama ng Ifttt .: 15 Mga Hakbang (na may Mga Larawan)

Video: Kinokontrol ng Wifi ang 12v Led Strip Gamit ang Raspberry Pi Sa Tasker, Pagsasama ng Ifttt .: 15 Mga Hakbang (na may Mga Larawan)

Video: Kinokontrol ng Wifi ang 12v Led Strip Gamit ang Raspberry Pi Sa Tasker, Pagsasama ng Ifttt .: 15 Mga Hakbang (na may Mga Larawan)
Video: DIY Piso wifi/how to install led frame and cooling fan for piso wifi tagalog/part 2 2024, Hulyo
Anonim
Kinokontrol ng Wifi ang 12v Led Strip Gamit ang Raspberry Pi Sa Tasker, Ifttt Pagsasama
Kinokontrol ng Wifi ang 12v Led Strip Gamit ang Raspberry Pi Sa Tasker, Ifttt Pagsasama
Kinokontrol ng Wifi ang 12v Led Strip Gamit ang Raspberry Pi Sa Tasker, Ifttt Pagsasama
Kinokontrol ng Wifi ang 12v Led Strip Gamit ang Raspberry Pi Sa Tasker, Ifttt Pagsasama

Sa proyektong ito ipapakita ko sa iyo kung paano makontrol ang isang simpleng 12v analog led strip sa paglipas ng wifi gamit ang isang raspberry pi.

Para sa proyektong ito kakailanganin mo:

  • 1x Raspberry Pi (Gumagamit ako ng isang Raspberry Pi 1 Model B +)
  • 1x RGB 12v Led Strip [Ebay Australia]
  • 3x IRFZ44N N-Channel Mosfet's [Ebay Australia]
  • 1x Babae DC power jack Adapter [Ebay Australia]
  • Ang ilang mga Wires
  • Display, Keyboard (Para sa Pag-set up lamang)

Hakbang 1: I-install ang Raspbian OS Gamit ang Windows

I-install ang Raspbian OS Gamit ang Windows
I-install ang Raspbian OS Gamit ang Windows
I-install ang Raspbian OS Gamit ang Windows
I-install ang Raspbian OS Gamit ang Windows
I-install ang Raspbian OS Gamit ang Windows
I-install ang Raspbian OS Gamit ang Windows

Upang mai-install ang Raspbian sa mga bintana kakailanganin mo:

  • Win32 Disk Imager: [I-download]
  • Raspbian OS Lite: [Zip], [Torrent]

** MAHALAGA kung nagawa nang mali maaari mong mawala ang lahat ng iyong data, Mangyaring i-backup ang iyong data bago magpatuloy **

  1. I-plug ang iyong SD card sa isang Card Reader at buksan ang My Computer
  2. Hanapin ang Drive Letter
  3. Mag-right click sa Win32DiskImager at I-click ang "Run as Administrator"
  4. Pagkatapos Mag-click sa maliit na asul na folder at mag-browse sa iyong imahe ng RaspbianOS
  5. I-click din ang dropdown box sa ilalim ng Device at baguhin ito sa Letter Letter ng SD Card
  6. Pagkatapos Mag-click sa "Sumulat"
  7. Magbubukas ang isang kahon ng dialogo BAGO I-press ang Oo i-verify na tama ang target na aparato
  8. Pagkatapos alisin ang SD Card at ipasok ito sa pi

Hakbang 2: I-install ang Raspbian OS Gamit ang Mac OS X

I-install ang Raspbian OS Gamit ang Mac OS X
I-install ang Raspbian OS Gamit ang Mac OS X
I-install ang Raspbian OS Gamit ang Mac OS X
I-install ang Raspbian OS Gamit ang Mac OS X
I-install ang Raspbian OS Gamit ang Mac OS X
I-install ang Raspbian OS Gamit ang Mac OS X
I-install ang Raspbian OS Gamit ang Mac OS X
I-install ang Raspbian OS Gamit ang Mac OS X

Upang mai-install ang Raspbian sa Mac kakailanganin mo:

  • ApplePi-Baker [I-download]
  • Raspbian OS Lite: [Zip], [Torrent]

** MAHALAGA kung nagawa nang mali maaari mong mawala ang lahat ng iyong data, Mangyaring i-backup ang iyong data bago magpatuloy **

  1. Buksan ang Disk Utility at hanapin ang iyong SD Card sa kaliwang kamay pagkatapos ay i-click ito
  2. Hanapin ang "Device" sa ilalim ng window dapat mong makita ang isang bagay tulad ng diskXsX kung saan ang x ay isang numero
  3. Tandaan ang Numero ng "Device" at buksan ang ApplePi-Baker
  4. Hihilingin nito para sa iyo ang password dahil sa kinakailangang i-format ang iyong SD-Card
  5. I-click ang Numero ng "Device" na Pagkatapos / dev / sa kaliwang bahagi
  6. I-click ang "Ibalik-I-backup" Mag-browse sa iyong imahe ng RaspbianOS.
  7. Magsisimula itong burahin ang SD-Card at mai-install dito ang Raspbian
  8. Kapag tapos na ito ay lalabas ang isang kahon ng alerto na nagsasabi sa iyo na maaari mong alisin ang SD-Card, Alisin ito at ilagay ito sa iyong pi.

Hakbang 3: Pag-set up ng Pi

Bago i-power up ang pi kakailanganin mong mag-plug sa isang HDMI Display, Keyboard at isang ethernet cable o usb wifi (Ise-set up namin ito sa susunod na hakbang).

Palakasin ang pi, Makakakita ka ng isang grupo ng mga teksto punan ang screen, Ito ay normal at bahagi ng pagsisimula ng linux kernel. Maghintay ka lang ng kaunti hanggang sa makita mo

pag-login sa raspberry:

Ang iyong Username ay pi at ang password ay raspberry (hindi mo makikita ang anumang nagta-type sa screen ngunit ipinasok pa rin ito)

Pagkatapos kapag nag-login ka makikita mo ang:

pi @ raspberrypi: ~ $

Pagkatapos ay kailangan mong pumasok:

sudo raspi-config

Ang iyong Screen ay puno ng isang asul na screen na may mga pagpipilian sa isang kulay-abo na kahon sa gitna,

  1. Gamit ang mga pataas at pababang key, i-highlight at pindutin ang enter sa pagpipiliang "Palawakin ang Filesystem" pagkatapos ng ilang segundo ay dadalhin ka sa isang alerto na nagsasabing ang "root filesystem ay nabago ang laki", i-click ang Enter
  2. Pagkatapos ay pindutin ang pababang arrow at pumunta sa Mga Pagpipilian sa Boot at i-click ang enter, pagkatapos ay i-click ang enter kapag napili ang 'Desktop / CLI', Pagkatapos i-highlight ang 'Console Autologin' at i-click ang enter
  3. Pagkatapos piliin ang Mga advanced na pagpipilian at i-click ang enter
  4. Pagkatapos mag-scroll pababa sa ssh at i-click ang enter pagkatapos ay piliin ang oo
  5. pagkatapos ay pindutin ang kanang arrow hanggang sa ma-highlight ang likod at pindutin ang enter
  6. Pagkatapos goto muli sa ilalim at i-click ang tapusin pagkatapos ay sabihin na oo upang i-reboot

Matapos itong mag-reboot kung nakakonekta ka sa pamamagitan ng ethernet pagkatapos ay kailangan mong ipasok ang utos na ito upang hanapin ang iyong IP address upang maaari kaming ssh sa pi

Maghanap ng ip:

hostname -ako

Hakbang 4: Pag-setup ng Wifi

Upang mai-setup ang wifi sa pi kailangan namin upang mag-edit ng isang file

1. pumasok sa linya ng utos

sudo nano /etc/wpa_supplicant/wpa_supplicant.conf

2. Pumunta sa dulo ng file at ipasok

network = {

ssid = "Iyong_Wifi_Name" psk = "Iyong_wifi_password"}

3. Pagkatapos ay i-reboot ang iyong pi sa

sudo reboot

Matapos makuha ang iyong mga pi reboot ay ang IP address sa pamamagitan ng pagta-type

hostname -ako

dapat mong makuha ang iyong IP address Ngunit kung blangko ang retuned na teksto nangangahulugan iyon na ang pi ay hindi makakonekta sa iyong network. i-double check kung naipasok mo nang tama ang pangalan ng wifi at password dahil sensitibo ito sa case.

Hakbang 5: Malayo Kumonekta sa Iyong Pi Paggamit ng Windows

Malayo Kumonekta sa Iyong Pi Gamit ang Windows
Malayo Kumonekta sa Iyong Pi Gamit ang Windows
Malayo Kumonekta sa Iyong Pi Gamit ang Windows
Malayo Kumonekta sa Iyong Pi Gamit ang Windows
Malayo Kumonekta sa Iyong Pi Gamit ang Windows
Malayo Kumonekta sa Iyong Pi Gamit ang Windows
Malayo Kumonekta sa Iyong Pi Gamit ang Windows
Malayo Kumonekta sa Iyong Pi Gamit ang Windows

Ngayon na mayroon kaming koneksyon na pi sa internet maaari naming alisin ang keyboard mouse at ipakita, at malayo kumonekta dito gamit ang "ssh"

Upang makarating sa mga bintana na kailangan mong i-download

masilya: [I-download]

  1. Buksan ang masilya, sa kahon ng IP address ipasok ang raspberry pi ip pagkatapos ay pindutin ang bukas
  2. makakakuha ka ng isang dialog box na parang larawan 2 pindutin ang oo
  3. makakakita ka ng isang bagong diyalogo na nagsasabing "mag-login bilang" ipasok "pi"
  4. pagkatapos hihilingin ito para sa isang password na ipasok ang "raspberry"

Nakakonekta ka ngayon sa pi over ssh

Hakbang 6: Malayo Kumonekta sa Iyong Pi Paggamit ng Mac

Malayo Kumonekta sa Iyong Pi Gamit ang Mac
Malayo Kumonekta sa Iyong Pi Gamit ang Mac
Malayo Kumonekta sa Iyong Pi Gamit ang Mac
Malayo Kumonekta sa Iyong Pi Gamit ang Mac
Malayo Kumonekta sa Iyong Pi Gamit ang Mac
Malayo Kumonekta sa Iyong Pi Gamit ang Mac
Malayo Kumonekta sa Iyong Pi Gamit ang Mac
Malayo Kumonekta sa Iyong Pi Gamit ang Mac

Ngayon na mayroon kaming koneksyon na pi sa internet maaari naming alisin ang keyboard at mouse at malayo kumonekta dito gamit ang "ssh"

1. Buksan ang "Terminal"

2. I-type ang

ssh pi @ IP_ADDRESS

3. Kung gayon maaari kang makakuha ng isang mensahe na nagsasabi na ang host key ay hindi nai-save, i-type lamang ang "oo"

4. Pagkatapos kapag na-promote ipasok ang password ng raspberry pi na "Raspberry"

Nakakonekta ka ngayon sa pi over ssh

Hakbang 7: Pag-install ng Software

Tulad ng mayroon kaming remote na pag-access sa pi kailangan naming mag-install ng ilang software upang makontrol ang led strip

Kakailanganin naming mag-install

  • pigpio (Ginagawa nitong lahat ang mga pin ng GPIO mula sa digital patungong PWM)
  • flask (server sa gilid ng script na nakikipag-usap kay pigpio at webserver)
  • apache2 (Webserver)

I-install ang pigpio

1. Una kailangan naming mag-download ng isang zip folder na naglalaman ng hindi na-compile na pigpio software, gamit ang command na ito

wget

2. Pagkatapos ay kailangan nating i-unzip at pumunta sa direktoryo

unzip pigpio.zip && cd PIGPIO

3. Ngayon na nasa direktoryo na kailangan namin upang makatipon at mai-install ang software

gumawa -j4 && sudo gumawa ng pag-install

4. Ngayon buksan ang rc.local upang masabi natin ang pi na magpatakbo ng pigpiod kapag nagsisimula

sudo nano /etc/rc.local

pagkatapos bago ang linya ng paglabas pumasok

sudo pigpiod

Na-install mo na ngayon ang software ng pigpio

Mag-install ng prasko

kailangan muna nating i-update ang listahan ng software upang gawin ito

sudo apt update && sudo apt upgrade -y

pagkatapos mag-install ng pip

sudo apt-get install python-pip

maaari na kaming mag-install ng flask

sudo pip install flask

I-install ang Apache2

sudo apt-get install apache2 -y

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

I-install git

sudo apt install git -y

Matapos ang lahat ay matapos ang pag-install ng shutdown ng pi kasama

sudo shutdown ngayon

Hakbang 8: Pag-kable ng Up Power

Kable ng Up ang Lakas
Kable ng Up ang Lakas
Kable ng Up ang Lakas
Kable ng Up ang Lakas
Kable ng Up ang Lakas
Kable ng Up ang Lakas

Una kailangan naming i-wire ang power konektor sa tinapay board

  1. Ikonekta ang itim na kawad sa negatibong konektor sa power jack
  2. Ikonekta ang pulang kawad sa positibong konektor sa power jack
  3. Ikonekta ang Iba pang dulo ng Red wire sa positibong bahagi ng breadboard
  4. Ikonekta ang Iba pang dulo ng Itim na kawad sa positibong bahagi ng breadboard
  5. Pagkatapos ay ikonekta ang ground pin mula sa pi (tulad ng nakikita sa imahe) sa negatibong pin sa breadboard

Ngayon kailangan naming ikonekta ang mostfet.

Hakbang 9: Pag-kable ng Mga Mosfet at Pagkonekta sa Pi

Pag-kable ng Mga Mosfet at Pagkonekta sa Pi
Pag-kable ng Mga Mosfet at Pagkonekta sa Pi
Pag-kable ng Mga Mosfet at Pagkonekta sa Pi
Pag-kable ng Mga Mosfet at Pagkonekta sa Pi
Pag-kable ng Mga Mosfet at Pagkonekta sa Pi
Pag-kable ng Mga Mosfet at Pagkonekta sa Pi
Pag-kable ng Mga Mosfet at Pagkonekta sa Pi
Pag-kable ng Mga Mosfet at Pagkonekta sa Pi

Pinapayagan ka ng isang Mosfet na kontrolin kung gaano karaming kapangyarihan ang maaaring maglakbay sa mga pinangunahang ilaw, kakailanganin namin ng tatlong mga mosfet dahil kailangan naming kontrolin ang pula, berde at asul na mga ilaw nang magkahiwalay.

Ang mosfet ay may tatlong mga pin, sa kaliwa mayroon itong pin na "Gate" na ikokonekta sa pi upang makontrol kung gaano karaming lakas ang maaaring dumaloy sa pinangunahan ng ilaw

Ang center pin ay tinatawag na "Drain" na pupunta sa led light at ibibigay ang boltahe na pinapayagan ng gate na lampasan

at ang pin sa kanan ay ang pin na "Source". Ang pin na ito ay napupunta sa lupa sa breadboard.

Pagkonekta sa Red Led

  1. Maglagay ng isang mosfet sa breadboard
  2. ikonekta ang isang itim na kawad mula sa GND sa breadboard patungo sa pinagmulan (kanang pin)
  3. pagkatapos ay ikonekta ang isang pulang kawad mula sa gitnang pin sa mosfet sa pulang pin sa led strip
  4. pagkatapos ay ikonekta ang isang pulang kawad mula sa kaliwang pin sa GPIO 17 sa pi

Pagkonekta sa Green Led

  1. Ilagay ang ika-2 mosfet sa breadboard
  2. pagkatapos ay tulad ng bago ikonekta ang isang itim na kawad mula sa GND sa breadboard sa pinagmulan (kanang pin)
  3. pagkatapos ay ikonekta ang isang berdeng kawad mula sa gitnang pin sa mosfet sa berdeng pin sa led strip.
  4. pagkatapos ay ikonekta ang isang berdeng kawad mula sa kaliwang pin sa GPIO 22 sa pi

Pagkonekta sa Blue Led

  1. Ilagay ang huling mosfet sa breadboard
  2. ang kumonekta ng isa pang itim na kawad mula sa GND sa breadboard patungo sa pinagmulan (kanang pin)
  3. pagkatapos ay ikonekta ang isang asul na kawad mula sa gitnang pin sa mosfet sa asul na pin sa led strip.
  4. pagkatapos ay ikonekta ang isang asul na kawad mula sa kaliwang pin sa GPIO 24 sa pi

Pagkatapos ay magkakaroon ka ng isa pang pin sa led strip na magiging puti o itim, kumonekta lamang sa isang kawad mula sa positibong pin sa breadboard sa sobrang pin na iyon sa led strip

Ngayon na tapos na tayo maaari nating simulan upang subukan ito.

Hakbang 10: Pag-download at Pagsubok sa Led Strip

Upang mai-download ang Source code para sa pagkontrol sa Led strip

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

Upang subukan ang led strip patakbuhin ang test.py file.

python Test.py

kung sa ilang kadahilanan ang ilan sa mga kulay ay hindi nag-iilaw, mangyaring suriin kung ang lahat ay naka-plug in nang tama.

paano gumagana ang script na ito?

kung buksan mo ang script ng sawa maaari kang magtaka kung paano ito gumagana, sa unang linya makikita mo:

oras ng pag-import

pinapayagan kami ng maliit na silid-aklatan na ito na i-pause ang script upang mas mabilis naming maiingat ang mga ilaw

import pigpio

pinapayagan kami ng library na ito na makipag-usap sa led strip

pi = pigpio.pi ()

mag-setup ng variable upang magamit namin ang pi.set_pw… insted of pigpio.pi (). set_pw…

RedPin = 17

GreenPin = 22

BluePin = 24

ang mga ito ay mga variable lamang na nagbibigay-daan sa amin upang sabihin sa script kung ano ang humantong ay konektado

print ("tesing for red")

ililimbag lamang nito ang teksto sa linya ng utos

pi.set_PWM_dutycycle (RedPin, 255)

ang utos na ito ay bahagi ng pigpio libary at sinasabi na itakda ang "RedPin" na hinahanap nito ang bilang na itinakda namin dati at itinakda ang ningning sa "255" na ang pinakamataas

oras. tulog (2)

bahagi ito ng time library at i-pause lang ang script nang 2 segundo

ang maaaliit na utos na ito ay uulitin para sa iba pang mga leds hanggang

pi.stop ()

na titigil sa pakikipag-usap sa led strip at i-off ang lahat ng mga kulay.

Hakbang 11: Pag-program sa Server Side Script

** Bago ka magsimula, inirerekumenda kong basahin mo ang tungkol sa sawa at prasko:

Narito ang ilang mga gabay:

www.pythonforbeginners.com

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

flask.pocoo.org

Tulad ng Main.py ay nasa git direkta ang hakbang na ito ay ipinapaliwanag lamang ang code.

Una mayroon kaming mga aklatan

mula sa flask import Flask, render_template, kahilingan

i-import ang pigpio mula sa thread import start_new_thread

pagkatapos ay kailangan naming magtakda ng ilang mga variable

app = Flask (_ name_)

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

ang unang variable ay para sa flask na kung saan ay ang aming web server tatawagan namin ito app kaya mas madaling tawagan at patakbuhin. Pagkatapos mayroong 6 na variable na ang unang tatlong ay maglalaman ng anong kulay upang baguhin ang dalawa at ang iba pang tatlong ay maglalaman ng nakaraang kulay.

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

Sinasabi ng Linya na ito na kung may nagta-type ng IP address ng pi sa isang web browser pagkatapos ay tatakbo nito ang script sa ibaba nito, mayroon din itong pamamaraan na GET kapag nangangahulugang, anumang teksto pagkatapos? Kulay = ay ipapasa sa web server at magiging ginamit upang baguhin ang kulay ng led strip.

def Pangunahing ():

pandaigdigang CurrentColour

ang text def Main () ay nangangahulugang lilikha ito ng isang pagpapaandar na tinatawag na main na maaaring tawagan mula saanman sa script. at ang pandaigdigang linya ay nangangahulugang ia-update nito ang variable sa buong script.

kung request.args.get ('Kulay'):

CurrentColour = request.args.get ('Kulay') kung CurrentColour == "Puti": FadeTORGB (255, 255, 255) elif CurrentColour == "Pula": 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 == "Lila": FadeTORGB (123, 0, 255) elif CurrentColour == "Itim": FadeTORGB (0, 0, 0) bumalik render_template ('index.html')

Ang script na ito ay makakakuha ng anumang pangalan pagkatapos ng GET na Pamamaraan na "Kulay" at nai-save ito. susuriin nito ang pangalang iyon at tatawag sa isang pagpapaandar na makakagawa ng 3 pang tatlong mga pagpapaandar upang baguhin ang pula, berde at asul na ilaw nang sabay-sabay

def FadeTORGB (RedNum, BlueNum, GreenNum):

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

Tatawagan nito ang tatlong iba pang pagpapaandar na magbabago sa dami ng lakas na pupunta sa bawat isa na pinangunahan ng isang fade effect.

def FadeUpRed (REDUpNum):

pandaigdigang RedColourCode kung RedColourCode <REDUpNum: habang RedColourCode REDUpNum: habang RedColourCode> REDUpNum: RedColourCode - = 1 pi.set_PWM_dutycycle (RedPin, RedColourCode)

def FadeUpBlue (BlueUpNum):

pandaigdigang BlueColourCode kung BlueColourCode <BlueUpNum: habang BlueColourCode BlueUpNum: habang BlueColourCode> BlueUpNum: BlueColourCode - = 1 pi.set_PWM_dutycycle (BluePin, BlueColourCode)

def FadeUpGreen (GreenUpNum):

pandaigdigang GreenColourCode kung GreenColourCode <GreenUpNum: habang GreenColourCode GreenUpNum: habang GreenColourCode> GreenUpNum: GreenColourCode - = 1 pi.set_PWM_dutycycle (GreenPin, GreenColourCode)

kung _name_ == "_main_":

app.run (host = "0.0.0.0")

Hakbang 12: Pag-program sa Webserver

Ngayon na mayroon kaming server na kailangan namin upang magdisenyo ng isang website.

Tulad ng server ay nasa mga template at static folder sa git direkta ang hakbang na ito ay ipinapaliwanag lamang ang code.

Inirerekumenda ko ring basahin ang tungkol sa html, css, javascript

HTML

Una kailangan naming mag-program ng html, dito napupunta ang lahat ng nilalaman na maaaring mai-istilo gamit ang css

1. Lumilikha ng Ulo (pamagat, pag-uugnay ng mga file,)

Wifi Led Strip

Sinasabi ng unang dalawang tag sa web browser na ito ay isang webpage, Pagkatapos ang pangatlong linya ay nagsasabi sa browser na itago ang anumang teksto sa loob ng bloke at sa ilalim nito ang pamagat na lilitaw sa tab

Paggawa ng full screen ng webpage sa iOS

Upang gawing fullscreen ang pahina ipasok ang code na ito sa ilalim ng tag

Susunod ay magdagdag kami ng mga sanggunian sa css file na gagawin namin sa huli ito ay magiging isang iba't ibang paraan pagkatapos ay karaniwang dahil sa flask ay paraan ng pamamahala ng file

Pagkatapos pagkatapos nito DAPAT mong isara ang tag at lumikha ng isang body tag

Nangangahulugan ang body tag na ang anumang mga tag sa loob nito ay lilitaw sa web page

Ngayon ay gagawin namin ang mga pindutan ng kulay na maaaring baguhin ang led strip.

Lilikha kami ng isa para sa bawat kulay at ilagay ito sa isang table

Lumilikha ang labas ng frame ng talahanayan

lilikha ito ng isang hilera para sa talahanayan

Ngayon lumikha tayo ng isang orange na pindutan

ang tag td ay lumilikha ng isang cell, pagkatapos ang "onClick" na function ay tatawag sa isang javascript function na lilikha namin sa huli, sa kanila ang "class" na function ay ginagamit upang i-istilo ang pindutan at ang istilo ay kulayan lamang ito.

Kakailanganin lamang naming baguhin ang sendColour na teksto at ang estilo para sa bawat isa na pindutan ngunit pagkatapos ng bawat ika-2 na pindutan isasara namin ang hilera at lumikha ng isang bagong hilera

Atbp…

Pagkatapos pagkatapos mong mailagay ang lahat ng kulay sa kailangan mo upang isara ang talahanayan

Javascript

Ngayon kailangan naming idagdag ang pagpapaandar na "SendColour" na isinangguni namin dati upang gawin ito kailangan muna naming magdagdag ng isang tag na nagsasabi sa web browser na mayroong ilang javascript

pagkatapos ay lumikha ng isang pagpapaandar

pagpapaandar sa SendColour (ClickedColour) {

Ang pagpapaandar na ito ay magpapadala ng isang kahilingan sa Ajax sa raspberry pi na magsasabing baguhin ito sa kulay na na-click mo

xhttp = bagong XMLHttpRequest ();

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

Ngayon kailangan naming isara ang javascript at html

CSS

Ngayon ay magdidisenyo kami ng website

unang cd sa labas ng folder ng mga template at pumunta sa static na folder

cd.. && static na cd

lumikha ngayon ng file na Style.css

nano Style.css

Hinahayaan muna na gawin ang talahanayan na punan ang buong screen.

. Colours {

lapad: 100%; }

.button {

padding: 25px 35px; border-radius: 4px; }

Pagsubok sa server

upang subukan ang server pumunta sa folder ng web server

cd..

saka pumasok

sawa Main.py

sisimulan nito ang server, pagkatapos ay sa iyong computer buksan ang web browser at mag-navigate sa

YOUR_PI_PI: 5000the: 5000 sa dulo ay mahalaga para sa ngayon dahil ito ay ang port na tumatakbo ang web server.

kung ang iyong goto sa webpage at makakuha ng isang "Panloob na Error ng Server" pagkatapos ay tumingin sa console (masilya o terminal) at makikita mo ang isang pangkat ng teksto, tingnan lamang ang huling linya at dapat. sabihin sa iyo kung ano ang nangyayari, maaari kang mag-google upang mahanap ang sagot, ngunit kung nakikita ang mga kulay sa screen maaari kang mag-click sa isa at dapat mong makita ang led strip goto na kulay, kung hindi nito suriin kung ang kapangyarihan ay naka-plug in at naka-on o na ang html code ay naipasok nang tama.

Hakbang 13: Ginagawa Ito Sa Apache2

Ngayon na nasubukan namin ito kailangan naming makipag-usap sa apache upang maaari itong tumakbo sa startup at sa port 80 (karaniwang web port)

1. sa loob ng iyong WebServer folder gumawa ng isang wsgi file

nano wifiled.wsgi

Pagkatapos sa file ipasok

import sys

sys.path.insert (0, '/ home / pi / Webserver /') mula sa Pangunahing import app bilang application

pagkatapos ay idagdag ang pi ng gumagamit sa isang pangkat na tinatawag na www-data, papayagan nitong tumingin si Apache sa folder ng web server

sudo usermod -a -G www-data pi

pagkatapos alisin ang default config

sudo a2dissite 000-default

pagkatapos ay gumawa ng isang file sa folder ng Apache config

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

at pumasok

Ang ServerName WifiLed ServerAdmin [email protected] WSGIScriptAlias / /home/pi/Webserver/wifiled.wsgi Payagan ang order, tanggihan ang Payagan mula sa lahat ng Hilingin ang lahat ng ipinagkaloob na ErrorLog $ {APACHE_LOG_DIR} /error.log LogLevel babalaan ang CustomLog $ {APACHE_LOG_DIR} /access pinagsama

pagkatapos sabihin sa apache na basahin ang config sa pamamagitan ng pagpasok

sudo a2ensite wifiled.conf

Ngayon i-restart ang pi, kapag reboot nito ang pagpasok sa iyong web browser

IYONG_PI_IP

Hakbang 14: Pag-set up ng Tasker at Ifttt at Iba Pang Mga Serbisyo

Bago namin i-set up ang mga programang ito dapat mong i-setup ang fording ng port sa iyong router dahil magkakaiba ang bawat router maaari mong basahin kung paano dito

Tasker

sa iyong Android aparato bukas na tagakuha

pagkatapos ay lumikha ng isang bagong profile na basted sa isang Kaganapan, maaari kang pumili ng anumang gatilyo. Pinili ko ang "Pag-ring ng Telepono" at itinakda ang kulay sa sinumang "C: ANUMANG", Pagkatapos hihilingin sa iyo na pumili ng isang gawain, i-click ang "Bagong Gawain" at pangalanan itong basted sa iyong aksyon. Tatawagan ko ito na "Tawag sa Telepono" pagkatapos ay pindutin ang magdagdag ng pagkilos at hanapin ang "HTTP Head" at itakda ang Server: Port sa iyong_raspberry_pi_IP pagkatapos sa ilalim ng landas maaari kang magtakda ng isang solidong kulay na may "/? Kulay = berde" o maaari kang lumikha ng isang epekto gagawin natin ito sa susunod na hakbang. Pagkatapos mag-click pabalik at bumalik muli.

IFTTT

unang goto ifttt at lumikha ng isang bagong applet Pumili ng anumang gatilyo (Pinili ko ang Button) at pagkatapos para sa aksyon piliin ang channel ng gumawa at sinabi na humiling kami pagkatapos para sa url na ipasok ang IYONG_PUBLIC_PI /? Kulay = LightBlue kung hindi mo alam ang iyong publiko ip ipasok lamang ang "My Ip" sa google. Pagkatapos para sa pamamaraan ipasok ang PUNO pagkatapos ay i-click ang "Lumikha ng Aksyon" ngayon kapag nangyari ang iyong aksyon kung humiling ng isang kahilingan sa iyong pi upang baguhin ang kulay.

Iba Pang Mga Serbisyo

Maaari mo ring ikonekta ang iba pang mga serbisyo na gumawa ng HTTP HEAD o GET kahilingan.

Hakbang 15: Lumilikha ng Mga Pasadyang Epekto

Sa Main.py magdagdag ng isang pahayag ng pag-import, sa ilalim ng import os ipasok

oras ng pag-import

bago din lumikha ng isang epekto kailangan namin upang magdagdag ng isang variable sa ilalim lamang ng GreenBeforeEffect idagdag

CanChangeColour = Totoo

pagkatapos ay baguhin kung request.args.get ('Kulay'):

sa

kung request.args.get ('Kulay') at CanChangeColour:

seksyon sa ilalim lamang ng return_template ('Main.html') idagdag

@ app.route ('/ Epekto', mga pamamaraan = ['GET'])

def Epekto ():

Pagkatapos itakda ang mga variable sa pandaigdigan

x = 0

pandaigdigang RedColourCode pandaigdigan BlueColourCode pandaigdigan GreenColourCode pandaigdigan RedBeforeEffect pandaigdigang BlueBeforeEffect pandaigdigang GreenBeebEffect

hinahayaan ngayon lumikha ng aming unang epekto

kung request.args.get ('Tumawag'):

RedBeforeEffect = RedColourCode BlueBeforeEffect = BlueColourCode GreenBeforeEffect = GreenColourCode FadeTORGB (0, 0, 0) oras. Tulog (2)

Tatakbo ang pagkilos na ito kapag ang pi makatanggap ng isang kahilingan tulad ng "/? Effect = Call" at mai-save ang kasalukuyang kulay upang maaari naming itong tawagan muli, Ginagawa naming itim ang led strip at maghintay hanggang sa mangyari ito.

Ngayon ay gagawin namin ang humantong fade mula sa itim hanggang berde pagkatapos ay sa itim ulit at nais kong gawin ito ng limang beses

habang x <= 5: FadeTORGB (0, 255, 0) x + = 1 oras. pagtulog (1) FadeTORGB (0, 0, 0) oras. pagtulog (1) CanChangeColour = Tunay na oras. pagtulog (2) FadeTORGB (RedBeforeEffect, BlueBeforeEffect, GreenBeforeEffect)

Ito ay bibilangin hanggang sa limang ngunit sa tuwing ito ay mawawala sa berde at pagkatapos maghintay ng isang segundo at magmula sa itim. Pagkatapos kung ano ang matapos nito ay babaguhin ang kulay pabalik sa mga mayroon ka bago baguhin.

Ngayon lamang kami upang lumikha ng isang tugon.

bumalik ""

Gayundin I-reboot mo ang raspberry pi

sudo reboot

Inirerekumendang: