Πίνακας περιεχομένων:
- Βήμα 1: WiFi ESP8266 NodeMcu ESP-12E
- Βήμα 2: Αισθητήρας υπερύθρων
- Βήμα 3: Εμφάνιση OLED
- Βήμα 4: Συναρμολόγηση
- Βήμα 5: Βιβλιοθήκες
- Βήμα 6: Πηγαίος κώδικας
Βίντεο: Αισθητήρας υπερύθρων με ESP8266: 6 βήματα
2024 Συγγραφέας: John Day | [email protected]. Τελευταία τροποποίηση: 2024-01-30 08:37
Ο στόχος μας αυτή τη φορά είναι να δημιουργήσουμε ένα πρόγραμμα που θα διαβάζει τη θερμοκρασία περιβάλλοντος κάθε αντικειμένου που δείχνει προς τον αισθητήρα μας. Για να γίνει αυτό, θα χρησιμοποιήσουμε σε αυτό το έργο έναν κόμβο ESP8266MCU, έναν αισθητήρα υπερύθρων MLX90614 και μια οθόνη OLED 96 , η οποία θα εμφανίζει τα δεδομένα θερμοκρασίας.
Βήμα 1: WiFi ESP8266 NodeMcu ESP-12E
Βήμα 2: Αισθητήρας υπερύθρων
Ο αισθητήρας υπερύθρων MLX90614 που χρησιμοποιείται σε αυτήν τη ρύθμιση είναι στην πραγματικότητα ένας τύπος βιντεοκάμερας. Καταγράφει εικόνες μέσω του CCD (Charged Coupled Device), ένα σύστημα πολύ παρόμοιο με αυτό που χρησιμοποιείται στις ακόμα ψηφιακές φωτογραφικές μηχανές. Έτσι, καταγράφει την ποσότητα υπερύθρων που βγαίνει από το αντικείμενο και με αυτήν την ποσότητα, υπολογίζει τη θερμοκρασία. Είναι πολύ ακριβές.
Βήμα 3: Εμφάνιση OLED
Βήμα 4: Συναρμολόγηση
Αυτό είναι ένα πολύ απλό σχέδιο. Έχω έναν πίνακα εδώ που επιτρέπει την εύκολη απεικόνιση.
ESP8266 - OLEDD5 - SCL
D7 - SDA
D3 - ΑΠΕ
D4 - DC
D8 - CS
3, 3v - VCC
GND - GND
MLX90614
D1 - SCL
D2 - SDA
3, 3v - VCC
GND - GND
Βήμα 5: Βιβλιοθήκες
Για να χρησιμοποιήσετε την οθόνη OLED, προσθέστε την ακόλουθη βιβλιοθήκη "Adafruit-GFX-Library-master".
Απλώς αποκτήστε πρόσβαση στο "Sketch >> Include Libraries >> Manage Libraries …"
Επίσης, προσθέστε την ακόλουθη βιβλιοθήκη "Adafruit Unified Sensor".
Οι σύνδεσμοι λήψης για τις βιβλιοθήκες είναι σε PDF, διαθέσιμοι ακριβώς από κάτω.
Βήμα 6: Πηγαίος κώδικας
Θα ξεκινήσουμε καθορίζοντας τις βιβλιοθήκες και τις σταθερές που θα χρησιμοποιήσουμε κατά τη διάρκεια του κώδικα.
#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 #define cs D8 #define rst D3 #define dc D4 // definição das cores que serão utilisadas #define BLACK 0x0000 #define WHITE 0xFFFF // definição da coordenada onde escreveremos cada um dos_DOF_BOBEBOBE 2 #define POS_Y_OBJETO 55 #define POS_X_TITULO 10 #define POS_Y_TITULO 4 // construtor do objeto para comunicar com or display OLED Adafruit_SSD1331 display = Adafruit_SSD1331 (cs, dc, mosi, sclk, rst // objeto responsável pela comunicação com o sensor infravermelho IRTherm sensor; // variáveis que armazenarão o valor das temperaturas lidas float tempAmbiente; float tempObjeto;
Ρύθμιση
Στη συνάρτηση setup (), θα αρχικοποιήσουμε το αντικείμενο επικοινωνίας μας με τον αισθητήρα, καθώς και το αντικείμενο επικοινωνίας με την οθόνη. Ακολουθούν ορισμένες ρυθμίσεις για καθένα από αυτά.
void setup () {// Inicializa sensor de temperatura infravermelho sensor.begin (); // Seleciona temperatura em Celsius sensor.setUnit (TEMP_C); // podemos ainda utilisar 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 (BLACK); // configura o tamnaho do texto que escreveremos em tela display.setTextSize (0); // configura a cor branca para o texto display.setTextColor (ΛΕΥΚΟ); // 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}
Βρόχος
Στη λειτουργία βρόχου (), ας διαβάσουμε τα δεδομένα του αισθητήρα και, στη συνέχεια, να τα εμφανίσουμε στην οθόνη OLED.
// chamamos o método "read" do sensor para realizar a leitura da temperatura // read retornará 1 caso consiga realizar a leitura, ή 0 caso contrário if (sensor.read ()) {// recupera a leitura da temperatura do ambiente tempAmbiente = sensor.ambient (); // recupera a leitura da temperatura do objeto apontado pelo sensor tempObjeto = sensor.object (); // limpa a área onde colocamos o valor da temperatura do ambiente e do objeto display.fillRect (POS_X_AMBIENTE+35, POS_Y_AMBIENTE, 35, 10, ΜΑΥΡΟ); display.fillRect (POS_X_OBJETO+35, POS_Y_OBJETO, 35, 10, ΜΑΥΡΟ); // posiciona o cursor e escreve a temperatura ambiente display.setCursor (POS_X_AMBIENTE+35, POS_Y_AMBIENTE); display.print (tempAmbiente); display.print ((char) 247); // simbolo de graus // posiciona o cursor e escreve a temperatura do objeto que o sensor or está apontando display.setCursor (POS_X_OBJETO+35, POS_Y_OBJETO); display.print (tempObjeto); display.print ((char) 247); // simbolo de graus} καθυστέρηση (1000); // intervalo de 1 segundo para a próxima leitura}
Συνιστάται:
Έξυπνο θερμόμετρο υπερύθρων IOT (COVID-19): 3 βήματα
IOT Smart Υπέρυθρο Θερμόμετρο (COVID-19): Λόγω της εξέγερσης COVID του 2019, αποφασίσαμε να φτιάξουμε ένα IOT Smart Υπέρυθρο Θερμόμετρο που συνδέεται με έξυπνες συσκευές για να δείξει την καταγεγραμμένη θερμοκρασία, αυτό δεν είναι μόνο μια φθηνότερη εναλλακτική λύση, αλλά και μια εξαιρετική διδακτική ενότητα για τεχνολογία και IOT που
Χρήση αισθητήρα υπερύθρων με Arduino: 8 βήματα (με εικόνες)
Χρήση αισθητήρα υπέρυθρης ακτινοβολίας με το Arduino: Τι είναι ο αισθητήρας υπερύθρων (γνωστός και ως IR); Ένας αισθητήρας IR είναι ένα ηλεκτρονικό όργανο που σαρώνει σήματα IR σε συγκεκριμένες περιοχές συχνοτήτων που καθορίζονται από τα πρότυπα και τα μετατρέπει σε ηλεκτρικά σήματα στην ακίδα εξόδου του (συνήθως ονομάζεται ακίδα σήματος) Το Το σήμα IR
Αισθητήρας υπερύθρων ζαριών: 5 βήματα
Αισθητήρας υπερύθρων ζαριών: Το όνομά μου είναι Calvin και θα σας δείξω πώς να φτιάξετε έναν αισθητήρα υπέρυθρων ζαριών και να εξηγήσω πώς λειτουργεί. Αυτή τη στιγμή είμαι φοιτητής του Πανεπιστημίου Taylor που σπουδάζει Μηχανική Υπολογιστών και την ομάδα μου και μου ζητήθηκε να σχεδιάσω και να δημιουργήσω έναν μηχανισμό που μπορεί να ταξινομήσει οποιαδήποτε
IOT123 - ΣΥΝΔΕΣΜΟΣ ΑΙΣΘΗΤΗΡΑΣ ΑΙΣΘΗΤΗΡΑΣ: ΙΣΤΟΣΕΛΙΔΑ ΠΡΟΣΑΡΜΟΓΗΣ ICOS10: 11 Βήματα
IOT123 - ASSIMILATE SENSOR HUB: ICOS10 CUSTOMIZATION WEBSEREVER: The ASSIMILATE SENSOR/ACTOR Slaves ενσωματώνουν μεταδεδομένα που χρησιμοποιούνται για τον καθορισμό των απεικονίσεων στο Crouton. Αυτή η κατασκευή προσθέτει έναν διακομιστή ιστού στο ESP8266 Master, εξυπηρετεί ορισμένα αρχεία διαμόρφωσης που μπορούν να τροποποιηθούν από τον χρήστη και στη συνέχεια χρησιμοποιεί αυτά τα αρχεία για επαναπροσδιορισμό
Αισθητήρας αφής & Αισθητήρας ήχου Έλεγχος φώτων AC/DC: 5 βήματα
Αισθητήρας αφής & Αισθητήρας ήχου Έλεγχος φώτων AC/DC: Αυτό είναι το πρώτο μου έργο και αυτό λειτουργεί με βάση δύο βασικούς αισθητήρες, ένας είναι ο αισθητήρας αφής και ο δεύτερος είναι ο αισθητήρας ήχου, όταν πατάτε την επιφάνεια αφής στον αισθητήρα αφής το φως AC θα αλλάξει ΕΝΕΡΓΟΠΟΙΗΜΕΝΟ, αν το αφήσετε, το Φως θα είναι Σβηστό και το ίδιο