Talaan ng mga Nilalaman:
- Hakbang 1: WiFi ESP8266 NodeMcu ESP-12E
- Hakbang 2: Infrared Sensor
- Hakbang 3: Ipakita ang OLED
- Hakbang 4: Assembly
- Hakbang 5: Mga Aklatan
- Hakbang 6: Source Code
Video: Infrared Sensor Sa ESP8266: 6 na Hakbang
2024 May -akda: John Day | [email protected]. Huling binago: 2024-01-30 13:14
Ang aming layunin sa oras na ito ay upang lumikha ng isang programa na basahin ang temperatura ng paligid ng anumang bagay na tumuturo patungo sa aming sensor. Upang magawa ito, gagamitin namin sa proyektong ito ang isang ESP8266 nodeMCU, isang MLX90614 infrared sensor, at isang OLED 96 na display, na magpapakita ng data ng temperatura.
Hakbang 1: WiFi ESP8266 NodeMcu ESP-12E
Hakbang 2: Infrared Sensor
Ang MLX90614 infrared sensor na ginamit sa setup na ito ay talagang isang uri ng camcorder. Nakukuha nito ang mga imahe sa pamamagitan ng CCD (Charged Coupled Device), isang system na halos kapareho ng ginagamit sa mga digital camera pa rin. Sa gayon, itinatala nito ang dami ng infrared na paglabas ng object, at sa halagang ito, kinakalkula nito ang temperatura. Napaka tumpak nito.
Hakbang 3: Ipakita ang OLED
Hakbang 4: Assembly
Ito ay isang napaka-simpleng pamamaraan. Mayroon akong isang talahanayan dito na nagbibigay-daan para sa madaling visualization.
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
Hakbang 5: Mga Aklatan
Upang magamit ang OLED display, idagdag ang sumusunod na "Adafruit-GFX-Library-master" library.
I-access lamang ang "Sketch >> Isama ang Mga Aklatan >> Pamahalaan ang Mga Aklatan …"
Gayundin, idagdag ang sumusunod na library ng "Adafruit Unified Sensor".
Ang mga link sa pag-download para sa mga aklatan ay nasa PDF, na magagamit sa ibaba lamang.
Hakbang 6: Source Code
Magsisimula kami sa pamamagitan ng pagtukoy sa mga aklatan at mga Constant na gagamitin namin sa panahon ng aming code.
#include // Biblioteca para I2C # isama // Biblioteca para sa comunicação com o sensor #include // Biblioteca para sa propriedades gráficas #include // Biblioteca para comunicação com dipsplay OLED // pinagem para sa NodeMCU ESP8266 #define sclk D5 #define mosi D7 #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 2 #define POS_Odine POS_O_DEBE POS_O_DEBE POS_O_DEJE POS 2 2 #define POS_Y_OBJETO 55 #define POS_X_TITULO 10 #define POS_Y_TITULO 4 // construtor do objeto para comunicar com o 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;
Pag-set up
Sa pag-andar ng setup (), isasimula namin ang aming object ng komunikasyon sa sensor, pati na rin ang object ng komunikasyon sa display. Narito ang ilang mga setting para sa bawat isa sa kanila.
void setup () {// Inicializa sensor de temperatura infravermelho sensor.begin (); // Seleciona temperatura em 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 (BLACK); // configura o tamnaho do texto que escreveremos em tela display.setTextSize (0); // configura 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}
Loop
Sa pagpapaandar ng loop (), basahin natin ang data ng sensor, at pagkatapos ay ipakita ang mga ito sa OLED display.
// chamamos o método "read" do 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 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, BLACK); display.fillRect (POS_X_OBJETO + 35, POS_Y_OBJETO, 35, 10, BLACK); // 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 está apontando display.setCursor (POS_X_OBJETO + 35, POS_Y_OBJETO); display.print (tempObjeto); display.print ((char) 247); // simbolo de graus} pagkaantala (1000); // intervalo de 1 segundo para a próxima leitura}
Inirerekumendang:
Paggamit ng Infrared Sensor Sa Arduino: 8 Hakbang (na may Mga Larawan)
Paggamit ng Infrared Sensor Sa Arduino: Ano ang isang infrared (aka IR) sensor? Ang isang IR sensor ay isang elektronikong instrumento na sinusuri ang mga signal ng IR sa tukoy na mga saklaw ng dalas na tinukoy ng mga pamantayan at binago ito sa mga de-kuryenteng signal sa mga output pin (karaniwang tinatawag na signal pin) . Ang IR signal
Infrared Dice Sensor: 5 Hakbang
Infrared Dice Sensor: Ang pangalan ko ay Calvin at ipapakita ko sa iyo kung paano gumawa ng isang Infrared dice sensor at ipaliwanag kung paano ito gumagana. Kasalukuyan akong mag-aaral sa Taylor University na nag-aaral ng Computer Engineering at aking koponan at tinanong akong mag-disenyo at bumuo ng isang mekanismo na maaaring ayusin ang anumang
Raspberry Pi - TMP007 Infrared Thermopile Sensor Python Tutorial: 4 na Hakbang
Raspberry Pi - TMP007 Infrared Thermopile Sensor Python Tutorial: Ang TMP007 ay isang infrared thermopile sensor na sumusukat sa temperatura ng isang bagay nang hindi nakikipag-ugnay dito. Ang infrared na enerhiya na ibinuga ng bagay sa patlang ng sensor ay hinihigop ng thermopile na isinama sa sensor. Ang thermopil
Raspberry Pi - TMP007 Infrared Thermopile Sensor Java Tutorial: 4 na Hakbang
Raspberry Pi - TMP007 Infrared Thermopile Sensor Java Tutorial: Ang TMP007 ay isang infrared thermopile sensor na sumusukat sa temperatura ng isang bagay nang hindi nakikipag-ugnay dito. Ang infrared na enerhiya na ibinuga ng bagay sa patlang ng sensor ay hinihigop ng thermopile na isinama sa sensor. Ang thermopil
Adafruit SI1145 UV / Visible Light / Infrared Sensor - Arduino at LCD: 4 na Hakbang
Adafruit SI1145 UV / Visible Light / Infrared Sensor - Arduino at LCD: Gumagamit ang proyektong ito ng isang Adafruit SI1145 UV / Visible Light / Infrared sensor upang makalkula ang kasalukuyang UV rating. Ang UV ay hindi direktang nakaramdam. Sa halip, kinakalkula ito bilang isang pagpapaandar ng nakikitang ilaw at mga infrared na pagbabasa. Kapag sinubukan ko ito sa labas, ito