Სარჩევი:
- მარაგები
- ნაბიჯი 1: აპარატურა - წრე
- ნაბიჯი 2: აპარატურა - დანართი
- ნაბიჯი 3: პროგრამული უზრუნველყოფა
- ნაბიჯი 4: სახლის ავტომატიზაცია და Telegram
- ნაბიჯი 5: გაუმჯობესება და შემდგომი გაუმჯობესება
ვიდეო: ბატარეის კარის სენსორი სახლის ავტომატიზაციის ინტეგრაციით, WiFi და ESP-NOW: 5 ნაბიჯი (სურათებით)
2024 ავტორი: John Day | [email protected]. ბოლოს შეცვლილი: 2024-01-30 10:17
ამ სასწავლო ინსტრუქციაში მე გაჩვენებთ თუ როგორ გავაკეთე ბატარეაზე მომუშავე კარის სენსორი სახლის ავტომატიზაციის ინტეგრაციით. მე მინახავს სხვა ლამაზი სენსორები და სიგნალიზაციის სისტემები, მაგრამ მინდოდა მე თვითონ გამეკეთებინა ისინი.
Ჩემი მიზნები:
- სენსორი, რომელიც აღმოაჩენს და აცნობებს კარის სწრაფად გახსნას (<5 წამი)
- სენსორი, რომელიც განსაზღვრავს კარის დახურვას
- სენსორი, რომელიც მუშაობს ბატარეაზე და მუშაობს რამდენიმე თვის განმავლობაში ბატარეაზე
აპარატურა და პროგრამული უზრუნველყოფა შთაგონებულია
- კევინ დარრას ტრიბორდი (TPL5111 და TPS73733).
- ეს ვიდეო
მე გავაკეთე სენსორი ჩემი წინა და უკანა კარისთვის. ერთადერთი განსხვავება არის led პოზიცია და გარე კვების ბლოკი (უკანა სენსორზე).
რამოდენიმე გაუმჯობესება გავაკეთე აპარატურისა და პროგრამული უზრუნველყოფის განვითარების დროს, ეს ჩანს ფოტოებში.
მარაგები
შევიძინე ალიექსპრესის ელექტრონული კომპონენტები, ძირითადი ნაწილები:
- LiPo ბატარეა
- TPS73733 LDO
- TPL5111
- ლერწმის გადამრთველი
- P-channel mosfet: IRLML6401TRPBF
- მაგნიტი
- PCB ადაპტერის ფირფიტა SMD კომპონენტებისთვის და სხვა.
ნაბიჯი 1: აპარატურა - წრე
იხილეთ სქემის თანდართული სქემები. SMD ნაწილები შევაერთე ადაპტერის PCB ფირფიტაზე და ყველა კომპონენტი შევაერთე ორმხრივი პერფის დაფაზე. მე დავაკავშირე ESP-01 ქალი სათაურების საშუალებით, ასე რომ მე შემიძლია მისი ამოღება პროგრამირებისათვის ამ ინსტრუქციის მე –3 საფეხურზე ნაჩვენები ადაპტერის საშუალებით.
წრე მუშაობს შემდეგნაირად:
- როდესაც კარი ღიაა, TPL5111 იღებს გასროლას DELAY/M_DRV პინზე და ააქტიურებს TPS73733 LDO- ს, რომელიც ამუშავებს ESP-01- ს. ამ ოპერაციისთვის, EN/ONE_SHOT უნდა დაიწიოს დაბლა, იხილეთ TPL5111– ის მონაცემთა ცხრილი.
- პროგრამის ამოქმედების შემდეგ (იხ. ნაბიჯი პროგრამული უზრუნველყოფა), ESP-01 აგზავნის დასრულებულ სიგნალს TPL5111- ზე, რომელიც გამორთავს TPS73733- ს, რის შედეგადაც ძალიან დაბალი სიმძლავრის მდგომარეობაა TPL5111 და TPS73733.
მე ვიყენებ ლერწმის კონცენტრატორებს NO და NC კავშირებით. მე დავუკავშირე NC ტყვიის, რადგან ლერწმის გადამრთველმა უნდა დახუროს წრე მაგნიტის მოხსნისას (კარი ღიაა) და გახსნას როდესაც მაგნიტი ახლოსაა (კარი დაკეტილია).
უკანა სენსორისთვის დავამატე რამდენიმე კონდენსატორი და რეზისტორი, როდესაც აღმოვაჩინე არასტაბილურობა, თუმცა არასტაბილურობა გამოწვეული იყო პროგრამული უზრუნველყოფით (esp_now_init), როგორც მოგვიანებით აღმოვაჩინე.
ნაბიჯი 2: აპარატურა - დანართი
მე დავამუშავე დანართი Autodesk Fusion360– ში, შთაგონებული ამ ვიდეოს მიერ „შვეიცარიელი აქცენტის მქონე ბიჭის“მიერ.
სამი ნაწილის STL ფაილები:
- ყუთი
- სახურავი
- მაგნიტის დამჭერი
გამოქვეყნებულია ჩემს Thingiverse გვერდზე.
ნაბიჯი 3: პროგრამული უზრუნველყოფა
პროგრამა არის ჩემს Github– ში.
პროგრამის ნაკადი ნაჩვენებია სურათზე. იხილეთ ჩემი სხვა ინსტრუქცია იმის ახსნის შესახებ, თუ როგორ ვიყენებ ESP-NOW.
როდესაც მოდული ჩართულია, ის პირველ რიგში ცდილობს გაგზავნოს "გახსნილი" შეტყობინება ESP-NOW საშუალებით. თუ ეს არ გამოდგება, ის გადადის WiFi და MQTT კავშირზე.
აღმოვაჩინე, რომ ყოველ შემთხვევაში ჩემს კონფიგურაციაში, შეტყობინება "დახურული" წარმატებით არ გაგზავნილა ESP-NOW– ით, ამიტომ ეს ამოვიღე პროგრამიდან და გამოვიყენე მხოლოდ WiFi და MQTT.
იმ დროის განმავლობაში, როდესაც კარი იხსნება და მოდული ელოდება კარის დახურვას, ის იყენებს ამ დროს WiFi და MQTT– თან დასაკავშირებლად, ასე რომ, როდესაც კარი დაკეტილია, მას მხოლოდ გაგზავნილია გაზომილი ძაბვა და დახურული შეტყობინება და შემდეგ პირდაპირ მიდის დასაძინებლად.
პროგრამა ამოწმებს იღებს თუ არა დახურულ შეტყობინებას მიმღები მიმღების მიერ MQTT შეტყობინების მოსმენის გზით სწორ თემაზე.
ნაბიჯი 4: სახლის ავტომატიზაცია და Telegram
ჩემი კარის სენსორები დაუკავშირდნენ ჩემს Openhab Home Automation– ს ჩემს Raspberry Pi Zero– ზე.
ძირითადი პროგრამები:
- წაიკითხეთ კარის მდგომარეობა: ღია ან დახურული.
- განმიცხადეთ ტელეგრამის საშუალებით, თუ კარი ღიაა (თუ მაღვიძარა ჩართულია ან მონიტორის ფუნქცია ჩართულია).
- წაიკითხეთ ბოლოს, როდესაც კარი გაიღო ან დაიხურა.
- დაითვალეთ კარის სენსორის მიერ გახსნილი ღიობების რაოდენობა ბატარეის ამოწურვამდე.
მაგალითად, თუ ჩვენ შვებულებაში ვართ და მეზობელი შემოდის მცენარეების მორწყვისთვის, მე მესიჯს ვიღებ. იხილეთ ვიდეო შესავალში.
ჩემი Openhab ნივთები, წესები და საიტის რუქის ფაილები ჩემს Github– შია. ამ ფაილებში თქვენ ასევე შეგიძლიათ ნახოთ ფარდულის ჩემი კარის სენსორი, რომელიც იყენებს რეგულარულ სადენიან ლერწმის გადამრთველს და საკეტის გახსნის სამგანზომილებიანი პრინტერის მცირე კონტაქტს (ბოლოს) (იხილეთ სურათები).
როგორ გამოვიყენოთ Telegram მოქმედება Openhab– ში აღწერილია აქ.
ნაბიჯი 5: გაუმჯობესება და შემდგომი გაუმჯობესება
გასულ თვეებში მე გავაკეთე შემდეგი გაუმჯობესება.
გაუმკლავდეთ გრძელი კარის ღიობებს თვითგადამცემი პულსის სიგნალის საშუალებით
ზაფხულში, როდესაც სახლში ვართ, რამდენიმე საათით ღია კარის დატოვებას ვტოვებთ. გაშვებული ESP-01 WiFi კავშირით, ბატარეას დაუსაბუთებლად დაუშვებს. ამიტომაც ჩავრთე ჩართვის/გამორთვის გადამრთველი, რათა ამ სიტუაციებში შევძლო მოდულის გამორთვა.
თუმცა, ეს ზოგჯერ იწვევდა სამუდამოდ გამორთულ მოდულს (როდესაც დამავიწყდა ჩართვა) და დამტენი ბატარეა გაღებული კარის რამდენიმე დღის შემდეგ და გაშვებული მოდულის შემდეგ (როდესაც დამავიწყდა მისი გამორთვა).
ამიტომაც მინდოდა პროგრამის საშუალებით მოდულის გამორთვა შევძლო მას შემდეგ, რაც მოდული ჩართული იყო წინასწარ განსაზღვრული დროით (1 წუთი).
თუმცა, იქ, სადაც ESP-01- ის "შესრულებული" პულსი გამორთულია TPL5111 როდესაც კარი დაკეტილი იყო, აღმოვაჩინე, რომ TPL5111 არ იყო ჩართული "შესრულებული" პულსით, ხოლო DELAY/M_DRV პინი მაღალი იყო. ეს მაღალი სიგნალი DELAY/M_DRV პინზე გამოწვეული იყო ღია კარით და ბატარეის ძაბვასთან დაკავშირებული ლერწმის გადამრთველის NC კონტაქტით.
ამრიგად, სიგნალი DELAY/M_DRV პინზე არ უნდა იყოს უწყვეტად მაღალი, მაგრამ უნდა იყოს პულსირებული. TPL5111 მონაცემთა ცხრილში შეგიძლიათ ნახოთ, რომ ის უნდა იყოს პულსი> 20 ms. მე გავაკეთე ეს თვითმმართველობის გადართვის სიგნალი P- არხის mosfet- ის, კონდენსატორის და 10K და 300K რეზისტორის საშუალებით, იხილეთ ჩართული სქემა.
ის მუშაობს შემდეგნაირად:
- თუ ლერწმის გადამრთველის NC კონტაქტი დახურულია, კარიბჭე დაბალია და Mosfet ჩართულია, რის შედეგადაც მაღალი სიგნალი ჩნდება DELAY/M_DRV პინზე, რომელიც ააქტიურებს მოდულს.
- კონდენსატორი სწრაფად იტენება, რის შედეგადაც იზრდება კარიბჭეზე ძაბვა.
- დაახლოებით 20 ms- ის შემდეგ, კარიბჭეზე ძაბვა არის ბატარეის ძაბვის 97% (300K/(300K+10K), რომელიც მაღალია და Mosfet გამორთულია, რის შედეგადაც ხდება დაბალი სიგნალი DELAY/M_DRV პინზე.
- როდესაც DELAY/M_DRV pin დაბალია, ESP-01- ის გაკეთებული სიგნალი იწვევს მოდულის გამორთვას.
ეს დაინსტალირებულია პროგრამულ უზრუნველყოფაში; while-loop არა მხოლოდ ამოწმებს, არის თუ არა კარი კვლავ გახსნილი, არამედ ამოწმებს, არის თუ არა მოდული ძალიან ხანგრძლივი ჩართული. ძალიან დიდხანს ჩართვისას ის აქვეყნებს NULL მნიშვნელობას (კარის დაუდგენელი მდგომარეობა). ამ შემთხვევაში მე არ ვიცი კარი ღიაა თუ დახურული და მე არ მივაღწევ ყველა მიზანს, რომელიც მითითებულია შესავალში, მაგრამ ბატარეის ხანგრძლივობა უფრო მნიშვნელოვანია და უმეტეს შემთხვევაში ჩვენ კვლავ ვხსნით კარს იმავე დღეს, რის შედეგადაც დადასტურდება დახურული მდგომარეობა კარისა.
მნიშვნელოვანია გამოიყენოთ P- არხი Mosfet, რომელიც შესაფერისია აქ გამოყენებული ძაბვის დიაპაზონისთვის. Mosfet უნდა იყოს მთლიანად ჩართული VGS- ზე - 3.8V და მთლიანად გამორთული VGS- ზე -0.2 ვ. მე შევეცადე რამდენიმე Mosfets და აღმოვაჩინე, რომ IRLML6401TRPBF კარგად მუშაობს ამ მიზნისთვის 10K და 300K რეზისტორებთან ერთად. რა 1 uF კონდენსატორი მშვენივრად მუშაობს პულსის სიგრძეზე დაახლოებით 20 ms. უფრო დიდი კონდენსატორი იწვევს უფრო ხანგრძლივ პულსს, რაც არ არის აუცილებელი, რადგან TPL5111 გააქტიურებულია. მე გამოვიყენე ჩემი DSO150 ოსცილოსკოპი ძაბვების და პულსის სიგრძის შესამოწმებლად.
დაგეგმილი გაუმჯობესება: OTA განახლება
მე ვგეგმავ OTA განახლების ჩართვას შემდეგი პროცედურის საშუალებით, რომელიც უკვე ნაწილობრივ შედის მიმდინარე პროგრამულ უზრუნველყოფაში
- NodeRed– ის Openhab– ის საშუალებით ვაქვეყნებ შენახულ „განახლების“შეტყობინებას „განახლების თემას“.
- თუ მოდული ჩართულია და დაკავშირებულია MQTT სერვერთან და გამოწერილია "განახლების თემა", ის მიიღებს განახლების შეტყობინებას.
- განახლების შეტყობინება ხელს შეუშლის მოდულის გამორთვას და იწყებს HTTPUpdateServer- ს.
- HTTPUpdateServer ვებსაიტის საშუალებით შეგიძლიათ განაახლოთ პროგრამული უზრუნველყოფა.
- NodeRed– ის Openhab– ის საშუალებით ვაქვეყნებ დაცულ „ცარიელ“შეტყობინებას „განახლების თემას“.
დაგეგმილი გაუმჯობესება: ტექნიკის გამორთვა წინასწარ განსაზღვრული დროის შემდეგ
ახლანდელ სქემაში მე ვიყენებ 200K რეზისტორს TPL5111- ის DELAY/M_DRV- სა და GND- ს შორის. ეს ჩართავს მოდულს 2 საათზე მეტი ხნის განმავლობაში (იხ. TPL5111 მონაცემთა ცხრილის 7.5.3.). თუმცა, მე არ მინდა, რომ მოდული ამდენი ხნით იყოს ჩართული, რადგან ბატარეა შემდეგ იწურება. თუ პროგრამული უზრუნველყოფის გადაწყვეტა (იხ. ზემოთ) ვერ გამორთავს მოდულს, ან განახლების შეტყობინება უნებლიედ აყენებს მოდულს განახლების რეჟიმში, მოდული დიდხანს რჩება ჩართული.
ამიტომ უმჯობესია გამოვიყენოთ უფრო მცირე რეზისტორი TPL5111- ის DELAY/M_DRV- სა და GND- ს შორის, ასე რომ მოდული გამორთულია მოკლე დროის შემდეგ, მაგალითად 50K რეზისტორი რის შედეგადაც მიიღება დრო 7 წუთის განმავლობაში.
გირჩევთ:
ულტრა დაბალი სიმძლავრის WiFi სახლის ავტომატიზაციის სისტემა: 6 ნაბიჯი (სურათებით)
ულტრა დაბალი სიმძლავრის WiFi სახლის ავტომატიზაციის სისტემა: ამ პროექტში ჩვენ ვაჩვენებთ, თუ როგორ შეგიძლიათ ააშენოთ ძირითადი ადგილობრივი ავტომატიზაციის სისტემა რამდენიმე ნაბიჯში. ჩვენ ვაპირებთ გამოვიყენოთ Raspberry Pi, რომელიც იმოქმედებს როგორც ცენტრალური WiFi მოწყობილობა. ვინაიდან ბოლო კვანძებისთვის ჩვენ ვაპირებთ გამოვიყენოთ IOT Cricket ბატარეის შესაქმნელად
წვრილმანი სახლის ავტომატიზაციის შემტევი სიგნალიზაცია!: 5 ნაბიჯი (სურათებით)
DIY Home Automation Intruder Alarm System !: ამ პროექტში მე გაჩვენებთ თუ როგორ გამოიყენოთ Home Assistant პროგრამული უზრუნველყოფა, რათა შექმნათ ინტრუდირების სიგნალიზაცია თქვენს სახლში. სისტემა ძირითადად ამოიცნობს, თუ კარი ნებართვის გარეშე გაიხსნება და შემდეგ ის გაგზავნის შეტყობინებას
როგორ გავხადოთ ჭკვიანი სახლი Arduino საკონტროლო სარელეო მოდულის გამოყენებით - სახლის ავტომატიზაციის იდეები: 15 ნაბიჯი (სურათებით)
როგორ გავხადოთ ჭკვიანი სახლი Arduino საკონტროლო სარელეო მოდულის გამოყენებით | სახლის ავტომატიზაციის იდეები: ამ სახლის ავტომატიზაციის პროექტში ჩვენ შევქმნით ჭკვიანი სახლის სარელეო მოდულს, რომელსაც შეუძლია გააკონტროლოს 5 საყოფაცხოვრებო ტექნიკა. ეს სარელეო მოდული შეიძლება კონტროლდებოდეს მობილურიდან ან სმარტფონიდან, IR დისტანციური ან ტელევიზორის დისტანციური, მექანიკური გადამრთველიდან. ამ ჭკვიან სარელეოს ასევე შეუძლია იგრძნოს რ
სახლის ავტომატიზაციის დაწყება: სახლის ასისტენტის დაყენება: 3 ნაბიჯი
სახლის ავტომატიზაციის დაწყება: სახლის ასისტენტის დაყენება: ჩვენ ახლა დავიწყებთ სახლის ავტომატიზაციის სერიას, სადაც ჩვენ ვქმნით ჭკვიან სახლს, რომელიც საშუალებას მოგვცემს გავაკონტროლოთ ისეთი რამ, როგორიცაა განათება, დინამიკები, სენსორები და ა. ხმის ასისტენტი. ამ პოსტში ჩვენ ვისწავლით თუ როგორ უნდა
გადააქციეთ თქვენი სადენიანი კარის ზარი ჭკვიან კარის ზარად სახლის ასისტენტით: 6 ნაბიჯი
გადააქციეთ თქვენი სადენიანი კარის ჭკვიანი ზარი სახლის ასისტენტით: გადააქციეთ თქვენი არსებული სადენიანი კარის ზარი ჭკვიან ზარზე. მიიღეთ შეტყობინება თქვენს ტელეფონზე ან შეუერთეთ თქვენს წინა კარის კამერას, რომ მიიღოთ ფოტო ან ვიდეო გაფრთხილება ნებისმიერ დროს, როცა ვინმე დარეკავს თქვენს კარზე. შეიტყვეთ მეტი აქ: fireflyelectronix.com/pro