Мазмұны:
- 1 -қадам: Құралдарыңызды жинаңыз
- 2 -қадам: жабдықты қосу
- 3 -қадам: код
- БӘРІН БАҚЫЛАҢЫЗ
- SHT25 сенсоры I2C шағын модулі
- 4 -қадам: Қорытынды
Бейне: ESP8266 Weather Monitor веб -сервері (Arduino жоқ): 4 қадам
2024 Автор: John Day | [email protected]. Соңғы өзгертілген: 2024-01-30 10:24
«Интернет заттары» (IoT) күннен -күнге өсіп келе жатқан әңгіме тақырыбына айналуда. Бұл біздің өмір сүруімізге ғана емес, сонымен қатар жұмыс істеуімізге де әсер ететін әлеует. Өнеркәсіптік машиналардан бастап тозуға болатын құрылғыларға дейін - деректерді жинау және сол деректер бойынша әрекет ету үшін кіріктірілген сенсорларды қолдану.
Сонымен, біз IoT тұжырымдамасы бар өте қарапайым, бірақ қызықты жоба құруды шештік.
Бүгін біз айналамыздағы ауа райын бақылау үшін негізгі веб -сервер құрамыз. Біз ылғалдылық пен температураны мобильді құрылғылар мен ноутбуктерден қарай аламыз. Мен айтқанымдай, бұл сізге түсінік беретін қарапайым және қарапайым веб -бет. Сіз жобаны өз қажеттіліктеріңізге сай өзгерте аласыз, мысалы, деректерді жинап, оны болашақта пайдалану үшін, сіз тұрмыстық техниканы немесе сіз ойлаған нәрсені басқару арқылы үй автоматтандыруды жасай аласыз. Әрқашан есте сақтаңыз - қиялдың күші бізді шексіз етеді (Джон Муир).
Сонымен, бастайық !!
1 -қадам: Құралдарыңызды жинаңыз
1 SHT25 Ылғалдылық пен температура сенсоры
Sensirion -дың SHT25 жоғары дәлдік ылғалдылығы мен температура сенсоры форма факторы мен интеллект тұрғысынан өнеркәсіптік стандартқа айналды: 3х3мм футтық баспа және биіктігі 1,1мм болатын қосарланған тегіс қосалқы пакетке (DFN) салынған, ол калибрленген, сандық, I2C форматындағы сызықтық сенсорлық сигналдар.
1 Adafruit Huzzah ESP8266
Espressif компаниясының ESP8266 процессоры 80 МГц микроконтроллер болып табылады, ол толық Wi-Fi (клиент ретінде де, кіру нүктесі ретінде де) және 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 -қадам: код
SHT25 үшін ESP8266 кодын біздің github репозиторийінен жүктеуге болады
Кодқа өтпес бұрын, Readme файлында берілген нұсқауларды оқығаныңызға және оған сәйкес ESP8266 орнатыңыз. ESP орнату үшін бар болғаны 5 минут қажет.
Енді кодты жүктеңіз (немесе git pull) және оны Arduino IDE -де ашыңыз.
Кодты құрастырыңыз және жүктеңіз және сериялық монитордағы шығуды қараңыз.
Ескерту: Жүктеу алдында кодқа SSID желісі мен құпия сөзді енгізгеніңізге көз жеткізіңіз.
Сериялық монитордан ESP8266 IP мекенжайын көшіріп, веб -шолғышқа қойыңыз.
Сіз ылғалдылық пен температура көрсеткіштері бар веб -серверді көресіз. Сериялық монитор мен веб -сервердегі сенсордың шығысы жоғарыдағы суретте көрсетілген.
Ыңғайлы болу үшін сіз осы сенсордың жұмыс ESP кодын мына жерден көшіре аласыз:
#қосу
#қосу
#қосу
#қосу
// SHT25 I2C мекенжайы - 0x40 (64)
#анықтайтын 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 (); деректер [1] = Wire.read ();
// Деректерді түрлендіру
ылғалдылық = (((деректер [0] * 256.0 + деректер [1]) * 125.0) / 65536.0) - 6;
// Деректерді сериялық мониторға шығару
Serial.print («Салыстырмалы ылғалдылық:»); Сериялық баспа (ылғалдылық); Serial.println («RH %»); }
// I2C жіберуді бастау
Wire.beginTransmission (Addr); // Температураны өлшеу пәрменін жіберу, NO HOLD master 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 (); деректер [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 шағын модулі
«); server.sendContent (»
Салыстырмалы ылғалдылық = « + Жол (ылғалдылық) +» %RH «); server.sendContent (»
Цельсий бойынша температура = « + String (cTemp) +» C «); server.sendContent (»
Фаренгейт температурасы = « + String (fTemp) +» F «); кешігу (300);}
жарамсыз орнату ()
{// I2C байланысын MASTER Wire.begin ретінде баптаңыз (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 («/», өңдегіш); server.begin (); Serial.println («HTTP сервері іске қосылды»); }
бос цикл ()
{server.handleClient (); }
4 -қадам: Қорытынды
SHT25 ылғалдылық пен температура сенсорларының сериясы сенсордың технологиясын жаңа деңгейге көтереді, сенсордың теңдесі жоқ өнімділігі, нұсқалар диапазоны және жаңа мүмкіндіктері бар. Тұрмыстық техника, медициналық, IoT, HVAC немесе өнеркәсіп сияқты көптеген нарықтарға қолайлы. ESP8266 көмегімен оның сыйымдылығын ұзартуға болады. Біз құрылғыларды басқара аламыз және ноутбуктер мен мобильді құрылғылардың өнімділігін бақылай аламыз. Біз деректерді желіде сақтай және басқара аламыз және оларды өзгерту үшін кез келген уақытта зерттей аламыз.
Біз мұндай идеяларды медициналық өндірісте қолдана аламыз, ылғалдылық пен температура автоматты түрде жоғарылаған кезде пациент бөлмесіндегі желдетуді бақылауға болады. Медициналық қызметкерлер бөлмеге кірмей -ақ, мәліметтерді желіде бақылай алады.
Сізге күш -жігер ұнайды деп үміттенемін және оның мүмкіндіктері туралы ойланасыз. Жоғарыда айтқанымдай, қиял - бұл кілт.:)
SHT25 және ESP8266 туралы қосымша ақпарат алу үшін төмендегі сілтемелерді қараңыз:
- SHT25 Ылғалдылық пен температура сенсорының мәліметтер парағы
- ESP8266 мәліметтер парағы
Қосымша ақпарат алу үшін ControlEverything сайтына кіріңіз.
Ұсынылған:
EASY Infinity Mirror Cube жасаңыз - 3D басып шығару жоқ және бағдарламалау жоқ: 15 қадам (суреттермен)
EASY Infinity Mirror Cube жасаңыз | 3D басып шығару жоқ және бағдарламалау жоқ: Барлығы жақсы шексіздік текшесін ұнатады, бірақ оларды жасау қиынға соғады. Бұл нұсқаулықтағы менің мақсатым-сізге оны қалай жасау керектігін біртіндеп көрсету. Бұл ғана емес, мен сізге берген нұсқаулармен сіз оны жасай аласыз
Ethernet кабелін қолдана отырып, ноутбук/компьютер арқылы Raspberry Pi 4 орнатыңыз (монитор жоқ, Wi-Fi жоқ): 8 қадам
Raspberry Pi 4-ді ноутбук/компьютер арқылы Ethernet кабелі арқылы орнатыңыз (монитор жоқ, Wi-Fi жоқ): Бұл жағдайда біз 1 Гб жедел жады Raspberry Pi 4 Model-B-мен жұмыс жасаймыз. Raspberry-Pi-бұл 5В 3А қуат көзін қажет ететін, қол жетімді бағасы бар оқу және DIY жобалары үшін қолданылатын бір тақталы компьютер
Макей Макей жоқ па? Проблемалар жоқ! Үйде макей макей қалай жасауға болады!: 3 қадам
Макей Макей жоқ па? Проблемалар жоқ! Үйде макей жасауды қалай жасауға болады?: Сіз ешқашан нұсқаулықтар бойынша Makey Makey байқауына қатысқыңыз келді ме, бірақ сізде Makey Makey болған жоқ па?! ҚАЗІР сіз жасай аласыз! Келесі нұсқаулықпен мен сізге өзіңіз жасай алатын бірнеше қарапайым компоненттермен Makey Makey жасауды көрсеткім келеді
ESP8266 Ешқандай RTC жоқ желілік сағат - Nodemcu NTP сағаты RTC жоқ - INTERNET CLOCK ЖОБАСЫ: 4 қадам
ESP8266 Ешқандай RTC жоқ желілік сағат | Nodemcu NTP сағаты RTC жоқ | ИНТЕРНЕТ САҒАТЫНЫҢ ЖОБАСЫ: Жобада RTC жоқ сағаттық жоба жасалады, ол wifi арқылы интернеттен уақыт алады және оны st7735 дисплейінде көрсетеді
Кітапханасы жоқ немесе сериялық функциялары жоқ Arduino тон генераторы (үзіліссіз): 10 қадам
Кітапханасы жоқ немесе сериялық функциялары жоқ Arduino дыбыстық генераторы (үзілістермен): бұл мен үйрететін нәрсе емес, мен металл өңдеуді жақсы көремін, бірақ мен электротехника мамандығы бойынша және микроконтроллерлерден сабақ алуым керек ( Кіріктірілген жүйелердің дизайны), мен өзімнің бір нұсқамада нұсқаулық жасаймын деп ойладым