Բովանդակություն:

SmartHome ազնվամորի Pi- ով `5 քայլ
SmartHome ազնվամորի Pi- ով `5 քայլ

Video: SmartHome ազնվամորի Pi- ով `5 քայլ

Video: SmartHome ազնվամորի Pi- ով `5 քայլ
Video: Smart home device controlled by using Raspberry pi. | IoT | Smart Homes | Raspberry Pi 2024, Նոյեմբեր
Anonim
SmartHome ազնվամորի պիով
SmartHome ազնվամորի պիով

Այս նախագծի համար ես պատրաստել եմ SmartHome, որը կարող է կառավարվել վեբ կայքի և բջջայինի միջոցով: Դրա համար ես օգտագործում եմ Raspberry PI- ն որպես տվյալների բազա և վեբ սերվեր:

Պարագաներ

Եթե ցանկանում եք սկսել դա, ձեզ հարկավոր են մի քանի բան.

  • 5 սպիտակ լուսամփոփ (5 մմ)
  • 1 մեկ մետաղալար ջերմաստիճանի տվիչ
  • 1 LDR (լույսից կախված դիմադրություն)
  • 2 servo շարժիչ
  • 1 microSD (Raspberry Pi- ի համար)
  • 1 Գրատախտակի սնուցում
  • 1 Raspberry Pi 3 մոդել B+
  • 3 Փրփուր թիթեղներ
  • 1 քայլ շարժիչ (5 Վ)
  • 1 RFID-RC522 ընթերցող
  • 8 դիմադրություն (220 Օմ)
  • 1 դիմադրություն (10K Օմ)
  • 2 տախտակ
  • 2 տուփ jumperwires
  • 1 16x2 LCD էկրան
  • 1 PCF8574AN
  • 4 փոքր պատուհան (3D տպագիր)
  • 1 դուռ (3D տպագիր)
  • 2 մեծ պատուհան (3D տպագիր)
  • 1 ավտոտնակի դուռ (3D տպագրությամբ)

Եթե այս ամենը ձեզ անհրաժեշտ է գնելու համար, առավելագույն արժեքը կկազմի մոտ 150 եվրո

Քայլ 1: Լարերի տեղադրում

Հաղորդալարեր
Հաղորդալարեր
Հաղորդալարեր
Հաղորդալարեր
Հաղորդալարեր
Հաղորդալարեր

Սկսելու ամենահեշտ ձևը էլեկտրագծերն են, որպեսզի դուք արդեն ունենաք հիմնականը, այս մեթոդով կարող եք հեշտությամբ ստուգել ՝ արդյոք ամեն ինչ աշխատում է, երբ գրում եք ծածկագիրը:

Այս կերպ Դուք կարող եք տեսնել, արդյոք Raspberry Pi- ի վրա ունեք բավականաչափ կապում ամեն ինչ միացնելու համար: Այս դեպքում ես օգտագործեցի PCF8574AN- ը `LCD- ն ավելի քիչ GPIO կապումներով վերահսկելու համար:

Սխեման նկարելու համար ես օգտագործեցի Ֆրիտզինգը: Դա հարմար ծրագիր է, որտեղ դուք կարող եք դիտել ձեր մալուխները լավ կազմակերպված կերպով:

Ինչպես տեսնում եք երկրորդ լուսանկարում կան շատ մալուխներ, այնպես որ դուք դեռ պետք է կազմակերպված աշխատեք:

Քայլ 2: Բնակարանային ապահովում

Բնակարանաշինություն
Բնակարանաշինություն
Բնակարանաշինություն
Բնակարանաշինություն
Բնակարանաշինություն
Բնակարանաշինություն
Բնակարանաշինություն
Բնակարանաշինություն

Բնակարանի համար ես որպես պատ եմ օգտագործել փրփուրի տախտակներ: Ես դանակով կտրեցի տախտակները ցանկալի ձևերով: Պատուհանները, դռները և ավտոտնակի դուռը տպված են 3D տպագրությամբ: Իհարկե, ես նախապես նկարեցի տունը, որպեսզի իմանայի, թե ինչ չափսեր պետք է օգտագործեմ:

Ես SketchUp- ով տունը նկարելու համար օգտագործեցի սոսինձ ատրճանակ ՝ պատերը ուղիղ պահելու և դրանք միասին պահելու համար: Եթե լուսանկարներում տեսնում եք, պատուհանը և ավտոտնակի դուռը ամրացված են սոսինձով, որպեսզի այն բավական ամուր լինի: 3 -րդ լուսանկարում արկղ է, որը ես տեղափոխում էի, որպեսզի ամեն ինչ անձեռնմխելի մնա

Քայլ 3: Տվյալների բազա

Տվյալների շտեմարան
Տվյալների շտեմարան

Առաջին հերթին, դուք պետք է նախագծեք տվյալների բազան ՝ օգտագործելով Mysql Workbench: Եթե դա հաջողվի, դուք պետք է տեղադրեք Mysql տվյալների բազան Raspberry Pi- ի վրա:

Ձեր առաջին քայլը ստուգելն է ՝ արդյո՞ք ձեր Pi- ն արդիականացված է: Դուք կարող եք օգտագործել հետևյալ հրամանը.

sudo apt-get թարմացում

եւ

sudo apt-get բարելավում

Այժմ կարող եք տեղադրել Mysql սերվերը.

sudo apt-get տեղադրել mysql-server

Եթե Mysql սերվերը տեղադրված է, տեղադրեք Mysql հաճախորդը

sudo apt-get տեղադրել mysql-client

Եթե այժմ նայեք sql սերվերին հրամանով.

sudo mysql

Այժմ կարող եք ներմուծել ձեր տվյալների բազայի կոդը ՝ բացելով.mwb ֆայլը sql workbench և առաջ ինժեներով: Դուք պատճենեք ծածկագիրը և տեղադրեք այն mysql- ում Ազնվամորիից: Տվյալների բազան կազմված է:

Որպեսզի օգտվողը ստանա բոլոր թույլտվությունները, պարզապես աղյուսակում ավելացրեք ձեր օգտվողի անունը

smarthome- ում տրամադրել բոլոր արտոնությունները:

իհարկե, հիմա պետք է թարմացնես սեղանը

FLԱՌԱՅԻՆ ԱՌԱIՆՈԹՅՈՆՆԵՐ;

Սա ստուգելու համար կարող եք պարզապես փորձել.

օգտագործել smarthome;

ընտրել * historiek- ից;

Օգտվողների աղյուսակում օգտվողների անունները համընկնում են իրենց կրծքանշանի հետ, այստեղ կարող եք ավելացնել նոր օգտվողներ: Սարքերի աղյուսակում կարող եք գտնել բոլոր ակտիվ սենսորներն իրենց id- ով: Historiek աղյուսակը ցույց է տալիս այն ամենը, ինչ տեղի է ունենում, ինչպես ջերմաստիճանի տվիչը, նշանը ավտոտնակի դռան կարգավիճակով և այլն:

Քայլ 4: Կարգավորում

Raspberry Pi- ի վրա պատկերը տեղադրելու համար կարող եք օգտագործել Putty, սա անվճար ծրագիր է: Հիմնական պատկերի ֆայլը կարող եք գտնել այստեղ ՝

Ինտերֆեյսեր

Իհարկե, դուք պետք է միացնեք Pi- ի որոշ ինտերֆեյսեր: Նախ գնացեք կազմաձևման էջ:

sudo raspi-config

Այժմ կարող եք գնալ 1-Wire և Spi կատեգորիաներին և երկուսն էլ միացնել դրանք: Սրանք ձեզ հարկավոր կլինեն ջերմաստիճանի տվիչի համար:

Wifi

Հետևեք հաջորդ քայլերին ՝ Pi- ով WiFi ստանալու համար:

Նախ մուտք գործեք որպես արմատ

sudo-i

Այնուհետև լրացրեք ձեր wifi ցանցի անունն ու գաղտնաբառը

wpa_passphrase = "wifiname" "password" >> /etc/wpa_supplicant/wpa_supplicant.conf

Այնուհետեւ մուտքագրեք WPA հաճախորդը

wpa_cli

ընտրեք ինտերֆեյսը

ինտերֆեյս wlan0

Այժմ վերաբեռնեք կազմաձևը

վերակազմավորել

Եվ հիմա կարող եք ստուգել, արդյոք միացված եք

ip a

Փաթեթներ

Առաջին բանը, որ պետք է անել, վերջին տարբերակների թարմացումն է

sudo apt թարմացում

Python- ի համար մենք տեղադրում և համոզվում ենք, որ Pi- ն ընտրում է ճիշտ տարբերակը

Update-alternatives-Տեղադրեք/usr/bin/python python /usr/bin/python2.7 1 թարմացում-այլընտրանքներ-տեղադրեք/usr/bin/python python/usr/bin/python3 2

Որպեսզի վեբ սերվերը գործարկի կայքը, մենք պետք է տեղադրենք Apache2

sudo apt տեղադրել apache2 -y

Պիթոնի որոշ փաթեթներ նույնպես պետք է տեղադրվեն

  • Շիշ
  • Flask-Cors
  • Flask-MySQL
  • Flask-SocketIO
  • PyMySQL
  • Python-socketIO
  • խնդրանքները
  • պղպեղ
  • gpio
  • Գևենտ
  • Gevent-websocket

եթե չգտնված փաթեթի հետ խնդիրներ կան, պարզապես աջ սեղմեք դրա վրա և թողեք, որ այն տեղադրվի:

Քայլ 5: Կոդ

Կոդ
Կոդ
Կոդ
Կոդ

հետնապահ

Հետևի համար մենք գրում ենք կոդը python- ում և մուտքագրում ենք pycharm: Հետևի ուղիները հնարավոր է ստուգել փոստատարի միջոցով: Այս հավելվածի միջոցով կարող եք օգտագործել POST և GET մեթոդները: Հետևի մասում ես օգտագործեցի բազմաթել, այնպես որ ամեն ինչ աշխատում է հետին պլանում և կարող է աշխատել միասին: Raspberry Pi- ի վրա պատկերը տեղադրելու համար կարող եք օգտագործել Putty, սա անվճար ծրագիր է:

դիմային մաս

Առջևում կան մի քանի կոճակներ, որոնք կարող են լույսերը միացնել, բացում ավտոտնակի նավահանգիստը և դուռը: Օգտագործելով javascript և CSS կոճակների ոճը փոխվում է, երբ դրանք ակտիվ են: Կա նաև կենդանի ջերմաստիճան և անցյալ ջերմաստիճանների գծապատկեր: Օգտվողի էջում կարող եք տեսնել տարբեր օգտվողների, կարող եք նաև օգտվող ավելացնել տվյալների բազայում և կա օգտվողի պատմություն, որտեղ կարող եք տեսնել, թե ով է վերջին անգամ բացել կամ փակել ավտոտնակի դուռը:

Դուք կարող եք գտնել frontend- ի և backend- ի ծածկագիրը այստեղ

github.com/NMCT-S2-Project-1/nmct-s2-proje…

Խորհուրդ ենք տալիս: