Taula de continguts:

Aparcament intel·ligent amb Raspberry Pi: 5 passos
Aparcament intel·ligent amb Raspberry Pi: 5 passos

Vídeo: Aparcament intel·ligent amb Raspberry Pi: 5 passos

Vídeo: Aparcament intel·ligent amb Raspberry Pi: 5 passos
Vídeo: AMB Aparcament Metropolità 2024, De novembre
Anonim
Aparcament intel·ligent que utilitza Raspberry Pi
Aparcament intel·ligent que utilitza Raspberry Pi

En aquest instructable, crearem un sistema d’aparcament totalment automàtic connectat a una interfície web. Podreu veure quin lloc es pren, decidir qui entra i qui surt i està equipat amb un sistema d’il·luminació automàtic.

Subministraments

Maquinari

  • 2x sensors ultrasònics
  • Servomotor 1x
  • 4x LED blancs
  • 1x resistència dependent de la llum
  • Pantalla LCD 1x 2 * 16

Informàtica

  • 1x Raspberry Pi 3 B +
  • 1x targeta SD (8-16 GB és la vostra opció)
  • 1x Adafruit I2S 3W Classe D Amplificador Breakout - MAX98357A
  • 1x MCP3008
  • 1x resistència de 2,2K Ohm
  • 9x resistències 1K ohm

Diversos

  • Filferros de pont
  • Taula de pa
  • Cable UTP
  • Adaptador per al vostre raspberry pi
  • Una làmina de multiplex (podeu utilitzar qualsevol tipus de material que vulgueu per a la carcassa)
  • Una pistola de cola

Programari

  • MASSETA
  • Programari per editar codi (podeu utilitzar el que vulgueu sempre que admeti: Python, HTML, CSS i script java
  • Imatge de disc Win32
  • Imatge del sistema operatiu Raspbian
  • Visor VNC (opcional)

Pas 1: configureu RPI

Abans de començar a connectar el maquinari, escrivint el fitxer

programari i feu la carcassa necessitarem configurar el vostre PI amb el programari necessari que necessitareu per executar el projecte.

Necessitareu una imatge de Raspbian per posar-la a la targeta SD i escriure-la a la targeta SD Win32 Disk Imager. A continuació podeu trobar enllaços a tots dos.

- Imatge de disc Win32:

- Imatge Raspbian:

La instal·lació

  1. Obriu l’Imager del disc Win32

    1. Seleccioneu la imatge que acabeu de baixar mitjançant la icona de la carpeta
    2. Seleccioneu la targeta SD mitjançant el menú desplegable
    3. Feu clic a escriure
    4. Quan finalitzi el procés, probablement l'ordinador us preguntarà si voleu formatar la targeta SD, no ho feu

Quan hàgiu acabat aquests passos, haureu de fer algunes coses addicionals per poder accedir al programari del vostre PI.

  1. Obriu la targeta SD al vostre explorador
  2. Obriu el fitxer "cmdline.txt"
  3. Veureu una llarga línia de text al final afegir: ip = 169.254.10.1
  4. Deseu el fitxer
  5. Creeu un fitxer anomenat ssh sense extensió (si no sabeu com fer-ho, feu clic a un fitxer nou, seleccioneu un fitxer de text nou, suprimiu l'extensió i nomeneu-lo ssh)
  6. L’últim pas d’aquesta part és expulsar amb seguretat la targeta SD i posar-la al Raspberry PI

Connectant

Quan hàgiu acabat de fer els passos anteriors, és hora de connectar-vos al vostre pi per primera vegada. Primer, haureu d’endollar el cable UTP, un dels extrems de l’ordinador i l’altre del vostre pi (és important que connecteu el cable LAN abans de connectar-lo).

  1. Instal·leu Putty:
  2. Un cop instal·lat, obriu-lo i introduïu 169.254.10.1 al quadre IP
  3. Seleccioneu SSH i empleneu el port 22
  4. Feu clic a obre
  5. Empleneu el nom d’usuari: pi i la contrasenya raspberry, aquest és l’inici de sessió estàndard d’una imatge nova

Raspi-config

Abans de continuar, haureu de canviar bastants paràmetres al menú raspi-config, obriu-lo mitjançant:

sudo raspi-config

1. Activeu I2C i SPI a les opcions de la categoria d'interfícies

2. Trieu la vostra configuració WIFI mitjançant la categoria de localització

3. Establiu el paràmetre Desktop / CLI a la categoria d'opcions d'arrencada a Desktop Autologin.

4. A Opcions avançades, trieu A1 Expandir sistema de fitxers (això us assegura que utilitzeu l'espai de tota la targeta SD

5. Ara sortiu i reinicieu sudo

Wifi

Ara és el moment de configurar la vostra connexió wifi, per descomptat, necessitareu les credencials del vostre wifi.

Primer, aneu al mode arrel executant aquesta ordre

Sudo -i

Ara teniu els drets necessaris per executar aquestes ordres:

Assegureu-vos de canviar SSID al vostre nom de wifi i CONTRASENYA a la vostra contrasenya de wifi

Wpa_passphrase "SSID" "PASSWORD" >> /etc/wpa_supplicant/wpa_supplicant.conf

Introduïu el client WPA executant aquesta ordre:

wpa_cli

Seleccioneu la interfície

Interfície wlan0

Torneu a carregar la configuració

Torneu a configurar

Finalment, comproveu si ha funcionat. Podeu fer-ho introduint:

Ip a

Aquí podeu comprovar si teniu una ip a les interfícies WLAN0 si no reiniciar-se sudo (mai falla (:).

Si no us sentiu còmode fer-ho mitjançant la línia d’ordres, sempre podeu fer-ho mitjançant la GUI de Raspbian, que és una mica més fàcil d’utilitzar.

  1. Instal·leu el visor VNC aquí:
  2. Feu clic a Fitxer, nova connexió i introduïu a la barra d'adreces IP: 169.254.10.1 i trieu el nom que vulgueu
  3. Empleneu el nom d’usuari: pi i la contrasenya raspberry
  4. Feu clic a la icona del wifi i connecteu-vos d’aquesta manera

Paquets

Ara que estem connectats a Internet, podem instal·lar els paquets que necessitem per executar tot el codi.

Primer haurem d'actualitzar la llista de paquets a la darrera executant:

actualització sudo apt

actualització sudo apt

Servidor web Apache

Necessitarem un servidor web per executar la nostra aplicació web. Ho podem aconseguir instal·lant el servidor web apache executant aquesta ordre:

sudo apt install apach2 -y

Paquets Python

Perquè tot funcioni, necessitarem bastants paquets. Aquests són els que necessitarem.

  • Flascó
  • Flask-Cors
  • Flascó-Extensió
  • Flask-MySQL
  • Flask-SocketIO
  • Python-socketio

Podeu instal·lar-los executant aquesta ordre:

pip instal·lar Flask Flask-Cors Flask-Extension Flask-MySQL Flask-SocketIO python-socketio

Pas 2: base de dades

Base de dades
Base de dades

MariaDB

Executeu l'ordre següent per instal·lar MariaDB, aquest és el sistema de base de dades necessari per fer un seguiment de totes les dades que llegeixen els sensors.

sudo apt install mariadb-server

Ara haurem de protegir la nostra instal·lació

Mysql_secure_installation

Un cop hàgiu executat l'ordre, ens demanarà una contrasenya de root, encara no la tenim, així que només cal que premeu Retorn.

Ara us preguntarà si en voleu una per motius de seguretat, en volem una, així que premeu Y al teclat i trieu la contrasenya que vulgueu.

Ara us seguirà fent algunes preguntes més, només heu de respondre Y a totes

Ara bé, ja que hem arribat a aquest punt, hem d’entrar al shell SQL.

Per fer-ho, primer hem de tornar a ser root per concedir-nos els privilegis de fer-ho introduint de nou aquesta ordre:

sudo -i

Ara introduïu l'intèrpret d'ordres mysql

mysql

Ara crearem un usuari que posi el nom que vulgueu entre les cometes abans del @ i la contrasenya que vulgueu després d’haver identificat

Ara hem de buidar la taula de permisos executant aquesta ordre:

PRIVILEGIS DE FLUSH;

Després de completar aquests passos, podeu recrear l'esquema de db a partir de la imatge superior. Malauradament, no puc donar-vos cap descàrrega de la base de dades perquè estic experimentant alguns errors de programari.

Pas 3: cablejat

Cablejat
Cablejat
Cablejat
Cablejat
Cablejat
Cablejat

Ara és hora de fer el cablejat del projecte. Per fer el procés una mica més fàcil, primer feu un esquema en un programa anomenat fritzing. Fritzing fa que sigui més fàcil recrear el cablejat a la vida real i obtenir una imatge clara del que esteu fent.

Pas 4: Habitatge

Habitatge
Habitatge
Habitatge
Habitatge
Habitatge
Habitatge

El primer pas és tallar la fusta en les formes que es veuen al dibuix. Ho vaig fer mitjançant tall per làser, però una serra normal funcionarà igual de bé. Després voldreu pintar la fusta de negre per obtenir el color de l’asfalt. Un cop la pintura estigui seca, podeu pintar les ratlles blanques per donar-li la sensació d'aparcament. Per a la tanca, esprai palles pintades per semblar pals. Per a la tanca en si, vaig adjuntar alguns goas als pals. La barrera està feta de paer maché que pintaré amb esprai més tard.

Pas 5: Codificació

Codificació
Codificació
Codificació
Codificació
Codificació
Codificació

Backend: el backend del projecte està escrit en Python i TSQL. Llegeix totes les dades dels sensors i les escriu a la base de dades que vam crear una mica abans. També executa un servidor web perquè puguem connectar-hi el frontal. Vaig escriure el codi necessari per al backend a pycharm, però per descomptat només podeu utilitzar el que vulgueu.

Podeu trobar el codi del backend aquí:

Frontend: el frontend està escrit en HTML, CSS i Javascript. Vaig utilitzar una combinació de codi d’estudi visual i phpstorm per escriure el codi. El codi bàsicament escriu tot el lloc web i als fitxers javascript podeu trobar el codi necessari per obtenir les dades del backend.

Podeu trobar el codi del frontend aquí:

Recomanat: