La carte Arduino UNO est une carte de développement microcontrôleur populaire, mais elle n'est pas équipée nativement de connectivité Wi-Fi. Cependant, il est possible d'ajouter une connectivité Wi-Fi à une carte Arduino UNO en utilisant des modules externes ou des shields (cartes d'extension) conçus spécifiquement pour cela. Voici comment vous pouvez ajouter le Wi-Fi à une carte Arduino UNO :
Utilisation d'un module Wi-Fi externe : Vous pouvez connecter un module Wi-Fi externe à votre Arduino UNO via l'une des interfaces de communication disponibles, telles que l'UART ou les broches de communication série (SPI). Des modules populaires pour ajouter le Wi-Fi à votre Arduino incluent le module ESP8266. Ces modules sont très polyvalents, abordables et largement pris en charge par la communauté Arduino.
Utilisation d'un shield Wi-Fi : Un shield est une carte d'extension qui se monte directement sur une carte Arduino UNO. Il existe des shields Wi-Fi spécialement conçus pour Arduino, comme le shield Arduino Wi-Fi 101 ou le shield Adafruit CC3000, qui ajoutent des fonctionnalités de connectivité Wi-Fi à votre projet.
Une fois que vous avez ajouté le module Wi-Fi à votre Arduino UNO, vous pouvez l'utiliser pour réaliser diverses applications IoT (Internet des objets) ou pour connecter votre Arduino à un réseau local ou à Internet. Vous pouvez développer des projets tels que la surveillance à distance, le contrôle à distance, la collecte de données en ligne, etc.
Lorsque vous utilisez le Wi-Fi avec Arduino, vous devrez également prendre en compte la gestion des connexions Wi-Fi, la sécurité et la gestion de la pile IP, en fonction du module ou du shield que vous choisissez. Vous devrez également installer les bibliothèques et les outils de développement appropriés dans votre environnement de développement Arduino pour prendre en charge la connectivité Wi-Fi.
Pour contrôler le module LED RGB par les boutons poussoirs vous aurez besoin des composants suivants :
Arduino UNO :
La carte Arduino UNO est la carte de développement principale utilisée pour programmer et contrôler le module LED RGB.
Module Wi-Fi ESP8266:
Le module Wi-Fi ESP8266 est un petit module d'extension qui offre une connectivité Wi-Fi à faible coût et est devenu extrêmement populaire parmi les amateurs de l'électronique et les développeurs de l'Internet des objets (IoT). Il est fabriqué par Espressif Systems, une société chinoise spécialisée dans les microcontrôleurs et les solutions sans fil.
Vous aurez besoin d'un module Wi-Fi pour ajouter la connectivité Wi-Fi à votre Arduino UNO.
Afficheur LCD I2C :
Un afficheur LCD I2C est un module d'affichage à cristaux liquides qui utilise une interface I2C (Inter-Integrated Circuit) pour communiquer avec un microcontrôleur comme un Arduino.
Il sera utilisé pour afficher l'état de connexion au réseau WIF.
Module d'alimentation 3V/5V
Le module Wi-Fi ESP8266 est alimenté par le module d'alimentation 3V/5V qui est un module de conversion de tension qui permet de fournir une tension de 3,3V ou de 5V à un circuit électronique. Il est souvent utilisé pour alimenter des cartes de développement et des capteurs qui nécessitent une tension de 3,3V ou de 5V.
Batterie 9V:
On va utiliser cette batterie pour alimenter le module WIFI ESP8266
Breadboard (Plaque d'essai) :
Une breadboard est utile pour créer un circuit temporaire et connecter facilement les composants entre eux.
Fils de connexion :
Dans le domaine de l'électronique et de l'informatique, un "fil de connexion" peut faire référence à un câble ou à un fil électrique utilisé pour établir une connexion entre deux composants, tels que des appareils électroniques
Une fois que vous avez les composants nécessaires, vous pouvez suivre ces étapes pour assembler le circuit et le programmer :
- Connectez le module Wi-Fi ESP8266 :
Le module ESP8266 est connecté à l’Arduino UNO en utilisant les broches suivantes:
ESP8266 RX –> Arduino UNO (pin 3)
ESP8266 TX –> Arduino UNO (pin 4)
ESP8266 RST –> Arduino UNO (pin 8)
ESP8266 VCC –> Module d’alimentation 5V
ESP8266 GND –> Module d’alimentation GND
- Connectez l’afficheur LCD I2C 16×2 :
Pour utiliser l’afficheur LCD I2C 16×2 avec un Arduino, vous pouvez suivre les étapes suivantes :
Connectez le fil SDA de l’afficheur LCD I2C au pin A4 de l’Arduino.
Connectez le fil SCL de l’afficheur LCD I2C au pin A5 de l’Arduino.
Connectez le fil VCC de l’afficheur LCD I2C à une source d’alimentation 5V.
Connectez le fil GND de l’afficheur LCD I2C à la masse de l’Arduino.
Ce code utilise un ESP8266 connecté à un Arduino pour envoyer une requête HTTP GET à un serveur (comme pour récupérer la météo d'une API).
Pour allumer une LED connectée à une carte Arduino Uno via une requête GET HTTP, vous aurez besoin d'un module Wi-Fi supplémentaire, comme l'ESP8266, pour permettre à l'Arduino de se connecter à un réseau Wi-Fi et de recevoir des requêtes HTTP. Voici comment vous pouvez faire cela :
1- Assurez-vous que le module LED RGB est correctement connectée à votre Arduino Uno .
2- Connectez un module Wi-Fi ESP8266 à l'Arduino Uno en utilisant les broches TX et RX pour établir une communication série.
3 - Écrivez le code Arduino pour gérer la requête GET HTTP afin de connecter au réseau Wifi
Voici un exemple de code :
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 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 |
#include <Adafruit_ESP8266.h> #include <SoftwareSerial.h> #include <LiquidCrystal_I2C.h> #define ESP_RX 3 #define ESP_TX 4 #define ESP_RST 8 SoftwareSerial softser(ESP_RX, ESP_TX); LiquidCrystal_I2C lcd(0x27, 20, 4); // Must declare output stream before Adafruit_ESP8266 constructor; can be // a SoftwareSerial stream, or Serial/Serial1/etc. for UART. Adafruit_ESP8266 wifi(&softser, &Serial, ESP_RST); // Must call begin() on the stream(s) before using Adafruit_ESP8266 object. #define ESP_SSID "HUAWEI Y5 2019" // Your network name here #define ESP_PASS "b582058c4d86" // Your network password here #define PORT 80 // Find/Google your email provider's SMTP outgoing port for unencrypted email int count = 0; // we'll use this int to keep track of which command we need to send next bool send_flag = false; // we'll use this flag to know when to send the email commands void setup() { lcd.init(); char buffer[50]; // This might work with other firmware versions (no guarantees) // by providing a string to ID the tail end of the boot message: // comment/replace this if you are using something other than v 0.9.2.4! wifi.setBootMarker(F("Version:0.9.2.4]\r\n\r\nready")); softser.begin(9600); // Soft serial connection to ESP8266 Serial.begin(57600); while(!Serial); // UART serial debug // Test if module is ready lcd.backlight(); Serial.print(F("Hard reset...")); lcd.print(F("Hard reset...")); if(!wifi.hardReset()) { Serial.println(F("no response from module.")); for(;;); } Serial.println(F("OK.")); lcd.print(F("OK.")); Serial.print(F("Soft reset...")); lcd.print(F("Soft reset...")); if(!wifi.softReset()) { Serial.println(F("no response from module.")); for(;;); } Serial.println(F("OK.")); lcd.clear(); lcd.print(F("OK.")); Serial.print(F("Checking firmware version...")); lcd.clear(); lcd.print(F("Checking firmware version...")); delay(2000); wifi.println(F("AT+GMR")); if(wifi.readLine(buffer, sizeof(buffer))) { Serial.println(buffer); lcd.clear(); lcd.print(buffer); delay(2000); wifi.find(); // Discard the 'OK' that follows } else { Serial.println(F("error")); } Serial.print(F("Connecting to WiFi...")); lcd.clear(); lcd.print(F("Connect to WiFi...")); delay(2000); if(wifi.connectToAP(F(ESP_SSID), F(ESP_PASS))) { // Le module wifi ESP8266 est connecté au réseau // IP addr check isn't part of library yet, but // we can manually request and place in a string. Serial.print(F("OK\nChecking IP addr...")); wifi.println(F("AT+CIFSR")); if(wifi.readLine(buffer, sizeof(buffer))) { lcd.clear(); Serial.println(buffer); // afficher l'adresse IP du module wifi ESP8266 lcd.setCursor(0, 0); lcd.print("IP de ESP8266 "); lcd.setCursor(0, 1); lcd.print(buffer); } } } void loop() { } |
Test :
1- Téléchargez le code sur votre Arduino UNO.
2- Alimentez votre Arduino et le module Wi-Fi.
3- Vous aller voir que la carte Arduino UNO va se connecter au réseau WIFI.
La robotique éducative joue un rôle important dans l'éducation des enfants et des jeunes en les aidant à acquérir des compétences en science et technologie.
Dans ce cadre notre site web représente une excellente ressource pour les parents, les enseignants et les enfants qui souhaitent découvrir la robotique.
Zaouiet Kontech-Jemmel-Monastir-Tunisie
+216 92 886 231
medaliprof@gmail.com
Site robotique réalisé par Mohamed Ali-Prof Info