Un feu de circulation (aussi appelé feu de signalisation routière ou simplement feu) est un dispositif de signalisation utilisé pour réglementer la circulation routière. Il est généralement installé aux intersections ou aux carrefours et indique aux conducteurs s’ils peuvent passer ou non. Les feux de circulation utilisent généralement trois couleurs : rouge, orange et vert. Le rouge signifie que les conducteurs doivent s’arrêter, l’orange signifie qu’ils doivent ralentir et le vert signifie qu’ils peuvent continuer. Les feux de circulation sont généralement contrôlés par un système de détection de présence de véhicules qui active le feu lorsqu’un véhicule s’approche de l’intersection. Ils sont également souvent utilisés en conjonction avec des panneaux de signalisation supplémentaires pour aider à guider et à informer les conducteurs.
Il est possible de contrôler un feu de circulation à l’aide d’une carte ESP32, qui est une carte de développement électronique basée sur le microcontrôleur ESP32 de Espressif Systems. L’ESP32 est une puce dotée de fonctionnalités de traitement et de communication avancées, ce qui en fait une option intéressante pour la création de projets électroniques tels que des feux de circulation contrôlés par ordinateur.
Pour contrôler un feu de circulation à l’aide de l’ESP32, vous devrez d’abord configurer la carte en utilisant un logiciel de développement tel que Micropython. Vous devrez également brancher la carte à des DEL (diodes électroluminescentes) ou à d’autres dispositifs de signalisation pour indiquer les différentes couleurs du feu de circulation. Ensuite, vous devrez écrire du code pour faire en sorte que la carte envoie des instructions aux DEL ou aux autres dispositifs de signalisation pour qu’ils s’allument ou s’éteignent en fonction de la couleur du feu de circulation souhaitée.
Il existe de nombreuses façons de contrôler un feu de circulation à l’aide de l’ESP32, et la méthode exacte dépendra de votre projet spécifique. Cependant, en utilisant l’ESP32 et en écrivant du code adéquat, vous pouvez créer un feu de circulation contrôlé par ordinateur qui peut être utilisé pour réglementer la circulation routière de manière efficace et fiable.
L’objectif de ce projet consiste à réaliser un feu de signalisation routière suivant ces étapes :
– La led rouge s’allume pendant 3 secondes en affichant sur l’afficheur LCD SSD1306 « Stop » .
– Après les 3 secondes la led rouge s’éteint et s’allume une autre verte, durant 3 secondes aussi , affichant « Traversez »
– Une fois la led verte éteinte, s’allume une troisième, orange, pendant 2 secondes en affichant « Traversez vite ».
Puis le programme reprend en boucle .
carte ESP32
La carte ESP32 est une carte de microcontrôleur basée sur le microcontrôleur ESP32 d’Espressif Systems. C’est une puce système à faible coût et à faible consommation d’énergie conçue pour les applications de l’Internet des objets (IoT).
1 LED rouge –1 LED jaune-1 LED verte
afficheur SSD1306
Le SSD1306 est un contrôleur d’affichage OLED (diode électroluminescente organique) monochrome qui est couramment utilisé dans les petites applications d’affichage. Les affichages OLED sont minces, légers et économes en énergie, ce qui en fait un choix populaire pour les dispositifs portables et d’autres applications où l’espace et la consommation d’énergie sont un problème.
une plaque d’essai
Une plaque d’essai est un type de carte de développement électronique qui permet aux développeurs de tester et de prototyper facilement des circuits électroniques. Elles sont souvent utilisées par les développeurs pour tester rapidement des idées et des conceptions avant de les intégrer à un projet plus important ou de les intégrer dans une carte de développement plus permanente.
Les fils de connexion sont des fils électriques utilisés pour connecter des composants électroniques à une carte de développement Arduino. Ils sont généralement utilisés pour connecter des capteurs, des actionneurs, des afficheurs et d’autres composants à la carte Arduino afin de créer des circuits électroniques.
Pour réaliser le montage on peut connecter :
Les LEDs :
L’afficheur SSD1306:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 |
from machine import Pin, I2C import ssd1306 from time import sleep # ESP32 Pin assignment i2c = I2C(-1, scl=Pin(22), sda=Pin(21)) oled_width = 128 oled_height = 64 oled = ssd1306.SSD1306_I2C(oled_width, oled_height, i2c) led_jaune=Pin(5,Pin.OUT) # Règle la broche D23 de la carte ESP32 en mode sortie led_rouge=Pin(2,Pin.OUT) # Règle la broche D22 de la carte ESP32 en mode sortie led_verte=Pin(18,Pin.OUT) # Règle la broche D23 de la carte ESP32 en mode sortie while True: led_jaune.value(1) # Allumer LED jaune led_rouge.value(0) led_verte.value(0) oled.text('Traversez vite', 0, 10) oled.show() time.sleep(1) # Attendre 1s oled.fill(0) # effacer l'ecran led_jaune.value(0) # Éteindre LED jaune led_rouge.value(1) # Allumer LED rouge led_verte.value(0) # Éteindre LED verte oled.text('stop', 0, 10) oled.show() time.sleep(3) # Attendre 3s oled.fill(0) led_jaune.value(0) # Éteindre LED jaune led_rouge.value(0) # Éteindre LED rouge led_verte.value(1) # Allumer LED verte oled.text('traversez', 0, 10) oled.show() time.sleep(3) # Attendre 3s oled.fill(0) |
Remarque: il faut importer la bibliothèque suivante: ssd1306