Le Wi-Fi et le Bluetooth sont deux technologies sans fil qui permettent aux appareils de communiquer entre eux, mais ils sont conçus pour des utilisations différentes et présentent des différences importantes :
Wi-Fi : Le Wi-Fi offre une portée plus étendue par rapport au Bluetooth. En général, le Wi-Fi peut atteindre des distances allant jusqu'à plusieurs dizaines de mètres, voire plus avec des équipements spécifiques et une ligne de vue dégagée.
Bluetooth : Le Bluetooth est conçu pour des communications à courte portée. Il est généralement efficace sur des distances allant jusqu'à environ 10 mètres, bien que la portée puisse varier en fonction de la classe de Bluetooth utilisée.
Wi-Fi : Le Wi-Fi est couramment utilisé pour connecter des appareils à Internet ou à un réseau local, permettant la transmission de données à haut débit. Il est utilisé pour la navigation sur le Web, le streaming de vidéos, le partage de fichiers, etc.
Bluetooth : Le Bluetooth est souvent utilisé pour connecter des appareils entre eux pour des applications telles que le streaming audio sans fil, la connexion d'écouteurs ou d'enceintes Bluetooth à un téléphone, la synchronisation de données entre un smartphone et une montre intelligente, etc.
Wi-Fi : Le Wi-Fi offre généralement des débits de données plus élevés par rapport au Bluetooth. Les normes Wi-Fi les plus courantes, telles que 802.11ac et 802.11ax, peuvent fournir des débits de plusieurs gigabits par seconde.
Bluetooth : Le Bluetooth offre des débits de données plus modestes, adaptés à des utilisations telles que la diffusion audio et le transfert de fichiers. Les débits Bluetooth peuvent varier en fonction de la version et de la classe du Bluetooth, mais ils sont généralement inférieurs à ceux du Wi-Fi.
Wi-Fi : Le Wi-Fi a tendance à consommer plus d'énergie que le Bluetooth, ce qui peut affecter la durée de vie de la batterie des appareils mobiles.
Bluetooth : Le Bluetooth est conçu pour être économe en énergie, ce qui en fait un choix privilégié pour les appareils portables tels que les écouteurs sans fil et les montres intelligentes.
Wi-Fi : Le Wi-Fi offre généralement un meilleur niveau de sécurité, avec des options telles que le chiffrement WPA2/WPA3 pour protéger les communications.
Bluetooth : Le Bluetooth est également sécurisé, mais il peut être plus vulnérable à certaines attaques, en particulier lorsque des appareils sont appariés en mode non sécurisé.
En résumé, le Wi-Fi est principalement utilisé pour des communications à longue portée et à haut débit, tandis que le Bluetooth est adapté aux communications à courte portée, à faible consommation d'énergie et à des débits de données plus modestes. Chacune de ces technologies est conçue pour des cas d'utilisation spécifiques et a ses avantages et ses inconvénients.
Le Wi-Fi joue un rôle essentiel dans la robotique moderne en permettant la communication sans fil entre différents composants et systèmes robotiques. Voici comment le Wi-Fi est utilisé dans la robotique et quel est son rôle principal :
Commande à distance : Le Wi-Fi permet aux opérateurs ou aux utilisateurs de contrôler un robot à distance. Par exemple, un opérateur peut utiliser un ordinateur, une tablette ou un smartphone connecté à un réseau Wi-Fi pour envoyer des commandes de déplacement, de manipulation ou d'autres tâches au robot. Cela est couramment utilisé dans les applications de robotique industrielle, de drones, de robots de téléprésence, etc.
Surveillance et retour d'informations : Le Wi-Fi est utilisé pour transmettre des données en temps réel depuis le robot vers un poste de commande ou une station de surveillance. Les capteurs du robot, tels que les caméras, les capteurs de distance, les capteurs de température, etc., peuvent envoyer des informations importantes à l'opérateur ou au système de contrôle via Wi-Fi. Cela permet de surveiller l'environnement du robot et de prendre des décisions en conséquence.
Programmation et mise à jour : Les robots équipés de Wi-Fi peuvent être programmés à distance. Les développeurs de logiciels peuvent envoyer des mises à jour, des modifications de code ou de nouvelles instructions au robot sans avoir besoin d'une connexion filaire directe. Cela facilite la mise à jour du logiciel embarqué et permet d'améliorer les performances et les fonctionnalités du robot au fil du temps.
Communication entre robots : Dans certaines applications, plusieurs robots peuvent collaborer pour effectuer des tâches complexes. Le Wi-Fi peut être utilisé pour permettre aux robots de communiquer entre eux, de coordonner leurs actions et de partager des informations critiques. Cela peut être utile dans des domaines tels que la robotique agricole, l'exploration spatiale, la surveillance de l'environnement, etc.
Intégration dans les réseaux IoT (Internet des objets) : Les robots connectés à un réseau Wi-Fi peuvent s'intégrer dans des environnements IoT plus vastes. Ils peuvent partager des données avec d'autres appareils connectés, envoyer des alertes en cas de problème, et contribuer à la collecte de données pour des analyses plus approfondies.
En résumé, le Wi-Fi est un élément clé de la robotique moderne car il permet la communication sans fil, la commande à distance, la surveillance et la mise à jour des robots. Il facilite également l'intégration des robots dans des réseaux plus larges, ce qui améliore leur capacité à fonctionner de manière autonome et à accomplir une variété de tâches dans différents domaines d'application.
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.
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. Voici une présentation des caractéristiques clés du module Wi-Fi ESP8266 :
Taille compacte : L'ESP8266 est un module très compact, ce qui le rend facile à intégrer dans de petits projets électroniques. Il est généralement disponible sous forme de module monté sur une carte ou en version nue.
Connectivité Wi-Fi : L'ESP8266 est principalement utilisé pour ajouter une connectivité Wi-Fi à des microcontrôleurs, des cartes Arduino ou d'autres plateformes. Il prend en charge les protocoles Wi-Fi 802.11 b/g/n, ce qui permet la communication sans fil avec des réseaux locaux (LAN) ou Internet.
Microcontrôleur intégré : En plus de la connectivité Wi-Fi, l'ESP8266 intègre également un microcontrôleur Tensilica Xtensa LX106, ce qui signifie qu'il est capable d'exécuter du code directement sur le module. Cela en fait une solution autonome pour de nombreux projets IoT sans avoir besoin d'un microcontrôleur externe.
Interface GPIO : L'ESP8266 est équipé de broches GPIO (General-Purpose Input/Output) qui permettent de contrôler des composants externes tels que des capteurs, des actionneurs, des écrans, etc. Ces broches le rendent polyvalent pour de nombreuses applications.
Environnement de développement : Pour programmer l'ESP8266, vous pouvez utiliser l'environnement de développement Arduino avec des bibliothèques spécifiques pour l'ESP8266. Il existe également des SDK (Software Development Kits) fournis par Espressif Systems pour un développement plus avancé.
Prix abordable : L'ESP8266 est connu pour son coût très abordable, ce qui en fait une option attrayante pour les projets DIY et les prototypes.
Large communauté et support : En raison de sa popularité, l'ESP8266 dispose d'une grande communauté de développeurs et d'utilisateurs. Il existe de nombreuses ressources en ligne, des tutoriels et des forums où vous pouvez trouver de l'aide et des conseils pour vos projets.
Versions et modèles : Au fil du temps, plusieurs versions et modèles d'ESP8266 ont été développés, offrant des fonctionnalités et des capacités légèrement différentes. Les versions populaires incluent l'ESP-01, l'ESP-12E, l'ESP-32, et d'autres.
L'ESP8266 est largement utilisé dans une variété d'applications IoT, telles que la domotique, la surveillance à distance, la collecte de données, le contrôle de dispositifs, la météo, et bien plus encore. Sa polyvalence, sa facilité d'utilisation et son coût abordable en font un choix populaire pour de nombreux projets électroniques et IoT.
Pour allumer trois LEDs connectées à 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 les trois LEDs verte, rouge et jaune sont correctement connectées à 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 et contrôler les trois LEDs en fonction de la requête. Voici un exemple de code :
Voici un exemple de code Arduino qui allume les trois LEDs lorsqu'une requête HTTP est reçue via Wi-Fi :
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 95 96 97 98 |
#include <SoftwareSerial.h> SoftwareSerial esp8266(2,3); //Pin 2 & 3 of Arduino as RX and TX. Connect TX and RX of ESP8266 respectively. #define DEBUG true #define red_led_pin 4 //Red LED is connected to Pin 4 of Arduino #define green_led_pin 5 //Green LED is connected to Pin 5 of Arduino #define yellow_led_pin 6 //Yellow LED is connected to Pin 6 of Arduino void setup() { pinMode(red_led_pin, OUTPUT); digitalWrite(red_led_pin, LOW); pinMode(green_led_pin, OUTPUT); digitalWrite(green_led_pin, LOW); pinMode(yellow_led_pin, OUTPUT); digitalWrite(yellow_led_pin, LOW); Serial.begin(9600); esp8266.begin(115200); //Baud rate for communicating with ESP8266. Your's might be different. esp8266Serial("AT+RST\r\n", 5000, DEBUG); // Reset the ESP8266 esp8266Serial("AT+CWMODE=1\r\n", 5000, DEBUG); //Set station mode Operation esp8266Serial("AT+CWJAP=\"Modem5\",\"Victoire\"\r\n", 5000, DEBUG);//Enter your WiFi network's SSID and Password. while(!esp8266.find("OK")) { } esp8266Serial("AT+CIFSR\r\n", 5000, DEBUG);//You will get the IP Address of the ESP8266 from this command. esp8266Serial("AT+CIPMUX=1\r\n", 5000, DEBUG); esp8266Serial("AT+CIPSERVER=1,80\r\n", 5000, DEBUG); } void loop() { if (esp8266.available()) { if (esp8266.find("+IPD,")) { String msg; esp8266.find("?"); msg = esp8266.readStringUntil(' '); String command1 = msg.substring(0, 3); String command2 = msg.substring(4); if (DEBUG) { Serial.println(command1);//Must print "led" Serial.println(command2);//Must print "O" , "1" , "2" ,"3" , "4" ou "5" } delay(100); if (command2 == "0") { digitalWrite(red_led_pin, LOW); // Eteindre la LED rouge } if (command2 == "1") { digitalWrite(red_led_pin, HIGH); // Allumer la LED rouge } if (command2 == "2") { digitalWrite(green_led_pin, LOW); // Eteindre la LED verte } if (command2 == "3") { digitalWrite(green_led_pin, HIGH); // Allumer la LED verte } if (command2 == "4") { digitalWrite(yellow_led_pin, LOW); // Eteindre la LED jaune } if (command2 == "5") { digitalWrite(yellow_led_pin, HIGH); // Allumer la LED jaune } } } } String esp8266Serial(String command, const int timeout, boolean debug) { String response = ""; esp8266.print(command); long int time = millis(); while ( (time + timeout) > millis()) { while (esp8266.available()) { char c = esp8266.read(); response += c; } } if (debug) { Serial.print(response); } return response; } |
Test :
1- Téléchargez le code sur votre Arduino UNO.
2- Alimentez votre Arduino et le module Wi-Fi.
3- Connectez-vous au même réseau Wi-Fi depuis un périphérique (comme un smartphone ou un ordinateur).
4- Vous pouvez maintenant envoyer des requêtes GET HTTP à l'adresse IP de votre module WIFI ESP8266 depuis un navigateur Web. Par exemple, en entrant "http://adresse_ip_esp8266/?led=1" dans la barre d'adresse, la LED rouge devrait s'allumer, et en entrant "http://adresse_ip_esp8266/?led=0", la LED rouge devrait s'éteindre.
Voici les données affichées par le programme Arduino dans le moniteur série de l'IDE Arduino :
La LED rouge devrait s'allumer en réponse à la requête suivante (http://192.168.43.129/?led=1).
La LED rouge devrait s'éteindre en réponse à la requête suivante (http://192.168.43.129/?led=0).
La LED verte devrait s'allumer en réponse à la requête suivante (http://192.168.43.129/?led=3).
La LED verte devrait s'éteindre en réponse à la requête suivante (http://192.168.43.129/?led=2).
La LED jaune devrait s'allumer en réponse à la requête suivante (http://192.168.43.129/?led=5).
La LED jaune devrait s'éteindre en réponse à la requête suivante (http://192.168.43.129/?led=4).
Ce tutoriel de base vous montre comment contrôler les trois LEDs via Wi-Fi à l'aide d'une carte Arduino UNO et d'un module Wi-Fi. Vous pouvez ensuite étendre cette idée pour créer des projets IoT plus complexes en utilisant des capteurs, des applications de contrôle à distance, etc.
Pour allumer une LED connectée à une carte Arduino UNO via Wi-Fi, vous aurez besoin des composants suivants :
Arduino UNO :
La carte Arduino UNO est la carte de développement de base que vous utiliserez pour contrôler la LED.
Module Wi-Fi ESP8266: Vous aurez besoin d'un module Wi-Fi pour ajouter la connectivité Wi-Fi à votre Arduino UNO.
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).
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.
La LED, ou diode électroluminescente (en anglais, Light Emitting Diode), est un composant électronique qui émet de la lumière lorsqu'un courant électrique le traverse. Contrairement aux ampoules incandescentes ou fluorescentes, les LED n'utilisent pas de filament chauffé pour produire de la lumière, ce qui les rend beaucoup plus efficaces sur le plan énergétique et durables.
Vous aurez besoin d'une résistance pour limiter le courant traversant la LED et éviter de l'endommager. La valeur de la résistance peut être calculée en utilisant la loi d'Ohm, en fonction de la tension de fonctionnement de la LED et du courant souhaité. Par exemple, pour une LED rouge typique avec une tension de 2V et un courant de 20mA, une résistance d'environ 220 ohms peut être utilisée (R = (Vcc - Vled) / Iled).
Breadboard :
Une plaque de prototypage (breadboard) vous permettra de connecter facilement les composants sans soudure.
Fils de connexion
Vous aurez besoin de fils de connexion pour connecter les composants entre eux.
Une fois que vous avez les composants nécessaires, vous pouvez suivre ces étapes pour assembler le circuit et le programmer :
Connectez les trois LEDs :
Insérez les trois LEDs rouge , verte et jaune dans la breadboard.
1- Connectez la LED rouge à la carte Arduino UNO. Branchez la patte longue (anode) de la LED au pin 4 de l'Arduino via une résistance de 220 ohms.
2- Connectez la patte courte (cathode) de la LED à la masse (GND) de l'Arduino.
3- Connectez la LED verte à la carte Arduino UNO. Branchez la patte longue (anode) de la LED au pin 5 de l'Arduino via une résistance de 220 ohms.
4- Connectez la patte courte (cathode) de la LED à la masse (GND) de l'Arduino.
5- Connectez la LED jaune à la carte Arduino UNO. Branchez la patte longue (anode) de la LED au pin 6 de l'Arduino via une résistance de 220 ohms.
6- Connectez la patte courte (cathode) de la LED à la masse (GND) de l'Arduino.
Connectez le module Wi-Fi ESP8266 :
Assurez-vous que le module Wi-Fi est alimenté correctement (3,3 V).
Connectez les broches TX du module Wi-Fi au pin 2 de l'Arduino UNO et RX du module Wi-Fi au pin 3 de l'Arduino UNO. Assurez-vous que la masse du module Wi-Fi est connectée à la masse du module d'alimentation 3.3V/5V.
Bonjour, J'ai voulu inclure la bibliothèque ; IRremote -master et je n'y suis pas arrivé et je me suis aperçu qu'il ne s'agissait pas d'une bibliothéque mais d'un croquis. La vérification est bonne le téléversement se passe très bien. Seulement la télécommande allume bien une lumière rouge dans l'IRreceiver mais les LED ne s'allument pas. Merci de votre aide
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