Obsah:

Inteligentné parkovisko s Raspberry Pi: 5 krokov
Inteligentné parkovisko s Raspberry Pi: 5 krokov

Video: Inteligentné parkovisko s Raspberry Pi: 5 krokov

Video: Inteligentné parkovisko s Raspberry Pi: 5 krokov
Video: Замена отопления в новостройке. Подключение. Опрессовка. #17 2024, November
Anonim
Inteligentné parkovisko využívajúce Raspberry Pi
Inteligentné parkovisko využívajúce Raspberry Pi

V tomto návode vytvoríme plne automatický parkovací systém prepojený s webovým rozhraním. Budete môcť vidieť, aké miesto je obsadené, rozhodnúť sa, kto príde a kto vyjde, a je vybavené systémom automatického osvetlenia.

Zásoby

Hardvér

  • 2x ultrazvukové senzory
  • 1x servomotor
  • 4x biele LED diódy
  • 1x Odpor závislý na svetle
  • 1x 2*16 LCD displej

Výpočtový

  • 1x Raspberry Pi 3 B+
  • 1x SD karta (8-16 GB výber je na vás)
  • 1x Adafruit I2S 3W zosilňovač triedy D Breakout - MAX98357A
  • 1x MCP3008
  • 1x rezistor 2,2K Ohm
  • 9x Rezistory 1K Ohm

Rôzne

  • Prepojovacie vodiče
  • Breadboard
  • UTP kábel
  • Adaptér pre váš malinový pi
  • List multiplexu (na plášť môžete použiť akýkoľvek druh materiálu, ktorý chcete)
  • Lepiaca pištoľ

Softvér

  • PuTTY
  • Softvér na úpravu kódu (môžete používať čokoľvek, pokiaľ to podporuje: skript Python, HTML, CSS a java
  • Zobrazovač disku Win32
  • Obraz operačného systému Raspbian
  • Prehliadač VNC (voliteľné)

Krok 1: Nastavte RPI

Predtým, ako začneme s zapojením hardvéru, napíšte

softvéru a vytvorenia krytu, ktorý budeme potrebovať na nastavenie vášho PI s potrebným softvérom, ktorý budete potrebovať na spustenie projektu.

Na vloženie karty SD a zapísanie na kartu Win32 Disk Imager budete potrebovať obrázok Raspbian. Odkazy na oba nájdete nižšie.

- Win32 Disk Imager:

- Obrázok Raspbian:

Inštalácia

  1. Otvorte aplikáciu Win32 Disk Imager

    1. Vyberte obrázok, ktorý ste práve stiahli, pomocou ikony priečinka
    2. V rozbaľovacom zozname vyberte svoju kartu SD
    3. Kliknite na písať
    4. Keď je proces dokončený, počítač sa vás pravdepodobne spýta, či chcete naformátovať kartu SD, nerobte to

Keď skončíte s týmito krokmi, budete musieť urobiť niekoľko ďalších vecí, aby ste mali prístup k softvéru vášho PI.

  1. V prieskumníkovi otvorte kartu SD
  2. Otvorte súbor „cmdline.txt“
  3. Na konci pridania uvidíte dlhý riadok textu: ip = 169.254.10.1
  4. Uložte súbor
  5. Vytvorte súbor s názvom ssh bez prípony (ak neviete, ako to urobiť, kliknite na nový súbor, vyberte nový textový súbor, odstráňte príponu a pomenujte ho ssh)
  6. Posledným krokom v tejto časti je bezpečné vysunutie karty SD a vloženie do Raspberry PI

Pripája sa

Keď skončíte s predchádzajúcimi krokmi, je načase sa prvýkrát pripojiť k vášmu pí. Najprv budete musieť zapojiť kábel UTP, jeden koniec do počítača a druhý do zásuvky (je dôležité, aby ste pred zapojením zapojili kábel LAN).

  1. Nainštalujte tmel:
  2. Hneď ako ho nainštalujete, otvorte ho a do poľa IP zadajte 169.254.10.1
  3. Vyberte SSH a zadajte port 22
  4. Kliknite na otvorené
  5. Vyplňte používateľské meno: pi a heslo malina toto je štandardné prihlásenie do úplne nového obrázku

Raspi-config

Predtým, ako sa pohneme ďalej, budete musieť zmeniť niekoľko nastavení v ponuke raspi-config, otvorte ju pomocou:

sudo raspi-config

1. Povoliť I2C a SPI v rámci možností v kategórii rozhrania

2. Vyberte si svoju WIFI sieť prostredníctvom kategórie lokalizácie

3. Nastavte položku Desktop/CLI v kategórii možností zavádzania na možnosť Desktop Autologin.

4. V časti Rozšírené možnosti zvoľte A1 Rozbaliť súborový systém (tým zaistíte, že využijete miesto na celej karte SD

5. Teraz ukončite a sudo reštartujte

Wifi

Teraz je načase nastaviť Wi -Fi pripojenie mimo kurzu, budete potrebovať poverenia pre vašu wifi.

Spustite tento príkaz najskôr do režimu root

Sudo -i

Teraz máte práva potrebné na spustenie týchto príkazov:

Nezabudnite zmeniť SSID na názov wifi a HESLO na heslo na wifi

Wpa_passphrase „SSID“„HESLO“>> /etc/wpa_supplicant/wpa_supplicant.conf

Zadajte klienta WPA spustením tohto príkazu:

wpa_cli

Vyberte rozhranie

Rozhranie wlan0

Znova načítajte konfiguráciu

Prekonfigurovať

V neposlednom rade skontrolujte, či to funguje. Môžete to urobiť zadaním:

IP a

Tu môžete skontrolovať, či máte ip pod rozhraniami WLAN0, ak nie sudo reštart (nikdy nezlyhá (:).

Ak vám to nie je príjemné, môžete to urobiť pomocou príkazového riadka, vždy to môžete urobiť pomocou grafického rozhrania Raspbian, ktoré je o niečo užívateľsky príjemnejšie.

  1. Nainštalujte si prehliadač VNC tu:
  2. Kliknite na súbor, nové pripojenie a do panela s adresou IP zadajte: 169.254.10.1 a zvoľte ľubovoľné meno
  3. Vyplňte používateľské meno: pi a heslo malina
  4. Kliknite na ikonu wifi a pripojte sa týmto spôsobom

Balíčky

Teraz, keď sme pripojení k internetu, môžeme nainštalovať balíky, ktoré potrebujeme na spustenie celého kódu.

Najprv budeme musieť aktualizovať zoznam balíkov na najnovší spustením:

sudo apt aktualizácia

sudo apt upgrade

Webový server Apache

Na spustenie našej webovej aplikácie budeme potrebovať webový server. To môžeme dosiahnuť inštaláciou webového servera apache spustením tohto príkazu:

sudo apt nainštalovať apach2 -y

Balíky Python

Aby všetko fungovalo, budeme potrebovať niekoľko balíkov. To sú tie, ktoré budeme potrebovať.

  • Banka
  • Flask-Cors
  • Predĺženie banky
  • Flask-MySQL
  • Flask-SocketIO
  • Python-socketio

Môžete ich nainštalovať spustením tohto príkazu:

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

Krok 2: Databáza

Databáza
Databáza

MariaDB

Spustite nasledujúci príkaz a nainštalujte MariaDB, toto je databázový systém potrebný na sledovanie všetkých údajov, ktoré senzory načítajú.

sudo apt nainštalovať mariadb-server

Teraz budeme musieť zaistiť našu inštaláciu

Inštalácia mysql_secure_

Po spustení príkazu nás požiada o heslo root, ktoré ešte nemáme, takže stačí stlačiť kláves Enter.

Teraz sa vás opýta, či ho z bezpečnostných dôvodov chceme, tak ho chceme, takže na klávesnici stlačte Y a zvoľte požadované heslo.

Teraz sa vás bude aj naďalej pýtať niekoľko ďalších otázok, na všetky odpovedzte Y

Dobre, teraz, keď sme sa dostali do tohto bodu, musíme ísť do shellu SQL.

Aby sme to urobili, musíme sa najskôr znova stať rootom, aby nám to umožnilo zadaním tohto príkazu znova:

sudo -i

Teraz zadajte shell mysql

mysql

Teraz vytvoríme používateľa, ktorý vloží požadované meno medzi úvodzovky pred znak @ a požadované heslo po identifikácii

Teraz musíme prepláchnuť tabuľku povolení spustením tohto príkazu:

FLUSH PRIVILEGES;

Po dokončení týchto krokov môžete schému db znova vytvoriť z obrázku vyššie. Bohužiaľ vám nemôžem dať výpis databázy, pretože sa vyskytli chyby softvéru.

Krok 3: Zapojenie

Elektrické vedenie
Elektrické vedenie
Elektrické vedenie
Elektrické vedenie
Elektrické vedenie
Elektrické vedenie

Teraz je čas urobiť zapojenie projektu. Aby sme vám tento proces trochu uľahčili, najskôr vytvorte schému v programe s názvom fritzing. Fritzing zjednodušuje obnovu káblov v reálnom živote a získate jasný obraz o tom, čo robíte.

Krok 4: Bývanie

Bývanie
Bývanie
Bývanie
Bývanie
Bývanie
Bývanie

Prvým krokom je rezanie dreva v tvaroch, ako je vidieť na výkrese. Urobil som to laserovým rezaním, ale normálna píla bude fungovať rovnako dobre. Potom budete chcieť drevo natrieť čiernou farbou, aby získala asfaltovú farbu. Akonáhle je farba suchá, môžete namaľovať biele pruhy, aby ste získali pocit z parkoviska. Na plot som nastriekol slamené slamky, aby vyzerali ako póly. K samotnému oploteniu som pripevnil niekoľko pólov k pólom. Bariéra je vyrobená z paer maché, ktoré som neskôr nastriekol.

Krok 5: Kódovanie

Kódovanie
Kódovanie
Kódovanie
Kódovanie
Kódovanie
Kódovanie

Backend: Backend projektu je napísaný v Pythone a TSQL. Načíta všetky údaje zo senzorov a zapíše ich do databázy, v ktorej sme vytvorili o niečo skôr. Je na ňom spustený aj webový server, takže k nemu môžeme pripojiť naše klientske rozhranie. Napísal som kód potrebný pre backend v pycharm, ale offcourse môžete jednoducho použiť, čo chcete.

Kód pre backend nájdete tu:

Frontend: Frontend je napísaný v HTML, CSS a Javascripte. Na napísanie kódu som použil kombináciu kódu vizuálneho štúdia a phpstorm. Kód v podstate napíše celú webovú stránku a v súboroch javascriptu nájdete kód potrebný na získanie údajov zo servera.

Kód pre frontend nájdete tu:

Odporúča: