Indholdsfortegnelse:
- Trin 1: Udstyr, vi har brug for
- Trin 2: Hardwareforbindelser
- Trin 3: Kode
- KONTROL ALT
- MCP3425 Sensor I2C Mini -modul
- Trin 4: Arbejde
- Trin 5: Applikationer og funktioner
Video: Brug af analoge sensorer med ESP8266: 5 trin
2024 Forfatter: John Day | [email protected]. Sidst ændret: 2024-01-30 08:25
En analog-til-digital konverter (ADC, A/D, A – D eller A-til-D) er et system, der omdanner et analogt signal til et digitalt signal. A/D -omformere oversætter analoge elektriske signaler til databehandlingsformål. Med produkter, der matcher ydeevne, kraft, omkostninger og stor størrelse. Disse datakonvertere letter præcis og stærk konverteringsydelse i en række applikationer såsom kommunikation, energi, sundhedspleje, instrumentering og måling, motor- og strømstyring, industriel automatisering og rumfart/forsvar. Der tilbydes en række forskellige A/D -konverteringsenheder for at hjælpe ingeniøren i alle projektfaser, fra produktvalg til kredsløbsdesign.
I dag bruger vi en analog-til-digital-omformer med en ESP8266. Lad os begynde.. !!
Trin 1: Udstyr, vi har brug for
1. MCP3425 ADC -konverter
MCP3425 er en 1-kanals analog til digital konverter med 16-bit opløsning, ideel til lavhastighedshøjopløselig sensorovervågning. MCP3425 er i stand til at aflæse analoge spændinger ved 15 sampler pr. Sekund med 16-bit opløsning eller 240 sampler pr. Sekund ved 12-bit opløsning.
2. Adafruit Huzzah ESP8266
ESP8266 er en utrolig platform til udvikling af IoT -applikationer. ESP8266-processoren fra Espressif er en 80 MHz mikrokontroller med en fuld WiFi front-end og TCP/IP-stak med DNS-understøttelse. ESP8266 giver en moden platform til overvågning og kontrol af applikationer ved hjælp af Arduino Wire Language og Arduino IDE.
3. ESP8266 USB -programmerer
Denne ESP8266 -værtsadapter blev specielt skabt af Contol Everything til Adafruit Huzzah -versionen af ESP8266, hvilket muliggjorde I²C -kommunikationsforbindelser.
4. I²C tilslutningskabel
Contol Alt designet også I²C -forbindelseskablet, som er tilgængeligt på ovenstående link.
5. Mini USB -kabel
Mini USB -kablet Strømforsyning er et ideelt valg til strømforsyning til Adafruit Huzzah ESP8266.
Trin 2: Hardwareforbindelser
Generelt er forbindelser den letteste del af dette projekt. Følg instruktionerne og billederne, og du bør ikke have problemer.
Først og fremmest skal du tage Adafruit Huzzah ESP8266 og placere den på USB -programmereren (med indadvendt I²C -port). Tryk ESP8266 forsigtigt ind i USB -programmereren, og vi er færdige med dette trin (se billede nr. 1).
Tag et I²C -kabel, og slut det til sensorens indgangsport. For korrekt funktion af dette kabel, skal du huske, at I²C Output ALTID er forbundet til I²C Input. Tilslut nu den anden ende af det samme I²C -kabel til USB -programmereren med Adafruit Huzzah ESP8266 monteret over det (se billede nr. 2).
Bemærk: Den brune ledning skal altid følge jordforbindelsen (GND) mellem output fra en enhed og input fra en anden enhed.
Sæt Mini USB -kablet i strømstikket på Adafruit Huzzah ESP8266. Den sidste forbindelse vil se ud som på billede #3.
Trin 3: Kode
ESP -koden til Adafruit Huzzah ESP8266 og MCP3425 ADC Converter er tilgængelig på vores GitHub -depot.
Inden du går videre til koden, skal du læse instruktionerne i Readme -filen og konfigurere din Adafruit Huzzah ESP8266 i overensstemmelse hermed. Det tager kun 5 minutter at oprette ESP.
For nemheds skyld kan du også kopiere den fungerende ESP -kode til denne sensor herfra:
// Distribueret med en fri vilje-licens. // Brug den, som du vil, profit eller gratis, forudsat at den passer ind i licenserne til de tilhørende værker. // MCP3425 // Denne kode er designet til at fungere med MCP3425_I2CADC I2C Mini -modulet, der fås fra ControlEverything.com. //
#omfatte
#include #include #include
// MCP3425 I2C -adresse er 0x68 (104)
#define Addr 0x68
const char* ssid = "dit ssid -netværk";
const char* password = "dit kodeord"; flydetryk, cTemp, fTemp;
ESP8266WebServer -server (80);
void handleroot ()
{usignerede int -data [2];
// Start I2C -transmission
Wire.beginTransmission (Addr); // Send konfigurationskommando // Kontinuerlig konverteringstilstand, 12-bit opløsning Wire.write (0x10); // Stop I2C Transmission Wire.endTransmission (); forsinkelse (300);
// Start I2C -transmission
Wire.beginTransmission (Addr); // Vælg dataregister Wire.write (0x00); // Stop I2C Transmission Wire.endTransmission ();
// Anmod om 2 bytes data
Wire.requestFrom (Addr, 2);
// Læs 2 bytes data
// raw_adc msb, raw_adc lsb if (Wire.available () == 2) {data [0] = Wire.read (); data [1] = Wire.read (); }
// Konverter dataene til 12-bit
int raw_adc = (data [0] & 0x0F) * 256 + data [1]; hvis (raw_adc> 2047) {raw_adc -= 4096; }
// Output data til seriel skærm
Serial.print ("Digital værdi af analog input:"); Serial.println (raw_adc); forsinkelse (500);
// Output data til webserver
server.sendContent ("<meta http-equiv = 'refresh' content = '3'""
KONTROL ALT
www.controleverything.com
MCP3425 Sensor I2C Mini -modul
"); server.sendContent ("
Digital værdi af analog input: " + String (raw_adc));}
ugyldig opsætning ()
{// Initialiser I2C -kommunikation som MASTER Wire.begin (2, 14); // Initialiser seriel kommunikation, indstil baudhastighed = 115200 Serial.begin (115200);
// Opret forbindelse til WiFi -netværk
WiFi.begin (ssid, adgangskode);
// Vent på forbindelsen
mens (WiFi.status ()! = WL_CONNECTED) {forsinkelse (500); Serial.print ("."); } Serial.println (""); Serial.print ("Tilsluttet"); Serial.println (ssid);
// Få IP -adressen på ESP8266
Serial.print ("IP -adresse:"); Serial.println (WiFi.localIP ());
// Start serveren
server.on ("/", handleroot); server.begin (); Serial.println ("HTTP -server startet"); }
hulrum ()
{server.handleClient (); }
Trin 4: Arbejde
Download (gitpull) eller kopier koden, og åbn den i Arduino IDE.
Kompilér og upload koden, og se output på din serielle skærm.
Bemærk: Før du uploader, skal du sørge for at indtaste dit SSID -netværk og din adgangskode i koden.
Kopier IP -adressen på ESP8266 fra Serial Monitor og indsæt den i din webbrowser. Du vil se en webside med det digitale output fra analog indlæsning. Sensorens output på Serial Monitor og Web Server er vist på billedet ovenfor.
Trin 5: Applikationer og funktioner
MCP3425-enheden kan bruges til forskellige analog-til-digitale datakonverteringsapplikationer med høj nøjagtighed, hvor design enkelhed, lav effekt og lille fodaftryk er store overvejelser. Store applikationer omfatter bærbar instrumentering, vejningsvægte og brændstofmålere, temperaturføling med RTD, termistor og termoelement, brofølelse for tryk, belastning og kraft.
ADC -omformere muliggør nøjagtig og pålidelig konverteringsydelse i en række applikationer såsom kommunikation, energi, sundhedspleje, instrumentering og måling, motor- og strømstyring, industriel automatisering og rumfart/forsvar.
Ved hjælp af ESP8266 kan vi øge kapaciteten til en større længde. Vi kan styre vores apparater og overvåge deres ydeevne fra vores desktops og mobile enheder. Vi kan gemme og administrere dataene online og studere dem når som helst for ændringer. Flere applikationer omfatter hjemmeautomatisering, mesh-netværk, trådløs industriel kontrol, babymonitorer, sensornetværk, bærbar elektronik, Wi-Fi placeringsbevidste enheder, Wi-Fi Position System Beacons.
Du kan også tjekke vores blog om hjemmeautomatisering med lyssensor og ESP8266.
Anbefalede:
Hjemmeautomatisering med ESP8266 WiFi uden brug af Blynk !: 24 trin (med billeder)
Hjemmeautomatisering med ESP8266 WiFi uden brug af Blynk !: For det første vil jeg takke alle for at gøre mig til en vinder i Automation Contest 2016 for denne INSTRUKTABELE. Så som jeg lovede dig, her er instruktionerne til styring af husholdningsapparater med ESP8266 WiFi -modul
Hjemmeautomatisering Trin for trin Brug af Wemos D1 Mini Med PCB -design: 4 trin
Hjemmeautomatisering Trin for trin Brug af Wemos D1 Mini Med PCB -design: Hjemmeautomatisering Trin for trin ved hjælp af Wemos D1 Mini med PCB -design For et par uger siden udgav vi en tutorial "Home Automation using Raspberry Pi" i rootsaid.com, som blev godt modtaget blandt hobbyfolk og universitetsstuderende. Så kom et af vores medlemmer
I2C / IIC LCD -skærm - Brug et SPI LCD til I2C LCD Display Brug SPI til IIC modul med Arduino: 5 trin
I2C / IIC LCD -skærm | Brug en SPI LCD til I2C LCD -skærmen Brug af SPI til IIC -modulet med Arduino: Hej fyre, da en normal SPI LCD 1602 har for mange ledninger at tilslutte, så det er meget svært at grænseflade det med arduino, men der er et modul på markedet, som kan konverter SPI -skærm til IIC -skærm, så du skal kun tilslutte 4 ledninger
Neopixel Ws2812 Rainbow LED Glød Med M5stick-C - Kører Rainbow på Neopixel Ws2812 Brug af M5stack M5stick C Brug af Arduino IDE: 5 trin
Neopixel Ws2812 Rainbow LED Glød Med M5stick-C | Kører Rainbow på Neopixel Ws2812 Brug af M5stack M5stick C Brug af Arduino IDE: Hej fyre i denne instruktion vil vi lære at bruge neopixel ws2812 LED'er eller led strip eller led matrix eller led ring med m5stack m5stick-C udviklingstavle med Arduino IDE, og vi vil lave et regnbuemønster med det
Begynderguide til brug af DHT11/ DHT22 sensorer m/ Arduino: 9 trin
Nybegynderguide til brug af DHT11/ DHT22 -sensorer W/ Arduino: Du kan læse denne og andre fantastiske selvstudier på ElectroPeaks officielle websted Oversigt I denne vejledning lærer du, hvordan du konfigurerer DHT11- og DHT22 -sensorer, og måler omgivelsestemperatur og fugtighed. Lær: DHT11 og DHT22