Агуулгын хүснэгт:

Wifi хяналттай Raspberry Pi ашиглан Task, Ifttt интеграц ашиглан 12v Led зурвас .: 15 алхам (зурагтай)
Wifi хяналттай Raspberry Pi ашиглан Task, Ifttt интеграц ашиглан 12v Led зурвас .: 15 алхам (зурагтай)

Видео: Wifi хяналттай Raspberry Pi ашиглан Task, Ifttt интеграц ашиглан 12v Led зурвас .: 15 алхам (зурагтай)

Видео: Wifi хяналттай Raspberry Pi ашиглан Task, Ifttt интеграц ашиглан 12v Led зурвас .: 15 алхам (зурагтай)
Видео: Как связать промышленные датчики 4–20 мА с ПЛК Raspberry Pi Pico | ПЛК Мицубиси FX1N 2024, Долдугаар сарын
Anonim
Wifi нь Raspberry Pi -ийг Tasker, Ifttt интеграц ашиглан ашигладаг 12v Led зурвасыг удирддаг
Wifi нь Raspberry Pi -ийг Tasker, Ifttt интеграц ашиглан ашигладаг 12v Led зурвасыг удирддаг
Wifi нь Raspberry Pi -ийг Tasker, Ifttt интеграц ашиглан ашигладаг 12v Led зурвасыг хянадаг
Wifi нь Raspberry Pi -ийг Tasker, Ifttt интеграц ашиглан ашигладаг 12v Led зурвасыг хянадаг

Энэхүү төсөлд би бөөрөлзгөнө pi ашиглан wifi -ээр 12V энгийн аналог LED туузыг хэрхэн удирдахыг танд үзүүлэх болно.

Энэ төслийн хувьд танд хэрэгтэй болно:

  • 1х Raspberry Pi (би Raspberry Pi 1 Model B+ашиглаж байна)
  • 1x RGB 12v Led зурвас [Ebay Australia]
  • 3x IRFZ44N N-Channel Mosfet-ийн [Ebay Australia]
  • 1х Эмэгтэй DC цахилгаан залгуур адаптер [Ebay Australia]
  • Зарим утаснууд
  • Дэлгэц, гар (зөвхөн тохируулахад зориулагдсан)

Алхам 1: Windows ашиглан Raspbian OS суулгана уу

Windows ашиглан Raspbian OS суулгана уу
Windows ашиглан Raspbian OS суулгана уу
Windows ашиглан Raspbian OS суулгана уу
Windows ашиглан Raspbian OS суулгана уу
Windows ашиглан Raspbian OS суулгана уу
Windows ашиглан Raspbian OS суулгана уу

Windows -тэй Raspbian суулгахын тулд танд дараахь зүйлс хэрэгтэй болно.

  • Win32 диск дүрслэгч: [Татаж авах]
  • Raspbian OS Lite: [Zip], [Torrent]

** ЧУХАЛ, буруу хийсэн тохиолдолд та бүх өгөгдлөө алдаж магадгүй тул үргэлжлүүлэхээсээ өмнө өгөгдлөө нөөцлөөрэй **

  1. SD картаа карт уншигч руу залгаад Миний компьютерийг нээнэ үү
  2. Drive Letter -ийг хайж олоорой
  3. Win32DiskImager дээр хулганы баруун товчийг дараад "Администратороор ажиллуулах" дээр дарна уу.
  4. Дараа нь цэнхэр өнгийн жижиг хавтсыг дарж RaspbianOS -ийн дүрсийг хайж олоорой
  5. Мөн Төхөөрөмжийн доорх доош унах хайрцгийг дарж SD картын хөтчийн үсэг болгон өөрчилнө үү
  6. Дараа нь "Бичих" дээр дарна уу
  7. Тийм товчлуурыг дарахаас өмнө харилцах цонх нээгдэх болно, зорилтот төхөөрөмж зөв эсэхийг шалгаарай
  8. Дараа нь SD картыг аваад pi руу оруулна уу

Алхам 2: Mac OS X ашиглан Raspbian OS суулгана уу

Mac OS X ашиглан Raspbian OS суулгана уу
Mac OS X ашиглан Raspbian OS суулгана уу
Mac OS X ашиглан Raspbian OS суулгана уу
Mac OS X ашиглан Raspbian OS суулгана уу
Mac OS X ашиглан Raspbian OS суулгана уу
Mac OS X ашиглан Raspbian OS суулгана уу
Mac OS X ашиглан Raspbian OS суулгана уу
Mac OS X ашиглан Raspbian OS суулгана уу

Raspbian -ийг Mac дээр суулгахын тулд танд дараахь зүйлс хэрэгтэй болно.

  • ApplePi-Baker [Татаж авах]
  • Raspbian OS Lite: [Zip], [Torrent]

** ЧУХАЛ, буруу хийсэн тохиолдолд та бүх өгөгдлөө алдаж магадгүй тул үргэлжлүүлэхээсээ өмнө өгөгдлөө нөөцлөөрэй **

  1. Disk Utility -ийг нээгээд SD картаа зүүн гар талаас хайж олоод үүнийг дарна уу
  2. Цонхны доод талд байгаа "Төхөөрөмж" -ийг хайж олоод diskXsX гэх мэт зүйлийг харна уу
  3. "Төхөөрөмж" дугаарыг санаж, ApplePi-Baker-ийг нээнэ үү
  4. Энэ нь таны SD картыг форматлах шаардлагатай тул танаас нууц үг шаардах болно
  5. Зүүн талд байгаа "Device" гэсэн дугаарыг дарна уу
  6. "Сэргээх-Нөөцлөх" дээр дарж RaspbianOS-ийн зургийг үзээрэй.
  7. Энэ нь SD картыг устгаж, түүнд Raspbian суулгаж эхэлнэ
  8. Үүнийг хийсний дараа та SD картыг салгаж, пи-дээ оруулах боломжтой гэсэн анхааруулах цонх гарч ирнэ.

Алхам 3: Pi -г тохируулах

Pi -г асаахаасаа өмнө та HDMI дэлгэц, гар, ethernet кабель эсвэл USB wifi залгах хэрэгтэй болно (Бид үүнийг дараагийн алхамд тохируулах болно).

Pi -г асаагаарай, та дэлгэцийг дүүргэсэн олон текстийг харах болно, энэ бол хэвийн зүйл бөгөөд линукс цөмийг эхлүүлэх нэг хэсэг юм. Та харах хүртлээ жаахан хүлээгээрэй

бөөрөлзгөнө нэвтрэх:

Таны хэрэглэгчийн нэр pi бөгөөд нууц үг нь бөөрөлзгөнө (та дэлгэц дээр юу ч бичихгүй, гэхдээ оруулсаар байна)

Дараа нь нэвтрэх үед та дараах зүйлийг харах болно.

pi@raspberrypi: ~ $

Дараа нь та оруулах ёстой:

sudo raspi-config

Дараа нь таны дэлгэцийг цэнхэр дэлгэцээр дүүргэж, голдоо саарал хайрцганд оруулах боломжтой болно.

  1. Дээш, доош товчлууруудыг ашиглан "Файлын системийг өргөтгөх" гэсэн сонголтыг оруулаад хэдхэн секундын дараа "root файлын системийн хэмжээг өөрчилсөн" гэсэн анхааруулгыг авах болно.
  2. Дараа нь доош сумыг дараад Boot Options руу ороод enter дээр дарна уу, дараа нь 'Desktop / CLI' сонгогдсон үед enter дээр дарж 'Console Autologin' -ийг сонгоод enter дээр дарна уу.
  3. Дараа нь Нарийвчилсан сонголтуудыг сонгоод enter дээр дарна уу
  4. Дараа нь ssh рүү доош гүйлгээд enter дээр дараад Тийм гэж сонгоно уу
  5. дараа нь баруун сумыг буцааж тодруулах хүртэл дараад enter товчийг дарна уу
  6. Дараа нь дахин ёроол руу ороод дуусгах товчийг дараад дахин ачаалахын тулд тийм гэж хэлнэ үү

Дахин ачаалсны дараа хэрэв та ethernet -ээр холбогдсон бол энэ тушаалыг оруулаад IP хаягаа олох хэрэгтэй бөгөөд ингэснээр бид pi руу ssh оруулах боломжтой болно.

IP хайх:

хостын нэр

Алхам 4: Wifi тохируулах

Pi дээр wifi тохируулахын тулд бид файлыг засах хэрэгтэй

1. командын мөрөнд оруулна уу

sudo нано /etc/wpa_supplicant/wpa_supplicant.conf

2. Файлын төгсгөл рүү ороод оруулна уу

сүлжээ = {

ssid = "Your_Wifi_Name" psk = "Your_wifi_password"}

3. Дараа нь pi -гээ дахин ачаална уу

sudo дахин ачаална уу

Pi -г дахин ачаалсны дараа IP хаягаа оруулна уу

хостын нэр

Та өөрийн IP хаягийг авах ёстой, гэхдээ дахин оруулсан текст хоосон байвал энэ нь pi сүлжээнд холбогдож чадахгүй гэсэн үг юм. Wifi нэр, нууц үгээ жижиг үсгээр бичсэн тул зөв оруулсан эсэхээ дахин шалгаарай.

Алхам 5: Windows ашиглан Pi -тэйгээ алсаас холбогдоорой

Windows ашиглан Pi -тэйгээ алсаас холбогдоорой
Windows ашиглан Pi -тэйгээ алсаас холбогдоорой
Windows ашиглан Pi -тэйгээ алсаас холбогдоорой
Windows ашиглан Pi -тэйгээ алсаас холбогдоорой
Windows ашиглан Pi -тэйгээ алсаас холбогдоорой
Windows ашиглан Pi -тэйгээ алсаас холбогдоорой
Windows ашиглан Pi -тэйгээ алсаас холбогдоорой
Windows ашиглан Pi -тэйгээ алсаас холбогдоорой

Пи интернетэд холбогдсоны дараа бид гарны хулгана, дэлгэцийг салгаж, "ssh" ашиглан алсаас холбогдох боломжтой болно.

Цонхтой pi руу ssh оруулахын тулд та татаж авах хэрэгтэй

шаваас: [Татаж авах]

  1. Шаваасыг нээгээд IP хаягийн хайрцагт бөөрөлзгөнө pi ip оруулаад нээлттэй товчийг дарна уу
  2. Та 2 -р зураг шиг харагдах харилцах цонхыг авах болно
  3. Дараа нь та "нэвтрэх" гэж оруулаад "pi" гэж бичдэг шинэ харилцах цонхыг харах болно.
  4. дараа нь "бөөрөлзгөнө" гэж оруулаад нууц үг асуух болно.

Та одоо ssh дээр pi -тэй холбогдсон байна

Алхам 6: Mac ашиглан Pi -тэйгээ алсаас холбогдоорой

Mac ашиглан Pi -тэйгээ алсаас холбогдоорой
Mac ашиглан Pi -тэйгээ алсаас холбогдоорой
Mac ашиглан алсын зайнаас Pi -тэй холбогдоорой
Mac ашиглан алсын зайнаас Pi -тэй холбогдоорой
Mac ашиглан Pi -тэйгээ алсаас холбогдоорой
Mac ашиглан Pi -тэйгээ алсаас холбогдоорой
Mac ашиглан Pi -тэйгээ алсаас холбогдоорой
Mac ашиглан Pi -тэйгээ алсаас холбогдоорой

Пи интернетэд холбогдсон бол бид гар, хулганыг салгаж "ssh" ашиглан алсаас холбогдох боломжтой боллоо.

1. "Терминал" -ыг нээнэ үү.

2. Оруулна уу

ssh pi@IP_ADDRESS

3. Дараа нь танд хост түлхүүр хадгалагдаагүй гэсэн мессеж ирэх болно, "Тийм" гэж бичээрэй.

4. Дараа нь сурталчлахдаа "Raspberry" гэж бөөрөлзгөнө pi нууц үгээ оруулна уу.

Та одоо ssh дээр pi -тэй холбогдсон байна

Алхам 7: Програм хангамжийг суулгах

Бид одоо pi -д алсын зайнаас нэвтрэх боломжтой болсон тул бид туузыг удирдах зарим програмыг суулгах шаардлагатай байна

Бид суулгах хэрэгтэй болно

  • pigpio (Энэ нь бүх GPIO тээглүүрийг дижиталаас PWM болгон хувиргадаг)
  • колбо (pigpio болон вэб сервертэй ярьдаг сервер талын скрипт)
  • apache2 (вэб сервер)

Pigpio суулгах

1. Эхлээд бид энэ тушаалыг ашиглан хөрвүүлээгүй pigpio програмыг агуулсан zip хавтсыг татаж авах хэрэгтэй

wget

2. Дараа нь бид задалж директор руу орох хэрэгтэй

pigpio -г задлах.zip && cd PIGPIO

3. одоо бид лавлах дотор байгаа тул програмыг эмхэтгэх, суулгах шаардлагатай байна

make -j4 && sudo make install

4. Одоо rc.local -ийг нээгээрэй

sudo нано /etc/rc.local

дараа нь гарах шугамын өмнөхөн оруулна уу

sudo pigpiod

Та одоо pigpio програмыг суулгасан байна

Колбо суурилуулах

Үүнийг хийхийн тулд эхлээд програм хангамжийн жагсаалтыг шинэчлэх хэрэгтэй

sudo apt update && sudo apt upgrade -y

дараа нь пип суулгана уу

sudo apt-get python-pip суулгана уу

Одоо бид колбо суурилуулж болно

sudo pip суулгах колбо

Apache2 суулгана уу

sudo apt -get apache2 -y суулгана уу

sudo apt-get libapache2-mod-wsgi -y суулгана уу

Git суулгана уу

sudo apt install git -y

Бүх зүйл суулгаж дуусаад pi -г унтраа

sudo одоо хаагдаж байна

Алхам 8: Эрчим хүчийг холбох

Эрчим хүчийг холбох нь
Эрчим хүчийг холбох нь
Эрчим хүчийг холбох
Эрчим хүчийг холбох
Эрчим хүчийг холбох нь
Эрчим хүчийг холбох нь

Эхлээд бид цахилгаан холбогчийг талхны тавцан руу залгах хэрэгтэй

  1. Хар утсыг цахилгаан залгуур дээрх сөрөг холбогчтой холбоно уу
  2. Улаан утсыг цахилгаан залгуур дээрх эерэг холбогчтой холбоно уу
  3. Улаан утасны нөгөө үзүүрийг талхны эерэг тал руу холбоно уу
  4. Хар утасны нөгөө үзүүрийг талхны эерэг тал руу холбоно уу
  5. Дараа нь pi -ийн газардуулгын зүүг (зураг дээр харагдаж байгаа шиг) талхны сөрөг зүү рүү холбоно уу

Одоо бид хамгийн их сүлжээг холбох ёстой.

Алхам 9: Мосфетуудыг холбож, Pi -г холбоно уу

Мосфетуудыг цахилгаан утсаар холбож, Pi -г холбоно уу
Мосфетуудыг цахилгаан утсаар холбож, Pi -г холбоно уу
Мосфетуудыг цахилгаан утсаар холбож, Pi -г холбоно уу
Мосфетуудыг цахилгаан утсаар холбож, Pi -г холбоно уу
Мосфетуудыг цахилгаан утсаар холбож, Pi -г холбоно уу
Мосфетуудыг цахилгаан утсаар холбож, Pi -г холбоно уу
Мосфетуудыг цахилгаан утсаар холбож, Pi -г холбоно уу
Мосфетуудыг цахилгаан утсаар холбож, Pi -г холбоно уу

Mosfet нь гэрлүүд рүү хэр их хүч зарцуулах боломжтойг хянах боломжийг олгодог бөгөөд бидэнд улаан, ногоон, цэнхэр гэрлийг тусад нь хянах шаардлагатай байдаг тул бидэнд гурван шумуул хэрэгтэй болно.

Мосфет нь гурван тээглүүртэй, зүүн талд нь "Хаалга" зүү байдаг бөгөөд энэ нь гэрлийн туяа руу хэр их хүч орохыг хянахын тулд пи -тэй холбогддог.

Төв зүүг "ус зайлуулах" гэж нэрлэдэг бөгөөд энэ нь гэрлийн чийдэн рүү орж, хаалганы хажуугаар өнгөрөх хүчдэлийг өгдөг

баруун талын зүү нь "Эх сурвалж" зүү юм. Энэ зүү нь талхны тавцан дээр газарт очдог.

Улаан удирдагчийг холбож байна

  1. Нэг мосфетыг талхны тавцан дээр тавь
  2. талхны самбар дээрх GND -аас хар утсыг эх үүсвэрт холбоно уу (баруун зүү)
  3. дараа нь улаан утсыг мосфет дээрх төв зүүгээс LED туузан дээрх улаан зүү рүү холбоно уу
  4. дараа нь зүүн утсан дээрх улаан утсыг pi дээрх GPIO 17 руу холбоно уу

Ногоон LED -ийг холбож байна

  1. 2 -р мосфетыг талхны тавцан дээр тавь
  2. Дараа нь талхны самбар дээрх GND -аас хар утсыг эх сурвалж руу холбохын өмнөх шиг (баруун зүү)
  3. дараа нь ногоон утсыг мосфет дээрх төв зүүгээс LED туузан дээрх ногоон зүү рүү холбоно уу.
  4. дараа нь зүүн утсан дээрх ногоон утсыг pi дээрх GPIO 22 руу холбоно уу

Цэнхэр удирдагчийг холбож байна

  1. Сүүлийн мосфетыг талхны тавцан дээр тавь
  2. талхны самбар дээрх GND -ээс өөр хар утсыг эх үүсвэрт холбоно уу (баруун зүү)
  3. дараа нь цэнхэр утсыг мосфет дээрх төв зүүгээс LED туузан дээрх цэнхэр зүү рүү холбоно уу.
  4. Дараа нь цэнхэр утсыг зүүн зүүгээс pi дээрх GPIO 24 руу холбоно уу

Дараа нь танд цагаан эсвэл хар өнгийн туузан дээр дахин нэг зүү байх болно, зүгээр л талхны самбар дээрх эерэг зүүгээс утсыг залгуур дээрх нэмэлт зүү рүү холбоно уу.

Одоо дууссаны дараа бид үүнийг туршиж эхлэх боломжтой.

Алхам 10: Led зурвасыг татаж авах, турших

Led зурвасыг хянах эх кодыг татаж авах

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

LED зурвасыг шалгахын тулд test.py файлыг ажиллуулна уу.

python Test.py

хэрэв ямар нэг шалтгаанаар зарим өнгө асахгүй байвал бүх зүйл зөв залгасан эсэхийг шалгана уу.

энэ скрипт хэрхэн ажилладаг вэ?

Хэрэв та питон скриптийг нээвэл энэ нь хэрхэн ажилладаг талаар та гайхаж магадгүй, эхний мөрөнд та дараах зүйлийг харах болно.

импортлох хугацаа

Энэхүү бяцхан номын сан нь гэрлийг илүү хурдан асаахын тулд скриптийг түр зогсоох боломжийг бидэнд олгодог

pigpio импортлох

Энэхүү номын сан нь бидэнд LED зурвастай харилцах боломжийг олгодог

pi = pigpio.pi ()

Бид pi.set_pw… instp of pigpio.pi () -ийг ашиглахын тулд хувьсагчийг тохируулна уу. set_pw…

RedPin = 17

GreenPin = 22

BluePin = 24

Эдгээр нь скриптэд юу холбогдсоныг хэлэх боломжийг олгодог хувьсагчид юм

хэвлэх ("улаан өнгийг шалгах")

энэ нь текстийг тушаалын мөрөнд хэвлэх болно

pi.set_PWM_dutycycle (RedPin, 255)

Энэ тушаал нь pigpio libary -ийн нэг хэсэг бөгөөд бидний өмнө нь тогтоосон дугаарыг хайж байгаа "RedPin" -ийг тодруулж, гэрэлтүүлгийг хамгийн ихдээ "255" болгож тохируулахыг хэлж байна.

цаг унтах (2)

Энэ бол цагийн номын сангийн нэг хэсэг бөгөөд скриптийг 2 секундын турш түр зогсоох болно

Эдгээр уян хатан команд бусад ледүүд хүртэл давтагдах болно

pi.stop ()

Энэ нь удирдсан туузтай ярихаа больж, бүх өнгийг унтраах болно.

Алхам 11: Серверийн хажуугийн скриптийг програмчлах

** Эхлэхээсээ өмнө питон ба колбоны талаар уншихыг танд зөвлөж байна.

Энд зарим гарын авлага байна:

www.pythonforbeginners.com

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

flask.pocoo.org

Main.py шууд явж байгаа тул энэ алхам нь зөвхөн кодыг тайлбарлаж байна.

Эхлээд бидэнд номын сан бий

колбоны импортоос Колбо, render_template, хүсэлт

pigpio -г урсгалаас импортлох start_new_thread

Дараа нь бид зарим хувьсагчийг тохируулах хэрэгтэй

апп = Колбо (_ нэр_)

CurrentColour = "Цагаан" RedColourCode = 0 BlueColourCode = 0 GreenColourCode = 0 RedBeforeEffect = 0 BlueBeforeEffect = 0 GreenBeforeEffect = 0 pi = pigpio.pi ()

Эхний хувьсагч нь колбонд зориулагдсан бөгөөд энэ нь манай вэб сервер бөгөөд бид үүнийг апп гэж нэрлэдэг тул дуудах, ажиллуулах нь илүү хялбар байдаг. Дараа нь 6 хувьсагч байгаа бөгөөд эхний гурван нь ямар өнгийг өөрчлөх вэ, нөгөө гурван нь өмнөх өнгийг агуулна.

@app.route ('/', арга = ['АВАХ'])

Энэ мөрөнд хэрэв хэн нэгэн вэб хөтөч дээр pi -ийн IP хаягийг бичвэл доорх скриптийг ажиллуулах болно, мөн дараа нь ямар ч текстийг вэб серверт дамжуулах болно. LED зурвасын өнгийг өөрчлөхөд ашигладаг.

Def Main ():

дэлхийн CurrentColour

def (Main) текст нь скриптийн аль ч газраас дуудаж болох main гэж нэрлэгддэг функцийг бий болгоно гэсэн үг юм. болон дэлхийн шугам гэдэг нь хувьсагчийг бүхэлд нь скриптээр шинэчилнэ гэсэн үг юм.

хэрэв request.args.get ('Өнгө'):

CurrentColour = request.args.get ('Color') if CurrentColour == "White": FadeTORGB (255, 255, 255) elif CurrentColour == "Улаан": FadeTORGB (255, 0, 0) elif CurrentColour == "Ногоон ": FadeTORGB (0, 255, 0) elif CurrentColour ==" DarkBlue ": FadeTORGB (0, 0, 255) elif CurrentColour ==" LightBlue ": FadeTORGB (0, 255, 255) elif CurrentColour ==" Улбар шар ": FadeTORGB (255, 15, 0) elif CurrentColour == "Ягаан": FadeTORGB (255, 0, 192) elif CurrentColour == "Шар": FadeTORGB (255, 157, 0) elif CurrentColour == "Нил ягаан": FadeTORGB (123, 0, 255) elif CurrentColour == "Хар": FadeTORGB (0, 0, 0) буцах render_template ('index.html')

Энэ скрипт нь "Өнгө" GET Аргын дараа ямар ч нэрийг олж аваад хадгална. Дараа нь тэр нэрийг шалгаж, улаан, ногоон, цэнхэр гэрлийг нэгэн зэрэг өөрчлөх бусад гурван функцийг гүйцэтгэх функцийг дуудах болно.

def FadeTORGB (RedNum, BlueNum, GreenNum):

start_new_thread (FadeUpRed, (RedNum,))

Энэ нь өөр гурван функцийг дуудах бөгөөд энэ нь гэрэл тус бүрийн хүчийг бүдгэрүүлэх нөлөөтэй болгоно.

def FadeUpRed (REDUpNum):

RedColourCode бол дэлхийн RedColourCode

def FadeUpBlue (BlueUpNum):

BlueColourCode бол BlueColourCode <BlueUpNum: байхад BlueColourCode BlueUpNum: байхад BlueColourCode> BlueUpNum: BlueColourCode -= 1 pi.set_PWM_dutycycle (BluePin, BlueColourCode)

def FadeUpGreen (GreenUpNum):

GlobalColourCode бол GreenColourCode <GreenUpNum: байхад GreenColourCode GreenUpNum: байхад GreenColourCode> GreenUpNum: GreenColourCode -= 1 pi.set_PWM_dutycycle (GreenPin, GreenColourCode)

хэрэв _ name_ == "_main_":

app.run (хост = "0.0.0.0")

Алхам 12: Вэб серверийг програмчлах

Одоо бид сервертэй болсон тул вэбсайт зохион бүтээх шаардлагатай байна.

Сервер нь загвар ба статик фолдерт байгаа тул шууд энэ алхам нь кодыг тайлбарлаж байна.

Би танд html, css, javascript -ийн талаар уншихыг зөвлөж байна

HTML

Нэгдүгээрт, бид html програмчлах хэрэгтэй, эндээс бүх агуулга CSS ашиглан загварчлах боломжтой болно

1. Толгой үүсгэх (гарчиг, файлуудыг холбох,)

Wifi Led зурвас

Эхний хоёр тэмдэглэгээ нь вэб хөтөч гэдгийг вэб хуудас гэж хэлдэг бол гурав дахь мөр нь хөтөч рүү блок доторх текстийг нуухыг хэлдэг бөгөөд үүний доор гарчиг гарч ирэх болно.

IOS дээр вэб хуудсыг бүтэн дэлгэц болгох

Хуудсыг бүтэн дэлгэц болгохын тулд энэ кодыг тагны доор оруулна уу

Дараа нь бид css файлд лавлагаа нэмж оруулах бөгөөд үүнийг сүүлд нь хийх болно, энэ нь колбонд байдаг тул ердийнхөөс өөр байх болно.

Үүний дараа та шошгыг хааж, биеийн шошго үүсгэх ёстой

Биеийн шошго гэдэг нь дотор нь байгаа хаягууд вэб хуудсан дээр гарч ирнэ гэсэн үг юм

Одоо бид LED туузыг өөрчлөх боломжтой өнгөний товчлууруудыг хийх гэж байна.

Бид өнгө тус бүрт нэгийг үүсгэж хүснэгтэд оруулах болно

Энэ бол хүснэгтийн гадна талын хүрээ юм

Энэ нь хүснэгтэд мөр үүсгэх болно

Одоо улбар шар өнгийн товчлуур үүсгэе

td хаяг нь нүд үүсгэдэг, дараа нь "onClick" функц нь бидний сүүлд үүсгэх javascript функцийг дуудах бөгөөд "класс" функцийг товчлуурыг загварчлахад ашигладаг бөгөөд загвар нь зөвхөн өнгөөр будахад зориулагдсан болно.

Бид зүгээр л sendColour текст болон хэв маягийг өөр хоорондоо өөрчлөх хэрэгтэй болно, гэхдээ 2 -р товчлуур бүрийн дараа бид мөрийг хааж, шинэ мөр үүсгэх болно.

Гэх мэт…

Дараа нь бүх өнгийг оруулсны дараа ширээг хаах хэрэгтэй

Javascript

Одоо бид үүнийг хийхийн тулд өмнө нь иш татаж байсан "SendColour" функцийг нэмж оруулах хэрэгтэй бөгөөд эхлээд вэб хөтөч дээр javascript байгаа гэж хэлэх шошгыг нэмэх хэрэгтэй.

дараа нь функц үүсгэнэ

SendColour функц (ClickedColour) {

Энэ функц нь бөөрөлзгөнө pi -д Ajax хүсэлтийг илгээх бөгөөд энэ нь таны дарсан өнгө болгон өөрчлөхийг хэлнэ.

xhttp = шинэ XMLHttpRequest ();

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

Одоо бид javascript болон html -ийг хаах хэрэгтэй

CSS

Одоо бид вэбсайтын дизайныг хийх гэж байна

Эхлээд cd -ийг загвар хавтаснаас гаргаж аваад статик хавтас руу орно уу

CD.. && cd статик

одоо Style.css файлыг үүсгэнэ үү

нано Style.css

Эхлээд хүснэгтийг дэлгэцийг бүхэлд нь бөглөхийг зөвшөөрнө үү.

. Өнгө {

өргөн: 100%; }

.товч {

дүүргэгч: 25px 35px; хилийн радиус: 4 пиксел; }

Серверийг шалгаж байна

Серверийг шалгахын тулд вэб серверийн хавтас руу орно уу

cd..

дараа нь оруулна уу

python Main.py

Энэ нь серверийг эхлүүлж, дараа нь таны компьютер дээр вэб хөтөчийг нээж, рүү очно уу

YOUR_PI_PI: 5000the: 5000 нь вэб сервер ажиллаж байгаа порт учраас одоогоор чухал юм.

Хэрэв та вэб хуудсыг олж аваад "Дотоод серверийн алдаа" олж авбал консолыг (шаваас эсвэл терминал) харвал танд олон текст харагдах болно, зүгээр л сүүлчийн мөрийг хараарай. Юу болж байгааг хэлж өгөөч, та хариултыг Google дээрээс хайж олох боломжтой.

Гэхдээ хэрэв дэлгэц дээрх өнгийг харвал та нэг товчлуур дээр дарж болно, хэрэв та өнгөний зурвасыг харах ёстой бол хэрэв энэ нь асаалттай байгаа эсэх, асаалттай байгаа эсэх, эсвэл html кодыг зөв оруулсан эсэхийг шалгаарай..

Алхам 13: Үүнийг Apache2 -тэй болгох

Үүнийг туршиж үзсэний дараа бид үүнийг apache -тэй ярилцах ёстой бөгөөд ингэснээр эхлүүлэх болон 80 порт дээр ажиллах боломжтой болно (стандарт вэб порт)

1. өөрийн WebServer фолдер дотор wsgi файл хийнэ

nano wifiled.wsgi

Дараа нь файлд оруулна уу

sys импортлох

sys.path.insert (0, '/home/pi/Webserver/') програмыг импортлох үндсэн програмаас

дараа нь www-data гэж нэрлэгддэг бүлэгт pi хэрэглэгчийг нэмж оруулснаар apache вэб серверийн хавтсыг харах боломжтой болно

sudo usermod -a -G www -дата pi

дараа нь анхдагч тохиргоог устгана уу

sudo a2dissite 000-анхдагч

дараа нь Apache тохиргооны фолдерт файл хий

sudo нано /etc/apache2/sites-available/wifiled.conf

мөн оруулна уу

ServerName WifiLed ServerAdmin [email protected] WSGIScriptAlias//home/pi/Webserver/wifiled.wsgi Захиалга өгөхийг зөвшөөрөх, бүгдийг зөвшөөрөхийг зөвшөөрөхгүй Бүх зөвшөөрсөн ErrorLog $ {APACHE_LOG_DIR} /error.log LogLevel анхааруулах CustomLog $ {APACHE_LOG_DIR} нэгтгэсэн

дараа нь оруулаад тохиргоог уншихыг apache -д хэлээрэй

sudo a2ensite wifiled.conf

Дахин ачаалах үед вэб хөтөч рүү орох үед pi -г дахин эхлүүлнэ үү

YOUR_PI_IP

Алхам 14: Tasker, Ifttt болон бусад үйлчилгээг тохируулах

Эдгээр програмыг тохируулахаас өмнө та чиглүүлэгч дээрээ порт фординг тохируулах ёстой, учир нь чиглүүлэгч бүр өөр өөр байдаг тул та эндээс уншиж болно

Таскер

Андройд төхөөрөмж дээрээ авагчийг нээнэ үү

Дараа нь Үйл явдал дээр үндэслэсэн шинэ профайл үүсгэж, та ямар ч гохыг сонгож болно. Би "Утасны хонх" -ыг сонгосон бөгөөд "C: ANY" гэсэн өнгийг хэн нэгэнд тохируулсан бөгөөд энэ нь танаас даалгавар сонгож, "Шинэ даалгавар" дээр дарж, үйлдлийнхээ нэрийг зааж өгөхийг танаас хүсэх болно. Би үүнийг "Утасны дуудлага" гэж нэрлэнэ, дараа нь "HTTP толгой" гэсэн мөрийг хайж олоод Server: Port -ийг your_raspberry_pi_IP болгож тохируулаарай, дараа нь "/? Өнгө = Ногоон" -оор хатуу өнгө тохируулж болно. үр дүнг бид дараагийн алхамд хийх болно. Дараа нь буцааж, буцааж дарна уу.

IFTTT

Эхлээд goto ifttt хийж, шинэ апплет үүсгэнэ үү Ямар ч триггерийг сонго (Би Товчлуурыг сонгосон), дараа нь үйлдлийн хувьд үйлдвэрлэгчийн сувгийг сонгоод бидэнд хүсэлт тавь гэж хэлээд дараа нь url руу YOUR_PUBLIC_PI/оруулна уу? ip -ийг google дээр "My Ip" гэж оруулна уу. Дараа нь HEAD аргыг оруулаад дараа нь таны үйлдэл хийх үед "Үйлдэл үүсгэх" гэснийг дарж өнгө өөрчлөх хүсэлт гаргаарай.

Бусад үйлчилгээ

Та HTTP HEAD эсвэл GET хүсэлт гаргах бусад үйлчилгээг холбох боломжтой.

Алхам 15: Гаалийн эффект үүсгэх

Main.py дээр импортлох мэдэгдлийг оруулна уу

импортлох хугацаа

Мөн эффект үүсгэхээс өмнө GreenBeforeEffect нэмэх доор хувьсагч нэмэх хэрэгтэй

CanChangeColour = Үнэн

дараа нь request.args.get ('Өнгө') бол өөрчлөх:

руу

if request.args.get ('Өнгө') ба CanChangeColour:

render_template ('Main.html') буцах хэсэгт байгаа хэсгийг нэмнэ үү

@app.route ('/Effect', арга = ['GET'])

def нөлөө ():

Дараа нь хувьсагчдыг глобал болгож тохируулна уу

x = 0

дэлхийн RedColourCode дэлхийн BlueColourCode дэлхийн GreenColourCode дэлхийн RedBeforeEffect дэлхийн BlueBeforeEffect дэлхийн GreenBeforeEffect

Одоо бид анхны эффектээ бүтээцгээе

хэрэв request.args.get ('Дуудлага'):

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

Энэ үйлдэл нь pi хүлээн авах "/? Effect = Call" гэх мэт хүсэлтийг биелүүлэх бөгөөд өнөөгийн өнгийг хадгалах тул бид буцааж залгах боломжтой болно.

Одоо бид хар туяаг хараас ногоон болгож, дараа нь дахин хар өнгөтэй болгох гэж байна, би үүнийг таван удаа хийхийг хүсч байна

while x <= 5: FadeTORGB (0, 255, 0) x += 1 удаа. унтах (1) FadeTORGB (0, 0, 0) цаг. унтах (1) CanChangeColour = Жинхэнэ цаг., BlueBeforeEffect, GreenBeforeEffect)

Энэ нь тав хүртэл тоолох боловч ногоон өнгөтэй болж, нэг секунд хүлээгээд хар өнгөтэй болно. Дараа нь үүнийг дуусгаснаар өнгийг өөрчлөхөөс өмнө өмнөх өнгөөрөө солино.

Одоо бид зөвхөн хариу өгөх болно.

буцах ""

Мөн та бөөрөлзгөнө pi -г дахин ачаална уу

sudo дахин ачаална уу

Зөвлөмж болгож буй: