Table des matières:

Feux de circulation intelligents : 6 étapes
Feux de circulation intelligents : 6 étapes

Vidéo: Feux de circulation intelligents : 6 étapes

Vidéo: Feux de circulation intelligents : 6 étapes
Vidéo: FEU DE CIRCULATION PROGRAMMÉ AVEC ARDUINO (j'ai réussi) 2024, Novembre
Anonim
Feux de circulation intelligents
Feux de circulation intelligents

Pourquoi j'ai fait ce projet

Je suis étudiant à Howest Kortijk. C'est un projet scolaire pour mon deuxième semestre MCT.

Quand je conduis ma voiture et que c'est calme dans les rues, ça ne sert à rien de rester devant les feux rouges quand il n'y a pas d'autre circulation en sens inverse. J'ai donc voulu créer un système qui s'assure que vous ne vous tenez pas devant des feux de circulation inutiles. Ce que beaucoup de gens font, c'est conduire vite jusqu'à ce qu'ils s'approchent des feux de circulation et ce n'est pas bon, donc je vais placer un détecteur de vitesse plus loin des feux. Lorsque vous passez trop vite à ce capteur, les feux rouges s'allument.

Étape 1: Nomenclature

Le coût total du projet pour moi était de 121, 30€

Pièces d'occasion

  • Capteur infrarouge
  • Capteur à ultrasons
  • HC-SR04
  • LDR
  • CapteurAffichage
  • ACL 1602A
  • Led
  • Avertisseur sonore
  • Feux de circulation
  • Planches de bois
  • PCF8574
  • Charnières
  • Clous
  • La colle
  • Adaptateur secteur

Outils d'occasion

  • Scie à bois
  • Machine à souder

Pour un aperçu plus détaillé des pièces et où les acheter, j'ai fait un pdf. (les pages sont censées être tenues côte à côte)

Étape 2: Le logement

Le logement
Le logement
Le logement
Le logement
Le logement
Le logement
Le logement
Le logement

Pour le logement, j'ai reçu de l'aide de mon père.

Nous avons commencé par scier des planches de bois. Nous avons vu deux planches de 60cm x 90cm, 2 planches de 10cm x 60cm et une planche de 10cm x 90cm.

Nous accrochons les planches de 10cm x 60cm sur les côtés et nous les avons collées ensemble avec la planche du bas de 60cm x 90cm. Pour le dos, nous avons utilisé la planche de 10 cm x 90 cm et les avons également collées à la planche du bas.

Pour le toit où se trouve la construction, nous avons utilisé des charnières afin que vous puissiez ouvrir la planche du toit et regarder votre câblage.

Étape 3: schéma de frittage

Schéma de Fritzing
Schéma de Fritzing
Schéma de Fritzing
Schéma de Fritzing

Le câblage a l'air compliqué mais il ne l'est pas. Vous devez parfois faire le même câblage, donc ce n'est pas vraiment si difficile.

Pour l'écran LCD, j'ai utilisé un PCF8574, j'aurais donc suffisamment de broches GPIO sur mon PI pour le reste de mes composants.

Étape 4: configuration

Installer
Installer
Installer
Installer
Installer
Installer
Installer
Installer

J'ai utilisé 2 planches à pain pour faire mon circuit. Pour le câblage, j'ai percé des trous dans la planche afin que vous puissiez tout cacher sous la planche.

Étape 5: Base de données normalisée

Base de données normalisée
Base de données normalisée

J'ai fait une base de données pour enregistrer la vitesse des voitures qui passent. Avec toutes ces valeurs, vous pouvez créer un historique des vitesses ou un historique des voitures qui accélèrent.

Il existe également un tableau pour le capteur où vous pouvez configurer le nom du capteur et l'unité du capteur.

J'ai aussi fait une table de localisation. Dans ce tableau, j'ai enregistré l'état des feux, la rue où se trouvent les feux et l'intersection. Si vous souhaitez étendre le projet avec plusieurs intersections, vous pouvez l'enregistrer là-bas. Mais vous pouvez également économiser si les lumières doivent être automatiques, éteintes ou allumées. A l'identique des feux tricolores.

Étape 6: Rédaction du code

Pour écrire le code, j'ai utilisé les programmes suivants:

  • Code Visual studio: pour programmer le front-end en HTML, CSS et Javascript mais aussi le backend en Python
  • MySQL Workbench: pour faire la base de données

Je n'entrerai pas dans les détails ici sur la façon dont j'ai écrit le code, vous pouvez trouver ces informations sur mon référentiel Github que j'ai créé pour ce projet:

Conseillé: