Სარჩევი:

მონიტორინგი თქვენს ბაღში: 16 ნაბიჯი (სურათებით)
მონიტორინგი თქვენს ბაღში: 16 ნაბიჯი (სურათებით)

ვიდეო: მონიტორინგი თქვენს ბაღში: 16 ნაბიჯი (სურათებით)

ვიდეო: მონიტორინგი თქვენს ბაღში: 16 ნაბიჯი (სურათებით)
ვიდეო: კახი კალაძე დატროლეს 😀🤣🤣 2024, ივლისი
Anonim
დააკვირდით თქვენს ბაღს
დააკვირდით თქვენს ბაღს

გააკონტროლეთ თქვენი ბაღი ნებისმიერი ადგილიდან, გამოიყენეთ ადგილობრივი ეკრანი ნიადაგის მდგომარეობის მონიტორინგისთვის ადგილობრივად ან გამოიყენეთ მობილური დისტანციური მონიტორინგისთვის. წრე იყენებს ნიადაგის ტენიანობის სენსორს, ტემპერატურასა და ტენიანობასთან ერთად, რათა გააცნობიეროს ნიადაგის გარემო პირობები.

ნაბიჯი 1: კომპონენტები:

  1. არდუინო უნო
  2. ნოდემკუ
  3. ტემპერატურისა და ტენიანობის სენსორი DHT 11
  4. ნიადაგის ტენიანობის სენსორი - FC28
  5. ბატარეის ბანკი 10000mah (არდუინოს და ნოდემკუს გააქტიურებისათვის)
  6. Nokia LCD 5110
  7. რეზიდენტი (5 x 10k, 1 x 330ohms)
  8. პოტენომეტრი მბრუნავი ტიპი (LCD სიკაშკაშის შესაცვლელად) 0-100K
  9. ჯუმბერის მავთულები
  10. პურის დაფა

ნაბიჯი 2: ძირითადი სენსორი: ნიადაგის ტენიანობა FC 28

ძირითადი სენსორი: ნიადაგის ტენიანობა FC 28
ძირითადი სენსორი: ნიადაგის ტენიანობა FC 28

ტენიანობის გასაზომად, ჩვენ ვიყენებთ ნიადაგის ტენიანობის სენსორს FC 28, რომლის ძირითადი პრინციპი ასეთია:-

FC-28 ნიადაგის ტენიანობის სენსორის მახასიათებლები შემდეგია: შეყვანის ძაბვა: 3.3-5V

გამომავალი ძაბვა: 0 - 4.2V

შეყვანის დენი: 35mA

გამომავალი სიგნალი: როგორც ანალოგური, ასევე ციფრული

FC-28 ნიადაგის ტენიანობის სენსორს აქვს ოთხი ქინძისთავები: VCC: სიმძლავრე

A0: ანალოგური გამომავალი

D0: ციფრული გამომავალი

GND: გრუნტი

სენსორის ანალოგიურ რეჟიმში დასაკავშირებლად, ჩვენ უნდა გამოვიყენოთ სენსორის ანალოგური გამომავალი. ნიადაგის ტენიანობის სენსორიდან FC-28– ის ანალოგური გამოყვანისას, სენსორი გვაძლევს მნიშვნელობას 0 – დან 1023 – მდე. ტენიანობა იზომება პროცენტულად, ამიტომ ჩვენ ამ მნიშვნელობებს დავხატავთ 0 – დან 100 – მდე და შემდეგ ჩვენ ვაჩვენებთ ამ მნიშვნელობებს სერიული მონიტორი. თქვენ შეგიძლიათ დააყენოთ ტენიანობის მნიშვნელობების სხვადასხვა დიაპაზონი და ამის მიხედვით ჩართოთ ან გამორთოთ წყლის ტუმბო.

მოდული ასევე შეიცავს პოტენომეტრს, რომელიც განსაზღვრავს ბარიერის მნიშვნელობას. ამ ბარიერის მნიშვნელობას შეადარებს LM393 შედარება. გამომავალი LED ნათდება და იკლებს ამ ბარიერის მნიშვნელობის შესაბამისად.

ნიადაგის ტენიანობის სენსორთან ურთიერთობის კოდი მიიღება შემდგომი ნაბიჯებით

ნაბიჯი 3: MQTT- ის გაგება: დისტანციური მონაცემების გამოქვეყნებისთვის

MQTT– ის გაგება: დისტანციური მონაცემების გამოქვეყნებისთვის
MQTT– ის გაგება: დისტანციური მონაცემების გამოქვეყნებისთვის

სანამ შემდგომ მუშაობას დავიწყებდეთ, მოდით გავარკვიოთ IOT– ის მონაცემთა დისტანციური გამოქვეყნება

MQTT ნიშნავს MQ Telemetry Transport. ეს არის გამოქვეყნების/გამოწერის, უკიდურესად მარტივი და მსუბუქი შეტყობინებების პროტოკოლი, რომელიც შექმნილია შეზღუდული მოწყობილობებისთვის და დაბალი გამტარუნარიანობით, მაღალი შეყოვნებით ან არასაიმედო ქსელებისთვის. დიზაინის პრინციპებია ქსელის გამტარუნარიანობის და მოწყობილობის რესურსების მოთხოვნების მინიმუმამდე შემცირება, ასევე საიმედოობისა და მიწოდების უზრუნველყოფის გარკვეული ხარისხის მცდელობა. ეს პრინციპები ასევე გამოდის, რომ პროტოკოლი იდეალური გახდება დაკავშირებული მოწყობილობების "მანქანა-მანქანამდე" (M2M) ან "ნივთების ინტერნეტი" სამყაროში და მობილური აპლიკაციებისთვის, სადაც გამტარუნარიანობა და ბატარეის სიმძლავრე პრიმიტიულია.

წყარო:

MQTT [1] (MQ Telemetry Transport ან Message Queuing Telemetry Transport) არის ISO სტანდარტი (ISO/IEC PRF 20922) [2] გამოქვეყნება-გამოწერაზე დაფუძნებული შეტყობინებების პროტოკოლი. ის მუშაობს TCP/IP პროტოკოლის თავზე. იგი შექმნილია დისტანციურ ადგილებთან კავშირებისთვის, სადაც საჭიროა "მცირე კოდის ნაკვალევი" ან ქსელის გამტარობა შეზღუდულია.

წყარო:

ნაბიჯი 4: MQTT: MQTT საბროკერო ანგარიშის შექმნა

