Мазмуну:

ESP8266 Weather Monitor Web Server (Arduino жок): 4 кадам
ESP8266 Weather Monitor Web Server (Arduino жок): 4 кадам

Video: ESP8266 Weather Monitor Web Server (Arduino жок): 4 кадам

Video: ESP8266 Weather Monitor Web Server (Arduino жок): 4 кадам
Video: Start Using Wemos D1 Mini NodeMCU WiFi ESP8266 module with Arduino 2024, Ноябрь
Anonim
ESP8266 Weather Monitor Web Server (Arduino жок)
ESP8266 Weather Monitor Web Server (Arduino жок)

"Интернет нерселери" (IoT) күндөн күнгө өсүп бараткан баарлашуунун темасына айланууда. Бул түшүнүк жашообузга гана эмес, кантип иштөөбүзгө да таасирин тийгизет. Өнөр жай машиналарынан баштап кийиле турган түзмөктөргө чейин - маалыматтарды чогултуу жана бул маалымат боюнча иш -аракеттерди көрүү үчүн камтылган сенсорлорду колдонуу.

Ошентип, биз концепциясы бар абдан жөнөкөй, бирок кызыктуу долбоорду - IoT курууну чечтик.

Бүгүн биз айланабыздагы аба ырайын көзөмөлдөө үчүн негизги веб -серверди курабыз. Биз мобилдик түзмөктөрдө жана ноутбуктарда нымдуулуктун жана температуранын маанисин көрө алабыз. Мен айткандай, бул жөнүндө сизге түшүнүк берүү үчүн жөнөкөй жана негизги веб -баракча. Долбоорду керектөөлөрүңүзгө ылайыкташтырып жана өзгөртө аласыз, мисалы, маалыматтарды чогултуп, келечекте колдонуу үчүн, үй тиричилик техникасын же элестеткен нерсеңизди көзөмөлдөө менен үйдүн автоматташтырылышын түзө аласыз. Ар дайым эсиңизде болсун - Фантазиянын күчү бизди чексиз кылат (Жон Муир тарабынан).

Ошентип, баштайлы !!

1 -кадам: Куралдарыңызды чогултуңуз

Куралдарыңызды чогултуп алыңыз !!
Куралдарыңызды чогултуп алыңыз !!
Куралдарыңызды чогултуп алыңыз !!
Куралдарыңызды чогултуп алыңыз !!
Куралдарыңызды чогултуп алыңыз !!
Куралдарыңызды чогултуп алыңыз !!
Куралдарыңызды чогултуп алыңыз !!
Куралдарыңызды чогултуп алыңыз !!

1 SHT25 нымдуулук жана температура сенсору

SHT25 Sensirion жогорку тактыкта нымдуулук жана температура сенсору форма фактору жана интеллектуалдык жактан индустриялык стандарт болуп калды: 3 х 3мм бут басуу жана 1.1м бийиктиктеги reflow solderable Dual Flat No lead (DFN) пакетине камтылган, санариптик, I2C форматындагы сызыктуу сенсор сигналдары.

1 Adafruit Huzzah ESP8266

Espressifтин ESP8266 процессору-бул 80 МГц микроконтроллер, толук WiFi фронту (клиент жана кирүү чекити катары) жана DNS колдоосу менен TCP/IP стеги. ESP8266 - бул IoT тиркемелерин иштеп чыгуу үчүн кереметтүү платформа. ESP8266 Arduino Wire Language жана Arduino IDEди колдонуу менен колдонмолорду көзөмөлдөө жана көзөмөлдөө үчүн жетилген платформаны камсыз кылат.

1 ESP8266 USB программисти

Бул ESP8266 хост адаптери I²C интерфейсине уруксат берүүчү ESP8266нын Adafruit Huzzah версиясы үчүн атайын иштелип чыккан.

1 I2C туташтыруу кабели

2 -кадам: Аппаратты туташтыруу

Аппаратты туташтыруу
Аппаратты туташтыруу
Аппаратты туташтыруу
Аппаратты туташтыруу
Аппаратты туташтыруу
Аппаратты туташтыруу

ESP8266 алып, акырындык менен USB Программистине түртүп коюңуз. Андан кийин I2C кабелинин бир учун SHT25 сенсоруна, экинчи учун USB Программистке туташтырыңыз. А сиз бүттүңүз. Ооба, сиз туура окудуңуз. Башы оорубайт, үнү жагымдуу. Туура !!

ESP8266 USB Программистинин жардамы менен ESPти программалоо абдан оңой. Болгону сенсорду USB Программистине туташтырып койсоңуз болот. Биз бул продукт диапазонун колдонууну туура көрөбүз, анткени ал жабдыкты туташтырууну бир топ жеңилдетет. Бул USB плагин жана ойноткучу жок болсо, туура эмес туташуу коркунучу чоң. Начар зым сиздин Wi -Fiңызды да, сенсорду да өлтүрөт.

Сенсорго ESP казыктарын ширетүү же пин диаграммаларын жана маалымат барагын окуу жөнүндө тынчсыздануунун кереги жок. Биз бир эле учурда бир нече сенсорлорду колдонуп, иштей алабыз, сиз чынжыр жасашыңыз керек.

Бул жерде сиз алар аркылуу продукттун бардык ассортиментин текшересиз.

Эскертүү: Байланыштарды түзүп жатканда, туташтыруучу кабелдин күрөң зымы сенсордун жерге туташканына жана USB Программисти үчүн окшош экенине ынангыла.

3 -кадам: Код

Code
Code
Code
Code
Code
Code
Code
Code

SHT25 үчүн ESP8266 кодун биздин github репозиторийинен жүктөп алсаңыз болот

Кодго өтүүдөн мурун, Readme файлында берилген көрсөтмөлөрдү окуп чыкканыңызга жана ESP8266 ага ылайык орноткондугуңузга ишениңиз. ESPти орнотууга болгону 5 мүнөт кетет.

Эми кодду жүктөп алыңыз (же git pull) жана Arduino IDEде ачыңыз.

Кодду түзүңүз жана жүктөп бериңиз жана сериялык монитордо чыгууну көрүңүз.

Эскертүү: Жүктөөдөн мурун, SSID тармагыңызды жана сырсөзүңүздү кодго киргизиңиз.

Сериялык монитордон ESP8266 IP дарегин көчүрүп, веб -браузериңизге чаптаңыз.

Сиз нымдуулук жана температура көрсөткүчү бар веб -серверди көрөсүз. Сериялык монитор жана веб -сервердеги сенсордун чыгышы жогорудагы сүрөттө көрсөтүлгөн.

Ыңгайлуулугуңуз үчүн бул сенсордун ESP кодун бул жерден көчүрүп алсаңыз болот:

#кошуу

#кошуу

#кошуу

#кошуу

// SHT25 I2C дареги 0x40 (64)

#define Addr 0x40

const char* ssid = "сиздин ssid тармагыңыз";

const char* password = "сенин сырсөзүң"; калкып нымдуулук, cTemp, fTemp;

ESP8266WebServer сервери (80);

боштук иштетүүчү ()

{unsigned int data [2];

// I2C өткөрүүнү баштоо

Wire.beginTransmission (Addr); // Нымдуулукту өлчөө буйругун жөнөтүңүз, Wire.write мастерин кармабаңыз (0xF5); // I2C берүүнү токтотуу Wire.endTransmission (); кечигүү (500);

// 2 байт маалымат сураңыз

Wire.requestFrom (Addr, 2);

// 2 байт маалыматтарды окуңуз

// нымдуулук msb, нымдуулук lsb if (Wire.available () == 2) {data [0] = Wire.read (); data [1] = Wire.read ();

// Маалыматты конвертациялоо

нымдуулук = (((маалымат [0] * 256.0 + маалымат [1]) * 125.0) / 65536.0) - 6;

// Сериалдык мониторго маалыматтарды чыгаруу

Serial.print ("Салыштырмалуу нымдуулук:"); Serial.print (нымдуулук); Serial.println (" %RH"); }

// I2C өткөрүүнү баштоо

Wire.beginTransmission (Addr); // Температураны өлчөө буйругун жөнөтүңүз, Wire.write мастерин кармабаңыз (0xF3); // I2C берүүнү токтотуу Wire.endTransmission (); кечигүү (500);

// 2 байт маалымат сураңыз

Wire.requestFrom (Addr, 2);

// 2 байт маалыматтарды окуңуз

// temp msb, temp lsb if (Wire.available () == 2) {data [0] = Wire.read (); data [1] = Wire.read ();

// Маалыматты конвертациялоо

cTemp = (((маалымат [0] * 256.0 + маалымат [1]) * 175.72) / 65536.0) - 46.85; fTemp = (cTemp * 1.8) + 32;

// Сериалдык мониторго маалыматтарды чыгаруу

Serial.print ("Цельсий боюнча температура:"); Serial.print (cTemp); Serial.println ("C"); Serial.print ("Фаренгейт температурасы:"); Serial.print (fTemp); Serial.println ("F"); } // Веб-серверге маалыматтарды чыгаруу server.sendContent ("<meta http-equiv = 'refresh' content = '5'" ""

БААРЫН КОНТРОЛДОО

www.controleverything.com

SHT25 сенсор I2C Mini модулу

"); server.sendContent ("

Салыштырмалуу нымдуулук = " + Стринг (нымдуулук) +" %RH "); server.sendContent ("

Цельсий боюнча температура = " + String (cTemp) +" C "); server.sendContent ("

Фаренгейт температурасы = " + String (fTemp) +" F "); кечигүү (300);}

жараксыз орнотуу ()

{// MA2STER Wire.begin катары I2C байланышын баштоо (2, 14); // Сериялык байланышты баштоо, байдын ылдамдыгын коюу = 115200 Serial.begin (115200);

// WiFi тармагына туташуу

WiFi.begin (ssid, сырсөз);

// Байланышты күтө туруңуз

while (WiFi.status ()! = WL_CONNECTED) {кечигүү (500); Serial.print ("."); } Serial.println (""); Serial.print ("Туташты"); Serial.println (ssid);

// ESP8266 IP дарегин алыңыз

Serial.print ("IP дареги:"); Serial.println (WiFi.localIP ());

// Серверди баштаңыз

server.on ("/", handleroot); server.begin (); Serial.println ("HTTP сервер башталды"); }

боштук цикл ()

{server.handleClient (); }

4 -кадам: Жыйынтык

SHT25 нымдуулук жана температура сенсорунун сериясы сенсор технологиясын жаңы деңгээлге көтөрөт, сенсордун теңдешсиз иштеши, варианттарынын диапазону жана жаңы функциялары. Тиричилик техникасы, медициналык, IoT, HVAC же өнөр жай сыяктуу көптөгөн базарларга ылайыктуу. ESP8266 жардамы менен анын кубаттуулугун чоңураак узартууга болот. Биз өзүбүздүн приборлорубузду көзөмөлдөп, ноутбуктарыбыздан жана мобилдик түзмөктөрбүздүн иштешин көзөмөлдөй алабыз. Биз маалыматтарды онлайн режиминде сактай жана башкара алабыз жана аларды өзгөртүү үчүн каалаган убакта изилдей алабыз.

Мындай ойлорду медициналык тармактарда колдонсок болот, нымдуулук жана температура автоматтык түрдө жогорулаганда пациенттин бөлмөсүндөгү желдетүүнү көзөмөлдөп туруу үчүн. Медициналык кызматкерлер интернеттеги маалыматты бөлмөгө кирбестен көзөмөлдөй алышат.

Бул аракет сизге жагат деп үмүттөнөм жана анын мүмкүнчүлүктөрү жөнүндө ойлонобуз. Жогоруда айткандай, Элестетүү - бул ачкыч.:)

SHT25 жана ESP8266 жөнүндө көбүрөөк маалымат алуу үчүн төмөнкү шилтемелерди караңыз:

  • SHT25 Нымдуулук жана температура сенсорунун маалымат баракчасы
  • ESP8266 маалымат жадыбалы

Көбүрөөк маалымат алуу үчүн ControlEverything барыңыз.

Сунушталууда: