Съдържание:
- Стъпка 1: WiFi ESP8266 NodeMcu ESP-12E
- Стъпка 2: Инфрачервен сензор
- Стъпка 3: Покажете OLED
- Стъпка 4: Монтаж
- Стъпка 5: Библиотеки
- Стъпка 6: Изходен код
Видео: Инфрачервен сензор с ESP8266: 6 стъпки
2024 Автор: John Day | [email protected]. Последно модифициран: 2024-01-30 07:53
Нашата цел този път е да създадем програма, която да отчита температурата на околната среда на всеки обект, насочен към нашия сензор. За да направим това, ще използваме в този проект ESP8266 възел MCU, инфрачервен сензор MLX90614 и 96 -инчов OLED дисплей, който ще показва температурните данни.
Стъпка 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".
Просто влезте в „Скица >> Включване на библиотеки >> Управление на библиотеки…“
Също така добавете следната библиотека „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 cs D8 #define rst D3 #define dc D4 // дефинирам das ядра que serão utilizadas #дефинирам ЧЕРЕН 0x0000 #дефинирам БЯЛ 0xFFFF // дефинирам da coordenada onde escreveremos cada um dos dados #define POS_X_BAM_POS_E_BAM_POS_E_BY 2 #define POS_Y_OBJETO 55 #define POS_X_TITULO 10 #define POS_Y_TITULO 4 // конструктор прави обект за comunicar com o дисплей OLED Adafruit_SSD1331 display = Adafruit_SSD1331 (cs, dc, mosi, sclk, rst) // обективен реагиращ комуникационен сензор за инфрачервен IR IR сензор; // variáveis que armazenarão o valor das temperaturas lidas float tempAmbiente; float tempObjeto;
Настройвам
Във функцията setup () ще инициализираме нашия обект на комуникация със сензора, както и обекта на комуникация с дисплея. Ето някои настройки за всяка от тях.
void setup () {// Inicializa сензор за температура infravermelho sensor.begin (); // Избор на температура em Celsius sensor.setUnit (TEMP_C); // настройка за използване на TEMP_F по Фаренхайт // ou TEMP_K за Келвин // инициализиране на обект за комуникация на дисплея OLED display.begin (); // pinta a tela toda de preto display.fillScreen (ЧЕРЕН); // конфигуриране на текстово съобщение за текстови съобщения за показване на тела.setTextSize (0); // конфигуриране на cor branca за 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}
Цикъл
Във функцията loop () нека прочетем данните от сензора и след това да ги покажем на 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 ()) {// възстановяване на leitura да температура до ambiente tempAmbiente = sensor.ambient (); // възстановяване на температурата до температура до обект апонтадо пело сензор tempObjeto = sensor.object (); // limpa a área onde colocamos o valor da temperature 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, ЧЕРЕН); // позициониране на курсора и извикване на температурен амбиентен дисплей.setCursor (POS_X_AMBIENTE+35, POS_Y_AMBIENTE); display.print (tempAmbiente); display.print ((char) 247); // символо де граус // позициониране на курсора и повишаване на температурата до обекта que на сензора está apontando display.setCursor (POS_X_OBJETO+35, POS_Y_OBJETO); display.print (tempObjeto); display.print ((char) 247); // simbolo de graus} забавяне (1000); // интервало за 1 segundo para a próxima leitura}
Препоръчано:
Използване на инфрачервен сензор с Arduino: 8 стъпки (със снимки)
Използване на инфрачервен сензор с Arduino: Какво е инфрачервен (известен още като IR) сензор? IR сензорът е електронен инструмент, който сканира IR сигнали в определени честотни диапазони, определени от стандартите, и ги преобразува в електрически сигнали на изходния си щифт (обикновено се нарича сигнален щифт) . IR сигналът
Инфрачервен сензор за дъжд в автомобил: 6 стъпки
Инфрачервен сензор за дъжд в автомобил: необходими части: 1- IR сензор за избягване на препятствия KY-032 (AD-032) 2- 5V релеен модул вземете го от стар сателитен приемник) .5- универсална печатна платка 6
Raspberry Pi - TMP007 Инфрачервен термопилен сензор Python Урок: 4 стъпки
Raspberry Pi - TMP007 Инфрачервен сензор за термопила Python Урок: TMP007 е инфрачервен сензор за термопила, който измерва температурата на обект, без да е в контакт с него. Инфрачервената енергия, излъчвана от обекта в сензорното поле, се абсорбира от термоустройството, вградено в сензора. Термострумът
Инфрачервен термометър на базата на Arduino - Инфрачервен термометър, използващ Arduino: 4 стъпки
Инфрачервен термометър на базата на Arduino | Инфрачервен термометър, използващ Arduino: Здравейте, момчета, в тази инструкция ще направим безконтактен термометър, използващ arduino. Тъй като понякога температурата на течността/твърдото вещество е твърде висока или твърде ниска, а след това е трудно да се установи контакт с нея и да се прочете температура тогава в този пейзаж
Raspberry Pi - TMP007 Инфрачервен термопилен сензор Java Урок: 4 стъпки
Raspberry Pi - TMP007 Инфрачервен термосензорен сензор Java Урок: TMP007 е инфрачервен сензор за термопила, който измерва температурата на обект, без да е в контакт с него. Инфрачервената енергия, излъчвана от обекта в сензорното поле, се абсорбира от термоустройството, вградено в сензора. Термострумът