Table des matières:
- Étape 1: choses dont vous aurez besoin
- Étape 2: Quelques informations sur ESP8266
- Étape 3: Brochage de l'ESP8266
- Étape 4: Que faut-il utiliser pour communiquer avec ESP8266 ?
- Étape 5: Montage de l'ESP8266 sur la planche à pain
- Étape 6: Alimentation
- Étape 7: Conversion de niveau logique
- Étape 8: Connexions
- Étape 9: Commencer
- Étape 10: Commandes AT
- Étape 11: Syntaxe générale des commandes AT
- Étape 12: Connexion au Wifi
- Étape 13: Les choses parlent
- Étape 14: Quelques commandes AT supplémentaires
- Étape 15: Configuration de la connexion TCP
- Étape 16: Envoi du Tweet
- Étape 17: Que faire après cela
Vidéo: Guide du débutant sur ESP8266 et Tweeter avec ESP8266 : 17 étapes (avec photos)
2024 Auteur: John Day | [email protected]. Dernière modifié: 2024-01-30 09:09
J'ai découvert Arduino il y a 2 ans. J'ai donc commencé à jouer avec des choses simples comme des LED, des boutons, des moteurs, etc. un écran LCD. J'ai découvert que cela pouvait être fait en envoyant et en recevant des données via Internet. La solution consistait donc à se connecter à Internet. Là a commencé ma recherche sur la façon de connecter l'Arduino à Internet et d'envoyer et de recevoir des données. J'ai découvert les modules wifi sur Internet et les ai trouvés très coûteux. Ensuite, j'ai entendu parler de l'ESP8266.
J'ai beaucoup lu sur Internet sur le module ESP8266 il y a environ un an et j'en ai acheté un, mais je me suis mis à travailler avec eux le mois dernier. À l'époque, il n'y avait pas d'informations détaillées disponibles. Cependant, de nombreuses documentations, vidéos sont disponibles. sur Internet concernant le firmware, les commandes AT, les projets, etc. J'ai donc décidé de me lancer.
J'ai écrit cet instructable en tant que guide du débutant car j'ai rencontré beaucoup de problèmes de câblage et de démarrage avec l'ESP8266. J'ai donc décidé d'écrire cet Instructable afin que d'autres personnes qui rencontrent des problèmes avec leurs modules puissent les résoudre plus rapidement
Dans ce Instructable je vais essayer de montrer
- Comment connecter un ESP8266 et communiquer avec lui via Arduino Uno.
- Je vais également essayer de montrer comment un tweet peut être envoyé via Thingspeak.
Que peut faire l'ESP8266 ? Il est limité par votre imagination. J'ai vu des projets et des tutoriels sur Internet montrant comment récupérer la température d'une ville, les cours des actions, envoyer et recevoir des e-mails, passer des appels téléphoniques et bien plus encore. Je montrerai dans ce Instructable comment envoyer un tweet.
Étape 1: choses dont vous aurez besoin
Voici les choses dont vous aurez besoin. La plupart d'entre elles peuvent être achetées dans n'importe quel magasin d'électricité ou en ligne (j'ai fourni les liens pour référence).
- 1xESP8266 (ESP-01)-ebay
- 1 adaptateur de planche à pain (apprenez à en créer un ici ou à utiliser des câbles de démarrage)
- 1xLM2596 -ebay
- 1xConvertisseur de niveau logique -ebay
- 1xArduino Uno
- Câble USB pour Arduino Uno
- 1xplanche à pain -ebay
- Fils -ebay
- IDE Arduino
- Un compte avec Thingspeak
Le coût total sera d'environ Rs 600 (environ 9 $). J'ai exclu le coût d'Arduino Uno car cela dépend si vous voulez un original ou un clone. Les clones les moins chers sont disponibles à environ Rs 500 (environ 4 $).
Étape 2: Quelques informations sur ESP8266
L'ESP8266 a été lancé en 2014 il y a tout juste un an, il est donc assez récent. Les puces sont fabriquées par Espressif.
Avantage
Le plus grand avantage de l'ESP8266 est peut-être son coût. Il est assez bon marché et vous pouvez en acheter quelques-uns d'un seul coup. Avant de le savoir, je ne pouvais même pas penser à acheter un module wifi. Ils étaient trop chers.. De nouvelles versions d'ESP8266 sont publiées assez fréquemment et la dernière est l'ESP 12. Cependant, dans ce Instructable, je me concentrerai uniquement sur l'ESP 01 qui est assez populaire. De plus, lorsque vous achetez l'ESP8266, il est préchargé avec le firmware AT par défaut. vous êtes prêt à commencer dès que vous en achetez un.. De plus, comme vous le verrez dans cette instructable, il est assez facile de les interfacer.
Désavantage
Chaque appareil a ses propres avantages et inconvénients et l'ESP n'est pas différent. L'ESP peut parfois s'avérer très délicat et frustrant à utiliser. Comme il est assez récent, il vous sera difficile d'obtenir des informations à son sujet. Heureusement, une communauté à esp8266.com existe, ce qui est très utile. De plus, il commence aussi parfois à faire des choses inattendues, comme jeter une charge de déchets via la connexion série, etc.
Notez qu'il y a beaucoup de documentation disponible sur Internet et qu'une partie de celle-ci est en conflit. aussi) mais cela a bien fonctionné.
Étape 3: Brochage de l'ESP8266
L'ESP8266 a 8 broches comme indiqué.
Gnd et Vcc doivent être connectés comme d'habitude à la terre et à l'alimentation respectivement. L'ESP8266 fonctionne sur 3,3 V.
La broche RESET est utilisée pour réinitialiser manuellement l'ESP. Elle doit normalement être connectée à 3,3 V. Si vous souhaitez réinitialiser l'ESP, connectez cette broche à la terre momentanément, puis revenez à 3,3 V.
CH_PD est la mise hors tension de la puce qui devrait normalement être connectée à 3,3 V.
GPIO0 et GPIO2 sont des broches de sortie d'entrée à usage général. Celles-ci doivent être normalement connectées à 3,3 V. Cependant, lors du flashage du micrologiciel, connectez GPIO0 à gnd.
Les broches Rx et Tx sont les broches de transmission et de réception de l'ESP8266. Elles fonctionnent sur une logique de 3,3 V, c'est-à-dire que 3,3 V est la logique HAUTE pour l'ESP8266.
Les connexions détaillées sont fournies dans les étapes ultérieures.
Étape 4: Que faut-il utiliser pour communiquer avec ESP8266 ?
Il existe de nombreux appareils qui peuvent être utilisés pour communiquer avec ESP8266, tels que les programmeurs FTDI, le convertisseur série USB vers TTL, Arduino, etc. Cependant, j'ai utilisé un Arduino Uno simplement parce que c'est le plus simple et que presque tout le monde l'a. Aussi si vous avez un Arduino, vous avez également l'IDE Arduino et son moniteur série peut être utilisé pour communiquer avec l'ESP8266. Donc, ne dépensez pas d'argent en programmeurs FTDI, etc.
Cependant, si vous le souhaitez ou si vous en avez déjà un, vous pouvez utiliser un programmeur FTDI ou un convertisseur série USB vers TTL (plus d'informations sur la façon de les connecter plus tard). Il existe également de nombreux logiciels tels que RealTerm ou Putty. Vous pouvez utiliser ceux-ci de la même manière que le moniteur série de l'IDE Arduino.
Étape 5: Montage de l'ESP8266 sur la planche à pain
Notez que les broches de l'ESP8266 ne sont pas compatibles avec la maquette. Cela peut être surmonté de 2 manières.
Utilisez des cavaliers femelles à mâles qui peuvent rendre les choses en désordre ou
Faites comme indiqué dans ce Instructable ou
Utilisez une carte adaptateur, fabriquez-en une vous-même (il y en a beaucoup sur Instructables) ce qui est bien.
Étape 6: Alimentation
L'ESP8266 fonctionne sur une alimentation 3,3 V. Ne le connectez pas à la broche 5 V sur Arduino. Il brûlera probablement.
Certains tutoriels ont suggéré de créer un circuit diviseur de tension en utilisant des résistances de 1k, 2k avec 5V en entrée et d'obtenir 3,3V sur la résistance de 2k et de le fournir à l'Arduino.
J'ai pu l'alimenter en utilisant le 3,3 V sur Arduino, mais j'ai constaté que l'ESP devenait chaud après un certain temps.
Vous pouvez utiliser un régulateur de tension 3,3V.
Ou vous pouvez utiliser le convertisseur abaisseur dc-dc LM2596. Ce sont assez bon marché.et je les ai utilisés. Donnez 5V d'Arduino à l'entrée. Ajustez le potentiomètre sur le module, jusqu'à ce que la sortie devienne 3.3VI trouvé que l'ESP peut être alimenté à partir de l'un d'eux pendant des heures. Effectuez les connexions comme indiqué sur la figure.
Étape 7: Conversion de niveau logique
Il est mentionné que l'ESP a une logique de 3,3 V tandis que l'Arduino a une logique de 5 V.
Cela signifie que dans l'ESP 3,3 V est logique HAUT alors que dans Arduino 5 V est logique HAUT. Cela peut causer des problèmes lors de leur connexion.
J'ai trouvé sur Internet que la conversion de niveau logique doit être appliquée lors de l'interfaçage d'ESP Rx et Tx avec Arduino.
Certains tutoriels ont mentionné que la conversion de niveau logique est nécessaire lors de l'interfaçage de la broche ESP Rx.
Cependant, j'ai trouvé que le simple fait de connecter normalement les broches ESP Rx et Tx à l'Arduino ne posait aucun problème
J'ai connecté Rx et Tx via un convertisseur de niveau logique ainsi que Rx seul mais je n'ai obtenu aucune réponse.
Cependant, j'ai trouvé que la connexion de la broche ESP Tx via un convertisseur de niveau logique tout en connectant directement le Tx ne causait également aucun problème
Le convertisseur de niveau logique peut donc être utilisé ou non.
Utilisez la méthode qui vous convient par essais et erreurs.
Étape 8: Connexions
Les connexions de l'ESP8266 sont:
ESP8266
Gnd -------------------- Gnd
GPIO2 --------------- 3.3V
GPIO0 --------------- 3.3V
Rx -------------------- Rx d'Arduino
Tx --------------------- Tx d'Arduino (convertisseur de niveau logique ou direct)
CH_PD -------------- 3.3V
RÉINITIALISATION -------------- 3.3V
Vcc -------------------- 3.3V
(Notez que dans certaines versions, ESP Rx doit être connecté à Arduino Tx et ESP Tx doit être connecté à Arduino Rx).
Si vous utilisez un programmeur FTDI ou un convertisseur série USB vers TTL, connectez respectivement leurs Tx et Rx à Rx et Tx de ESP8266.
Étape 9: Commencer
Après avoir effectué les connexions, téléchargez
void setup()
{}
boucle vide()
{}
c'est-à-dire un croquis vierge de l'Arduino..
Ouvrez le moniteur série et réglez-le sur "Both NL & CR".
Expérimentez avec le débit en bauds. Il devrait généralement être de 9600, bien qu'il puisse parfois être de 115200.
Étape 10: Commandes AT
Dire simplement que les commandes AT sont des commandes qui peuvent être envoyées à l'ESP8266 afin de lui permettre d'effectuer certaines fonctions telles que le redémarrage, la connexion au wifi, etc. L'ESP en réponse enverra une confirmation sous forme de texte. Ci-dessous, j'en ai expliqué quelques-unes. AT commandes et comment l'ESP y répond. Notez que par envoi, je veux dire taper la commande et appuyer sur entrée (retour).
Envoyez AT via le moniteur série
Cette commande est utilisée comme commande de test.
Comment l'ESP répond: OK doit être renvoyé.
Envoyez AT+RST via le moniteur série
Cette commande permet de redémarrer le module.
Comment l'ESP répond: l'ESP renvoie une charge de déchets. Cependant, recherchez Ready ou Ready.
Envoyez AT+GMR via le moniteur série
Cette commande permet de déterminer la version du firmware du module.
Comment l'ESP répond: la version du micrologiciel doit être renvoyée.
Le micrologiciel est un logiciel qui est installé sur un appareil généralement sur sa ROM (mémoire en lecture seule), c'est-à-dire qu'il n'est pas destiné à être modifié fréquemment ou pas du tout. Il permet le contrôle et la manipulation des données de l'appareil. ESP8266 a un numéro de différents firmwares qui sont tous assez faciles à flasher (installer).
Étape 11: Syntaxe générale des commandes AT
La syntaxe générale des commandes AT pour exécuter différentes fonctions est donnée:
AT+paramètre=?
Lorsqu'une commande de ce type est envoyée via le moniteur série, l'ESP renvoie toutes les valeurs que ce paramètre peut prendre.
AT+paramètre=val
Lorsqu'une commande de ce type est envoyée via le moniteur série, l'ESP définit la valeur du paramètre sur val.
AT+paramètre ?
Lorsqu'une commande de ce type est envoyée via le moniteur série, l'ESP renvoie la valeur actuelle du paramètre.
Certaines commandes AT peuvent prendre un seul des types ci-dessus tandis que d'autres peuvent prendre les 3.
Un exemple de commande possible dans les 3 types ci-dessus est CWMODE, qui est utilisé pour définir le mode wifi.
Envoyer AT+CWMODE=? via le moniteur série
Comment l'ESP répond: Toutes les valeurs que l'ESP CWMODE peut prendre (1-3) sont renvoyées spécifiquement +CWMODE(1-3). Où
1=Statique
2=PA
3=À la fois statique et AP
Envoyez AT+CWMODE=1 via le moniteur série
Comment l'ESP répond: OK doit être renvoyé s'il y a un changement dans le CWMODE par rapport à sa valeur précédente et qu'il est défini sur statique, sinon aucun changement ne doit être renvoyé s'il n'y a pas de changement dans la valeur CWMODE.
IMPORTANT: à moins que CWMODE ne soit défini sur 1, les commandes des étapes ultérieures ne fonctionneront pas.
Envoyer AT+CWMODE ? via le moniteur série
Comment l'ESP répond: La valeur actuelle de CWMODE doit être renvoyée, en particulier si vous avez suivi l'étape ci-dessus, +CWMODE:1 doit être renvoyé.
Étape 12: Connexion au Wifi
Envoyer AT+CWLAP via le moniteur série
Cette commande permet de lister tous les réseaux de la zone.
Comment l'ESP réagit: une liste de tous les points d'accès ou réseaux wifi disponibles doit être renvoyée.
Envoyer AT+CWJAP="SSID", "mot de passe"
(y compris les guillemets doubles).
Cette commande est utilisée pour rejoindre un réseau wifi.
Comment l'ESP répond: OK doit être renvoyé si le module a été connecté au réseau.
Envoyer AT+CWJAP ? via le moniteur série
Cette commande est utilisée pour déterminer le réseau auquel l'ESP est actuellement connecté.
Comment l'ESP répond: Le réseau auquel l'ESP est connecté sera renvoyé. Plus précisément +CWJAP: "SSID"
Envoyer AT+CWQAP via le moniteur série
Cette commande permet de se déconnecter du réseau auquel l'ESP est actuellement connecté.
Comment l'ESP répond: L'ESP quitte le réseau auquel il est connecté et OK est renvoyé.
Envoyer AT + CIFSR via le moniteur série
Cette commande est utilisée pour déterminer l'adresse IP de l'ESP.
Comment l'ESP répond: L'adresse IP de l'ESP est renvoyée.
Étape 13: Les choses parlent
Si vous n'avez pas encore créé de compte sur Thingspeak, créez-en un maintenant.
Après avoir créé un compte sur Thingspeak, allez dans Apps>ThingTweet.
Associez-y votre compte Twitter.
Notez la clé API qui est générée.
Après l'utilisation de l'application ThingTweet pour lier un compte Twitter à votre compte ThingSpeak, vous pouvez envoyer un tweet à l'aide de l'API TweetContol.
Une API (interface de programme d'application) est un code qui permet à deux logiciels de communiquer entre eux.
Certaines autres API disponibles pour les développeurs sont l'API Google Maps, l'API Open Weather, etc.
Seulement après que l'ESP a été configuré, vérifié et connecté au wifi (essentiellement toutes les étapes données dans les 2 étapes précédentes), suivez les étapes ci-dessous
Étape 14: Quelques commandes AT supplémentaires
Envoyer AT+CIPMODE=0, via le moniteur série
Comment l'ESP répond: OK est renvoyé.
La commande CIPMODE permet de définir le mode de transfert.
0=mode normal
1 = mode de passage UART-WiFi
Envoyer AT+CIPMUX=1 via le moniteur série
Comment l'ESP répond: OK est renvoyé.
La commande CIPMUX est utilisée pour définir des connexions simples ou multiples.
0=connexion unique
1=connexion multiple
Étape 15: Configuration de la connexion TCP
A noter qu'à partir de la première commande, dès l'envoi de la première, la connexion ne sera établie que pour une durée limitée. Envoyez donc les commandes le plus rapidement possible.
Envoyez AT+CIPSTART=0, "TCP", "api.thingspeak.com", 80 via le moniteur série
Comment l'ESP répond: Linked est renvoyé si la connexion a été établie.
Cette commande est utilisée pour établir une connexion TCP.
La syntaxe est AT+CIPSTART=ID de lien, type, IP distante, port distant
où
link ID=ID de la connexion réseau (0~4), utilisé pour la multi-connexion.
type=chaîne, "TCP" ou "UDP".
IP distante = chaîne, adresse IP distante (adresse du site Web).
port distant = chaîne, numéro de port distant (généralement sélectionné à 80).
Envoyer AT+CIPSEND=0, 110 via le moniteur série
Comment l'ESP répond:> (supérieur à) est renvoyé si la commande réussit.
Cette commande est utilisée pour envoyer des données.
La syntaxe est AT+CIPSEND=ID de lien, longueur
où
link ID=ID de la connexion (0~4), pour les connexions multiples. Puisque CIPMUX a été défini sur 1, est 1.
longueur = longueur des données, MAX 2048 octets. Choisissez généralement un grand nombre pour la longueur.
Étape 16: Envoi du Tweet
Maintenant pour envoyer le tweet
Envoyez GET /apps/thingtweet/1/statuses/update?api_key=yourAPI&status=yourtweet via le moniteur série.
Remplacez votre API par la clé API et votre tweet par n'importe quel tweet que vous désirez.
Dès que vous envoyez la commande ci-dessus, appuyez sur entrée (retour) à environ 1 seconde d'intervalle. Après un certain temps, ENVOYER OK, +IPD, 0, 1:1 et OK seront renvoyés, ce qui signifie que le tweet a été publié.
Ouvrez votre twitter et vérifiez si le tweet a été publié ou non.
Notez également que le même tweet ne peut pas être envoyé à plusieurs reprises.
La chaîne ci-dessus qui a été envoyée (GET….), est une requête HTTP GET.
La requête GET est utilisée pour récupérer les données du serveur donné (api.thingspeak.com).
Étape 17: Que faire après cela
(Regardez la vidéo au moins en 360p)
Accédez à ce référentiel pour télécharger le code et les schémas. Cliquez sur le bouton « Cloner ou télécharger » (de couleur verte sur le côté droit) et sélectionnez « Télécharger le ZIP » pour télécharger le fichier zip. Maintenant, extrayez le contenu sur votre ordinateur pour obtenir le code et les schémas (dans le dossier des schémas). J'ai également téléchargé une feuille de triche, qui résume toutes les commandes AT, dans ce référentiel.
Il existe de nombreuses ressources intéressantes sur Internet concernant l'ESP8266. J'en ai mentionné quelques-unes ici:
- Vidéos de Kevin Darrah.
- Vidéos ALLaboutEE.
- esp8266.com
Vous pouvez également expérimenter davantage avec les commandes AT. Il existe de nombreuses API disponibles sur Internet qui peuvent faire toutes sortes de choses telles que la météo, les cours des actions, etc.
Documentation complète de la commande AT
De plus, je travaille actuellement sur un programme qui tweete automatiquement les valeurs analogiques d'un capteur et je le publierai une fois qu'il fonctionnera correctement.
Si vous avez aimé mon vote instructable pour cela dans le concours Arduino toutes les choses.
Conseillé:
Guide du débutant sur Raspberry Pi : 6 étapes (avec photos)
Guide du débutant sur Raspberry Pi : Depuis un certain temps, je travaille avec Arduino. C'est facile, bon marché et fait le travail. Mais dernièrement, je me suis davantage tourné vers les projets IoT. J'ai donc commencé à utiliser la carte de développement ESP et cela a parfaitement fonctionné. Mais maintenant je veux aller vers
Un guide complet du débutant sur le soudage SMD : 5 étapes (avec photos)
Un guide complet du débutant sur la soudure SMD : d'accord, la soudure est donc assez simple pour les composants à trou traversant, mais il y a des moments où vous devez aller minuscule * insérer la référence ant-man ici *, et les compétences que vous avez acquises pour la soudure TH ne le font tout simplement pas postulez plus.Bienvenue dans le monde de
Guide du débutant sur les courses de drones FPV Quadcopter: 16 étapes
Guide du débutant sur les courses de drones FPV Quadcopter: Si vous êtes tombé sur cet article, vous êtes (espérons-le) intéressé par ce nouveau phénomène connu sous le nom de vol FPV. Le monde du FPV est un monde plein de possibilités et une fois que vous avez dépassé le processus parfois frustrant de construire / piloter un drone FPV
Guide du débutant sur les microcontrôleurs : 10 étapes (avec photos)
Un guide du débutant sur les microcontrôleurs : qu'est-ce que les télécommandes, les routeurs et les robots ont tous en commun ? Microcontrôleurs ! De nos jours, les microcontrôleurs conviviaux pour les débutants sont faciles à utiliser et à programmer avec juste un ordinateur portable, un câble USB et certains logiciels open source (gratuits). Waouh !! Tous les
Le guide du débutant sur la fibre optique : 13 étapes (avec photos)
Le guide du débutant sur la fibre optique : la fibre optique ! La fibre optique! Certes, je suis un peu obsédé par la fibre optique, et pour cause. Ils constituent un moyen durable, polyvalent et relativement simple d'ajouter de beaux effets d'éclairage à tout ce que vous créez. Il suffit de regarder quelques-uns des g