Kazalo:
- Zaloge
- 1. korak: Nastavite RPI
- 2. korak: zbirka podatkov
- 3. korak: Ožičenje
- 4. korak: Stanovanje
- 5. korak: Kodiranje
Video: Pametno parkirišče z uporabo Raspberry Pi: 5 korakov
2024 Avtor: John Day | [email protected]. Nazadnje spremenjeno: 2024-01-30 12:04
V teh navodilih bomo ustvarili popolnoma avtomatski parkirni sistem, povezan s spletnim vmesnikom. Videli boste, katera točka je zasedena, se odločili, kdo gre noter in kdo ven, opremljena pa je s samodejnim sistemom razsvetljave.
Zaloge
Strojna oprema
- 2x ultrazvočni senzorji
- 1x servo motor
- 4x bele LED diode
- 1x svetlobno odvisen upor
- 1x 2*16 LCD zaslon
Računalništvo
- 1x malina Pi 3 B+
- 1x kartica SD (izbira je 8-16 GB)
- 1x Adafruit I2S 3W ojačevalnik razreda D - MAX98357A
- 1x MCP3008
- 1x upor 2.2K Ohm
- 9x upori 1K ohm
Različno
- Mostične žice
- Ogledna plošča
- UTP-kabel
- Adapter za vaš malinov pi
- List multipleksa (za ohišje lahko uporabite kakršen koli material, ki ga želite)
- Pištola za lepilo
Programska oprema
- PUTTY
- Programska oprema za urejanje kode (če želite, lahko uporabljate vse, kar želite: Python, HTML, CSS in java script
- Win32 Disk Imager
- Slika Raspbian OS
- VNC Viewer (neobvezno)
1. korak: Nastavite RPI
Preden začnemo s povezovanjem strojne opreme, napišite datoteko
programsko opremo in izdelavo ohišja, bomo morali nastaviti vaš PI s potrebno programsko opremo, ki jo boste potrebovali za izvedbo projekta.
Za namestitev na kartico SD in zapis na kartico SD Win32 Disk Imager boste potrebovali sliko Raspbiana. Spodaj najdete povezave do obeh.
- Win32 Disk Imager:
- Raspbian image:
Namestitev
-
Odprite Win32 Disk Imager
- Z ikono mape izberite sliko, ki ste jo pravkar prenesli
- V spustnem meniju izberite kartico SD
- Kliknite na piši
- Ko bo postopek končan, vas bo računalnik verjetno vprašal, ali želite formatirati kartico SD, tega ne storite
Ko končate s temi koraki, boste morali narediti nekaj dodatnih stvari, da boste lahko dostopali do programske opreme vašega PI.
- Odprite kartico SD v raziskovalcu
- Odprite datoteko "cmdline.txt"
- Na koncu boste videli dolgo vrstico besedila: ip = 169.254.10.1
- Shranite datoteko
- Ustvarite datoteko ssh brez razširitve (če ne veste, kako to storiti, kliknite novo datoteko, izberite novo besedilno datoteko, izbrišite razširitev in jo poimenujte ssh)
- Zadnji korak tega dela je, da varno izvržete kartico SD in jo vstavite v Raspberry PI
Povezovanje
Ko končate s prejšnjimi koraki, je čas, da se prvič povežete s pi. Najprej boste morali priključiti kabel UTP, en konec v računalniku, drugi pa v pi (pomembno je, da kabel LAN priključite, preden ga priključite).
- Namestite Putty:
- Ko ga namestite, ga odprite in vnesite 169.254.10.1 v polje IP
- Izberite SSH in vnesite vrata 22
- Kliknite odprto
- Izpolnite uporabniško ime: pi in geslo malina, to je standardna prijava na povsem novi sliki
Raspi-config
Preden nadaljujemo, boste morali v meniju raspi-config spremeniti kar nekaj nastavitev in ga odpreti z uporabo:
sudo raspi-config
1. Omogočite I2C in SPI v možnostih kategorije kategorije vmesnikov
2. Izberite kategorijo WIFI prek kategorije lokalizacije
3. Nastavitev Namizje/CLI v kategoriji možnosti zagona nastavite na Samodejna prijava na namizje.
4. V razdelku Napredne možnosti izberite A1 Razširi datotečni sistem (tako zagotovite, da uporabite prostor na celotni kartici SD
5. Zdaj zapustite in sudo ponovno zaženite
Wifi
Zdaj je čas, da svojo brezžično povezavo nastavite, seveda boste potrebovali poverilnice svojega wifija.
Najprej pojdite v korenski način z izvajanjem tega ukaza
Sudo -i
Zdaj imate pravice, potrebne za izvajanje teh ukazov:
Prepričajte se, da spremenite SSID v ime wifi in GESO v geslo za wifi
Wpa_passphrase “SSID” “PASSWORD” >> /etc/wpa_supplicant/wpa_supplicant.conf
Vnesite odjemalca WPA tako, da zaženete ta ukaz:
wpa_cli
Izberite vmesnik
Vmesnik wlan0
Znova naložite konfiguracijo
Ponovno konfigurirajte
Nenazadnje preverite, ali je delovalo. To lahko storite tako, da vnesete:
Ip a
Tukaj lahko preverite, ali imate IP pod vmesniki WLAN0, če ne sudo reboot (nikoli ne uspe (:).
Če vam to ni všeč z ukazno vrstico, lahko to vedno storite prek grafičnega vmesnika Raspbian, ki je nekoliko bolj prijazen do uporabnika.
- Namestite VNC-viewer tukaj:
- Kliknite datoteka, nova povezava in vnesite v naslovno vrstico IP: 169.254.10.1 in izberite poljubno ime
- Izpolnite uporabniško ime: pi in geslo malina
- Kliknite ikono wifi in se tako povežite
Paketi
Zdaj, ko smo povezani z internetom, lahko namestimo pakete, ki jih potrebujemo za zagon vse kode.
Najprej bomo morali osvežiti seznam paketov na najnovejšega z zagonom:
sudo apt posodobitev
sudo apt nadgradnja
Spletni strežnik Apache
Za zagon naše spletne aplikacije potrebujemo spletni strežnik. To lahko dosežemo z namestitvijo spletnega strežnika apache z izvajanjem tega ukaza:
sudo apt namestite apach2 -y
Paketi Python
Da bo vse delovalo, bomo potrebovali kar nekaj paketov. To so tisti, ki jih bomo potrebovali.
- Bučka
- Bučke
- Podaljšek za bučko
- Flask-MySQL
- Vtičnica za bučkoIO
- Python-socketio
Namestite jih lahko tako, da zaženete ta ukaz:
pip install Flask Flask-Cors Flask-Extension Flask-MySQL Flask-SocketIO python-socketio
2. korak: zbirka podatkov
MariaDB
Za namestitev MariaDB zaženite naslednji ukaz, to je sistem baze podatkov, ki je potreben za spremljanje vseh podatkov, ki jih berejo senzorji.
sudo apt namestite strežnik mariadb
Zdaj bomo morali zavarovati našo namestitev
Mysql_secure_installation
Ko zaženete ukaz, nas bo vprašal za korensko geslo, ki ga še nimamo, zato samo pritisnite enter.
Zdaj vas bo vprašal, če ga želite iz varnostnih razlogov, želimo ga, zato pritisnite Y na tipkovnici in izberite katero koli geslo, ki ga želite.
Zdaj vam bo še naprej postavljal nekaj vprašanj, na vsa odgovorite z Y
Zdaj, ko smo prišli do te točke, moramo iti v lupino SQL.
Če želite to narediti, moramo najprej znova postati root, da nam za to podelijo privilegije, tako da znova vnesemo ta ukaz:
sudo -i
Zdaj vnesite lupino mysql
mysql
Zdaj bomo ustvarili uporabnika, ki bo želeno ime postavil med narekovaje pred @ in geslo, ki ga želite identificirati
Zdaj moramo izprazniti tabelo dovoljenj z izvajanjem tega ukaza:
FLUSH PRIVILEGIJE;
Ko dokončate te korake, lahko znova ustvarite shemo db iz zgornje slike. Na žalost vam ne morem dati podatkovne zbirke, ker imam nekaj programskih napak.
3. korak: Ožičenje
Zdaj je čas za ožičenje projekta. Da bi olajšali postopek, najprej naredite shemo v programu z imenom fritzing. Fritzing vam olajša ponovno ustvarjanje ožičenja v resničnem življenju in dobite jasno sliko o tem, kaj izdelujete.
4. korak: Stanovanje
Prvi korak je rezanje lesa v oblikah, kot je prikazano na risbi. To sem naredil z laserskim rezanjem, vendar bo običajna žaga delovala enako dobro. Po tem boste želeli les pobarvati v črno, da dobi asfaltno barvo. Ko se barva posuši, lahko pobarvate bele črte, da dobite občutek parkirišča. Za ograjo poškropim pobarvane slamice, da izgledajo kot drogovi. Za ograjo sem pritrdil nekaj goj na stebre. Pregrada je narejena iz paer machéja, ki sem ga kasneje pobarval z brizganjem.
5. korak: Kodiranje
Zaledje: Zaledje projekta je napisano v Pythonu in TSQL. Prebere vse podatke senzorjev in jih zapiše v bazo podatkov, ki smo jo ustvarili malo prej. Zažene tudi spletni strežnik, tako da lahko nanj povežemo našo zunanjo stran. Kodo, potrebno za zaledje, sem napisal v pycharmu, seveda pa lahko uporabite karkoli želite.
Kodo za ozadje najdete tukaj:
Frontend: Frontend je napisan v HTML, CSS in Javascript. Za pisanje kode sem uporabil kombinacijo vizualne studijske kode in phpstorm. Koda v bistvu zapiše celotno spletno mesto in v datotekah javascript najdete kodo, potrebno za pridobivanje podatkov iz zaledja.
Kodo za prednjo stran najdete tukaj:
Priporočena:
Arduino Sistem opozarjanja na parkirišče za vzvratno vožnjo - Korak za korakom: 4 koraki
Arduino Sistem opozarjanja na parkirišče za vzvratno vožnjo | Koraki po korakih: V tem projektu bom z ultrazvočnim senzorjem Arduino UNO in HC-SR04 oblikoval preprosto vezje za vzvratno parkiranje avtomobila Arduino. Ta sistem za opozarjanje avtomobila za vzvratno vožnjo, ki temelji na Arduinu, se lahko uporablja za avtonomno navigacijo, robotsko merjenje in drugo območje
Študentsko parkirišče univerzitetnega kampusa: 7 korakov (s slikami)
Univerzitetni kampus za študentsko parkirišče: Mnogi študentje se sprašujejo, kje lahko parkirajo na univerzitetnem kampusu. Za rešitev tega problema sem ustvaril osvetljen zemljevid parkiranja glavnega območja kampusa državne univerze Utah. Zemljevid je namenjen študentom, da hitro pogledajo, kakšne so možnosti parkiranja
Pametno vrtnarjenje na osnovi IoT in pametno kmetijstvo z uporabo ESP32: 7 korakov
Pametno vrtnarjenje na osnovi IoT in pametno kmetijstvo z uporabo ESP32: Svet se spreminja s časom in s tem tudi kmetijstvo.Danes ljudje integrirajo elektroniko na vseh področjih in kmetijstvo pri tem ni izjema. Ta združitev elektronike v kmetijstvu pomaga kmetom in ljudem, ki upravljajo vrtove
Pametno krmiljenje ventilatorja Raspberry Pi z uporabo Pythona in Thingspeak: 7 korakov
Pametno krmiljenje ventilatorja Raspberry Pi z uporabo Pythona in Thingspeaka: Kratek pregled Ventilator je privzeto neposredno povezan z GPIO - to pomeni njegovo stalno delovanje. Kljub relativno tihemu delovanju ventilatorja njegovo neprekinjeno delovanje ni učinkovita uporaba aktivnega hladilnega sistema. Ob istem času
Daljinomer za garažno parkirišče z Arduinom: 4 koraki (s slikami)
Merilnik razdalj za parkiranje v garaži z Arduinom: Ta preprost projekt vam bo pomagal parkirati avto v garaži tako, da bo prikazal razdaljo od predmetov pred odbijačem vašega avtomobila. na običajnih HC-SR04 ali Parallax Ping)))