Სარჩევი:

ESP8266 NodeMCU BME280 გამზომით და სქემა: 5 ნაბიჯი
ESP8266 NodeMCU BME280 გამზომით და სქემა: 5 ნაბიჯი

ვიდეო: ESP8266 NodeMCU BME280 გამზომით და სქემა: 5 ნაბიჯი

ვიდეო: ESP8266 NodeMCU BME280 გამზომით და სქემა: 5 ნაბიჯი
ვიდეო: Start Using Wemos D1 Mini NodeMCU WiFi ESP8266 module with Arduino 2024, ნოემბერი
Anonim
ESP8266 NodeMCU BME280 საზომით და სქემით
ESP8266 NodeMCU BME280 საზომით და სქემით
ESP8266 NodeMCU BME280 საზომით და სქემით
ESP8266 NodeMCU BME280 საზომით და სქემით

ლამაზი გაზომვები და სქემა თქვენი ESP8266 NodeMCU განვითარების დაფისთვის BME280 ტემპერატურის, ტენიანობის და წნევის სენსორით. Thingspeak ინახავს თქვენს ყველა მონაცემს ღრუბელში გამოსაყენებლად ნებისმიერ დროს წლების განმავლობაში (იმედია) მომავალში. გაზომვები და სქემა შევსებულია სიტყვებით შენახული მონაცემებიდან და ავტომატურად განახლდება ყოველ 5 წუთში.

საჭირო ნივთები:

ESP8266 NodeMCU განვითარების დაფა ($ 3.79 Banggood.com ჰონკონგიდან)

Bosch BME280 ($ 5.63 Banggood.com ჰონკონგიდან)

Breadboard Jumpers ($ 3.09 Banggood.com ჰონკონგიდან)

პურის დაფა ($ 2.28 Banggood.com ჰონკონგიდან)

კვების ბლოკი, უფასო თუ გაქვთ მიკრო USB ტელეფონის დამტენი

მიკრო USB კაბელი, უფასო თუ უკვე გაქვთ

Arduino IDE, უფასო ჩამოტვირთვა

მიიღეთ.ino &. HTML კოდის ფაილები აქ

ნაბიჯი 1: შექმენით და დააყენეთ თქვენი Thingspeak არხები

შექმენით და დააყენეთ თქვენი Thingspeak არხები
შექმენით და დააყენეთ თქვენი Thingspeak არხები

1. შექმენით უფასო Thingspeak ანგარიში და ახალი არხი https://thingspeak.com, დარეკეთ არხზე "ESP8266-NodeMCU-12E-BME280"

2. ახალ არხს უნდა ჰქონდეს 3 ველი სახელწოდებით ტემპერატურის ტენიანობის წნევა ამ კონკრეტული თანმიმდევრობით (შენიშვნა პირველი ასო კაპიტალიზაციით).

3. გაითვალისწინეთ თქვენი ახალი "არხის ID" XXXXXX "არხის პარამეტრებში"

4. დააწკაპუნეთ ბმულზე "API Keys" და გაითვალისწინეთ თქვენი "API ჩაწერა" და "Read API Keys" XXXXXXXXXXXXXXX. ასევე, გახადეთ ეს საჯარო არხი გაზიარების ქვეშ.

5. შექმენით მეორე Thingspeak არხი, რომელიც შეინახავს "დღეს" (შუაღამისას) მაღალ დაბალი მონაცემებს. დაარქვით მას "BME280 ყოველდღიური მაღალი დაბალი მონაცემები"

6. ამ ახალ არხს უნდა ჰქონდეს 6 ველი სახელწოდებით Tmax Tmin Hmax Hmin Pmax Pmin ამ კონკრეტული თანმიმდევრობით (შენიშვნა პირველი ასოების დიდი ასოებით).

7. გაითვალისწინეთ "BME280 Daily High Low Data" "არხის ID", "Read" & "Write API keys" ისევე როგორც ზემოთ მოცემულ ნაბიჯებში.

ნაბიჯი 2: დააინსტალირეთ Arduino IDE, ბიბლიოთეკები და დააკონფიგურირეთ BME280

დააინსტალირეთ Arduino IDE, ბიბლიოთეკები და დააკონფიგურირეთ BME280
დააინსტალირეთ Arduino IDE, ბიბლიოთეკები და დააკონფიგურირეთ BME280

8. მიჰყევით Arduino IDE & ESP8266 ბირთვის დაყენების ინსტრუქციას

9. გაუშვით Arduino IDE, ასე რომ ჩვენ შეგვიძლია დავაყენოთ ოთხი ბიბლიოთეკა, რაც დაგვჭირდება.

10. თქვენ დაგჭირდებათ ბიბლიოთეკა "Adafruit Unified Sensor Driver", დააინსტალირეთ "ბიბლიოთეკის მენეჯერში" Arduino IDE- ში. მენიუს ესკიზის ჩართვა ბიბლიოთეკის მართვა ბიბლიოთეკების ძიება ტიპი = "რეკომენდირებული" თემა = "სენსორები" შემდეგ საძიებო ველში ჩასვით სიტყვები Adafruit Unified Sensor Driver. ის, რაც გსურთ, ამბობს: "Adafruit ერთიანი სენსორი მძღოლი Adafruit- ის მიერ"

11. გარდა ამისა, თქვენ ასევე მოითხოვთ "Adafruit BME280 Library" დააინსტალიროთ იგი "ბიბლიოთეკის მენეჯერში" Arduino IDE- ში. მენიუს ესკიზი ბიბლიოთეკის მართვა ბიბლიოთეკების ძიება ტიპი = "რეკომენდირებული" თემა = "სენსორები" შემდეგ საძიებო ველში ჩასვით სიტყვები Adafruit BME280 Library. ის რაც შენ გინდა ამბობს "Adafruit BME280 Library by Adafruit"

12. კიდევ ერთი ბიბლიოთეკა გჭირდებათ Wire.h, დააინსტალირეთ "ბიბლიოთეკის მენეჯერში" Arduino IDE- ში. მენიუ, ესკიზი ბიბლიოთეკის ჩართვა ბიბლიოთეკების მართვა მოძებნეთ ტიპი = "წვლილი შეტანილი" თემა = "სიგნალის შეყვანა/გამომავალი" შემდეგ საძიებო ველში ჩასვით სიტყვა მავთული. თქვენთვის სასურველი ნათქვამია "მავთული ჩაშენებული არდუინოს მიერ", სავარაუდოდ, შერჩევის ბოლოში.

13. კიდევ ერთი ბიბლიოთეკა, ESP8266WiFi, დააინსტალირეთ "ბიბლიოთეკის მენეჯერში" Arduino IDE- ში. მენიუ, ესკიზი ბიბლიოთეკის ჩართვა ბიბლიოთეკების მართვა მოძებნეთ ტიპი = "წვლილი შეტანილი" თემა = "კომუნიკაცია" შემდეგ საძიებო ველში ჩასვით სიტყვა ESP8266wifi. ის, რაც გინდა, ამბობს "ESP8266wifi ჩამონტაჟებული ივან გროხოტკოვის მიერ"

14. BME280– ის I2C მისამართი მყარად არის კოდირებული Adafruit_BME280.h ფაილში (მოძებნეთ ხაზი #განსაზღვრეთ BME280_ADDRESS 0x77) Adafruit_BME280_Library ბიბლიოთეკის საქაღალდეში. ადაფრუტის BME სენსორული მოდულები მყარად არის დაკავშირებული 0x77 I2C მისამართის გამოსაყენებლად. BME280– ს შეიძლება ჰქონდეს ოდნავ განსხვავებული I2C მისამართი (0x76), თუ მისი გარე SDO პინი დაფუძნებულია. თუ თქვენ იყენებთ სენსორის მოდულებს მესამე მხარისგან, სავარაუდოა, რომ მისი მისამართი არ ემთხვევა ნაგულისხმევ მნიშვნელობას ადაფრუტის ბიბლიოთეკაში. მაგალითად, eBay– ზე ან Aliexpress– ზე არსებული BME280 სენსორული მოდულის უმეტესობისთვის I2C მისამართია 0x76. თუ თქვენ არ მიიღებთ პასუხს სენსორისგან Adafruit_BME280.h ფაილში მითითებული ნაგულისხმევი მისამართის გამოყენებით, შეიძლება დაგჭირდეთ მისი შეცვლა 0x76.

BME280 & ESP8266 კავშირის წერტილები. ESP8266 3.3V BME280 Vin, ESP8266 GND BME280 GND, ESP8266 D4 BME280 SCL, ESP8266 D3 BME280 SDA. 15. გახსენით მოწოდებული ESP8266-NodeMCU-12E-BME280.html ფაილი ტექსტურ რედაქტორში და შეიყვანეთ თქვენი "ESP8266-NodeMCU-12E-BME280" (პირველი არხი, რომელიც თქვენ შექმენით) "არხის ID" და "API Key Read" ცვლადი key1 & chan1. ასევე შეიყვანეთ "Read API Key" და "Channel ID" for "BME280 Daily High Low Data" (მეორე არხი, რომელიც თქვენ შექმენით) key2 და chan2. გარდა ამისა, შეიყვანეთ თქვენი დროის სარტყელი ოფსეტირებული UTC– დან. როგორც ჩემთვის -5. ყველა მნიშვნელობა უნდა იყოს მოცემული ერთიანი ციტატების 'XXXXX' შიგნით. შეინახეთ და გამოდით ტექსტური რედაქტორიდან.

შეაერთეთ თქვენი ESP8266 USB კაბელით თქვენს კომპიუტერში, შემდეგ შეარჩიეთ თქვენი სერიული პორტი, რომელიც იქნება USB პორტი.

Linux– ის მომხმარებლებს შეიძლება მოუწიოს შეცვალოს USB პორტის მფლობელობა /dev /ttyUSB0– თან კომუნიკაციისთვის, როგორც „sudo chown yourusername /dev /ttyUSB0“ან ის, რაც ოდესმე შეარჩიეთ როგორც პორტი კონფიგურაციაში.

ნაბიჯი 3: დაპროგრამეთ ESP8266 Arduino IDE– ით

პროგრამირება ESP8266 Arduino IDE– ით
პროგრამირება ESP8266 Arduino IDE– ით

16. შემდეგი ჩვენ დავაპროგრამებთ ESP8266. შეაერთეთ USB კაბელი თქვენს ESP8266 და თქვენს კომპიუტერს შორის.

ჩატვირთეთ მოწოდებული New_BME_Sensor.ino ფაილი Arduino IDE– ში. თქვენი BME280 სენსორი უნდა იყოს დაკავშირებული D3 (SDA) და D4 (SCL) ESP8266– ზე. შეიყვანეთ ესკიზის სწორ მონაკვეთში თქვენი "ESP8266-NodeMCU-12E-BME280" (პირველი არხი, რომელიც თქვენ შექმენით) "ჩაწერეთ გასაღები" "უსადენო SSID" და "პაროლი". შემდეგ დააჭირეთ მენიუს პუნქტს "ესკიზი" და "ატვირთვა". მას შემდეგ რაც ატვირთავთ ესკიზს (პროგრესი აღწევს 100%-ს) თქვენს ESP8266– ში შეგიძლიათ გახსნათ სერიული მონიტორი (ხატი მარჯვნივ მარჯვნივ გამადიდებელ შუშას ჰგავს) და ნახოთ თქვენი მონაცემები დაბეჭდილი 5 წუთის შემდეგ, ყოველ 5 წუთში. მონაცემები იგზავნება ნივთებზე 5 წუთის ინტერვალით, ასე რომ გარკვეული დრო დასჭირდება სანამ გექნებათ მნიშვნელოვანი გრაფიკის მონაცემები, მაგრამ თქვენ უნდა გქონდეთ გაზომვის მაჩვენებლები 5 წუთის შემდეგ.

დარწმუნდით, რომ მიიღეთ სწორი მაჩვენებლები BME280– ის სერიულ მონიტორზე.

პირველი გაზომვა სავარაუდოდ იქნება არასწორი ნანი.

დაელოდეთ რამდენიმე წუთს მომდევნო წაკითხვამდე და დარწმუნდით, რომ კითხვები კარგად გამოიყურება.

ნაბიჯი 4: დაუბრუნდით Thingspeak– ს მონაცემების შესწორების მიზნით

დაუბრუნდით Thingspeak– ს მონაცემების შესწორების მიზნით
დაუბრუნდით Thingspeak– ს მონაცემების შესწორების მიზნით

17. ახლა, სანამ მონაცემები ნელ -ნელა იტვირთება thingspeak– ში, მოდით შევცვალოთ რაღაც, რომ ავიღოთ დამატებითი მონაცემები გადმოტვირთულიდან. დაუბრუნდით thingspeak ვებსაიტს და Thingspeak "BME280 Daily High Low Data" არხის გვერდზე (თქვენ მიერ შექმნილი მეორე არხი) დააწკაპუნეთ მწვანე ღილაკზე "MATLAB ანალიზი". აირჩიეთ შაბლონი "მორგებული (დამწყებ კოდის გარეშე)"

18. დაასახელეთ MATLAB ანალიზი "გამოთვალეთ მინიმალური მაქს შუაღამიდან".

19. დააკოპირეთ MATLAB Analysis.txt კოდი გათვალისწინებულ სივრცეში. შეიყვანეთ "არხის ID" "ESP8266-NodeMCU-12E-BME280" (პირველი არხი, რომელიც თქვენ შექმენით) "readChannelID"-ში. შეიყვანეთ "BME280 ყოველდღიური მაღალი დაბალი მონაცემები" (მეორე არხი, რომელიც თქვენ შექმენით) ჩაწერეთ "Channel ID" და "ჩაწერეთ გასაღები" writeNewChannelID და writeAPIKey პატივისცემით. მე ვიცი, რომ ეს გაუგებრად ჟღერს (კიდევ ერთხელ წაიკითხე). დააჭირეთ შენახვას და გაშვებას. თუ ეს სწორად გააკეთეთ და წაკითხული არხი საჯაროა, თქვენ ვერ ნახავთ შეცდომებს და ის წარმატებით ბეჭდავს მნიშვნელობებს. შენიშვნა, თქვენ შეიძლება ნახოთ შეცდომა, თუ მონაცემები არ არის ატვირთული ამ არხზე. მიუხედავად შეცდომის გაგრძელება. თუ სასურველია, შეგიძლიათ კვლავ გადახედოთ დააწკაპუნეთ შენახვაზე და გაუშვით, რომ დარწმუნდეთ, რომ ის მუშაობს მონაცემების ატვირთვის შემდეგ.

20. შემდეგი, ჩვენ უნდა შევქმნათ "დროის კონტროლი" ამ კოდის გასახსნელად ყოველ 5 წუთში და ჩვენი მონაცემები იწერება არხზე "BME280 Daily High Low Data" (მეორე არხი, რომელიც თქვენ შექმენით). "BME280 Daily High Low Data" (მეორე არხი, რომელიც თქვენ შექმენით) მთავარი გვერდიდან აირჩიეთ პროგრამები ზემოთ. მოქმედებების ქვეშ აირჩიეთ "TimeControl", შემდეგ მწვანე ღილაკი "New TimeControl". დაასახელეთ "გაგზავნეთ მაღალი დაბალი ტემპერატურა ESP8266". საჭიროების შემთხვევაში შეარჩიეთ თქვენი დროის სარტყელი და აირჩიეთ "განმეორებადი" სიხშირის ქვეშ. აირჩიეთ წუთი განმეორების ქვეშ. დააყენეთ გაშვება ყოველ 5 წუთში. მოქმედება უნდა იყოს MATLAB ანალიზი და "შესასრულებელი კოდი" არის "გამოთვალე მინიმალური მაქს შუაღამიდან". დაზოგეთ დრო კონტროლი.

ნაბიჯი 5: შეცვალეთ მოწოდებული HTML ფაილი

შეცვალეთ მოწოდებული HTML ფაილი
შეცვალეთ მოწოდებული HTML ფაილი

შეცვალეთ HTML ფაილები და მოძებნეთ კომენტარები, სადაც ნათქვამია "******** შეცვალე მე 1 დან 8 *********" შეცვალეთ ეს თქვენი სურვილისამებრ.

შენიშვნები:

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

გახსენით მოწოდებული ESP8266-NodeMCU-12E-BME280.html ფაილი თქვენს ბრაუზერში და თქვენ უნდა ნახოთ გაზომვები და სქემა დასახლებული.

მიიღეთ.ino &. HTML კოდის ფაილები აქ

გირჩევთ: