Мазмұны:
- 1 -қадам: M5Stack
- 2 -қадам: M5Stack ықтимал қосымшалары
- 3 -қадам: M5Stack - түйреуіштер
- 4 -қадам: DHT кітапханасы
- 5 -қадам: Arduino IDE кітапханасын басқару
- 6 -қадам: бастапқы код
- 7 -қадам: M5StackDHTGraph.ino
- 8 -қадам: M5StackDHTGraph.ino - Орнату
- 9 -қадам: M5StackDHTGraph.ino - Цикл
- 10 -қадам: файлдар
Бейне: ESP32: DHT22 көмегімен M5Stack: 10 қадам
2024 Автор: John Day | [email protected]. Соңғы өзгертілген: 2024-01-30 10:26
Бүгін M5Stack - заттар Интернеті үшін өте ерекше ESP32 туралы сөйлесейік. Оның ішінде ESP32 бар, тіпті дисплейге, пернетақтаға, күшейткішке, динамикке және батареяға қосылады. Осылайша, бұл құрылғы сансыз көп нәрсені жасай алады. Мен бұл жабдықты алған кезде менде ESP32 бағдарламалық жасақтамасы болды және тек осы жобада қолданылатын дисплейге жіберілді, ол басқаша. Алайда, біз қолданатын бастапқы код - OLED дисплейі бар ТЕМПЕРАТУРА ЖӘНЕ ЫЛҒАЛДЫҚ бейнеде қолданылатын код.
Бүгінгі тізбекте менде DHT22 сенсорымен қоректенетін оң және теріс қосылыстары бар M5Stack бар екенін ерекше атап өткім келеді. Екеуі де GPIO арқылы қосылған. Деректер диаграммада көрсетіледі.
Бұл мақалада M5Stack -пен таныстырып, оның қосымшаларын талқылайық. Айта кету керек, бұл құрылғыда micro SD картасы, 1 Вт динамик және батарея розеткасы бар, сонымен қатар өзара әрекеттесу түймелері, i2c қосқышы, USB типті С, ашық IO, екі дюймдік TFT дисплейі бар. басқа ерекшеліктермен қатар. Ол жоғарыдағы суретте көрсетілген. Бұл құрылғы IoT үшін дайын деп айта аламыз, өйткені ол Bluetooth және ESP32 WiFi -мен бірге келеді. Ол сонымен қатар металл беттерге бекітуге арналған магнитті қамтиды.
Сізге M5Stack ұнады ма? Басыңыз:
1 -қадам: M5Stack
M5Stack -тің бір жаңалығы, егер сіз артқы жағын шешсеңіз, GPS модулі, GSM, LoRa сияқты басқа функциялары бар әр түрлі модульдерге сыя аласыз. Бұл суретте көрсетілген.
Менде төменде RS485, тұрақты ток қозғалтқышы, жасаушы, ядродан бастап қадамдық қозғалтқышты басқаруға дейінгі модульдердің басқа мысалдары бар.
Бұл шын мәнінде прототипті жинаудың өте жылдам әдісі. Ескі күндерде бірнеше транзисторлық чиптерді сатып алу және көп жинауды орындау қажет болды, бұл көп уақыт пен инвестиция қажет болды. Тек содан кейін өнімнің прототипі пайда болды. Дәл сол кезде тақталар болып табылатын Ардуино мен Таңқурай пайда болды.
Енді бізде M5Stack бар, бұл пайдалануға дайын жабық қорап. Бұл бізді басқа да сансыз қадамдарды орындаудан босатады.
Басқа M5Stack модельдері суретте көрсетілген. Бізде әріптік -цифрлық, сандық және ойындық пернетақтасы бар құрылғы бар. Бұл сізге компьютердің бір түрі сияқты жұмыс істеуге мүмкіндік береді. Сондай-ақ, бізде Basic-тен басқа MicroPython, Arduino, ESP-IDF, NodeJS бағдарламалауға болатын бағдарламалық қамтамасыз етудің мысалы бар.
2 -қадам: M5Stack ықтимал қосымшалары
M5Stack қосымшаларының мысалдарының ішінде бізде осциллограф бар, оны суреттен көріп отырсыз. Бізде калькулятор / кескіш құралдар кестесі бар.
Велосипед спидометрі туралы не деуге болады?
Бұл сондай -ақ қашықтан басқару бұрғысы болуы мүмкін, ол 3D форматында басып шығарылады және басқару пультімен қашықтан бақыланады.
Мұның бәрі электрониканы басқару қазіргі кезде әлдеқайда қолжетімді екенін көрсетеді, дәл осы схемаларды программалау жеңілдеген.
3 -қадам: M5Stack - түйреуіштер
M5Stack -тің артқы жағы осы суретте орналасқан, бұл қуаттың 5 вольт екенін көрсетеді. Кескін одан әрі ESP32 -де байланысы бар барлық нәрсенің бар екенін көрсетеді.
4 -қадам: DHT кітапханасы
SimpleDHT lib пайдаланыңыз, ол мен бейнеде қолданған сияқты: ТЕМПЕРАТУРА ЖӘНЕ OLED ДИПЛЕЙМЕН ЫЛҒАЛДЫҚ.
5 -қадам: Arduino IDE кітапханасын басқару
«Мәзір: Эскиз -> Кітапхана қосу -> Кітапханаларды басқару» бөлімінде төмендегі суретте көрсетілген екі кітапхананы орнатамыз. Есіңізде болсын, бұған дейін сізге ESP32 Arduino ядросын орнату қажет. Бұл бейнеде сізге қалай жасау керектігін көрсетеді. бұл: ESP32 -де ARDUINO IDE ҚАЛАЙ ОРНАТУ.
6 -қадам: бастапқы код
Бастапқы код, жоғарыда айтылғандай, мен бейнеде қолданғанмен бірдей: OLED DISPLAY бар ТЕМПЕРАТУРА ГРАФИГІ. Мен бұл жобаға енгізген жалғыз өзгеріс дисплей өлшеміне қатысты болды.
7 -қадам: M5StackDHTGraph.ino
Біз M5Stack.h және SimpleDHT.h кітапханаларын қосамыз және біз дисплейде қолданылатын түстерді, сондай -ақ DHT деректер түйреуішін анықтаймыз. Біз сондай-ақ сенсормен байланыс орнататын объект құрамыз, көрсеткіштерге жауап беретін айнымалыны анықтаймыз және Х осінің мәнін көрсетеміз.
// көшу кітапханаларда M5Stack электрондық DHT # #include // definição Das ядролардың Que serão utilizadas #define BLACK 0x0000 #define RED 0xF800 КӨГІЛДІР 0x07FF САРЫ 0xFFE0 WHITE 0xFFFF DHTPIN 5 // Pino де деректер базасы DHT істеу #define #define #define #define қамтиды істеу // SimpleDHT22 dht комбайнының сенсоры; // әр түрлі жауаптар бар, олар еш қиындықсыз X X le leituraAtual = 1;
Біз X осі мен Y осінің орналасуын анықтауды, температура мен ылғалдылық туралы деректерді көрсету координаттарын, сондай-ақ оқылған мәндерді сақтайтын айнымалыларды жалғастырамыз. Біз әлі де дисплейде диаграмманы басып шығару үшін айнымалыны көрсетеміз.
// pososionamento dos eixos X e Y #анықтау POS_X_GRAFICO 30 #анықтаңыз POS_Y_GRAFICO 3 #define ALTURA_GRAFICO 180 #анықтаңыз COMPRIMENTO_GRAFICO 270 // анықтаулардың коэффициенттерін сақтаңыз que armazenarão os valores lidos da umidade e temperatura int umidade = 0; int temperatura = 0; // координаттардың өзгермелі болуы мүмкін емес мысалдар // кез келген нұсқаның мәні 1 эм 1 int linhaExemplo = 20; int fator = 1; // subaremos не subtrairemos una unadeade na variável linhaExemplo
8 -қадам: M5StackDHTGraph.ino - Орнату
Орнатуда M5Stack инициализацияланады. Біз графикті салу үшін командаларды анықтаймыз, қаріпті, сондай -ақ мәтіннің түстерін конфигурациялаймыз және курсорды жазуға орналастырамыз.
void setup (void) {Serial.begin (115200); // M5Stack M5.begin (); // M5. Lcd.fillScreen (ҚАРА); // osFandVLine (x, y, ені, түсі) тік M5. Lcd.drawFastVLine (POS_X_GRAFICO, POS_Y_GRAFICO, ALTURA_GRAFICO, WHO; // eixo Y // drawFastHLine (x, y, width, color) көлденең M5. Lcd.drawFastHLine (POS_X_GRAFICO, ALTURA_GRAFICO+1, COMPRIMENTO_GRAFICO, WHITE); // eixo X // конфигурациялау M5. Lcd.setTextSize (3) мәтіндік жолмен орындалады; // M5. Lcd.setTextColor мәтініне сәйкес конфигурация (WHITE); // 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:»); // көрсеткіш және үміт}
9 -қадам: M5StackDHTGraph.ino - Цикл
Циклдың бірінші бөлігінде біз температура мен ылғалдылықты оқимыз, айнымалылардың мәнін графикке орналастырамыз және сенсордан оқылатын осы мәндерге қатысты нүктені экранда саламыз.
void loop () {// Fazemos a leitura және temperatura e umiade float temp, umid; int күйі = dht.read2 (DHTPIN, & temp, & umid, NULL); if (status == SimpleDHTErrSuccess) {temperatura = temp; үмітте = үміт; } // mapeando o valor das variáveis para colocar no gráfico // needário pois o display 240 px de altura e separamos apenas 180 para // gráfico // үмітade pode 0-100 температураның температурасыMapeada = карта (температура, 0, 100, 0, ALTURA_GRAFICO); int umidadeMapeada = карта (umidade, 0, 100, 0, ALTURA_GRAFICO); // M5. Lcd.drawPixel (POS_X_GRAFICO+leituraAtual, ALTURA_GRAFICO-temperaturaMapeada, ҚЫЗЫЛ) сенсорының көмегімен сенсорлы байланыс орнатуға болады; M5. Lcd.drawPixel (POS_X_GRAFICO+leituraAtual, ALTURA_GRAFICO-umidadeMapeada, CYAN); // M5. Lcd.drawPixel (POS_X_GRAFICO+leituraAtual, ALTURA_GRAFICO-linhaExemplo, YELLOW) сілтемесі бойынша сілтеме жасауға болады;
Содан кейін біз графикті дисплейде басып шығару мүмкіндігін анықтаймыз.
// ақылды бақылаулар, мысалы, бағаланбайды // шешуші мәні жоқ (10 емес), сонымен қатар (linhaExemplo == 50) fator = -1; else if (linhaExemplo == 10) fator = 1; // soma o valor de linhaExemplo linhaExemplo += fator; // incrementa o contador de leituras realizadas leituraAtual ++; // 270 (nixo máximo do eixo X) шектеулері бар, олар бір -бірімен байланысады. if (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)} // M5. Lcd.fillRect (POS_X_DADOS+50, POS_Y_DADOS, 60, 30, BLACK); M5. Lcd.fillRect (POS_X_DADOS+165, POS_Y_DADOS, 90, 30, ҚАРА);
// M5. Lcd.setCursor (POS_X_DADOS+50, POS_Y_DADOS) температурасы бойынша курсорды қалпына келтіру; M5. Lcd.setTextColor (ҚЫЗЫЛ); M5. Lcd.print (температура); M5. Lcd.print ((char) 247); // M5. Lcd.setCursor (POS_X_DADOS+165, POS_Y_DADOS) үмітсіз жүгіргі үшін курсор M5. Lcd.setTextColor (CYAN); M5. Lcd.print (үмітсіз); M5. Lcd.print («%»); кешіктіру (1000); }
10 -қадам: файлдар
Сізге M5Stack ұнады ма? Біреуін сатып алғыңыз келе ме? Https://goo.gl/ruoYVj өтіңіз
Файлдарды жүктеңіз:
МЕН ЖОҚ
Ұсынылған:
M5STACK Visuino көмегімен M5StickC ESP32 -де температураны, ылғалдылық пен қысымды қалай көрсету керек - оңай: 6 қадам
M5STACK Visuino көмегімен M5StickC ESP32 -де температураны, ылғалдылық пен қысымды қалай көрсету керек - Оңай жасау: Бұл оқулықта біз ENV сенсоры (DHT12, BMP280, BMM150)
ESP32-DHT22-MQTT-MySQL-PHP көмегімен температура мен ылғалдылық: 7 қадам
ESP32-DHT22-MQTT-MySQL-PHP көмегімен температура мен ылғалдылық: Менің қызым жылытқыш алғысы келді, сондықтан мен оны жасадым. Бірақ мен жылыжай ішіндегі температура мен ылғалдылық сенсорын алғым келді. Мен мысалдар іздеп, тәжірибе жасай бастадым, мен тапқан мысалдар дәл солай емес екендігі туралы қорытынды жасадым
Neopixel Ws2812 кемпірқосақ жарық диоды M5stick-C - Arduino IDE көмегімен M5stack M5stick C көмегімен Neopixel Ws2812 -де кемпірқосақты іске қосу: 5 қадам
Neopixel Ws2812 кемпірқосақ жарық диоды M5stick-C | Arduino IDE көмегімен M5stack M5stick C көмегімен Neopixel Ws2812-де кемпірқосақты іске қосу: Сәлеметсіз бе балалар, біз осы нұсқаулықта Arduino IDE көмегімен m5stack m5stick-C әзірлеу тақтасы бар neopixel ws2812 жарық диодты немесе жарық диодты немесе жарықдиодты матаны немесе жетекші сақинаны қолдануды үйренеміз. онымен бірге кемпірқосақтың үлгісі
Arduino IDE көмегімен M5stick C көмегімен сағат жасау - M5stack M5stick-C бар RTC нақты уақыт сағаты: 4 қадам
Arduino IDE көмегімен M5stick C көмегімен сағат жасау | M5stack M5stick-C бар RTC нақты уақыт сағаты: Сәлеметсіздер ме, балалар, біз m5stack m5stack тақтасын Arduino IDE көмегімен қалай жасау керектігін білеміз. дисплейде айдың аптасы
RaspberryPI мен DHT22 көмегімен Apple HomeKit температура сенсоры (DHT22) құрылғысын жасаңыз: 11 қадам
RaspberryPI мен DHT22 көмегімен Apple HomeKit температура сенсоры (DHT22) құрылғысын жасаңыз: Мен төмен бағалы температура / ылғалдылық сенсорын іздеп жүрдім, өйткені бұл көктемде өте ылғалды екенін білдім. , және ылғал көп болды. Сондықтан мен қол жетімді бағамен сенсор іздедім