Բովանդակություն:
- Պարագաներ
- Քայլ 1: Raspbian- ի տեղադրում
- Քայլ 2: WiFi կազմաձևում
- Քայլ 3: Softwareրագրաշարի տեղադրում և կազմաձևում
- Քայլ 4: Տվյալների բազա
- Քայլ 5: Կառուցեք հայելային շրջանակ
- Քայլ 6: Էլեկտրոնիկա
- Քայլ 7: Էլեկտրոնիկայի տեղադրում շրջանակում
- Քայլ 8: Ավարտելով հպումները
- Քայլ 9: Փոխազդեցություն Webapp- ի հետ
Video: Կախարդական հայելին նորություններով, եղանակով, ահազանգով, ժամաչափով և տոդոլիստով `9 քայլ
2024 Հեղինակ: John Day | [email protected]. Վերջին փոփոխված: 2024-01-30 09:46
Կախարդական հայելին հատուկ միակողմանի հայելի է, որի հետևում կա ցուցադրում: Էկրանի վրա, որը միացված է Raspberry Pi- ին, ցուցադրվում են այնպիսի տեղեկություններ, ինչպիսիք են եղանակը, սենյակի ջերմաստիճանը, ժամանակը, ամսաթիվը, թոդոլիստը և շատ ավելին: Դուք նույնիսկ կարող եք միկրոֆոն ավելացնել և ստեղծել խելացի օգնական: Հնարավորությունները անսպառ են:
Այս նախագիծը կարող է բավականին թանկ լինել, ամենաթանկարժեք մասերից մեկը, որը ձեզ հարկավոր կլինի, իհարկե, դիսփլեյն է: Ահա թե ինչու ես վերամշակեցի էկրանը հին նոթբուքից: Այնուամենայնիվ, ես խորհուրդ եմ տալիս ձեռք բերել մեծ, պայծառ, բարձր հակադրություն ունեցող էկրան `այս նախագիծը կատարելու համար: Արժե այն:
Իմ պատրաստած հայելին ունի այս հատկությունները.
- Նորություններ օգտվողի կողմից ընտրված RSS հոսքից
- Եղանակ
- Ներքին ջերմաստիճանը
- Ահազանգման համակարգ
- Timամաչափի համակարգ
- Թոդոլիստ
- Բազմաթիվ օգտվողներ. Ledstrip- ի գույնը և նոր աղբյուրի փոփոխությունը հիմնված են այն օգտվողի ընտրության վրա:
Պարագաներ
Այս կախարդական հայելին կառուցելու համար ձեզ հարկավոր է.
- Միակողմանի հայելի
- Փայտ
- Ազնվամորի Պի
- Micro SD քարտ (8+GB)
- Հացաթուղթ
- Երկու 20W հզորությամբ բարձրախոս
- MAX9744 20W ուժեղացուցիչ ՝ բարձրախոսներին սնուցելու համար
- 1 մ 30 գլխավորությամբ WS2801 լուսանցք
- DS18B20 1-լարային ջերմաստիճանի տվիչ
- HC-SR501 ինֆրակարմիր ցուցիչ
- Պտտվող կոդավորիչ
-
Մոնիտոր կամ հին նոութբուքի էկրան
Եթե դուք օգտագործում եք հին նոութբուքի էկրան, ապա ձեզ հարկավոր է գնել նոութբուքի ցուցադրման ադապտեր: Դուք կարող եք դրանք ձեռք բերել AliExpress- ից, Ebay- ից կամ Amazon- ից: Պարզապես որոնեք ձեր ցուցադրման սերիական համարը:
Ձեզ նույնպես կպահանջվեն հետևյալ փոքր բաղադրիչները.
- Դիոդ
- 4.7k Օմ դիմադրություն
- 470 Օմ դիմադրություն
- Լարեր ՝ սենսորները Raspberry Pi- ին միացնելու համար
Եվ այս էներգիայի աղբյուրները.
- 5V 2A ՝ հոսանքի լուսարձակը միացնելու համար
- 12V 2A ՝ էկրանը սնուցելու համար
- 12V 2A ՝ ուժեղացուցիչը սնուցելու համար
- 5.1V 3A ՝ Raspberry Pi- ին սնուցելու համար (օգտագործեք պաշտոնական RPi սնուցման աղբյուր)
Քայլ 1: Raspbian- ի տեղադրում
Էկրանի և հայելու հետևի բոլոր բաղադրիչները սնուցվում են Raspberry Pi- ով: SD քարտի վրա պետք է տեղադրել Raspbian- ը ՝ Pi- ի կանխադրված օպերացիոն համակարգը:
- Ներբեռնեք Win32 սկավառակի պատկերիչ: Linux- ի և MacOS- ի օգտվողները կարող են օգտագործել Etcher- ի նման մի բան:
- Ներբեռնեք Raspbian- ի վերջին պատկերը Raspberry Pi կայքից: Ընտրեք «Raspbian Buster աշխատասեղանով» տարբերակը
- Բացեք Win32 Disk Imager- ը և պատկերային ֆայլը գրեք SD քարտի վրա:
SD քարտը այժմ գրեթե պատրաստ է: Մենք պարզապես պետք է համոզվենք, որ կարող ենք հեռակա կերպով միանալ Raspberry Pi- ին.
- Գնացեք SD քարտի «boot» բաժին ՝ օգտագործելով ձեր համակարգի ֆայլերի հետազոտողը:
- Ավելացրեք «ssh» անունով ֆայլ ՝ առանց ընդլայնման:
- Ավելացրեք «ip = 169.254.10.1» (առանց չակերտների) «cmdline.txt» - ի առաջին տողի վերջում:
Անվտանգորեն հանեք SD քարտը ձեր համակարգչից, դրեք այն ձեր Raspberry Pi- ի մեջ և գործարկեք այն:
Քայլ 2: WiFi կազմաձևում
WiFi ցանցերը սկանավորելու համար կատարեք հետևյալ հրամանը.
sudo iw dev wlan0 սկան | grep SSID
Դուք կտեսնեք այն բոլոր SSID- ների ցանկը, որոնց կարող է միանալ Raspberry Pi- ն:
Ստեղծեք ցանցային մուտք կոդավորված գաղտնաբառով ՝ կատարելով հետևյալ հրամանը և մուտքագրելով ձեր ցանցի գաղտնաբառը.
wpa_passphrase «YOUR_NETWORK_SSID_HERE»
Այժմ տեղադրեք վերը նշված հրամանի ելքը այս ֆայլում.
sudo nano /etc/wpa_supplicant/wpa_supplicant.conf
Այժմ վերագործարկեք Raspberry Pi- ն: Դուք միացված կլինեք ինտերնետին:
Քայլ 3: Softwareրագրաշարի տեղադրում և կազմաձևում
Այս նախագծի համար ձեզ հարկավոր է ներբեռնել այս փաթեթները ձեր Raspberry Pi- ում.
pip3 տեղադրել mysql-connector-python flask-socketio flask-cors gevent gevent-websocket adafruit-circuitpython-ws2801 adafruit-circuitpython-max9744
sudo apt տեղադրել apache2 mariadb-server
Ավելացրեք այս տողը /boot/config.txt- ի ներքևում ՝ GPIO- ի 12 (ձախ) և 13 (աջ) կապերի միջոցով ձայնը միացնելու համար.
dtoverlay = audremap
Օգտագործեք raspi-config ՝ ձեր ցուցադրման լուծաչափը սահմանելու և i2c, One-wire և SPI միացնելու համար: Նաև բեռնման մեթոդը սահմանեք «Desktop Autologin»:
/Etc/xdg/lxsession/LXDE-pi/autostart- ում ավելացրեք հետևյալը.
@xset s անջատված@xset -dpms@xset s noblank@chromium -browser --kiosk 127.0.0.1/mirror.html # բեռնելուց հետո քրոմի բեռնում և վեբ կայքը բացել ամբողջ էկրանով ռեժիմով
Սա բացում է դիտարկիչը ճիշտ էջում, երբ բեռնվում է LXDE (Raspbian- ի աշխատասեղանի միջավայրը): Նաև հեռացրեք կամ մեկնաբանեք @xscreensaver տողը ՝ էկրանապահիչն անջատելու համար:
Github պահոց
Կլոնավորեք իմ GitHub պահեստը և տեղադրեք Frontend թղթապանակի բովանդակությունը/var/www/html- ում: Մեզ հետագայում անհրաժեշտ կլինի Backend թղթապանակը:
Քայլ 4: Տվյալների բազա
Սա տվյալների բազայի սխեման է ՝ օպտիմիզացված մինչև 3NF: Այն պահում է բոլոր ահազանգերը, նոր աղբյուրները, օգտվողները, տվիչների տվյալները, հնչյունները և տոդոլիստը:
- Օգտագործեք MySQL Workbench ՝ ձեր pi տվյալների բազայի սերվեր մուտք գործելու համար (mariadb)
- Ստեղծեք տվյալների բազա ՝ օգտագործելով այս սխեման և տեղադրեք ձեր սեփական տվյալները:
- Խմբագրել config.py- ն իմ GitHub պահեստի Backend թղթապանակում. Փոխել տվյալների բազայի անունը, ձեր ընտրած օգտանունը և գաղտնաբառը:
- Խմբագրել app.py- ն և փոխեք OpenWeatherMap API URL- ը ձեր սեփականին: (Ստեղծեք ձեր սեփականը այստեղ)
Քայլ 5: Կառուցեք հայելային շրջանակ
Ես շրջանակը կառուցեցի հայելու շուրջ ՝ օգտագործելով մետաղական անկյուններով Միտեր հոդեր: Իմ օգտագործած փայտե տախտակները ունեն 18 մմ հաստություն և 10 սմ լայնություն: Պատկերներում կարող եք տեսնել 45 սմ x 60 սմ հայելու ճշգրիտ չափերը: Հայելու հետևում տեղադրված են բոլոր էլեկտրոնիկաները, այնպես որ համոզվեք, որ ձեր տախտակները բավականաչափ լայն են `դրանք տեղավորելու համար:
Բարձրախոսներին շրջանակին ամրացնելու համար օգտագործեցի մետաղական կեռիկներ: Այդ կերպ նրանք չեն հանգստանում հայելու վրա ՝ նվազեցնելով ապակու վրա թրթռման սթրեսը:
Քայլ 6: Էլեկտրոնիկա
Շղթան կառուցելու համար հետևեք վերը նշված սխեմաներին: Ես ժապավենով ամրացրեցի էլեկտրոնիկան հայելու մեջ:
Քայլ 7: Էլեկտրոնիկայի տեղադրում շրջանակում
Վերևի մետաղյա կեռիկներին բարձրախոսները ամրացնելուց հետո մնացած էլեկտրոնիկան ավելացրեք հայելու մեջ: Ես նաև հայելու և էլեկտրոնիկայի միջև դրեցի փայտե բարակ տախտակ, ուստի էլեկտրոնիկան հայելիին կպցնելու փոխարեն էլեկտրոնիկան կպցրի փայտե տախտակին: Նոութբուքի էկրանը սպիտակ վահանակ է հայելու ներքևում:
Ինչպես տեսնում եք նկարներում, ես միացրել եմ բոլոր էներգիայի ադապտերներին մի քանի վարդակից, այնպես որ շրջանակից դուրս է գալիս միայն մեկ մալուխ: Ահա թե ինչու ինձ բավական լայն տախտակներ էին պետք (10 սմ):
Ես հայելու աջ կողմում 2 սմ լայնությամբ անցք եմ բացել, որպեսզի պտտվող կոդավորիչը տեղավորվի: Սա թույլ է տալիս հեշտությամբ փոխել ձայնը (շրջադարձ) կամ անջատել ժամաչափերն ու ազդանշանները (հրում):
Ես հայելու երկու կողմերում երկու 8 մմ անցք եմ անցկացրել ՝ լուսարձակների համար մալուխները ուղղելու համար:
Քայլ 8: Ավարտելով հպումները
Էլեկտրոնիկան թաքցնելու համար հայելու հետևի հատվածին ավելացրեցի սև կտոր: Այն նաեւ մթագնում է պատյանի ներսը, ինչը շատ ավելի է դժվարացնում հայելու միջոցով լարերը տեսնելը: Ես կցեցի այն velcro- ով ՝ անհրաժեշտության դեպքում հեշտացնելով էլեկտրոնիկայի հասանելիությունը:
Պատճենեք Backend թղթապանակը իմ Github պահոցից այն վայրում, որը կհիշեք:
Ավելացրեք համակարգված միավոր, որպեսզի python սցենարը գործի բեռնման ժամանակ.
sudo nano /etc/systemd/system/magicmirror.service
[Միավոր]
Նկարագրություն = Magicmirror python սցենարի ծառայություն After = network.target [Service] ExecStart =/usr/bin/python3 -u app.py WorkingDirectory =/home/pi/magicMirror/Backend StandardOutput = ժառանգել StandardError = ժառանգել Վերագործարկում = միշտ Օգտվող = pi [Տեղադրեք] WantedBy = multi-user.target
Փոխեք «WorkingDirectory» - ը Backend գրացուցակում և օգտագործողին փոխեք ձեր սեփական օգտանվան:
Քայլ 9: Փոխազդեցություն Webapp- ի հետ
Փնտրեք IP հասցեով (որը ցուցադրվում է): Դուք կտեսնեք շարժական կայք ՝ հետևյալ հատկանիշներով.
- Interactերմաստիճանի փոխազդեցություն
- Մի ժամանակ. Երբ ժամաչափը աշխատում է, դուք նույնպես կտեսնեք հետադարձ հաշվարկ հայելու վրա:
- Ահազանգման համակարգ
- Կարգավորումների ներդիր, որտեղ կարող եք խմբագրել օգտվողներին, նոր աղբյուրներին և բարձրախոսի ձայնին:
- Թոդոլիստ: Todo տարրերը կցուցադրվեն հայելու վրա
Mirror.html- ը այն էջն է, որը ցուցադրվում է Magic Mirror- ում: Ես օրինակ ավելացրի վերը նշված պատկերներում:
Խորհուրդ ենք տալիս:
Լողացող խելացի կախարդական հայելին հին նոութբուքից ՝ Alexa ձայնի ճանաչմամբ. 6 քայլ (նկարներով)
Floating Smart Magic Mirror from Old Laptop With Alexa Voice Recognition. Գրանցվեք իմ «Էլեկտրոնիկա մի խոսքով» դասընթացին այստեղ ՝ https://www.udemy.com/electronics-in-a-nutshell/?couponCode=TINKERSPARK Նաև իմ youtube ալիք այստեղ ՝ ավելի շատ նախագծերի և էլեկտրոնիկայի ձեռնարկների համար ՝ https://www.youtube.com/channel/UCelOO
Էլեկտրոնային փոստով, SMS- ով և Pushbullet ահազանգով տաքացվող նավթի բաքերի գալոններ. 9 քայլ (նկարներով)
Վերահսկեք ջեռուցման յուղի բաքերը էլեկտրոնային փոստով, SMS- ով և Pushbullet նախազգուշացմամբ. - Ես դա ուղարկել եմ 2 տարբեր նավթային ընկերությունների ՝ հետադարձ կապ/անվտանգության նկատառումներով, և ես դա վարել եմ հրշեջ ծառայության հրդեհային կանխարգելման գծով տեղակալ
ESP32 NTP ջերմաստիճանի զոնդի պատրաստման ջերմաչափ Steinhart-Hart ուղղիչ և ջերմաստիճանի ահազանգով. 7 քայլ (նկարներով)
ESP32 NTP ջերմաստիճանի զոնդի պատրաստման ջերմաչափ Steinhart-Hart ուղղման և ջերմաստիճանի տագնապի միջոցով. Դեռևս ճանապարհորդում եք «առաջիկա նախագիծ» ավարտելու համար, հրահանգելի է, որը ցույց է տալիս, թե ինչպես եմ ավելացնում NTP ջերմաստիճանի զոնդ, պիեզո բ
Երկիր և լուսին կախարդական հայելին. 4 քայլ
Երկրի և լուսնի կախարդական հայելի. Պլանշետի վրա տեղադրված կախարդական հայելային ժամացույց, որը ցույց է տալիս Լուսին / Երկիր և ներկայիս արտաքին պայմանները
Եկեք պատրաստենք կախարդական բյուրեղյա գնդակ կախարդական հմայքով: ~ Arduino ~: 9 քայլ
Եկեք պատրաստենք կախարդական բյուրեղյա գնդակ կախարդական կախարդանքներով: ~ Arduino ~. Սրա մեջ մենք պատրաստելու ենք կախարդական գնդակ, որն օգտագործում է շարժման տվիչ և RFID սկաներ ՝ ներսում լուսադիոդային լուսարձակների անիմացիաները վերահսկելու համար: