Բովանդակություն:
- Քայլ 1. WiFi ESP8266 NodeMcu ESP-12E
- Քայլ 2: Ինֆրակարմիր ցուցիչ
- Քայլ 3: Displayուցադրել OLED- ը
- Քայլ 4: Հավաքում
- Քայլ 5: Գրադարաններ
- Քայլ 6: Աղբյուրի կոդ
Video: Ինֆրակարմիր տվիչ ESP8266: 6 քայլով
2024 Հեղինակ: John Day | [email protected]. Վերջին փոփոխված: 2024-01-30 09:51
Այս անգամ մեր նպատակն է ստեղծել ծրագիր, որը կկարդա մեր սենսորին ուղղված ցանկացած օբյեկտի շրջակա ջերմաստիճանը: Դա անելու համար մենք այս նախագծում կօգտագործենք ESP8266 nodeMCU, MLX90614 ինֆրակարմիր տվիչ և OLED 96 դյույմ էկրան, որը կցուցադրի ջերմաստիճանի տվյալները:
Քայլ 1. WiFi ESP8266 NodeMcu ESP-12E
Քայլ 2: Ինֆրակարմիր ցուցիչ
Այս տեղադրման մեջ օգտագործվող MLX90614 ինֆրակարմիր տվիչը իրականում տեսախցիկի տեսակ է: Այն նկարում է պատկերներ CCD- ի (Charged Coupled Device) միջոցով, համակարգ, որը շատ նման է դեռեւս թվային տեսախցիկներում օգտագործվող համակարգին: Այսպիսով, այն գրանցում է օբյեկտից դուրս եկող ինֆրակարմիր ծավալը, և այդ քանակությամբ այն հաշվարկում է ջերմաստիճանը: Շատ ճշգրիտ է:
Քայլ 3: Displayուցադրել 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: Աղբյուրի կոդ
Մենք կսկսենք ՝ սահմանելով այն գրադարաններն ու հաստատունները, որոնք մենք կօգտագործենք մեր ծածկագրի ընթացքում:
#ներառել // 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 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_BOBEBE 2 #սահմանել POS_Y_OBJETO 55 #սահմանել POS_X_TITULO 10 #սահմանել POS_Y_TITULO 4 // OLED Adafruit_SSD1331 ցուցադրման համար անհրաժեշտ է ցուցադրել = Adafruit_SSD1331 (cs, dc, mosi, sclk, rst) // objeto responsável pela comunicação com o sensor infravermelho IRTherm ցուցիչ; // variáveis que armazenarão o valor das temperaturas lidas float tempAmbiente; float tempObjeto;
Կարգավորում
Setup () գործառույթում մենք նախաստորագրելու ենք սենսորի հետ մեր հաղորդակցության օբյեկտը, ինչպես նաև ցուցադրման հետ հաղորդակցության օբյեկտը: Ահա դրանցից յուրաքանչյուրի համար մի քանի կարգավորումներ:
void setup () {// Inicializa sensor de temperatura infravermelho sensor.begin (); // leելսիուսի ջերմաստիճանի սենսոր. // pinta a tela toda de preto display.fillScreen (ՍԵՎ); // 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 կուրսորը no (x, y) desejado for 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 «կարդալ» do sensor para realizar a leitura da temperatura // կարդալ 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, ՍԵՎ); // կուրսորը և ջերմաստիճանը ցուցադրող ջերմաստիճանի ցուցադրում: setCursor (POS_X_AMBIENTE+35, POS_Y_AMBIENTE); display.print (tempAmbiente); display.print ((char) 247); // simbolo de graus // հնարավորությունը կամ կուրսորը պետք է պահպանել ջերմաստիճանը և օբյեկտիվ կամ օժանդակ ցուցիչը ցուցադրել: 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}
Խորհուրդ ենք տալիս:
Ինֆրակարմիր ջրի ավտոմատ ծորակ $ 5: 12 քայլով (նկարներով)
Ինֆրակարմիր ջրի ծորակ 5 դոլարով Այս ավտոմատ ինֆրակարմիր ջրի ծորակը պատրաստելու համար մենք կօգտագործենք IR սենսոր և ջրի անջատիչ: Այս ավտոմատ ինֆրակարմիր ջրի ծորակը պատրաստելու համար ոչ մի միկրոկառավարիչ չի օգտագործվում: Պարզապես տեղադրեք ձեր
Ինֆրակարմիր զառերի տվիչ ՝ 5 քայլ
Ինֆրակարմիր զառերի ցուցիչ. Իմ անունը Կալվին է, և ես ձեզ ցույց կտամ, թե ինչպես պատրաստել ինֆրակարմիր զառերի սենսոր և բացատրել, թե ինչպես է այն աշխատում: Ես ներկայումս Թեյլորի համալսարանի ուսանող եմ, ով սովորում է համակարգչային տեխնիկա և իմ թիմը, և ինձ խնդրեցին նախագծել և կառուցել այնպիսի մեխանիզմ, որը կարող է տեսակավորել ցանկացած
Ինֆրակարմիր հարևանության տվիչ ՝ օգտագործելով LM358: 5 քայլ
Ինֆրակարմիր հարևանության ցուցիչ LM358- ի միջոցով. Սա ուսանելի է IR հարևանության սենսորի պատրաստման վերաբերյալ
M5Stack IR ջերմային ֆոտոխցիկ ՝ օգտագործելով AMG8833 ինֆրակարմիր զանգվածի պատկերման տվիչ ՝ 3 քայլ
M5Stack IR rmերմային ֆոտոխցիկ ՝ օգտագործելով AMG8833 ինֆրակարմիր զանգվածի պատկերման սենսոր. Ինչպես շատերը, ես հիացած էի ջերմային տեսախցիկներով, բայց դրանք միշտ դուրս էին իմ գների սահմաններից, մինչ այժմ: Hackaday կայքէջը թերթելիս ես հանդիպեցի այս տեսախցիկի կառուցվածքին ՝ օգտագործելով M5Stack- ը: ESP32 մոդուլը և համեմատաբար էժան
Հպման տվիչ և ձայնային տվիչ, որը վերահսկում է AC/DC լույսերը `5 քայլ
Touch Sensor & Sound Sensor AC/DC Lights. ՄԻԱՎԱ, եթե այն բաց թողնեք, Լույսը ԿԱՆFԻ, և նույնը