Isi kandungan:
- Langkah 1: M5Stack
- Langkah 2: Aplikasi Kemungkinan M5Stack
- Langkah 3: M5Stack - Pin
- Langkah 4: Perpustakaan DHT
- Langkah 5: Uruskan Perpustakaan Arduino IDE
- Langkah 6: Kod Sumber
- Langkah 7: M5StackDHTGraph.ino
- Langkah 8: M5StackDHTGraph.ino - Persediaan
- Langkah 9: M5StackDHTGraph.ino - Gelung
- Langkah 10: Fail
Video: ESP32: M5Stack Dengan DHT22: 10 Langkah
2024 Pengarang: John Day | [email protected]. Diubah suai terakhir: 2024-01-30 11:11
Mari kita bincangkan hari ini mengenai ESP32 yang sangat istimewa, sesuai untuk Internet of Things, iaitu M5Stack. Ini mengandungi ESP32 di dalam dan bahkan menambah pada paparan, papan kekunci, penguat, pembesar suara, dan bateri. Oleh itu, peranti ini dapat melakukan banyak perkara. Semasa menerima perkakasan ini, saya sudah mempunyai perisian untuk ESP32 dan hanya dipindahkan ke paparan yang digunakan dalam projek ini, yang berbeza. Walau bagaimanapun, kod sumber yang akan kami gunakan adalah sama dengan yang digunakan dalam video TEMPERATUR DAN HUMIDITY DENGAN OLED DISPLAY.
Dalam litar hari ini, saya secara khusus ingin menekankan bahawa kita mempunyai M5Stack dengan hubungan positif dan negatif, yang memenuhi dirinya dengan sensor DHT22. Kedua-duanya dihubungkan oleh GPIO. Data dipaparkan dalam carta.
Dalam artikel ini, mari kita memperkenalkan M5Stack dan membincangkan aplikasinya. Saya perlu menekankan bahawa peranti ini mempunyai input untuk kad SD mikro, Speaker 1W, dan soket bateri, dan juga mempunyai butang interaksi, penyambung i2c, USB jenis C, IO yang terdedah, paparan TFT dua inci, antara ciri lain. Ia ditunjukkan dalam gambar di atas. Kita boleh mengatakan bahawa peranti ini sudah siap untuk IoT, kerana ia sudah dilengkapi dengan Bluetooth dan WiFi ESP32. Ia juga dilengkapi magnet untuk melekatkan permukaan logam.
Adakah anda menyukai M5Stack? Klik:
Langkah 1: M5Stack
Salah satu inovasi M5Stack ialah, jika anda melabuhkan punggung, anda boleh memuatkan modul yang berbeza dengan fungsi yang berbeza, seperti modul GPS, GSM, LoRa, antara lain. Ini ditunjukkan dalam gambar.
Saya mempunyai lebih banyak contoh modul di bawah ini, mulai dari RS485, DC Motor, Maker, Core, hingga stepper motor control.
Ini sebenarnya cara yang sangat cepat untuk mengumpulkan prototaip. Pada masa lalu, perlu membeli beberapa cip transistor dan melakukan banyak pemasangan, yang memerlukan banyak masa dan pelaburan. Hanya selepas munculnya prototaip produk. Pada masa itulah Arduino dan Raspberry muncul, yang merupakan pinggan.
Sekarang, kita akhirnya mempunyai M5Stack, yang merupakan kotak tertutup siap pakai ini. Ini membebaskan kita daripada melakukan langkah lain yang tidak terkira jumlahnya.
Model M5Stack lain ditunjukkan dalam gambar. Kami mempunyai peranti dengan papan kekunci alfanumerik, angka, dan permainan. Ini membolehkan anda bekerja seolah-olah jenis komputer. Kami juga mempunyai contoh perisian yang berjalan, yang dapat diprogram dalam MicroPython, Arduino, ESP-IDF, NodeJS, selain Basic.
Langkah 2: Aplikasi Kemungkinan M5Stack
Di antara contoh aplikasi M5Stack, kami mempunyai osiloskop, seperti yang anda lihat dalam gambar. Kami juga mempunyai jenis kalkulator / meja alat pemotong.
Bagaimana dengan speedometer basikal?
Ini juga boleh menjadi latihan jarak jauh, yang dicetak dalam 3D dan dipantau dari jarak jauh oleh alat kawalan.
Semua ini menunjukkan bahawa kawalan elektronik jauh lebih berpatutan hari ini, sama seperti pengaturcaraan litar ini menjadi lebih mudah.
Langkah 3: M5Stack - Pin
Bahagian belakang M5Stack terdapat dalam gambar ini, yang menunjukkan bahawa kuasa berada pada 5 volt. Imej itu selanjutnya menunjukkan bahawa kita mempunyai semua yang ada dalam ESP32 dengan sambungan.
Langkah 4: Perpustakaan DHT
Gunakan lib SimpleDHT, yang sama dengan yang saya gunakan dalam video: SUHU DAN KEMANUSIAAN DENGAN TAMPILAN OLED.
Langkah 5: Uruskan Perpustakaan Arduino IDE
Dalam "Menu: Sketsa -> Tambahkan Perpustakaan -> Urus Perpustakaan," mari kita pasang dua perpustakaan yang ditunjukkan dalam gambar di bawah. Ingat bahawa sebelum semua ini, anda perlu memasang teras Arduino ESP32. Video ini menunjukkan cara anda melakukannya it: CARA MEMASANG ARDUINO IDE DI ESP32.
Langkah 6: Kod Sumber
Kod sumber, seperti yang disebutkan, sama dengan yang saya gunakan dalam video: TEMPERATURE GRAPH WITH OLED DISPLAY. Satu-satunya perubahan yang saya buat pada projek ini adalah berkaitan dengan ukuran paparan.
Langkah 7: M5StackDHTGraph.ino
Kami akan memasukkan perpustakaan M5Stack.h dan SimpleDHT.h, dan kami akan menentukan warna yang digunakan di paparan, serta pin data DHT. Kami juga akan membina objek untuk komunikasi dengan sensor, menentukan pemboleh ubah yang bertanggungjawab untuk pembacaan, dan menunjukkan nilai paksi-X.
// Libs do M5Stack e DHT # include #include // definição das cores que serão utilizadas #define BLACK 0x0000 #define RED 0xF800 #define CYAN 0x07FF #define YELLOW 0xFFE0 #define WHITE 0xFFFFFFD // construtor do objeto para comunicar com o sensor SimpleDHT22 dht; // variável responsavel por contar o número de leituras realizadas e indicador do valor no eixo X int leituraAtual = 1;
Kami meneruskan definisi kedudukan paksi-X dan paksi-Y, koordinat paparan data suhu dan kelembapan, serta pemboleh ubah yang akan menyimpan nilai yang dibaca. Kami masih menunjukkan pemboleh ubah untuk mencetak carta pada paparan.
// definições do posicionamento dos eixos X e Y #efinisikan POS_X_GRAFICO 30 #define POS_Y_GRAFICO 3 #define ALTURA_GRAFICO 180 #define COMPRIMENTO_GRAFICO 270 // definição da coordenada_dos_dos_dos_dos_dos_dos_dos_dos_dos_dos_dos_dos_dos_dos_dos_dos_dos_dos_dos_Dos_Dos_Dos_Afos_Afos_Afos_Afos_Anda_Anda_Anda_Anda_Anda_AfOSAOSAOS_DOSAOSAOSA que armazenarão os valores lidos da umidade e temperatura int umidade = 0; int temperatura = 0; // variável que armazenará o valor da coordenada Y para desenharmos uma linha de exemplo // que varia os valores de 1 em 1 int linhaExemplo = 20; int fator = 1; // indicará se somaremos ou subtrairemos uma unidade na variável linhaExemplo
Langkah 8: M5StackDHTGraph.ino - Persediaan
Dalam Persediaan, kami memulakan M5Stack. Kami menentukan perintah untuk menggambar grafik, mengkonfigurasi font serta warna teks, dan meletakkan kursor untuk menulis.
persediaan kosong (tidak sah) {Serial.begin (115200); // Inicializa o M5Stack M5.begin (); // pinta a tela toda de preto M5. Lcd.fillScreen (HITAM); // os comandos a seguir irão desenhar sebagai linhas dos eixos cartesianos na cor branca // drawFastVLine (x, y, width, color) linha vertical M5. Lcd.drawFastVLine (POS_X_GRAFICO, POS_Y_GRAFICO, ALTURA_GRAFICO) // eixo Y // drawFastHLine (x, y, lebar, warna) linha mendatar M5. Lcd.drawFastHLine (POS_X_GRAFICO, ALTURA_GRAFICO + 1, COMPRIMENTO_GRAFICO, PUTIH); // eixo X // configura o tamnaho do texto que escreveremos em tela M5. Lcd.setTextSize (3); // configura a cor branca para o texto M5. Lcd.setTextColor (PUTIH); // posiciona o kursor untuk escrita M5. Lcd.setCursor (POS_X_DADOS, POS_Y_DADOS); M5. Lcd.print ("T:"); // indicando a temperatura M5. Lcd.setCursor (POS_X_DADOS + 105, POS_Y_DADOS); M5. Lcd.print ("U:"); // indicando a umidade}
Langkah 9: M5StackDHTGraph.ino - Gelung
Di bahagian pertama Gelung, kami membaca suhu dan kelembapan, memetakan nilai pemboleh ubah untuk penempatan pada grafik, dan menarik titik pada skrin yang merujuk kepada nilai-nilai ini yang dibaca dari sensor.
gelung kekosongan () {// Fazemos a leitura da temperatura e umiade float temp, umid; status int = dht.read2 (DHTPIN, & temp, & umid, NULL); jika (status == SimpleDHTErrSuccess) {temperatura = temp; umidade = umid; } // mapeando o valor das variáveis para colocar no gráfico // requário pois o display tem 240px de altura e separamos apenas 180 para o gráfico // umidade pode ser lida de 0-100 int temperaturaMapeada = peta (temperatura, 0, 100, 0, ALTURA_GRAFICO); int umidadeMapeada = peta (umidade, 0, 100, 0, ALTURA_GRAFICO); // desenha na tela o ponto referente aos valores lidos do sensor M5. Lcd.drawPixel (POS_X_GRAFICO + leituraAtual, ALTURA_GRAFICO-temperaturaMapeada, MERAH); M5. Lcd.drawPixel (POS_X_GRAFICO + leituraAtual, ALTURA_GRAFICO-umidadeMapeada, CYAN); // desenha na tela o ponto referente a nossa linha de exemplo que fica variando M5. Lcd.drawPixel (POS_X_GRAFICO + leituraAtual, ALTURA_GRAFICO-linhaExemplo, KUNING);
Kemudian, kami menentukan kemungkinan mencetak grafik pada paparan.
// aqui controlamos nossa linha de exemplo, quando chega no valor máximo decrementamos o valor // até um valor mínimo determinado (no nosso caso 10), e a partir daí, incrementa novamente if (linhaExemplo == 50) fator = -1; lain jika (linhaExemplo == 10) fator = 1; // soma o valor de linhaExemplo linhaExemplo + = fator; // incrementa o contador de leituras realizadas leituraAtual ++; // se a leitura chegar em 270 (nero máximo do eixo X) então limparemos a área do gráfico para voltarmos a desenhar. jika (leituraAtual == 270) {// limpa a área toda do gráfico M5. Lcd.fillRect (POS_X_GRAFICO + 1, POS_Y_GRAFICO-1, COMPRIMENTO_GRAFICO, ALTURA_GRAFICO-1, BLACK); leituraAtual = 1; // volta o contador de leitura para 1 (nova coordenada X)} // limpa a área onde colocamos o valor da temperatura e da umidade M5. Lcd.fillRect (POS_X_DADOS + 50, POS_Y_DADOS, 60, 30, HITAM); M5. Lcd.fillRect (POS_X_DADOS + 165, POS_Y_DADOS, 90, 30, HITAM);
// reposiciona o kursor untuk escrever a temperatura M5. Lcd.setCursor (POS_X_DADOS + 50, POS_Y_DADOS); M5. Lcd.setTextColor (MERAH); M5. Lcd.print (temperatura); M5. Lcd.print ((char) 247); // reposiciona o kursor untuk pengawal umidade M5. Lcd.setCursor (POS_X_DADOS + 165, POS_Y_DADOS); M5. Lcd.setTextColor (CYAN); M5. Lcd.print (umidade); M5. Lcd.print ("%"); kelewatan (1000); }
Langkah 10: Fail
Adakah anda suka M5Stack? Mahu beli satu? Pergi ke:
Muat turun fail:
INO
Disyorkan:
Cara Program ESP32 M5Stack StickC Dengan Arduino IDE dan Visuino: 12 Langkah
Cara Memprogram ESP32 M5Stack StickC Dengan Arduino IDE dan Visuino: Dalam tutorial ini kita akan belajar cara memprogram ESP32 M5Stack StickC dengan Arduino IDE dan Visuino. Tonton video demonstrasi
Monitor Cuaca M5Stack M5stick C Berbasis ESP32 Dengan DHT11 - Pantau Indeks Kelembapan & Haba Suhu pada M5stick-C Dengan DHT11: 6 Langkah
Monitor Cuaca Berasaskan ESP32 M5Stack M5stick C Dengan DHT11 | Pantau Indeks Kelembapan Suhu & Panas pada M5stick-C Dengan DHT11: Hai kawan-kawan, dalam instruksi ini kita akan belajar bagaimana menghubungkan antara sensor suhu DHT11 dengan m5stick-C (papan pengembangan oleh m5stack) dan memaparkannya pada paparan m5stick-C. Jadi dalam tutorial ini kita akan membaca suhu, kelembapan & panas saya
Membuat Jam Dengan M5stick C Menggunakan Arduino IDE - Jam Masa Sebenar RTC Dengan M5stack M5stick-C: 4 Langkah
Membuat Jam Dengan M5stick C Menggunakan Arduino IDE | Jam RTC Real Time Dengan M5stack M5stick-C: Hai kawan-kawan dalam arahan ini, kita akan belajar bagaimana membuat jam dengan papan pengembangan m5stick-C m5stack menggunakan Arduino IDE. Jadi m5stick akan memaparkan tarikh, masa & minggu dalam paparan
Bina Peranti Sensor Suhu HomeKit Apple (DHT22) Menggunakan RaspberryPI dan DHT22: 11 Langkah
Bina Peranti Sensor Suhu HomeKit Apple (DHT22) Menggunakan RaspberryPI dan DHT22: Saya mencari sensor suhu / kelembapan kos rendah yang boleh saya gunakan untuk memantau apa yang berlaku di ruang crawls saya, kerana saya dapati musim bunga ini sangat basah , dan mempunyai banyak kelembapan. Oleh itu, saya mencari sensor dengan harga yang berpatutan yang saya dapat
Paparan ESP32 dan OLED: Jam Internet - DHT22: 10 Langkah (dengan Gambar)
Paparan ESP32 dan OLED: Jam Internet - DHT22: Instructable ini adalah pertandingan: " GIFs Challenge 2017 ", Sekiranya anda suka, berikan suara anda dengan mengklik pada banner di atas. Terima kasih banyak! ;-) Tutorial ini adalah kesinambungan perjalanan untuk mengetahui lebih lanjut mengenai alat IoT hebat ini