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

Խելացի ավտոկայանատեղի, օգտագործելով Raspberry Pi: 5 քայլ
Խելացի ավտոկայանատեղի, օգտագործելով Raspberry Pi: 5 քայլ

Video: Խելացի ավտոկայանատեղի, օգտագործելով Raspberry Pi: 5 քայլ

Video: Խելացի ավտոկայանատեղի, օգտագործելով Raspberry Pi: 5 քայլ
Video: Smart Parking / Խելացի ավտոկայանատեղի 2024, Նոյեմբեր
Anonim
Խելացի կայանատեղի ՝ օգտագործելով Raspberry Pi
Խելացի կայանատեղի ՝ օգտագործելով Raspberry Pi

Այս հրահանգներում մենք ստեղծելու ենք վեբ ինտերֆեյսի հետ կապված միանգամայն ավտոմատ կայանման համակարգ: Դուք կկարողանաք տեսնել, թե ինչ վայր է վերցված, որոշել, թե ով է մտնում և ով է դուրս գալիս, և այն հագեցած է լուսավորման ավտոմատ համակարգով:

Պարագաներ

Սարքավորումներ

  • 2 անգամ ուլտրաձայնային տվիչներ
  • 1x servo շարժիչ
  • 4x սպիտակ LED
  • 1x Լույսի կախված դիմադրություն
  • 1x 2*16 LCD էկրան

Հաշվողականություն

  • 1x Ազնվամորի Pi 3 B+
  • 1x SD քարտ (8-16 ԳԲ ընտրությունը ձերն է)
  • 1x Adafruit I2S 3W դասի ուժեղացուցիչ Breakout - MAX98357A
  • 1x MCP3008
  • 1x դիմադրություն 2.2K Օմ
  • 9x դիմադրողներ 1K Օմ

Բազմազան

  • Jumper լարերը
  • Breadboard
  • UTP- մալուխ
  • Ադապտեր ձեր ազնվամորի pi- ի համար
  • Մուլտիպլեքսի թերթ (պատյանների համար կարող եք օգտագործել ցանկացած տեսակի նյութ)
  • Սոսինձ ատրճանակ

Ծրագրային ապահովում

  • PuTTY
  • Կոդ խմբագրելու ծրագրակազմ (կարող եք օգտագործել այն, ինչ ցանկանում եք, քանի դեռ այն ապահովում է ՝ Python, HTML, CSS և java script
  • Win32 Disk Imager
  • Raspbian OS- ի պատկերը
  • VNC Viewer (ըստ ցանկության)

Քայլ 1: Կարգավորեք RPI- ն

Նախքան սարքի էլեկտրամոնտաժման աշխատանքները սկսելը, գրելը

ծրագրային ապահովում և պատյան պատրաստելու համար մեզ անհրաժեշտ կլինի ձեր PI- ն ստեղծել անհրաժեշտ ծրագրակազմով, որն անհրաժեշտ կլինի նախագիծը գործարկելու համար:

Ձեզ անհրաժեշտ կլինի Raspbian- ի պատկերը `ձեր SD քարտը տեղադրելու և այն Win32 Disk Imager- ի SD քարտին գրելու համար: Ստորև կարող եք գտնել երկուսի հղումները:

- Win32 Disk Imager:

- Raspbian պատկեր ՝

Տեղադրումը

  1. Բացեք Win32 Disk Imager- ը

    1. Ընտրեք այն պատկերը, որը դուք պարզապես ներբեռնել եք թղթապանակի պատկերակի միջոցով
    2. Ընտրեք ձեր SD քարտը բացվող միջոցով
    3. Կտտացրեք գրել
    4. Գործընթացն ավարտվելուց հետո ձեր համակարգիչը, հավանաբար, ձեզ կհարցնի ՝ արդյոք ցանկանում եք ձևաչափել SD քարտը, մի արեք դա

Այս քայլերն ավարտելուց հետո ձեզ հարկավոր կլինի լրացուցիչ աշխատանք կատարել, որպեսզի կարողանաք մուտք գործել ձեր PI ծրագրակազմ:

  1. Բացեք SD քարտը ձեր Explorer- ում
  2. Բացեք «cmdline.txt» ֆայլը
  3. Վերջում կտեսնեք տեքստի երկար տող ՝ ավելացնելով ՝ ip = 169.254.10.1
  4. Պահպանել ֆայլը
  5. Ստեղծեք ssh անունով ֆայլ ՝ առանց ընդլայնման (եթե չգիտեք, թե ինչպես դա անել, պարզապես կտտացրեք նոր ֆայլին, ընտրեք նոր տեքստային ֆայլ ջնջեք ընդլայնումը և անվանեք այն ssh)
  6. Այս մասի վերջին քայլը SD քարտի անվտանգ դուրսբերումն է և այն Raspberry PI- ի մեջ դնելը

Միացում

Երբ ավարտեք նախորդ քայլերը, ժամանակն է առաջին անգամ միանալ ձեր pi- ին: Նախ պետք է միացնել ձեր UTP մալուխը, մի ծայրը ձեր համակարգչում, մյուսը ՝ ձեր pi- ում (կարևոր է միացնել LAN մալուխը նախքան այն միացնելը):

  1. Տեղադրեք tyեփամածիկ ՝
  2. Տեղադրելուց հետո բացեք այն և մուտքագրեք 169.254.10.1 IP դաշտում
  3. Ընտրեք SSH և լրացրեք 22 պորտը
  4. Սեղմեք բաց
  5. Լրացրեք օգտվողի անունը ՝ pi և գաղտնաբառը ազնվամորի, սա բոլորովին նոր պատկերի ստանդարտ մուտքն է

Raspi-config

Նախքան առաջ շարժվելը, դուք պետք է փոխեք բավականին շատ պարամետրեր raspi-config ընտրացանկում ՝ բացելով այն ՝ օգտագործելով.

sudo raspi-config

1. Միացրեք I2C և SPI ընտրանքների ներքո `ինտերֆեյսերի կատեգորիա

2. Ընտրեք ձեր WIFI ոճը տեղայնացման կատեգորիայի միջոցով

3. Բեռնման ընտրանքների կատեգորիայի Desktop/CLI կարգավորումը սահմանեք Desktop Autologin:

4. Ընդլայնված ընտրանքների ներքո ընտրեք A1 Expand Filesystem (սա համոզված է, որ դուք օգտագործում եք ամբողջ SD քարտի տարածքը

5. Այժմ դուրս եկեք և sudo վերագործարկեք

Wifi

Այժմ ժամանակն է կարգավորել ձեր wifi կապը, իհարկե, ձեզ անհրաժեշտ կլինեն ձեր wi -fi հավատարմագրերը:

Սկզբում անցեք արմատային ռեժիմ ՝ գործարկելով այս հրամանը

Սուդո -ի

Այժմ դուք ունեք այս հրամանները գործարկելու համար անհրաժեշտ իրավունքները.

Համոզվեք, որ SSID- ը փոխեք ձեր wifi անվան և PASSWORD- ի ձեր wifi գաղտնաբառի վրա

Wpa_passphrase «SSID» «PASSWORD» >> /etc/wpa_supplicant/wpa_supplicant.conf

Մուտքագրեք WPA հաճախորդը ՝ գործարկելով այս հրամանը.

wpa_cli

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

Ինտերֆեյս wlan0

Վերաբեռնեք կազմաձևը

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

Վերջին, բայց ոչ պակաս կարևոր, արդյոք այն աշխատել է: Դուք կարող եք դա անել ՝ մուտքագրելով.

Ip ա

Այստեղ կարող եք ստուգել, արդյոք WLAN0 միջերեսների տակ ունեք ip, եթե ոչ sudo reboot (երբեք չի ձախողվում (:):

Եթե ձեզ հարմար չէ դա անել հրամանի տողի միջոցով, միշտ կարող եք դա անել Raspbian- ի GUI- ի միջոցով, որը մի փոքր ավելի բարեկամական է:

  1. Տեղադրեք VNC-viewer այստեղ ՝
  2. Կտտացրեք ֆայլը, նոր կապ և մուտքագրեք IP հասցեի բարում ՝ 169.254.10.1 և ընտրեք ինչ անուն եք ցանկանում
  3. Լրացրեք օգտվողի անունը ՝ pi և գաղտնաբառը ազնվամորի
  4. Կտտացրեք wifi պատկերակին և միացեք այդ կերպ

Փաթեթներ

Այժմ, երբ մենք միացած ենք ինտերնետին, կարող ենք տեղադրել այն փաթեթները, որոնք մեզ անհրաժեշտ են ամբողջ ծածկագիրը գործարկելու համար:

Սկզբից մենք պետք է փաթեթների ցանկը թարմացնենք ամենավերջինին ՝ գործարկելով.

sudo apt թարմացում

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

Apache վեբ սերվեր

Մեզ վեբ սերվեր է անհրաժեշտ `մեր վեբ ծրագիրը գործարկելու համար: Մենք կարող ենք դրան հասնել ՝ տեղադրելով apache վեբ սերվեր ՝ գործարկելով այս հրամանը.

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

Python փաթեթներ

Ամեն ինչ աշխատեցնելու համար մեզ կպահանջվեն բավականին շատ փաթեթներ: Սրանք են, որ մեզ պետք կգան:

  • Շիշ
  • Flask-Cors
  • Flask-Extension
  • Flask-MySQL
  • Flask-SocketIO
  • Python-socketio

Դուք կարող եք տեղադրել դրանք ՝ գործարկելով այս հրամանը.

pip տեղադրել Flask Flask-Cors Flask-Extension Flask-MySQL Flask-SocketIO python-socketio

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

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

ՄարիաԴԲ

Գործարկեք հետևյալ հրամանը ՝ MariaDB- ն տեղադրելու համար, սա տվյալների բազայի համակարգ է, որն անհրաժեշտ է սենսորների ընթերցած բոլոր տվյալները հետևելու համար:

sudo apt տեղադրել mariadb-server

Այժմ մենք պետք է ապահովենք մեր տեղադրումը

Mysql_secure_installation

Երբ գործարկեք հրամանը, այն մեզանից կպահանջի արմատային գաղտնաբառ, որը մենք դեռ չունենք, այնպես որ պարզապես սեղմեք enter:

Այժմ այն ձեզ կխնդրի, եթե ցանկանում եք մեկը անվտանգության նկատառումներից ելնելով, մենք ուզում ենք մեկը, այնպես որ ձեր ստեղնաշարի վրա սեղմեք Y և ընտրեք ձեր ուզած գաղտնաբառը:

Այժմ այն կշարունակի ձեզ տալ ևս մի քանի հարց, պարզապես պատասխանեք Y- ին բոլորին

Լավ, հիմա, երբ մենք հասանք այս կետին, մենք պետք է մտնենք SQL պատյան:

Դա անելու համար մենք նախ պետք է նորից արմատավորվենք, որպեսզի մեզ դա արտոնություններ տանք ՝ կրկին մուտքագրելով այս հրամանը.

sudo -i

Այժմ մուտքագրեք mysql վահանակը

mysql

Այժմ մենք պատրաստվում ենք ստեղծել օգտվող, որը ցանկանում եք տեղադրել @- ի մեջբերումների և ձեր կողմից նույնականացված գաղտնաբառի միջև

Այժմ մենք պետք է ողողենք թույլտվությունների աղյուսակը ՝ գործարկելով այս հրամանը.

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

Այս քայլերն ավարտելուց հետո կարող եք վերստեղծել db սխեման վերևի նկարից: Fortավոք, ես չեմ կարող ձեզ տվյալների բազայի աղբանոց տալ, քանի որ ծրագրային որոշ սխալներ եմ ունենում:

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

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

Այժմ ժամանակն է անել նախագծի էլեկտրագծերը: Գործընթացը մի փոքր ավելի դյուրին դարձնելու համար `նախ սխեմա կազմելով fritzing անունով ծրագրում: Fritzing- ն ավելի հեշտ է դարձնում ձեր էլեկտրագծերի ստեղծումը իրական կյանքում, և դուք ստանում եք հստակ պատկերացում այն մասին, թե ինչ եք պատրաստում:

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

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

Առաջին քայլը փայտը կտրելն է այն ձևերով, ինչպես երևում է նկարում: Ես դա արեցի լազերային կտրման միջոցով, բայց սովորական սղոցը նույնքան լավ կաշխատի: Դրանից հետո դուք կցանկանաք փայտը սև ներկել `ասֆալտի գույն ստանալու համար: Երբ ներկը չորանում է, կարող եք ներկել սպիտակ շերտերը `այդ կայանատեղիի զգացում ստանալու համար: Theանկապատի համար ես ներկված ծղոտներ եմ ցողում `ձողերի տեսք ունենալու համար: Սուսերամարտի համար ես որոշ սվիններ կցեցի ձողերին: Պատնեշը պատրաստված է պաեր մաչեից, որը ես ավելի ուշ ներկեցի սանրվածքով:

Քայլ 5: Կոդավորում

Կոդավորում
Կոդավորում
Կոդավորում
Կոդավորում
Կոդավորում
Կոդավորում

Acրագրի հետևի մասը գրված է Python և TSQL լեզուներով: Այն կարդում է տվիչների բոլոր տվյալները և գրում դրանք այն տվյալների բազայում, որը մենք ստեղծել էինք մի փոքր ավելի վաղ: Այն նաև գործարկում է վեբ սերվեր, որպեսզի մենք կարողանանք մեր առջևը միացնել դրան: Ես գրեցի pycharm- ի հետևի համար անհրաժեշտ ծածկագիրը, բայց, իհարկե, կարող եք պարզապես օգտագործել այն, ինչ ցանկանում եք:

Հետևի ծածկագիրը կարող եք գտնել այստեղ ՝

Ֆրոնտենդ. Ֆրոնտենդը գրված է HTML, CSS և Javascript- ով: Կոդ գրելու համար ես օգտագործեցի տեսողական ստուդիայի կոդի և phpstorm- ի համադրություն: Կոդը հիմնականում գրում է ամբողջ վեբ կայքը և javascript ֆայլերում կարող եք գտնել ծածկագիրը անհրաժեշտ տվյալներ ստանալու համար:

Ֆրոնտենդի կոդը կարող եք գտնել այստեղ ՝

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