Mundarija:
2025 Muallif: John Day | [email protected]. Oxirgi o'zgartirilgan: 2025-01-13 06:58
"Internet Internet" (IoT) kundan -kunga o'sib borayotgan suhbat mavzusiga aylanmoqda. Bu kontseptsiya nafaqat yashash tarzimizga, balki ishlashimizga ham ta'sir qilishi mumkin. Sanoat mashinalaridan tortib olinadigan qurilmalarga qadar - ma'lumotlarni yig'ish va tarmoqdagi ushbu ma'lumotlarni qabul qilish uchun o'rnatilgan sensorlardan foydalanish.
Shunday qilib, biz kontseptsiya - IoT bilan juda oddiy, ammo qiziqarli loyihani qurishga qaror qildik.
Bugun biz atrofimizdagi ob -havoni kuzatish uchun asosiy veb -serverni quramiz. Biz namlik va harorat ko'rsatkichlarini mobil qurilmalar va noutbuklarda ko'rishimiz mumkin. Aytganimdek, bu sizga tushuncha beradigan oddiy va asosiy veb -sahifa. Siz loyihani o'z ehtiyojlaringizga ko'ra o'zgartirishingiz va o'zgartirishingiz mumkin, masalan, ma'lumotlarni to'plashingiz va kelajakda ishlatishingiz mumkin, siz uy jihozlarini yoki siz tasavvur qila oladigan narsalarni boshqarib, uy avtomatizatsiyasini yaratishingiz mumkin. Har doim esda tuting - Xayol kuchi bizni cheksiz qiladi (Jon Muir tomonidan).
Xo'sh, boshlaylik !!
1 -qadam: asboblaringizni yig'ing !
1 SHT25 namlik va harorat sensori
Sensirion -ning SHT25 yuqori aniqlikdagi namlik va harorat sensori form -faktor va razvedka nuqtai nazaridan sanoat standartiga aylandi: 3 x 3 mm oyoq bosimi va 1,1 mm balandlikdagi qayta tiklanadigan lehimli dual Flat No (DFN) to'plamiga o'rnatilgan, raqamli, I2C formatidagi chiziqli sensor signallari.
1 Adafruit Huzzah ESP8266
Espressif-dan ESP8266 protsessori-bu 80 MGts chastotali to'liq Wi-Fi interfeysi (mijoz va kirish nuqtasi sifatida) va DNS qo'llab-quvvatlanadigan TCP/IP to'plami. ESP8266 - bu IoT dasturlarini ishlab chiqish uchun ajoyib platforma. ESP8266 Arduino Wire Language va Arduino IDE yordamida ilovalarni kuzatish va boshqarish uchun etuk platformani taqdim etadi.
1 ESP8266 USB dasturchisi
Bu ESP8266 xost adapteri I²C interfeysiga ruxsat beruvchi ESP8266 ning Adafruit Huzzah versiyasi uchun maxsus ishlab chiqilgan.
1 I2C ulanish kabeli
2 -qadam: Uskuna ulanishi
ESP8266 -ni oling va uni USB dasturchisiga sekin bosib turing. Keyin I2C kabelining bir uchini SHT25 sensoriga, ikkinchi uchini USB dasturchisiga ulang. Va siz tugatdingiz. Ha, siz to'g'ri o'qidingiz. Bosh og'rig'i yo'q, tovushlar yoqimli. To'g'ri !!
ESP8266 USB Programmer yordamida ESPni dasturlash juda oson. Sensorni USB dasturchiga ulash kifoya, shunda siz borishingiz mumkin. Biz ushbu mahsulot turlaridan foydalanishni afzal ko'ramiz, chunki bu uskunani ulashni ancha osonlashtiradi. Agar USB -dasturchining ulanishi va ulanishi bo'lmasa, noto'g'ri ulanish xavfi katta. Yomon sim sizning Wi -Fi -ni ham, sensoringizni ham o'ldirishi mumkin.
Sensorga ESP pinlarini lehimlash yoki pinlar diagrammasi va ma'lumotlar jadvalini o'qish haqida tashvishlanmang. Biz bir vaqtning o'zida bir nechta sensorlardan foydalanishimiz va ishlashimiz mumkin, siz faqat zanjir yasashingiz kerak.
Bu erda siz mahsulotlarning butun assortimentini tekshirasiz.
Eslatma: Ulanish paytida, ulanish kabelining jigarrang simining sensorning topraklama terminaliga ulanganligiga ishonch hosil qiling va USB -dasturchi uchun.
3 -qadam: kod
SHT25 uchun ESP8266 kodini bizning github omboridan yuklab olish mumkin
Kodga o'tishdan oldin, Readme faylida berilgan ko'rsatmalarni o'qiganingizga va ESP8266 -ni unga muvofiq sozlaganingizga ishonch hosil qiling. ESPni sozlash uchun atigi 5 daqiqa vaqt ketadi.
Endi kodni yuklab oling (yoki git pull) va uni Arduino IDE -da oching.
Kodni tuzing va yuklang va chiqishni ketma -ket monitorda ko'ring.
Eslatma: yuklashdan oldin, kodga SSID tarmog'ingiz va parolingizni kiritganingizga ishonch hosil qiling.
Serial monitordan ESP8266 IP -manzilini nusxalash va veb -brauzeringizga joylashtirish.
Siz namlik va harorat ko'rsatkichlari bo'lgan veb -serverni ko'rasiz. Sensorning ketma -ket monitor va veb -serverdagi chiqishi yuqoridagi rasmda ko'rsatilgan.
Qulaylik uchun siz ushbu sensor uchun ishlaydigan ESP kodini bu erdan ko'chirishingiz mumkin:
#qo'shing
#qo'shing
#qo'shing
#qo'shing
// SHT25 I2C manzili - 0x40 (64)
#aniqlang Addr 0x40
const char* ssid = "ssid tarmog'ingiz";
const char* password = "sizning parolingiz"; suzuvchi namlik, cTemp, fTemp;
ESP8266WebServer serveri (80);
void handleroot ()
{imzosiz int ma'lumotlar [2];
// I2C uzatishni boshlang
Wire.beginTransmission (Addr); // Namlikni o'lchash buyrug'ini yuboring, NO WORD.write masterini ushlab turing (0xF5); // I2C uzatishni to'xtating Wire.endTransmission (); kechikish (500);
// 2 bayt ma'lumotni so'rang
Wire.requestFrom (Addr, 2);
// 2 bayt ma'lumotni o'qing
// namlik msb, namlik lsb if (Wire.available () == 2) {data [0] = Wire.read (); ma'lumotlar [1] = Wire.read ();
// Ma'lumotni aylantirish
namlik = (((ma'lumotlar [0] * 256.0 + ma'lumotlar [1]) * 125.0) / 65536.0) - 6;
// Ma'lumotlarni ketma -ket monitorga chiqarish
Serial.print ("Nisbiy namlik:"); Ketma -ket bosma (namlik); Serial.println (" %RH"); }
// I2C uzatishni boshlang
Wire.beginTransmission (Addr); // Haroratni o'lchash buyrug'ini yuboring, Wire.write masterini ushlab turmang (0xF3); // I2C uzatishni to'xtating Wire.endTransmission (); kechikish (500);
// 2 bayt ma'lumotni so'rang
Wire.requestFrom (Addr, 2);
// 2 bayt ma'lumotni o'qing
// temp msb, temp lsb if (Wire.available () == 2) {data [0] = Wire.read (); ma'lumotlar [1] = Wire.read ();
// Ma'lumotni aylantirish
cTemp = (((ma'lumotlar [0] * 256.0 + ma'lumotlar [1]) * 175.72) / 65536.0) - 46.85; fTemp = (cTemp * 1.8) + 32;
// Ma'lumotlarni ketma -ket monitorga chiqarish
Serial.print ("Selsiy bo'yicha harorat:"); Serial.print (cTemp); Serial.println ("C"); Serial.print ("Farengeytdagi harorat:"); Serial.print (fTemp); Serial.println ("F"); } // Ma'lumotlarni server serveriga chiqarish server.sendContent ("<meta http-equiv = 'refresh' content = '5'" ""
Hammasini nazorat qilish
www.controleverything.com
SHT25 sensori I2C mini moduli
"); server.sendContent ("
Nisbiy namlik = " + String (namlik) +" %RH "); server.sendContent ("
Selsiydagi harorat = " + String (cTemp) +" C "); server.sendContent ("
Farengeytdagi harorat = " + String (fTemp) +" F "); kechikish (300);}
bo'sh o'rnatish ()
{// I2C aloqasini MASTER Wire.begin sifatida boshlang (2, 14); // Seriyali aloqani ishga tushiring, uzatilgan tezlik = 115200 Serial.begin (115200);
// WiFi tarmog'iga ulaning
WiFi.begin (ssid, parol);
// Ulanishni kuting
while (WiFi.status ()! = WL_CONNECTED) {kechiktirish (500); Serial.print ("."); } Serial.println (""); Serial.print ("Ulangan"); Serial.println (ssid);
// ESP8266 IP -manzilini oling
Serial.print ("IP -manzil:"); Serial.println (WiFi.localIP ());
// Serverni ishga tushiring
server.on ("/", ishlov beruvchi); server.begin (); Serial.println ("HTTP -server ishga tushdi"); }
bo'sh halqa ()
{server.handleClient (); }
4 -qadam: Xulosa
SHT25 namlik va harorat sensori seriyasi sensorlar texnologiyasini yangi darajaga olib chiqadi, bu sensorning tengsiz ishlashi, variantlar diapazoni va yangi xususiyatlarga ega. Maishiy texnika, tibbiyot, IOT, HVAC yoki sanoat kabi turli xil bozorlarga mos keladi. ESP8266 yordamida biz uning quvvatini yanada uzunroq qilib oshirishimiz mumkin. Biz noutbuklar va mobil qurilmalar orqali o'z asbob -uskunalarimizni nazorat qila olamiz va ularning ishlashini kuzatamiz. Biz ma'lumotlarni onlayn saqlashimiz va boshqarishimiz va o'zgartirishlar uchun ularni istalgan vaqtda o'rganishimiz mumkin.
Biz bu kabi g'oyalarni tibbiyot sanoatida qo'llashimiz mumkin, namlik va harorat avtomatik ravishda oshganda, bemor xonasida ventilyatsiyani boshqaring. Tibbiy xodimlar xonaga kirmasdan turib ma'lumotlarni onlayn kuzatishi mumkin.
Umid qilamanki, sizga harakat yoqadi va uning imkoniyatlari haqida o'ylaysiz. Yuqorida aytganimdek, tasavvur - bu kalit.:)
SHT25 va ESP8266 haqida qo'shimcha ma'lumot olish uchun quyidagi havolalarni ko'rib chiqing:
- SHT25 namlik va harorat sensori ma'lumotlar jadvali
- ESP8266 ma'lumotlar jadvali
Qo'shimcha ma'lumot olish uchun ControlEverything saytiga tashrif buyuring.