Table des matières:

Parking intelligent avec Raspberry Pi : 5 étapes
Parking intelligent avec Raspberry Pi : 5 étapes

Vidéo: Parking intelligent avec Raspberry Pi : 5 étapes

Vidéo: Parking intelligent avec Raspberry Pi : 5 étapes
Vidéo: License Plate Detection Demo Using Raspberry Pi Camera 2024, Peut
Anonim
Parking intelligent utilisant Raspberry Pi
Parking intelligent utilisant Raspberry Pi

Dans ce instructables, nous allons créer un système de stationnement entièrement automatique connecté à une interface Web. Vous pourrez voir quel endroit est pris, décider qui entre et qui sort et il est équipé d'un système d'éclairage automatique.

Fournitures

Matériel

  • 2x capteurs à ultrasons
  • 1x servomoteur
  • 4x LED blanches
  • 1x résistance dépendante de la lumière
  • 1x 2*16 écran LCD

L'informatique

  • 1x Raspberry Pi 3 B+
  • 1x carte SD (8-16 Go à vous de choisir)
  • 1x Adafruit I2S 3W Classe D Amplificateur Breakout - MAX98357A
  • 1x MCP3008
  • 1x Résistance 2.2K Ohm
  • 9x Résistances 1K Ohm

Divers

  • Fils de cavalier
  • Planche à pain
  • Câble UTP
  • Adaptateur pour votre raspberry pi
  • Une feuille de multiplex (vous pouvez utiliser n'importe quel type de matériau pour le boîtier)
  • Un pistolet à colle

Logiciel

  • Mastic
  • Logiciel pour éditer le code (vous pouvez utiliser ce que vous voulez tant qu'il prend en charge: Python, HTML, CSS et java script
  • Imageur de disque Win32
  • Image du système d'exploitation Raspbian
  • Visionneuse VNC (facultatif)

Étape 1: Configurer le RPI

Avant de commencer à câbler le matériel, écrire le

logiciel et faire le boîtier dont nous aurons besoin pour configurer votre PI avec le logiciel nécessaire dont vous aurez besoin pour faire fonctionner le projet.

Vous aurez besoin d'une image de Raspbian à mettre sur votre carte SD et à l'écrire sur la carte SD Win32 Disk Imager. Vous pouvez trouver des liens vers les deux ci-dessous.

- Imageur de disque Win32:

- Image Raspbian:

L'installation

  1. Ouvrez l'imageur de disque Win32

    1. Sélectionnez l'image que vous venez de télécharger via l'icône du dossier
    2. Sélectionnez votre carte SD via le menu déroulant
    3. Cliquez sur écrire
    4. Une fois le processus terminé, votre ordinateur vous demandera probablement si vous souhaitez formater la carte SD, ne le faites pas

Lorsque vous aurez terminé ces étapes, vous devrez faire des choses supplémentaires pour pouvoir accéder au logiciel de votre PI.

  1. Ouvrez la carte SD dans votre explorateur
  2. Ouvrez le fichier "cmdline.txt"
  3. Vous verrez une longue ligne de texte à la fin ajouter: ip=169.254.10.1
  4. Enregistrer le fichier
  5. Créez un fichier nommé ssh sans extension (si vous ne savez pas comment faire cela, cliquez simplement sur un nouveau fichier, sélectionnez un nouveau fichier texte, supprimez l'extension et nommez-le ssh)
  6. La dernière étape de cette partie consiste à éjecter la carte SD en toute sécurité et à la mettre dans le Raspberry PI

De liaison

Lorsque vous avez terminé les étapes précédentes, il est temps de vous connecter à votre pi pour la première fois. Vous devrez d'abord brancher votre câble UTP, une extrémité dans votre ordinateur et l'autre dans votre pi (il est important de brancher le câble LAN avant de le brancher).

  1. Installez Putty:
  2. Une fois que vous l'avez installé, ouvrez-le et entrez 169.254.10.1 dans la zone IP
  3. Sélectionnez SSH et remplissez le port 22
  4. Cliquez sur ouvrir
  5. Renseignez le nom d'utilisateur: pi et le mot de passe framboise c'est le login standard sur une toute nouvelle image

Raspi-config

Avant de continuer, vous devrez modifier pas mal de paramètres dans le menu raspi-config, ouvrez-le en utilisant:

sudo raspi-config

1. Activez I2C et SPI sous les options dans la catégorie interfaces

2. Choisissez votre pays WIFI via la catégorie localisation

3. Définissez le paramètre Desktop/CLI dans la catégorie des options de démarrage sur Desktop Autologin.

4. Sous Options avancées, choisissez A1 Expand Filesystem (cela garantit que vous utilisez l'espace de toute la carte SD

5. Maintenant, quittez et redémarrez sudo

Wifi

Il est maintenant temps de configurer votre connexion wifi, bien sûr, vous aurez besoin des informations d'identification de votre wifi.

Passez d'abord en mode root en exécutant cette commande

Sudo -i

Vous disposez maintenant des droits nécessaires pour exécuter ces commandes:

Assurez-vous de remplacer le SSID par votre nom wifi et le MOT DE PASSE par votre mot de passe wifi

Wpa_passphrase "SSID" "MOT DE PASSE" >> /etc/wpa_supplicant/wpa_supplicant.conf

Entrez dans le client WPA en exécutant cette commande:

wpa_cli

Sélectionnez l'interface

Interface wlan0

Recharger la config

Reconfigurer

Enfin, vérifiez si cela a fonctionné. Vous pouvez le faire en entrant:

Ip un

Ici, vous pouvez vérifier si vous avez une ip sous les interfaces WLAN0 sinon sudo reboot (n'échoue jamais (:).

Si vous n'êtes pas à l'aise de le faire via la ligne de commande, vous pouvez toujours le faire via l'interface graphique de Raspbian qui est un peu plus conviviale.

  1. Installez VNC-viewer ici:
  2. Cliquez sur fichier, nouvelle connexion et entrez dans la barre d'adresse IP: 169.254.10.1 et choisissez le nom que vous voulez
  3. Renseignez le nom d'utilisateur: pi et le mot de passe framboise
  4. Cliquez sur l'icône wifi et connectez-vous de cette façon

Paquets

Maintenant que nous sommes connectés à Internet, nous pouvons installer les packages dont nous avons besoin pour exécuter tout le code.

Nous devrons d'abord actualiser la liste des packages à la plus récente en exécutant:

mise à jour sudo apt

mise à niveau sudo apt

Serveur Web Apache

Nous aurons besoin d'un serveur Web pour exécuter notre application Web. Nous pouvons y parvenir en installant le serveur Web Apache en exécutant cette commande:

sudo apt installer apach2 -y

Paquets Python

Pour que tout fonctionne, nous aurons besoin de plusieurs packages. Ce sont ceux dont nous aurons besoin.

  • Ballon
  • Flacon-Cors
  • Flacon-Extension
  • Flask-MySQL
  • Flacon-SocketIO
  • Python-socketio

Vous pouvez les installer en exécutant cette commande:

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

Étape 2: Base de données

Base de données
Base de données

MariaDB

Exécutez la commande suivante pour installer MariaDB. Il s'agit du système de base de données requis pour garder une trace de toutes les données lues par les capteurs.

sudo apt installer mariadb-server

Il va maintenant falloir sécuriser notre installation

Mysql_secure_installation

Une fois que vous avez exécuté la commande, il nous demandera un mot de passe root, nous n'en avons pas encore, alors appuyez simplement sur Entrée.

Maintenant, il vous demandera si vous en voulez un pour des raisons de sécurité, alors appuyez sur Y sur votre clavier et choisissez le mot de passe que vous voulez.

Maintenant, il continuera à vous poser quelques questions supplémentaires, répondez simplement Y à toutes

Bon maintenant que nous sommes arrivés à ce point, nous devons entrer dans le shell SQL.

Pour ce faire, nous devons d'abord redevenir root pour nous accorder les privilèges nécessaires en entrant à nouveau cette commande:

sudo -i

Entrez maintenant dans le shell mysql

mysql

Maintenant nous allons créer un utilisateur mettre le nom que vous voulez entre les guillemets avant le @ et le mot de passe que vous voulez après identifié par

Nous devons maintenant vider la table des autorisations en exécutant cette commande:

PRIVILÈGES DE FLASH;

Après avoir terminé ces étapes, vous pouvez recréer le schéma de base de données à partir de l'image ci-dessus. Malheureusement, je ne peux pas vous donner un vidage de la base de données car je rencontre des erreurs logicielles.

Étape 3: Câblage

Câblage
Câblage
Câblage
Câblage
Câblage
Câblage

Il est maintenant temps de faire le câblage du projet. Pour rendre le processus un peu plus facile, commencez par créer un schéma dans un programme nommé fritzing. Fritzing permet de recréer plus facilement votre câblage dans la vraie vie et vous obtenez une image claire de ce que vous faites.

Étape 4: Logement

Logement
Logement
Logement
Logement
Logement
Logement

La première étape consiste à couper le bois dans les formes comme on le voit sur le dessin. Je l'ai fait par découpe au laser mais une scie normale fonctionnera tout aussi bien. Après cela, vous voudrez peindre le bois en noir pour obtenir la couleur de l'asphalte. Une fois que la peinture est sèche, vous pouvez peindre les bandes blanches pour donner l'impression d'un parking. Pour la clôture, je pulvérise des pailles peintes pour ressembler à des poteaux. Pour la clôture elle-même, j'ai attaché des goas aux poteaux. La barrière est faite de paer maché que j'ai peint à la bombe plus tard.

Étape 5: Codage

Codage
Codage
Codage
Codage
Codage
Codage

Backend: Le backend du projet est écrit en Python et TSQL. Il lit toutes les données des capteurs et les écrit dans la base de données que nous avons créée un peu plus tôt. Il exécute également un serveur Web afin que nous puissions y connecter notre interface. J'ai écrit le code nécessaire pour le backend dans pycharm mais bien sûr, vous pouvez simplement utiliser ce que vous voulez.

Vous pouvez trouver le code du backend ici:

Frontend: Le frontend est écrit en HTML, CSS et Javascript. J'ai utilisé une combinaison de code Visual Studio et de phpstorm pour écrire le code. Le code écrit essentiellement l'intégralité du site Web et dans les fichiers javascript, vous pouvez trouver le code nécessaire pour obtenir les données du backend.

Vous pouvez trouver le code du frontend ici:

Conseillé: