Indholdsfortegnelse:
- Trin 1: WiFi ESP8266 NodeMcu ESP-12E
- Trin 2: Infrarød sensor
- Trin 3: Vis OLED
- Trin 4: Montering
- Trin 5: Biblioteker
- Trin 6: Kildekode
Video: Infrarød sensor med ESP8266: 6 trin
2024 Forfatter: John Day | [email protected]. Sidst ændret: 2024-01-30 08:29
Vores mål denne gang er at oprette et program, der vil læse omgivelsestemperaturen for ethvert objekt, der peger mod vores sensor. For at gøre dette vil vi i dette projekt bruge en ESP8266 nodeMCU, en MLX90614 infrarød sensor og et OLED 96 display, som viser temperaturdataene.
Trin 1: WiFi ESP8266 NodeMcu ESP-12E
Trin 2: Infrarød sensor
MLX90614 infrarød sensor, der bruges i denne opsætning, er faktisk en type videokamera. Det tager billeder via CCD (Charged Coupled Device), et system, der meget ligner det, der bruges i stadig digitale kameraer. Således registrerer den mængden af infrarød, der kommer ud af objektet, og med denne mængde beregner den temperaturen. Det er meget præcist.
Trin 3: Vis OLED
Trin 4: Montering
Dette er en meget enkel ordning. Jeg har en tabel her, der giver mulighed for let visualisering.
ESP8266 - OLEDD5 - SCL
D7 - SDA
D3 - RES
D4 - DC
D8 - CS
3, 3v - VCC
GND - GND
MLX90614
D1 - SCL
D2 - SDA
3, 3v - VCC
GND - GND
Trin 5: Biblioteker
For at bruge OLED-skærmen skal du tilføje følgende "Adafruit-GFX-Library-master" -bibliotek.
Du skal blot få adgang til "Skitse >> Inkluder biblioteker >> Administrer biblioteker …"
Tilføj også følgende "Adafruit Unified Sensor" -bibliotek.
Downloadlinkene til bibliotekerne findes i PDF -filen, som er tilgængelig lige herunder.
Trin 6: Kildekode
Vi starter med at definere de biblioteker og konstanter, vi vil bruge under vores kode.
#include // Biblioteca para I2C #include // Biblioteca para comunicação com o sensor #include // Biblioteca para propriedades gráficas #include // Biblioteca para comunicação com dipsplay OLED // pinagem para o NodeMCU ESP8266 #define scl #define cs D8 #define rst D3 #define dc D4 // definição das cores que serão utilizadas #define BLACK 0x0000 #define WHITE 0xFFFF // definição da coordenada onde escreveremos cada um dos dados #define POS_X_AMBIENTE #POS_X_AMBIE_POS_X_AMBIENTE #POS_X_AMBIENTE #35 2 #define POS_Y_OBJETO 55 #define POS_X_TITULO 10 #define POS_Y_TITULO 4 // konstruktør gør objeto para comunicar com o display OLED Adafruit_SSD1331 display = Adafruit_SSD1331 (cs, dc, mosi, sclk, // objeto responsável pela comunicação com o sensor infravermelho IRTherm sensor; // variáveis que armazenarão o valor das temperaturas lidas float tempAmbiente; flyde tempObjeto;
Opsætning
I funktionen setup () vil vi initialisere vores kommunikationsobjekt med sensoren samt kommunikationsobjektet med displayet. Her er nogle indstillinger for hver af dem.
void setup () {// Inicializa sensor de temperatura infravermelho sensor.begin (); // Valg af temperatur i Celsius sensor.setUnit (TEMP_C); // podemos ainda utilizar TEMP_F para Fahrenheit // ou TEMP_K para Kelvin // inicializa o objeto para comunicarmos com o display OLED display.begin (); // pinta a tela toda de preto display.fillScreen (SORT); // konfiguration o tamnaho do texto que escreveremos em tela display.setTextSize (0); // konfiguration a cor branca para o texto display.setTextColor (WHITE); // os comandos abaixo posicionam o cursor no (x, y) desejado para a seguir escrevermos em tela display.setCursor (POS_X_TITULO, POS_Y_TITULO); display.print ("TEMPERATURA"); display.setCursor (POS_X_TITULO+20, POS_Y_TITULO+15); display.print ("("); display.print ((char) 247); // símbolo de graus display.print ("C)"); display.setCursor (POS_X_AMBIENTE, POS_Y_AMBIENTE); display.print ("AMB:"); // AMBIENTE display.setCursor (POS_X_OBJETO, POS_Y_OBJETO); display.print ("OBJ:"); // OBJETO}
Sløjfe
I loop () -funktionen, lad os læse sensordataene og derefter vise dem på OLED -displayet.
// chamamos o método "læs" gør sensor para realizar a leitura da temperatura // read retornará 1 caso consiga realizar a leitura, ou 0 caso contrário if (sensor.read ()) {// recupera a leitura da temperatura do ambiente tempAmbiente = sensor.ambient (); // recupera a leitura da temperaturena do objeto apontado pelo sensor tempObjeto = sensor.object (); // limpa a área onde colocamos o valor da temperaturena do ambiente e do objeto display.fillRect (POS_X_AMBIENTE+35, POS_Y_AMBIENTE, 35, 10, BLACK); display.fillRect (POS_X_OBJETO+35, POS_Y_OBJETO, 35, 10, SORT); // posiciona o cursor e escreve a temperatura ambiente display.setCursor (POS_X_AMBIENTE+35, POS_Y_AMBIENTE); display.print (tempAmbiente); display.print ((tegn) 247); // simbolo de graus // posiciona o cursor e escreve a temperatura do objeto que o sensor está apontando display.setCursor (POS_X_OBJETO+35, POS_Y_OBJETO); display.print (tempObjeto); display.print ((tegn) 247); // simbolo de graus} forsinkelse (1000); // intervalo de 1 segundo para a próxima leitura}
Anbefalede:
Brug af infrarød sensor med Arduino: 8 trin (med billeder)
Brug af infrarød sensor med Arduino: Hvad er en infrarød (aka IR) sensor? En IR -sensor er et elektronisk instrument, der scanner IR -signaler i specifikke frekvensområder defineret af standarder og konverterer dem til elektriske signaler på sin output pin (typisk kaldet signal pin) . IR -signalet
TCRT5000 Infrarød reflekterende sensor - hvordan den fungerer og eksempelkredsløb med kode: 6 trin
TCRT5000 Infrarød reflekssensor - Sådan fungerer det og Eksempel på kredsløb med kode: Hej, jeg har for nylig brugt en flok TCRT5000'er, når jeg designede og lavede min møntsorteringsmaskine. Du kan se det her: For at gøre dette var jeg nødt til at lære om TCRT5000, og efter at jeg havde forstået det, tænkte jeg, at jeg ville oprette vejledning til alle andre, der kiggede
Infrarød lasermærke med Raspberry Pi Zero: 6 trin (med billeder)
Infrarød lasermærke med Raspberry Pi Zero: Denne instruktionsbog vil gå igennem processen til oprettelse af et infrarødt lasermærke -spil ved hjælp af en baseservercomputer og en Raspberry Pi -nul for hver spiller. Projektet er stærkt afhængigt af en Wifi -forbindelse til at kommunikere med serveren, hvilket gør
Nokia 5110 LCD med infrarød sensor: 4 trin
Nokia 5110 LCD med infrarød sensor: Nokia 5110 LCD -display er et fantastisk LCD -display, der er kompatibelt med Arduino -udviklingsbordet. Lad os nu styre en af disse LCD'er og grænseflade den med Arduino og en IR -sensor
I2C infrarød fjernbetjening med Arduino: 8 trin (med billeder)
I2C infrarød fjernbetjening med Arduino: PreambleDenne instruktive beskriver, hvordan du opretter en universel fjernbetjening ved hjælp af I2C til grænsefladen. Hvor mærkeligt siger du ved hjælp af en I2C -slaveenhed? Ja, en I2C -slaveenhed. Dette skyldes, at den nøjagtige timing af IR -pakker er ret krævende og