INHOUDSOPGAWE:

Slim parkeerterrein met Raspberry Pi: 5 stappe
Slim parkeerterrein met Raspberry Pi: 5 stappe

Video: Slim parkeerterrein met Raspberry Pi: 5 stappe

Video: Slim parkeerterrein met Raspberry Pi: 5 stappe
Video: Hoe installeer ik Home Assistant op een Raspberry PI 4 met SSD #16 2024, November
Anonim
Slim parkeerterrein met Raspberry Pi
Slim parkeerterrein met Raspberry Pi

In hierdie instruksies skep ons 'n volledig outomatiese parkeerstelsel wat gekoppel is aan 'n webkoppelvlak. U sal kan sien watter plek ingeneem word, besluit wie ingaan en wie uitgaan, en dit is toegerus met 'n outomatiese beligtingstelsel.

Voorrade

Hardeware

  • 2x ultrasoniese sensors
  • 1x servomotor
  • 4x wit LED's
  • 1x ligafhanklike weerstand
  • 1x 2*16 LCD -skerm

Rekenaar

  • 1x Framboos Pi 3 B+
  • 1x SD-kaart (8-16 GB is u keuse)
  • 1x Adafruit I2S 3W Klas D versterker -uitbraak - MAX98357A
  • 1x MCP3008
  • 1x Weerstand 2.2K Ohm
  • 9x Weerstands 1K Ohm

Verskeie

  • Springdrade
  • Broodbord
  • UTP-kabel
  • Adapter vir jou framboos pi
  • 'N vel multiplex (u kan die materiaal gebruik wat u wil vir die omhulsel)
  • 'N Gomgeweer

Sagteware

  • PuTTY
  • Sagteware om kode te wysig (u kan gebruik wat u wil, solank dit ondersteun: Python, HTML, CSS en java script
  • Win32 Disk Imager
  • Raspbian OS -beeld
  • VNC Viewer (opsioneel)

Stap 1: Stel RPI op

Voordat ons begin met die bedrading van die hardeware, skryf ons die

sagteware en die omhulsel maak, moet ons u PI opstel met die nodige sagteware wat u benodig om die projek te laat loop.

U benodig 'n beeld van Raspbian om u SD -kaart aan te sit en dit na die Win32 Disk Imager van die SD -kaart te skryf. U kan skakels na albei hieronder vind.

- Win32 Disk Imager:

- Raspbian -beeld:

Die installasie

  1. Maak Win32 Disk Imager oop

    1. Kies die prentjie wat u pas afgelaai het, met behulp van die vouer -ikoon
    2. Kies u SD -kaart via die aftreklys
    3. Klik op skryf
    4. As die proses voltooi is, sal u rekenaar u waarskynlik vra of u die SD -kaart wil formateer, doen dit nie

As u klaar is met hierdie stappe, moet u ekstra dinge doen, sodat u toegang tot die sagteware van u PI kan kry.

  1. Maak die SD -kaart oop in u verkenner
  2. Maak die lêer "cmdline.txt" oop
  3. U sien 'n lang reël teks aan die einde: ip = 169.254.10.1
  4. Stoor die lêer
  5. Skep 'n lêer met die naam ssh sonder uitbreiding (as u nie weet hoe u dit moet doen nie, klik net op 'n nuwe lêer, kies 'n nuwe tekslêer, verwyder die uitbreiding en noem dit ssh)
  6. Die laaste stap van hierdie deel is om die SD -kaart veilig uit te gooi en in die Raspberry PI te plaas

Koppel

As u klaar is met die vorige stappe, is dit tyd om vir die eerste keer aan te sluit op u pi. Eerstens moet u u UTP -kabel aansluit, die een kant op u rekenaar en die ander in u pi (dit is belangrik dat u die LAN -kabel aansluit voordat u dit aansluit).

  1. Installeer Putty:
  2. Sodra u dit geïnstalleer het, maak dit oop en voer 169.254.10.1 in die IP -blokkie in
  3. Kies SSH en vul poort 22 in
  4. Klik oop
  5. Vul die gebruikersnaam: pi en die wagwoord framboos in, dit is die standaard aanmelding op 'n splinternuwe beeld

Raspi-konfig

Voordat ons verder gaan, moet u 'n hele paar instellings in die raspi-config-menu verander:

sudo raspi-config

1. Aktiveer I2C en SPI onder opsies dit die interfaces kategorie

2. Kies u WIFI -manier via die lokaliseringskategorie

3. Stel die Desktop/CLI -instelling in die kategorie opstartopsies op Desktop Autologin.

4. Kies onder Gevorderde opsies A1 Brei lêersisteem uit (dit maak seker dat u die spasie van die hele SD -kaart gebruik

5. Gaan nou uit en sudo herlaai

Wifi

Nou is dit tyd om u wifi -verbinding natuurlik op te stel, u benodig die geloofsbriewe van u wifi.

Gaan eers na die wortelmodus deur hierdie opdrag uit te voer

Sudo -i

Nou het u die nodige regte om hierdie opdragte uit te voer:

Maak seker dat u SSID verander na u wifi -naam en WOORDWOORD vir u wifi -wagwoord

Wpa_passphrase “SSID” “PASSWORD” >> /etc/wpa_supplicant/wpa_supplicant.conf

Voer die WPA -kliënt in deur hierdie opdrag uit te voer:

wpa_cli

Kies die koppelvlak

Koppelvlak wlan0

Herlaai die konfig

Herkonfigureer

Ten slotte, kyk of dit gewerk het. U kan dit doen deur die volgende in te voer:

Ip a

Hier kan u kyk of u 'n ip onder WLAN0 -koppelvlakke het, indien nie sudo herlaai nie (misluk nooit (:).

As u nie gemaklik is om dit via die opdragreël te doen nie, kan u dit altyd doen via die GUI van Raspbian, wat 'n bietjie meer gebruikersvriendelik is.

  1. Installeer VNC-viewer hier:
  2. Klik op lêer, nuwe verbinding en voer die IP-adresbalk in: 169.254.10.1 en kies die naam wat u wil hê
  3. Vul die gebruikersnaam: pi en die wagwoord framboos in
  4. Klik op die wifi -ikoon en koppel so

Pakkette

Noudat ons aan die internet gekoppel is, kan ons die pakkette installeer wat ons nodig het om die hele kode uit te voer.

Eerstens moet ons die pakketlys na die nuutste een verfris deur die volgende te doen:

sudo apt -opdatering

sudo apt -opgradering

Apache webbediener

Ons benodig 'n webbediener om ons webtoepassing te bestuur. Ons kan dit bereik deur apache -webbediener te installeer deur hierdie opdrag uit te voer:

sudo apt installeer apach2 -y

Python pakkette

Om alles te laat werk, benodig ons 'n hele paar pakkies. Dit is diegene wat ons gaan benodig.

  • Fles
  • Fles-Kors
  • Kolf-uitbreiding
  • Fles-MySQL
  • Fles-SocketIO
  • Python-socketio

U kan dit installeer deur hierdie opdrag uit te voer:

pip installeer Flask Flask-Cors Flask-Extension Flask-MySQL Flask-SocketIO python-socketio

Stap 2: Databasis

Databasis
Databasis

MariaDB

Voer die volgende opdrag uit om MariaDB te installeer, dit is die databasisstelsel wat nodig is om al die data wat die sensors ingelees het, by te hou.

sudo apt installeer mariadb-bediener

Nou moet ons ons installasie beveilig

Mysql_secure_installation

Sodra u die opdrag uitgevoer het, sal dit ons 'n wortelwagwoord vra, maar ons het nog nie 'n wagwoord nie, druk net op enter.

Nou sal dit u vra of u een wil hê om veiligheidsredes, ons wil dit hê; druk op Y op u sleutelbord en kies watter wagwoord u wil hê.

Nou sal dit aanhou om u nog 'n paar vrae te vra, maar beantwoord Y almal

Goed, nou dat ons tot op hierdie punt gekom het, moet ons in die SQL -dop ingaan.

Om dit te kan doen, moet ons eers weer wortel word om ons die voorregte te gee om dit weer te doen:

sudo -i

Voer nou die mysql -dop in

mysql

Nou gaan ons 'n gebruiker skep wat die gewenste naam tussen die aanhalings voor die @ plaas en die wagwoord wat u wil identifiseer

Nou moet ons die toestemmingstabel spoel deur hierdie opdrag uit te voer:

FLUSH VOORREGTE;

Nadat u hierdie stappe voltooi het, kan u die db -skema op die foto hierbo herskep. Ek kan u ongelukkig nie 'n storting van die databasis gee nie, omdat ek sagtewarefoute ondervind.

Stap 3: Bedrading

Bedrading
Bedrading
Bedrading
Bedrading
Bedrading
Bedrading

Nou is dit tyd om die bedrading van die projek te doen. Om die proses 'n bietjie makliker te maak deur eers 'n skema te maak in 'n program met die naam fritzing. Fritzing maak dit makliker om u bedrading in die regte lewe te herskep, en u kry 'n duidelike beeld van wat u maak.

Stap 4: Behuising

Behuising
Behuising
Behuising
Behuising
Behuising
Behuising

Die eerste stap is om die hout in die vorms te sny soos in die tekening gesien word. Ek het dit gedoen met lasersny, maar 'n normale saag werk net so goed. Daarna sal u die hout swart wil verf om die asfaltkleur te kry. Sodra die verf droog is, kan u die wit strepe verf om die gevoel van die parkeerterrein te kry. Vir die heining spuit ek geverfde strooitjies om soos pale te lyk. Vir die omheining self het ek 'n paar goas aan die pale vasgemaak. Die versperring is gemaak van paer maché wat ek later gespuit het.

Stap 5: Kodering

Kodering
Kodering
Kodering
Kodering
Kodering
Kodering

Backend: Die backend van die projek is geskryf in Python en TSQL. Dit lees al die data van die sensors af en skryf dit weg na die databasis wat ons 'n bietjie vroeër geskep het. Dit bestuur ook 'n webbediener sodat ons ons voorkant daaraan kan koppel. Ek het die nodige kode vir die backend in Pycharm geskryf, maar u kan natuurlik net gebruik wat u wil.

U kan die kode vir die backend hier vind:

Frontend: Die frontend is in HTML, CSS en Javascript geskryf. Ek het 'n kombinasie van visuele studio -kode en phpstorm gebruik om die kode te skryf. Die kode skryf basies die hele webwerf en in die javascript -lêers kan u die kode vind wat nodig is om die data van die backend af te haal.

U kan die kode vir die frontend hier vind:

Aanbeveel: