Table des matières:

Utilisation de capteurs analogiques avec ESP8266 : 5 étapes
Utilisation de capteurs analogiques avec ESP8266 : 5 étapes

Vidéo: Utilisation de capteurs analogiques avec ESP8266 : 5 étapes

Vidéo: Utilisation de capteurs analogiques avec ESP8266 : 5 étapes
Vidéo: Capteur analogique et ESPHome (avec ESP32 et ESP8266) 2024, Novembre
Anonim
Utilisation de capteurs analogiques avec ESP8266
Utilisation de capteurs analogiques avec ESP8266

Un convertisseur analogique-numérique (ADC, A/D, A-D ou A-to-D) est un système qui transforme un signal analogique en un signal numérique. Les convertisseurs A/N traduisent les signaux électriques analogiques à des fins de traitement de données. Avec des produits correspondant aux performances, à la puissance, au coût et à la taille. Ces convertisseurs de données facilitent des performances de conversion précises et fortes dans une gamme d'applications telles que les communications, l'énergie, les soins de santé, l'instrumentation et la mesure, le contrôle des moteurs et de l'alimentation, l'automatisation industrielle et l'aérospatiale/la défense. Une variété de convertisseurs A/N est fournie pour aider l'ingénieur dans chaque phase du projet, de la sélection du produit à la conception du circuit.

Aujourd'hui, nous utiliserons un convertisseur analogique-numérique avec un ESP8266. Commençons.. !!

Étape 1: Équipements dont nous avons besoin

Équipements dont nous avons besoin
Équipements dont nous avons besoin
Équipements dont nous avons besoin
Équipements dont nous avons besoin
Équipements dont nous avons besoin
Équipements dont nous avons besoin

1. Convertisseur CAN MCP3425

Le MCP3425 est un convertisseur analogique-numérique à 1 canal avec une résolution de 16 bits, idéal pour la surveillance de capteurs haute résolution à faible vitesse. Le MCP3425 est capable de lire des tensions analogiques à 15 échantillons par seconde avec une résolution de 16 bits ou 240 échantillons par seconde avec une résolution de 12 bits.

2. Adafruit Huzzah ESP8266

L'ESP8266 est une plate-forme incroyable pour le développement d'applications IoT. Le processeur ESP8266 d'Espressif est un microcontrôleur 80 MHz avec un front-end WiFi complet et une pile TCP/IP avec prise en charge DNS également. L'ESP8266 fournit une plate-forme mature pour la surveillance et le contrôle des applications à l'aide du langage filaire Arduino et de l'IDE Arduino.

3. Programmeur USB ESP8266

Cet adaptateur hôte ESP8266 a été spécialement créé par Contol Everything pour la version Adafruit Huzzah de l'ESP8266, permettant des connexions de communication I²C.

4. Câble de connexion I²C

Contol Everything a également conçu le câble de connexion I²C qui est disponible sur le lien ci-dessus.

5. Mini-câble USB

Le câble d'alimentation mini USB est un choix idéal pour alimenter l'Adafruit Huzzah ESP8266.

Étape 2: Connexions matérielles

Connexions matérielles
Connexions matérielles
Connexions matérielles
Connexions matérielles
Connexions matérielles
Connexions matérielles

En général, établir des connexions est la partie la plus facile de ce projet. Suivez les instructions et les images, et vous ne devriez avoir aucun problème.

Tout d'abord, prenez l'Adafruit Huzzah ESP8266 et placez-le sur le programmeur USB (avec port I²C orienté vers l'intérieur). Appuyez doucement sur l'ESP8266 dans le programmeur USB et nous avons terminé cette étape (voir image #1).

Prenez un câble I²C et connectez-le au port d'entrée du capteur. Pour un fonctionnement correct de ce câble, n'oubliez pas que la sortie I²C se connecte TOUJOURS à l'entrée I²C. Maintenant, connectez l'autre extrémité du même câble I²C au programmeur USB avec Adafruit Huzzah ESP8266 monté dessus (voir photo #2).

Remarque: le fil marron doit toujours suivre la connexion de masse (GND) entre la sortie d'un appareil et l'entrée d'un autre appareil.

Branchez le câble Mini USB dans la prise d'alimentation d'Adafruit Huzzah ESP8266. La connexion finale ressemblera à l'image #3.

Étape 3: Coder

Le code ESP pour les convertisseurs Adafruit Huzzah ESP8266 et MCP3425 ADC est disponible sur notre référentiel GitHub.

Avant de passer au code, assurez-vous de lire les instructions données dans le fichier Lisez-moi et configurez votre Adafruit Huzzah ESP8266 en conséquence. La configuration de l'ESP ne prendra que 5 minutes.

Pour votre commodité, vous pouvez également copier le code ESP de travail pour ce capteur à partir d'ici:

// Distribué avec une licence libre-arbitre.// Utilisez-le comme vous le souhaitez, à profit ou gratuitement, à condition qu'il rentre dans les licences de ses œuvres associées. // MCP3425 // Ce code est conçu pour fonctionner avec le mini module MCP3425_I2CADC I2C disponible sur ControlEverything.com. //

#comprendre

#include #include #include

// L'adresse I2C du MCP3425 est 0x68 (104)

#define Adr 0x68

const char* ssid = "votre réseau ssid";

const char* mot de passe = "votre mot de passe"; pression du flotteur, cTemp, fTemp;

Serveur ESP8266WebServer (80);

void handleroot()

{ données int non signées[2];

// Démarrer la transmission I2C

Wire.beginTransmission(Adr); // Envoi de la commande de configuration // Mode de conversion continu, résolution 12 bits Wire.write (0x10); // Arrêter la transmission I2C Wire.endTransmission(); retard (300);

// Démarrer la transmission I2C

Wire.beginTransmission(Adr); // Sélection du registre de données Wire.write(0x00); // Arrêter la transmission I2C Wire.endTransmission();

// Demande 2 octets de données

Wire.requestFrom(Adr, 2);

// Lecture de 2 octets de données

// raw_adc msb, raw_adc lsb if (Wire.available() == 2) { data[0] = Wire.read(); données[1] = Wire.read(); }

// Convertir les données en 12 bits

int raw_adc = (données[0] & 0x0F) * 256 + données[1]; if (raw_adc > 2047) { raw_adc -= 4096; }

// Sortie des données vers le moniteur série

Serial.print("Valeur numérique de l'entrée analogique: "); Serial.println(raw_adc); retard (500);

// Sortie des données vers le serveur Web

server.sendContent ("<meta http-equiv='refresh' content='3'""

TOUT CONTRLER

www.controleverything.com

Mini module de capteur I2C MCP3425

"); server.sendContent ("

Valeur numérique de l'entrée analogique: " + String(raw_adc)); }

void setup()

{ // Initialise la communication I2C en tant que MASTER Wire.begin(2, 14); // Initialiser la communication série, définir le débit en bauds = 115200 Serial.begin(115200);

// Se connecter au réseau Wi-Fi

WiFi.begin(ssid, mot de passe);

// Attendre la connexion

while (WiFi.status() != WL_CONNECTED) { delay(500); Serial.print("."); } Serial.println(""); Serial.print("Connecté à "); Serial.println(ssid);

// Obtenir l'adresse IP de ESP8266

Serial.print("Adresse IP: "); Serial.println(WiFi.localIP());

// Démarrer le serveur

server.on("/", handleroot); serveur.begin(); Serial.println("Serveur HTTP démarré"); }

boucle vide()

{ server.handleClient(); }

Étape 4: Travailler

Travail
Travail

Téléchargez (gitpull) ou copiez le code et ouvrez-le dans l'IDE Arduino.

Compilez et téléchargez le code et voyez la sortie sur votre moniteur série.

Remarque: Avant de télécharger, assurez-vous d'entrer votre réseau SSID et votre mot de passe dans le code.

Copiez l'adresse IP de l'ESP8266 à partir du moniteur série et collez-la dans votre navigateur Web. Vous verrez une page Web avec la sortie numérique de la lecture de l'entrée analogique. La sortie du capteur sur Serial Monitor et Web Server est illustrée dans l'image ci-dessus.

Étape 5: Applications et fonctionnalités

Le dispositif MCP3425 peut être utilisé pour diverses applications de conversion de données analogiques-numériques de haute précision où la simplicité de conception, la faible consommation et le faible encombrement sont des considérations majeures. Les principales applications incluent l'instrumentation portable, les balances et les jauges de carburant, la détection de température avec RTD, thermistance et thermocouple, la détection de pont pour la pression, la contrainte et la force.

Les convertisseurs ADC permettent des performances de conversion précises et fiables dans une gamme d'applications telles que les communications, l'énergie, la santé, l'instrumentation et la mesure, le contrôle des moteurs et de l'alimentation, l'automatisation industrielle et l'aérospatiale/la défense.

Avec l'aide de l'ESP8266, nous pouvons augmenter sa capacité à une plus grande longueur. Nous pouvons contrôler nos appareils et surveiller leurs performances à partir de nos ordinateurs de bureau et appareils mobiles. Nous pouvons stocker et gérer les données en ligne et les étudier à tout moment pour des modifications. D'autres applications incluent la domotique, le réseau maillé, le contrôle sans fil industriel, les moniteurs pour bébé, les réseaux de capteurs, l'électronique portable, les dispositifs de localisation Wi-Fi, les balises de système de positionnement Wi-Fi.

Vous pouvez également consulter notre blog sur la domotique avec capteur de lumière et ESP8266.

Conseillé: