Cuprins:
- Provizii
- Pasul 1: Configurați RPI
- Pasul 2: Baza de date
- Pasul 3: Cablare
- Pasul 4: Locuințe
- Pasul 5: Codificare
Video: Parcare inteligentă folosind Raspberry Pi: 5 pași
2024 Autor: John Day | [email protected]. Modificat ultima dată: 2024-01-30 11:43
În aceste instrucțiuni, vom crea un sistem de parcare complet automat conectat la o interfață web. Veți putea vedea ce loc este luat, puteți decide cine intră și cine iese și este echipat cu un sistem automat de iluminare.
Provizii
Hardware
- 2x senzori cu ultrasunete
- 1x servo motor
- 4x LED-uri albe
- 1x rezistență dependentă de lumină
- 1x afișaj LCD 2 * 16
Tehnica de calcul
- 1x Raspberry Pi 3 B +
- 1x card SD (8-16 GB alegerea este a ta)
- 1x Adafruit I2S 3W Clasa D Amplificator Breakout - MAX98357A
- 1x MCP3008
- 1x Rezistor 2.2K Ohm
- 9x Rezistoare 1K Ohm
Variat
- Sârme de jumper
- Pană de pâine
- Cablu UTP
- Adaptor pentru raspberry pi
- O foaie de multiplex (puteți utiliza orice tip de material doriți pentru carcasă)
- Un pistol de lipit
Software
- MASTIC
- Software pentru editarea codului (puteți utiliza orice doriți atâta timp cât acesta acceptă: Python, HTML, CSS și script Java
- Win32 Disk Imager
- Imagine Raspbian OS
- VNC Viewer (opțional)
Pasul 1: Configurați RPI
Înainte de a începe să conectăm hardware-ul, scriem fișierul
software și faceți carcasa, va trebui să vă configurăm PI-ul cu software-ul necesar de care veți avea nevoie pentru ca proiectul să ruleze.
Veți avea nevoie de o imagine cu Raspbian pentru a vă pune pe cardul SD și pentru ao scrie pe cardul SD Win32 Disk Imager. Mai jos puteți găsi linkuri către ambele.
- Win32 Disk Imager:
- Imagine Raspbian:
Instalatia
-
Deschideți Win32 Disk Imager
- Selectați imaginea pe care tocmai ați descărcat-o prin pictograma dosar
- Selectați cardul SD prin meniul derulant
- Faceți clic pe scrie
- Când procesul este terminat, computerul dvs. probabil vă va întreba dacă doriți să formatați cardul SD, nu faceți acest lucru
Când ați terminat cu acești pași, va trebui să faceți câteva lucruri suplimentare, astfel încât să puteți accesa software-ul PI-ului dvs.
- Deschideți cardul SD în explorator
- Deschideți fișierul „cmdline.txt”
- Veți vedea o linie lungă de text la finalul adăugării: ip = 169.254.10.1
- Salvați fișierul
- Creați un fișier numit ssh fără extensie (dacă nu știți cum să faceți acest lucru, faceți clic pe fișier nou, selectați fișier text nou ștergeți extensia și denumiți-l ssh)
- Ultimul pas al acestei părți este să scoateți în siguranță cardul SD și să îl introduceți în Raspberry PI
Conectarea
Când ați terminat pașii anteriori, este timpul să vă conectați la pi pentru prima dată. Mai întâi va trebui să conectați cablul UTP, un capăt în computer și celălalt în pi (este important să conectați cablul LAN înainte de al conecta).
- Instalați Putty:
- După ce l-ați instalat, deschideți-l și introduceți 169.254.10.1 în caseta IP
- Selectați SSH și completați portul 22
- Faceți clic pe Deschidere
- Completați numele de utilizator: pi și parola zmeură aceasta este autentificarea standard pe o imagine nouă
Raspi-config
Înainte de a trece mai departe, va trebui să modificați câteva setări din meniul raspi-config, deschideți-l folosind:
sudo raspi-config
1. Activați I2C și SPI în opțiunile din categoria interfețe
2. Alegeți-vă coutry-ul WIFI prin categoria de localizare
3. Setați setarea Desktop / CLI din categoria de opțiuni de încărcare la Desktop Autologin.
4. Sub Opțiuni avansate, alegeți A1 Expand Filesystem (acest lucru vă asigură că utilizați spațiul întregului card SD)
5. Acum ieșiți și reporniți sudo
Wifi
Acum este timpul să vă configurați conexiunea wifi, bineînțeles, veți avea nevoie de acreditările pentru wifi.
Mai întâi treceți în modul root executând această comandă
Sudo -i
Acum aveți drepturile necesare pentru a rula aceste comenzi:
Asigurați-vă că schimbați SSID la numele dvs. wifi și PAROLĂ la parola wifi
Wpa_passphrase „SSID” „PASSWORD” >> /etc/wpa_supplicant/wpa_supplicant.conf
Introduceți clientul WPA executând această comandă:
wpa_cli
Selectați interfața
Interfață wlan0
Reîncărcați config
Reconfigurați
Nu în ultimul rând, verificați dacă a funcționat. Puteți face acest lucru introducând:
Ip a
Aici puteți verifica dacă aveți un IP sub interfețe WLAN0 dacă nu sudo reboot (nu eșuează niciodată (:).
Dacă nu vă simțiți confortabil să faceți acest lucru prin intermediul liniei de comandă, îl puteți face întotdeauna prin GUI-ul Raspbian, care este puțin mai ușor de utilizat.
- Instalați VNC-viewer aici:
- Faceți clic pe fișier, conexiune nouă și introduceți în bara de adrese IP: 169.254.10.1 și alegeți orice nume doriți
- Completați numele de utilizator: pi și parola zmeură
- Faceți clic pe pictograma wifi și conectați-vă în acest fel
Pachete
Acum, când suntem conectați la internet, putem instala pachetele de care avem nevoie pentru a rula tot codul.
Mai întâi va trebui să reîmprospătăm lista de pachete la cea mai recentă rulând:
actualizare sudo apt
sudo apt upgrade
Apache Webserver
Vom avea nevoie de un server web pentru a rula aplicația noastră web. Putem realiza acest lucru instalând serverul web apache executând această comandă:
sudo apt instalează apach2 -y
Pachete Python
Pentru ca totul să funcționeze, vom avea nevoie de câteva pachete. Acestea sunt cele de care vom avea nevoie.
- Balon
- Flask-Cors
- Flask-Extension
- Flask-MySQL
- Flask-SocketIO
- Python-socketio
Le puteți instala executând această comandă:
pip instala Flask Flask-Cors Flask-Extension Flask-MySQL Flask-SocketIO python-socketio
Pasul 2: Baza de date
MariaDB
Rulați următoarea comandă pentru a instala MariaDB acesta este sistemul de baze de date necesar pentru a urmări toate datele citite de senzori.
sudo apt instalați mariadb-server
Acum va trebui să ne asigurăm instalarea
Mysql_secure_installation
Odată ce ați executat comanda, ne va cere o parolă root, nu o avem încă, așa că trebuie doar să apăsați Enter.
Acum vă va întreba dacă doriți una din motive de securitate, dorim una, așa că apăsați Y pe tastatură și alegeți parola dorită.
Acum va continua să vă mai pună câteva întrebări, răspundeți la Y la toate
Bine acum, când am ajuns la acest punct, trebuie să intrăm în shell-ul SQL.
Pentru a face acest lucru, trebuie mai întâi să devenim din nou root pentru a ne acorda privilegiile de a face acest lucru, introducând din nou această comandă:
sudo -i
Acum introduceți shell-ul mysql
mysql
Acum vom crea un utilizator care pune numele dorit între ghilimele înainte de @ și parola pe care doriți să o identificați după
Acum trebuie să curățăm tabelul de permisiuni executând această comandă:
PRIVILEGII DE FLUSH;
După ce ați parcurs acești pași, puteți recrea schema db din imaginea de mai sus. Din nefericire, nu vă pot oferi o parte din baza de date, deoarece mă confrunt cu unele erori de software.
Pasul 3: Cablare
Acum este timpul să faceți cablajul proiectului. Pentru a face procesul mai ușor făcând mai întâi o schemă într-un program numit fritzing. Fritzing îl face să fie mai ușor să vă recreați cablajul în viața reală și să obțineți o imagine clară a ceea ce faceți.
Pasul 4: Locuințe
Primul pas este tăierea lemnului în forme așa cum se vede în desen. Am făcut-o prin tăiere cu laser, dar un ferăstrău normal va funcționa la fel de bine. După aceea, veți dori să vopsiți lemnul în negru pentru a obține culoarea asfaltului. Odată ce vopseaua este uscată, puteți vopsi dungile albe pentru a vă simți parcarea. Pentru gard am pulverizat paie vopsite ca să arate ca niște stâlpi. Pentru împrejmuirea în sine am atașat niște goas la poli. Bariera este realizată din paer maché pe care l-am vopsit cu spray mai târziu.
Pasul 5: Codificare
Backend: Backend-ul proiectului este scris în Python și TSQL. Citește toate datele senzorilor și le scrie în baza de date pe care am creat-o puțin mai devreme. De asemenea, rulează un server web, astfel încât să ne putem conecta frontendul la acesta. Am scris codul necesar pentru backend în pycharm, dar, desigur, puteți folosi orice doriți.
Puteți găsi codul pentru backend aici:
Frontend: Frontend-ul este scris în HTML, CSS și Javascript. Am folosit o combinație de cod de studio vizual și phpstorm pentru a scrie codul. Codul scrie practic întregul site web și în fișierele javascript puteți găsi codul necesar pentru a obține datele din backend.
Puteți găsi codul pentru frontend aici:
Recomandat:
Sistem de parcare inteligentă bazat pe IoT utilizând NodeMCU ESP8266: 5 pași
Sistem inteligent de parcare bazat pe IoT folosind NodeMCU ESP8266: În prezent, găsirea parcării în zonele aglomerate este foarte grea și nu există un sistem care să obțină detaliile disponibilității parcării online. Imaginați-vă dacă puteți obține informații despre disponibilitatea sloturilor de parcare pe telefonul dvs. și nu aveți roaming în jurul valorii de a verifica t
Parcare inteligentă bazată pe IOT: 7 pași
Parcare inteligentă bazată pe IOT: de Tanmay Pathak și Utkarsh Mishra. Students @ International Institute of Information Technology, Hyderabad (IIITH) REZUMAT Am implementat cu succes un sistem de parcare inteligentă bazat pe IOT. Cu ajutorul nodurilor individuale (senzori de proximitate) în orice moment
Parcare paralelă autonomă Fabricarea mașinii folosind Arduino: 10 pași (cu imagini)
Autovehiculele cu parcare paralelă autonomă folosind Arduino: În parcarea autonomă, trebuie să creăm algoritmi și senzori de poziție conform anumitor ipoteze. Ipotezele noastre vor fi după cum urmează în acest proiect. În scenariu, partea stângă a drumului va consta din ziduri și zone de parc. Ca tine
Grădinărire inteligentă bazată pe IoT și agricultură inteligentă folosind ESP32: 7 pași
Grădinărire inteligentă bazată pe IoT și agricultură inteligentă Utilizarea ESP32: Lumea se schimbă odată cu trecerea agriculturii. În prezent, oamenii integrează electronica în toate domeniile, iar agricultura nu face excepție. Această fuziune a produselor electronice în agricultură ajută fermierii și oamenii care gestionează grădinile
Parcare inteligentă Arduino: 4 pași
Parcare inteligentă Arduino: Bill Blankenship, Willam Bailey, Hannah Hargrove Cu ajutorul unei plăci Arduino, grupul nostru a reușit să creeze un sistem care să permită senzorilor de lumină să detecteze când o mașină ocupă un spațiu sau dacă spațiul este liber. După șaizeci și opt de rânduri, noi