Სარჩევი:

ESP8266 ამინდის მონიტორის ვებ სერვერი (არდუინოს გარეშე): 4 ნაბიჯი
ESP8266 ამინდის მონიტორის ვებ სერვერი (არდუინოს გარეშე): 4 ნაბიჯი

ვიდეო: ESP8266 ამინდის მონიტორის ვებ სერვერი (არდუინოს გარეშე): 4 ნაბიჯი

ვიდეო: ESP8266 ამინდის მონიტორის ვებ სერვერი (არდუინოს გარეშე): 4 ნაბიჯი
ვიდეო: ESP8266 WiFi Weather Forecast 2024, ნოემბერი
Anonim
ESP8266 ამინდის მონიტორის ვებ სერვერი (არდუინოს გარეშე)
ESP8266 ამინდის მონიტორის ვებ სერვერი (არდუინოს გარეშე)

"ნივთების ინტერნეტი" (IoT) დღითიდღე სულ უფრო მზარდი სასაუბრო თემა ხდება. ეს არის კონცეფცია, რომელსაც არა მხოლოდ პოტენციალი აქვს გავლენა მოახდინოს იმაზე, თუ როგორ ვცხოვრობთ, არამედ იმაზეც, თუ როგორ ვმუშაობთ. სამრეწველო აპარატებიდან დაწყებული ტარებადი მოწყობილობებით - ჩაშენებული სენსორების გამოყენებით მონაცემების შეგროვება და ამ მონაცემებზე ზომების მიღება ქსელში.

ასე რომ, ჩვენ გადავწყვიტეთ ავაშენოთ ძალიან მარტივი, მაგრამ საინტერესო პროექტი კონცეფციით - IoT.

დღეს ჩვენ ავაშენებთ ძირითად ვებ სერვერს ჩვენს გარშემო ამინდის მონიტორინგისთვის. ჩვენ შეგვიძლია დავინახოთ ტენიანობის და ტემპერატურის მნიშვნელობები ჩვენს მობილურ მოწყობილობებსა და ნოუთბუქებში. როგორც ვთქვი, ეს არის მარტივი და ძირითადი ვებ გვერდი, რომელიც მოგცემთ წარმოდგენას მის შესახებ. თქვენ შეგიძლიათ განაახლოთ და შეცვალოთ პროექტი თქვენს მოთხოვნილებებზე, ისევე როგორც თქვენ შეგიძლიათ შეაგროვოთ მონაცემები და გამოიყენოთ იგი მომავალი გამოყენებისთვის, თქვენ შეგიძლიათ შექმნათ სახლის ავტომატიზაცია თქვენი საყოფაცხოვრებო ტექნიკის კონტროლით ან ყველაფერი, რისი წარმოდგენაც შეგიძლიათ. ყოველთვის დაიმახსოვრე - წარმოსახვის ძალა უსასრულო გვაქცევს (ჯონ მუირის მიერ).

მაშ ასე, დავიწყოთ !!

ნაბიჯი 1: შეაგროვეთ თქვენი ინსტრუმენტები

შეაგროვეთ თქვენი ინსტრუმენტები !!
შეაგროვეთ თქვენი ინსტრუმენტები !!
შეაგროვეთ თქვენი ინსტრუმენტები !!
შეაგროვეთ თქვენი ინსტრუმენტები !!
შეაგროვეთ თქვენი ინსტრუმენტები !!
შეაგროვეთ თქვენი ინსტრუმენტები !!
შეაგროვეთ თქვენი ინსტრუმენტები !!
შეაგროვეთ თქვენი ინსტრუმენტები !!

1 SHT25 ტენიანობისა და ტემპერატურის სენსორი

Sensirion– ის მაღალი სიზუსტის ტენიანობისა და ტემპერატურის სენსორი გახდა ინდუსტრიის სტანდარტი ფორმის ფაქტორისა და ინტელექტის თვალსაზრისით: ჩამონტაჟებული დასაბრუნებლად გასაყიდად Dual Flat No Leads (DFN) პაკეტში 3 x 3 მმ ფეხის ბეჭდვით და 1.1 მმ სიმაღლით, რომელიც უზრუნველყოფს კალიბრირებულს, ხაზოვანი სენსორის სიგნალები ციფრული, I2C ფორმატით.

1 Adafruit Huzzah ESP8266

ESP8266 პროცესორი Espressif– დან არის 80 მეგაჰერციანი მიკროკონტროლერი სრული WiFi წინა ხაზით (როგორც კლიენტი, ასევე წვდომის წერტილი) და TCP/IP სტეკი DNS მხარდაჭერით. ESP8266 არის წარმოუდგენელი პლატფორმა IoT პროგრამის განვითარებისათვის. ESP8266 უზრუნველყოფს სრულყოფილ პლატფორმას პროგრამების მონიტორინგისა და კონტროლისათვის Arduino Wire Language და Arduino IDE გამოყენებით.

1 ESP8266 USB პროგრამისტი

ეს ESP8266 მასპინძელი ადაპტერი შექმნილია სპეციალურად ESP8266 Adafruit Huzzah ვერსიისთვის, რაც I²C ინტერფეისის საშუალებას იძლევა.

1 I2C დამაკავშირებელი კაბელი

ნაბიჯი 2: აპარატურის დაკავშირება

აპარატურის დაკავშირება
აპარატურის დაკავშირება
აპარატურის დაკავშირება
აპარატურის დაკავშირება
აპარატურის დაკავშირება
აპარატურის დაკავშირება

აიღეთ ESP8266 და ნაზად გადაუსვით USB პროგრამისტს. შემდეგ დააკავშირეთ I2C კაბელის ერთი ბოლო SHT25 სენსორთან და მეორე ბოლო USB პროგრამისტთან. და თქვენ დაასრულეთ. დიახ, თქვენ სწორად წაიკითხეთ. არ აქვს თავის ტკივილი, მაგრად ჟღერს. მართალია !!

ESP8266 USB პროგრამისტის დახმარებით ძალიან ადვილია ESP პროგრამირება. ყველაფერი რაც თქვენ გჭირდებათ რომ გააკეთოთ არის შეაერთოთ სენსორი USB პროგრამისტთან და კარგად ხართ წასული. ჩვენ გვირჩევნია გამოვიყენოთ ამ ასორტიმენტის ასორტიმენტი, რადგან ეს აადვილებს ტექნიკის დაკავშირებას. ამ plug and play USB პროგრამისტის გარეშე ბევრი რისკია არასწორი კავშირის დამყარებისა. ცუდმა გაყვანილობამ შეიძლება გაანადგუროს თქვენი WiFi ასევე სენსორი.

არ ინერვიულოთ ESP- ის ქინძისთავების სენსორზე შეკვრაზე ან პინ დიაგრამებისა და მონაცემთა ფურცლის წაკითხვაზე. ჩვენ შეგვიძლია გამოვიყენოთ და ვიმუშაოთ რამდენიმე სენსორზე ერთდროულად, თქვენ უბრალოდ უნდა გააკეთოთ ჯაჭვი.

აქ თქვენ შეამოწმებთ მათ მთელ პროდუქციის ასორტიმენტს.

შენიშვნა: კავშირების დამყარებისას გთხოვთ დარწმუნდეთ, რომ დამაკავშირებელი კაბელის ყავისფერი მავთული უკავშირდება სენსორის მიწის ტერმინალს და იგივეა USB პროგრამისტისთვის.

ნაბიჯი 3: კოდი

კოდი
კოდი
კოდი
კოდი
კოდი
კოდი
კოდი
კოდი

ESP8266 კოდი SHT25– ისთვის შეგიძლიათ გადმოწეროთ ჩვენი 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* პაროლი = "შენი პაროლი"; float ტენიანობა, cTemp, fTemp;

ESP8266WebServer სერვერი (80);

void handleroot ()

{ხელმოუწერელი int მონაცემები [2];

// დაიწყეთ I2C გადაცემა

Wire.beginTransmission (Addr); // ტენიანობის გაზომვის ბრძანების გაგზავნა, NO HOLD სამაგისტრო Wire.write (0xF5); // შეაჩერე I2C გადამცემი Wire.endTransmission (); დაგვიანება (500);

// მოითხოვეთ მონაცემების 2 ბაიტი

მავთული. მოთხოვნა (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 სამაგისტრო Wire.write (0xF3); // შეაჩერე I2C გადამცემი Wire.endTransmission (); დაგვიანება (500);

// მოითხოვეთ მონაცემების 2 ბაიტი

მავთული. მოთხოვნა (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-equ = 'refresh' content = '5" ""

გააკონტროლეთ ყველაფერი

www.controleverything.com

SHT25 სენსორი I2C მინი მოდული

"); server.sendContent ("

შედარებითი ტენიანობა = " + სიმებიანი (ტენიანობა) +" %RH "); server.sendContent ("

ტემპერატურა ცელსიუსში = " + სიმებიანი (cTemp) +" C "); server.sendContent ("

ტემპერატურა ფარენჰეიტში = " + სიმებიანი (fTemp) +" F "); დაყოვნება (300);}

ბათილად დაყენება ()

{// ინიციალიზაცია I2C კომუნიკაცია როგორც MASTER Wire.begin (2, 14); // სერიული კომუნიკაციის ინიციალიზაცია, დაყენებული baud rate = 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.

გირჩევთ: