Სარჩევი:

კარის ზარის ბიძგი და ტემპერატურის სენსორი: 6 ნაბიჯი
კარის ზარის ბიძგი და ტემპერატურის სენსორი: 6 ნაბიჯი

ვიდეო: კარის ზარის ბიძგი და ტემპერატურის სენსორი: 6 ნაბიჯი

ვიდეო: კარის ზარის ბიძგი და ტემპერატურის სენსორი: 6 ნაბიჯი
ვიდეო: How To Laser Clean A Rusty Range Rover Chassis | Workshop Diaries | Edd China 2024, ივლისი
Anonim
კარის ზარის ბიძგი და ტემპერატურის სენსორი
კარის ზარის ბიძგი და ტემპერატურის სენსორი

ეს აძლიერებს სტანდარტული სადენიანი კარის ზარს esp-12F (esp8266) მოდულით.

იგი დამონტაჟებულია ზარის განყოფილებაში, რათა თავიდან აიცილოს გაყვანილობის ნებისმიერი ცვლილება. ის უზრუნველყოფს შემდეგ ფუნქციებს

  • გამოავლინეთ კარის ზარი
  • აგზავნის შეტყობინებებს ტელეფონზე IFTTT საშუალებით
  • ინახავს კარის ზარის აქტივობას easyIOT სერვერზე (სურვილისამებრ)
  • გააქტიურეთ სხვა აქტივობა URL– ის საშუალებით, როდესაც კარის ზარი გაისმა

    მე ვიღებ სურათს ვებკამერაზე კართან და შემიძლია ვნახო კარის ზარის ბოლოდროინდელი გადაღებები ჩემს ტელეფონში

  • სურვილისამებრ ჩაშენებული ტემპერატურის სენსორი (DS18B20), რომელიც ჩემი სახლის ტემპერატურის მონიტორინგის ნაწილია

ნაბიჯი 1: აპარატურა და მასალები

ტექნიკა და მასალები
ტექნიკა და მასალები
ტექნიკა და მასალები
ტექნიკა და მასალები

საჭიროა შემდეგი მასალები

  • ESP-12F (ESP8266) wifi / cpu მოდული
  • DC Buck კონვერტორი 3.3V მიწოდებისთვის
  • მაკორექტირებელი დიოდი (მაგ. 1N4001)
  • ელექტროლიტური კონდენსატორი 220uF 35V
  • ელექტროლიტური კონდენსატორი 220uF 16V
  • ზენერის დიოდი 3.3 ან 2.6V
  • რეზისტორები
  • ზოლის დაფის ნაჭერი
  • საჭიროების შემთხვევაში კონექტორები
  • საჭიროების შემთხვევაში DS18B20 ციფრული ტემპერატურის სენსორი

სქემატურად ნაჩვენებია გამოყენებული წრე. იგი ითვალისწინებს დაბალი ძაბვის AC იკვებება ზარი, რომელიც არის ყველაზე გავრცელებული ტიპის მყარი სადენიანი მარტივი ზარი. ზარის ერთეული იღებს ენერგიას გარე ზარის ტრანსფორმატორისგან, როგორც წესი, დაახლოებით 10V AC- ზე. ეს არ არის კრიტიკული, ერთადერთი შეზღუდვა არის მაქსიმალური ძაბვა მამლის გადამყვანში. მე ვიყენებ არის MP2307 დაფუძნებული მაქსიმალური შეყვანის 23V DC (~ 16V AC).

ჩვეულებრივ არის 3 აქტიური ტერმინალი. ზარის დაჭერით ხდება კავშირი AC მიწოდების ერთი მხრიდან ზარის სოლენოიდთან. მოდული იყენებს ორ AC ტერმინალს DC ენერგიის შესაქმნელად მარტივი ნახევრად ტალღის მაკორექტირებლის საშუალებით. ზარის ბიძგის ამოცნობა ხდება ძაბვის მონიტორინგის შედეგად სოლენოიდზე. ეს ჩვეულებრივ იქნება დაფქული, მაგრამ როდესაც ზარი გააქტიურდება იქნება სრული AC. რეზისტორის / ზენერის დიოდი იჭერს ამას, ასე რომ 0 - 3.3V 50 Hz პულსი იკვებება GPIO პინში. პროგრამული უზრუნველყოფა ამუშავებს, რათა უზრუნველყოს ერთი გააქტიურება თითო ზარის დაჭერით.

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

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

ნაბიჯი 2: პროგრამული უზრუნველყოფა

კარის ბიძგის განყოფილება იყენებს Arduino სკეტჩს, რომელიც ხელმისაწვდომია github– ზე

ეს უნდა მორგდეს ადგილობრივ პირობებს და შემდგომ შეადგინოს esp8266 Arduino გარემოში. შემდეგი ბიბლიოთეკები საჭიროა, ისინი სტანდარტულია ან შეიძლება დაემატოს.

  • ESP8266WiFi
  • WifiClient
  • ESP8266 ვებ სერვერი
  • ESP8266mDNS
  • ESP8266HTTP განახლების სერვერი
  • არდუინო ჯონსონი
  • WifiClientSecure
  • IFTTTMaker
  • DNSServer
  • WiFiManager (სურვილისამებრ გამოყენება)
  • OneWire
  • დალასის ტემპერატურა

ესკიზის ელემენტები შესაცვლელი მოიცავს

  • ადგილობრივი wifi წვდომის დეტალები (ssid, პაროლი) თუ არ იყენებთ WifiManager- ს
  • ავტორიზაციის კოდი ვებ წვდომისათვის AP_AUTHID. კარგია, რომ ეს იყოს ღირსეული სიგრძე. ის შეიძლება შეიცავდეს ალფანუმერულ სიმბოლოებს.
  • firmware OTA პაროლი update_password
  • WifiManager პაროლი WM_PASSWORD

    Wifi შეიძლება ხელით შეიქმნას WM_NAME– ის კომენტარით

  • IFTTT მწარმოებლის გასაღები (იხილეთ შეტყობინების ნაბიჯი)

არჩევითი ცვლილებები მოიცავს

  • კარის ზარის დეტექტორის შესასვლელი პინის შეცვლა
  • ტემპერატურის სენსორის პინის შეცვლა
  • ვებ წვდომის პორტის შეცვლა ნაგულისხმევიდან 80

მას შემდეგ რაც ეს კეთდება, ის ჯერ უნდა იყოს შედგენილი და ატვირთული ჩვეულებრივი სერიული ატვირთვის გამოყენებით. შემდგომი განახლება შეიძლება გაკეთდეს Arduino გარემოში საექსპორტო ორობითი მონაცემების შედგენით და შემდეგ OTA ინტერფეისზე წვდომა ip/firmware– ზე.

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

სხვა აქტივობებზე წვდომა შესაძლებელია esp8266 ვებ სერვერზე

  • ip/Recent აჩვენებს კარის ზარის ბოლოდროინდელ აქტივობას
  • ip/reloadConfig გადატვირთავს espConfig
  • ip/bellPush ახდენს ზარის ბიძგის სიმულაციას

ნაბიჯი 3: კონფიგურაცია

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

მე ვინახავ კონფიგურაციის ფაილს ჩემს EasyIOT სერვერზე, რომელსაც აქვს საქაღალდე easyIOT/html სადაც კონფიგურაციის ფაილი ადვილად მოიპოვება.

ფაილს ეწოდება espConfig და არის მარტივი ტექსტური ფაილი, რომელიც ინახავს უამრავ პარამეტრს (12) თითოეული შესაძლო Mac მისამართისთვის. მოდული იტვირთება მხოლოდ მისი Mac მისამართისთვის მითითებული პარამეტრებით.

მაგალითი ფაილიდან არის

#დარბაზი

#Mac მისამართი123456ABCDEF

#მოდულის სახელი

esp8266-დარბაზი

#სერვერის რეჟიმის ნიღაბი (1 = ტემპერატურის განცდა, 4 = ბოილერმოდი, 4 = კარის ზარი)

9

#EIOT კვანძი ტემპერატურისთვის

N9S0

#გამოუყენებელი

-1

# მინიმალური ტემპერატურის ინტერვალი წამებში

60

#მაქსიმალური ტემპერატურის ინტერვალი წამებში

300

#ქვაბის დენის ინტერვალი

0

#EasyIOT ქვაბის დენის კვანძი

-1

#EasyIOT ზარის ბიძგის კვანძი

N10S0

# IFTTT აცნობებს მნიშვნელობას

წინა

#IFTTT აცნობებს ღონისძიების სახელს

კარის ზარი

#მოქმედების URL

192.168.0.2/snap.php

# -ით დაწყებული ნებისმიერი ხაზი იგნორირებულია. ყველა ხაზი უნდა იყოს წარმოდგენილი. -1 გამოიყენება პარამეტრების იგნორირებისათვის.

კონფიგურაციის ფაილი იკითხება, როდესაც მოდული პირველად იწყება. ის ასევე შეიძლება გადატვირთოთ გაშვებულ სისტემაში (როდესაც კონფიგურაცია შეიცვალა) ip/reloadConfig წვდომით

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

ნაბიჯი 4: შეტყობინებები

როდესაც კარის ზარის ბიძგი გამოვლენილია, ის ცდილობს ამის შესახებ შეატყობინოს IFTTT ან PushOver. მე ახლა PushOver რადგან ის იძლევა უფრო სწრაფი რეაგირება.

IFTTT– სთვის გჭირდებათ ანგარიში და გააქტიურეთ Maker WebHoooks არხი. ამ არხის MakerKey უნდა იყოს შედგენილი კოდში.

დააყენეთ IF მოქმედება Maker WebHooks– ის გამოყენებით და გამოიყენეთ ღონისძიების სახელი, როგორც კონფიგურაციაში (მაგ. კარის ზარი). შემდეგ მოქმედება უნდა იყოს IFTTT შეტყობინება. თქვენ შეგიძლიათ დაამატოთ მნიშვნელობა 1 შეტყობინებას, რომელიც იქნება კონფიგურაციის ფაილში. ეს შეიძლება სასარგებლო იყოს, თუ თქვენ გაქვთ 2 ან მეტი დეტექტორი.

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

PushOver– ისთვის გჭირდებათ PushOver ანგარიში და მიჰყევით ინსტრუქციას API შეტყობინებების მისაღებად. თქვენ უნდა დააყენოთ NOTIFICATION_APP და NOTIFICATION_USER ჟეტონები პროგრამულ უზრუნველყოფაში თქვენი PushOver ანგარიშის მნიშვნელობებით.

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

ნაბიჯი 5: EasyIOT ინტეგრაცია

პროგრამულ უზრუნველყოფას შეუძლია გაგზავნოს ტემპერატურა და Doorbell– ის ანგარიშები EasyIOT სერვერზე. EasyIOT ავტომატიზაცია შეიძლება გამოყენებულ იქნას ამ ანგარიშზე დაყრდნობით დამატებითი ქმედებების განხორციელებისთვის.

დააყენეთ EasyIOT სერვერი (მაგალითად Raspberry Pi– ზე). დააკონფიგურირეთ ip მისამართი და მომხმარებლის სახელი პაროლი esp8266 პროგრამულ უზრუნველყოფაში და შეადგინეთ.

ახლა დაამატეთ ვირტუალური დრაივერი EASYIOT კონფიგურაციაში. შეარჩიეთ ტემპერატურის ანალოგური შეყვანა და გაითვალისწინეთ EasyIOT კვანძის სახელი. ეს უნდა იყოს ჩასმული espConfig ფაილის ტემპერატურის კვანძის სახელში.

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

ნაბიჯი 6: ზარის სხვა მოქმედებები

პროგრამას აქვს რუტინა, სახელწოდებით actionBellOn. როგორც წერია ამას 3 რამის გაკეთება შეუძლია

  • IFTTT აცნობოს
  • EasyIOT ანგარიში
  • შეასრულეთ მოქმედების URL

URL შეიძლება გამოყენებულ იქნას სხვა ვებ სერვერებიდან სხვა აქტივობის გასააქტიურებლად. გამოყენებული URL არის espConfig ფაილში.

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

მე ამას ვიყენებ URL– ს სახელწოდებით snap.php კარის გვერდით მდებარე კამერაზე. ამას იღებს-j.webp

მე ვიყენებ ჟოლოს Pi- ზე დაფუძნებულ კამერებს, რაც ამ ოპერაციის შესრულებას ძალიან მარტივად ახერხებს. კამერა

გირჩევთ: