Kazalo:
- Korak: WiFi ESP8266 NodeMcu ESP-12E
- Korak: Infrardeči senzor
- 3. korak: Prikažite OLED
- 4. korak: Montaža
- 5. korak: Knjižnice
- 6. korak: izvorna koda
Video: Infrardeči senzor z ESP8266: 6 korakov
2024 Avtor: John Day | [email protected]. Nazadnje spremenjeno: 2024-01-30 12:07
Naš tokratni cilj je ustvariti program, ki bo prebral temperaturo okolja katerega koli predmeta, usmerjenega proti našemu senzorju. V ta namen bomo v tem projektu uporabili vozlišče ESP8266MCU, infrardeči senzor MLX90614 in 96 -palčni zaslon OLED, ki bo prikazal podatke o temperaturi.
Korak: WiFi ESP8266 NodeMcu ESP-12E
Korak: Infrardeči senzor
Infrardeči senzor MLX90614, uporabljen pri tej nastavitvi, je pravzaprav vrsta videokamere. Zajema slike prek CCD (Charged Coupled Device Device), sistema, ki je zelo podoben tistemu, ki se uporablja v digitalnih fotoaparatih. Tako zabeleži količino infrardeče svetlobe, ki prihaja iz predmeta, in s to količino izračuna temperaturo. Je zelo natančen.
3. korak: Prikažite OLED
4. korak: Montaža
To je zelo preprosta shema. Tukaj imam mizo, ki omogoča enostavno vizualizacijo.
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
5. korak: Knjižnice
Če želite uporabljati zaslon OLED, dodajte naslednjo knjižnico "Adafruit-GFX-Library-master".
Preprosto odprite "Skica >> Vključi knjižnice >> Upravljanje knjižnic …"
Dodajte tudi naslednjo knjižnico "Adafruit Unified Sensor".
Povezave za prenos knjižnic so v PDF -ju, na voljo tik spodaj.
6. korak: izvorna koda
Začeli bomo z opredelitvijo knjižnic in konstant, ki jih bomo uporabljali med kodo.
#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 sclk D5 # #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_O_BAM_POSEBENO_POSLOVNO 2 #define POS_Y_OBJETO 55 #define POS_X_TITULO 10 #define POS_Y_TITULO 4 // konstruktor do objeto para comunicar com o display OLED Adafruit_SSD1331 display = Adafruit_SSD1331 (cs, dc, mosi, sclk, rst) // objeto responseável pela comunicação com o sensor infravermelho IRTherm sensor; // variáveis que armazenarão o valor das temperaturas lidas float tempAmbiente; float tempObjeto;
Nastaviti
V funkciji setup () bomo inicializirali naš objekt komunikacije s senzorjem, pa tudi objekt komunikacije s prikazom. Tu je nekaj nastavitev za vsakega od njih.
void setup () {// Inicializacijski senzor za temperaturo infravermelho sensor.begin (); // Izbira temperature po Celzijevem senzorju.setUnit (TEMP_C); // nastavimo ali izkoristimo TEMP_F po Fahrenheitu // ou TEMP_K po Kelvinu // inicializiramo objekte za komunikacijo z zaslonom OLED display.begin (); // pinta a tela toda de preto display.fillScreen (BLACK); // konfiguracija o tem, da besedilo ni prikazano na zaslonu.setTextSize (0); // konfiguriramo cor branca za ali texto display.setTextColor (BELO); // 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}
Zanka
V funkciji loop () preberemo podatke senzorja in jih nato prikažemo na zaslonu OLED.
// chamamos o método "read" do sensor para realizar a leitura da temperature // read retornará 1 caso consiga realizar a leitura, ou 0 caso contrário if (sensor.read ()) {// recupera a leitura da temperature do ambiente tempAmbiente = sensor.ambient (); // recupera a leitura da temperature do objeto apontado pelo sensor tempObjeto = sensor.object (); // limpa a área onde colocamos o valor da temperatura do ambiente in 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, ČRNO); // pozicioniranje kurzorja in dvig temperature ambiente display.setCursor (POS_X_AMBIENTE+35, POS_Y_AMBIENTE); display.print (tempAmbiente); display.print ((char) 247); // simbolo de graus // pozicioniranje kurzorja in povišanje temperature do cilja na senzor está apontando display.setCursor (POS_X_OBJETO+35, POS_Y_OBJETO); display.print (tempObjeto); display.print ((char) 247); // simbolo de graus} zakasnitev (1000); // intervalo de 1 segundo para a próxima leitura}
Priporočena:
Infrardeči senzor za kocke: 5 korakov
Senzor za infrardeče kocke: Moje ime je Calvin in pokazal vam bom, kako narediti infrardeči senzor za kocke, ter razložil, kako deluje. Trenutno sem študentka univerze Taylor, ki študira računalniški inženiring, in moja ekipa sem bila naprošena, da oblikujemo in zgradimo mehanizem, ki bi lahko razvrsti katero koli
Raspberry Pi - TMP007 Infrardeči senzor termopilov Python Vadnica: 4 koraki
Raspberry Pi - TMP007 Infrardeči senzor termopile Python Vadnica: TMP007 je infrardeči senzor termopile, ki meri temperaturo predmeta, ne da bi bil v stiku z njim. Infrardečo energijo, ki jo oddaja objekt v senzorskem polju, absorbira termopila, vgrajena v senzor. Termopol
Raspberry Pi - TMP007 Infrardeči senzor termopile Java Vadnica: 4 koraki
Raspberry Pi - TMP007 Infrardeči senzor termopile Java Vadnica: TMP007 je infrardeči senzor termopile, ki meri temperaturo predmeta, ne da bi bil v stiku z njim. Infrardečo energijo, ki jo oddaja objekt v senzorskem polju, absorbira termopila, vgrajena v senzor. Termopol
Infrardeči senzor bližine z uporabo LM358: 5 korakov
Infrardeči senzor bližine z uporabo LM358: To je navodilo za izdelavo IR senzorja bližine
Infrardeči odsevni senzor TCRT5000 - Kako deluje in primer vezja s kodo: 6 korakov
Infrardeči reflektorski senzor TCRT5000 - Kako deluje in primer vezja s kodo: Pozdravljeni, pred kratkim sem pri načrtovanju in izdelavi svojega stroja za sortiranje kovancev uporabil kup TCRT5000. To lahko vidite tukaj: Za to sem se moral naučiti o TCRT5000 in potem, ko sem to razumel, sem mislil, da bom ustvaril vodnik za vsakogar, ki je pogledal