არსებობს სხვადასხვა MQTT საბროკერო ანგარიში, ამ გაკვეთილისთვის მე გამოვიყენე cloudmqtt (https://www.cloudmqtt.com/)

CloudMQTT მართულია Mosquitto სერვერები ღრუბელში. Mosquitto ახორციელებს MQ Telemetry Transport პროტოკოლს, MQTT, რომელიც ითვალისწინებს შეტყობინებების გაცემის მსუბუქი მეთოდებს გამოქვეყნების/გამოწერის შეტყობინებების რიგის მოდელის გამოყენებით.

შემდეგი ნაბიჯები უნდა შესრულდეს cloudmqtt ანგარიშის საბროკეროდ დასაყენებლად

  • შექმენით ანგარიში და შედით მართვის პანელში
  • დააჭირეთ შექმნა+ ახალი ინსტანციის შესაქმნელად
  • დასაწყებად, ჩვენ უნდა დარეგისტრირდეთ მომხმარებელთა გეგმაზე, ჩვენ შეგვიძლია ვცადოთ CloudMQTT უფასოდ CuteCat გეგმით.
  • "ინსტანციის" შექმნის შემდეგ, შემდეგი ნაბიჯი არის მომხმარებლის შექმნა და შემდგომში მომხმარებლისთვის ნებართვის მინიჭება შეტყობინებებზე წვდომისათვის (ACL წესების საშუალებით)

MQTT საბროკერო ანგარიშის cloudmqtt– ში დაყენების სრულ გზამკვლევს შეგიძლიათ მიჰყევით ბმულს: -

ყველა ზემოთ ჩამოთვლილი ნაბიჯი სათითაოდ არის მოთავსებული შემდეგ სლაიდებში

ნაბიჯი 5: MQTT: ინსტანციის შექმნა

MQTT: ინსტანციის შექმნა
MQTT: ინსტანციის შექმნა

მე შევქმენი შემთხვევა სახელწოდებით "myIOT"

გეგმა: საყვარელი გეგმა

ნაბიჯი 6: MQTT: ინფორმაცია შემთხვევის შესახებ

MQTT: ინფორმაცია შემთხვევის შესახებ
MQTT: ინფორმაცია შემთხვევის შესახებ

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

ნაბიჯი 7: MQTT: მომხმარებლის დამატება

MQTT: მომხმარებლის დამატება
MQTT: მომხმარებლის დამატება

შექმენით მომხმარებელი სახელით "nodemcu_12" და მიეცით პაროლი

ნაბიჯი 8: MQTT: ACL წესის მინიჭება

MQTT: ACL წესის მინიჭება
MQTT: ACL წესის მინიჭება

ახალი მომხმარებლის შექმნის შემდეგ (nodemcu_12) შეინახეთ ახალი მომხმარებელი, ახლა შემდგომი ACL უნდა მიეწოდოს ახალ მომხმარებელს. თანდართულ სურათზე ჩანს, რომ მე მივეცი მომხმარებელს როგორც კითხვის, ასევე წერის წვდომა.

გთხოვთ გაითვალისწინოთ: თემა უნდა დაემატოს როგორც ნაჩვენებია ფორმატში (ეს დამატებით საჭიროა კვანძიდან MQTT კლიენტზე წასაკითხად და წერისთვის)

ნაბიჯი 9: ნოდემკუ: კონფიგურაცია

ამ კონკრეტულ პროექტში მე გამოვიყენე nodemcu Knewron Technologies– დან, მეტი ინფორმაციის მიღება შეგიძლიათ ბმულის მიხედვით: -(https://www.dropbox.com/s/73qbh1jfdgkauii/smartWiFi%20Development%20Module%20-%20User% 20Guide.pdf? Dl = 0)

როგორც ჩანს, NodeMCU არის eLua– ზე დაფუძნებული firmware ESP8266 WiFi SOC– ისთვის Espressif– დან. Nodemcu საწყისი knowron არის დატვირთული firmware, ამიტომ ჩვენ უბრალოდ უნდა ჩავტვირთოთ პროგრამული უზრუნველყოფა კერძოდ: -

  • init.lua
  • setup.lua
  • config.lua
  • app.lua

ყველა ზემოთ ჩამოთვლილი ლუას სკრიპტის გადმოწერა შესაძლებელია Github– დან ბმულით: ჩამოტვირთეთ Github– დან

ზემოთ მოყვანილი lua სკრიპტებიდან შეცვალეთ config.lua სკრიპტები MQTT მასპინძლის სახელით, პაროლით, wifi ssid და ა.

იმისათვის, რომ გადმოვწეროთ ზემოთ ჩამოთვლილი სკრიპტები nodemcu– ზე, ჩვენ უნდა გამოვიყენოთ ისეთი ინსტრუმენტები, როგორიცაა „ESPlorer“, დამატებითი ინფორმაციისათვის მიმართეთ დოკუმენტებს:

ESPlorer– თან მუშაობა აღწერილია შემდეგ ეტაპზე

ნაბიჯი 10: ნოდემკუ: ატვირთეთ ლუას სკრიპტები ნოდემკუში ESPlorer_1– ით

ნოდემკუ: ატვირთეთ ლუას სკრიპტები ნოდემკუში ESPlorer_1– ით
ნოდემკუ: ატვირთეთ ლუას სკრიპტები ნოდემკუში ESPlorer_1– ით
  • დააწკაპუნეთ განახლების ღილაკზე
  • შეარჩიეთ COM (კომუნიკაცია) პორტი და სიჩქარე (ხშირად გამოიყენება 9600)
  • დააწკაპუნეთ გახსნაზე

ნაბიჯი 11: ნოდემკუ: ატვირთეთ ლუას სკრიპტები ნოდემკუში ESPlorer_II– ით

ნოდემკუ: ატვირთეთ ლუას სკრიპტები ნოდემკუში ESPlorer_II– ით
ნოდემკუ: ატვირთეთ ლუას სკრიპტები ნოდემკუში ESPlorer_II– ით

ნაბიჯი 12: ნოდემკუ: ატვირთეთ ლუას სკრიპტები ნოდემკუში ESPlorer_III– ით

ნოდემკუ: ატვირთეთ ლუას სკრიპტები ნოდემკუში ESPlorer_III– ით
ნოდემკუ: ატვირთეთ ლუას სკრიპტები ნოდემკუში ESPlorer_III– ით

შენახვისა და შედგენის ღილაკი გამოაგზავნის ოთხივე ლუას სკრიპტს nodemcu– ზე, მას შემდეგ რაც ეს nodemcu მზად იქნება ისაუბროს ჩვენს arduino– სთან.

შეაგროვეთ ჩიპის პირადობის მოწმობის ინფორმაცია:

ყველა ნოდემკუს აქვს ჩიპის ID (ალბათ არა.), ამ ჩიპის პირადობის მოწმობა დამატებით საჭიროა MQTT ბროკერისთვის შეტყობინების გამოსაქვეყნებლად, რათა ვიცოდეთ ჩიპის ID- ს შესახებ დააჭირეთ ღილაკს Chip id "ESPlorer" - ში

ნაბიჯი 13: ნოდემკუ: არდუინოს კონფიგურაცია ნოდემკუსთან სასაუბროდ

ქვემოთ მოყვანილი კოდი განსაზღვრავს ნიადაგის ტენიანობას, ტემპერატურასა და ტენიანობას და შემდგომ აჩვენებს მონაცემებს nokia LCD 5110 – ზე და სერიულად.

არდუინოს კოდი

ვიდრე დაკავშირება Arduino RX --- Nodemcu TX

Arduino TX --- Nodemcu RX

ზემოაღნიშნული კოდი ასევე მოიცავს რბილი სერიული ბიბლიოთეკის გამოყენების გზებს, რომლითაც DO ქინძისთავები ასევე შეიძლება გამოყენებულ იქნას სერიული ქინძისთავებად, მე გამოვიყენე RX/TX ქინძისთავები nodemcu სერიულ პორტთან დასაკავშირებლად.

სიფრთხილე: ვინაიდან nodemcu მუშაობს 3.3V– ით, გირჩევთ გამოიყენოთ დონის ცვლადი, თუმცა მე პირდაპირ ვუკავშირდები ყოველგვარი დონის შემამცირებლის გარეშე და შესრულება ზუსტად ეჩვენება ზემოთ მითითებულ პროგრამას.

ნაბიჯი 14: ნოდემკუ: MQTT კლიენტის დაყენება Android- ში

ნოდემკუ: MQTT კლიენტის დაყენება Android- ში
ნოდემკუ: MQTT კლიენტის დაყენება Android- ში

Android კლიენტთან მობილურით ინფორმაციის სანახავად ბოლო ნაბიჯი:-

არსებობს MQTT android პროგრამის მრავალფეროვნება, მე გამოვიყენე Google Play– დან შემდეგი ბმულით:

.https://play.google.com/store/apps/details?

Android აპლიკაციის კონფიგურაცია საკმაოდ მარტივია და თქვენ უნდა დააკონფიგურიროთ შემდეგი

  • MQTT მასპინძლის მისამართი პორტთან ერთად
  • MQTT მომხმარებლის სახელი და მისამართი
  • MQTT საბროკერო კვანძის მისამართი

ზემოაღნიშნული დეტალების დამატების შემდეგ, დააკავშირეთ პროგრამა, თუ პროგრამა დაკავშირებულია MQTT ბროკერთან, მაშინ ყველა შესვლის სტატუსი / სერიული კომუნიკაციის მონაცემები arduino– დან გამოჩნდება როგორც ჟურნალი.

ნაბიჯი 15: დამატებითი ნაბიჯები: Nokia LCD 5110 -თან მუშაობა

დამატებითი ნაბიჯები: Nokia LCD 5110 -თან მუშაობა
დამატებითი ნაბიჯები: Nokia LCD 5110 -თან მუშაობა

ქვემოთ მოცემულია პინის კონფიგურაცია LCD 5110– ისთვის

1) RST - გადატვირთვა

2) CE - ჩიპის ჩართვა

3) D/C - მონაცემები/ბრძანების შერჩევა

4) DIN - სერიული შეყვანა

5) CLK - საათის შეყვანა

6) VCC - 3.3V

7) LIGHT - უკანა განათების კონტროლი

8) GND - გრუნტი

როგორც ზემოთ იყო ნაჩვენები, შეუერთეთ arduino– ს LCD 5110 – თან ზემოთ, თანმიმდევრობით 1-10 K რეზისტორით.

ქვემოთ მოცემულია LCD 5110– ის დამაკავშირებელი კავშირები Arduino uno– სთვის

  • CLK - Arduino ციფრული პინი 3
  • DIN - Arduino ციფრული პინი 4
  • D/C - Arduino ციფრული პინი 5
  • RST - Arduino ციფრული პინი 6
  • CE - Arduino ციფრული პინ 7

LCD 5110-ის შემდგომი "BL" პინი შეიძლება გამოყენებულ იქნას პოტენციმეტრთან ერთად (0-100K) LCD სიკაშკაშის გასაკონტროლებლად

ბიბლიოთეკა, რომელიც გამოიყენება ზემოთ კოდისთვის არის: - ჩამოტვირთეთ PCD8544 ქვემოთ მითითებული ბმულიდან

DHT11- ის, ტემპერატურისა და ტენიანობის სენსორის არდუინოსთან ინტეგრაცია შეგიძლიათ იხილოთ DHT11 ბმულიდან.

ნაბიჯი 16: საბოლოო შეკრება

ფინალური შეკრება
ფინალური შეკრება

ბოლო ნაბიჯი არის ყველა ზემოთ ჩამოთვლილი ყუთში სასურველია, მიწოდებისთვის მე გამოვიყენე 10000mah powerbank როგორც არდუინოს ასევე ნოდემკუს ენერგიაზე.

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

გირჩევთ: