Სარჩევი:
- ნაბიჯი 1: ნაბიჯი 1: მე მჭირდება გზა სახლიდან ასისტენტის გასაგზავნად
- ნაბიჯი 2: ნაბიჯი 2: დაამატეთ შემდეგი კოდი Configuration.yaml
- ნაბიჯი 3: ნაბიჯი 3: ახლა ჩვენ უნდა მივიღოთ ინფორმაცია ESPHOME API– ში
- ნაბიჯი 4: ნაბიჯი 4: ასე რომ, დანამატის ESPHome კონფიგურაცია
- ნაბიჯი 5: ნაბიჯი 5: ESPHome Home Assistant Connection… Beam Me Up Scotty
- ნაბიჯი 6: ნაბიჯი 6: მოდით დავამატოთ ცოტა დრო
- ნაბიჯი 7: ნაბიჯი 7: ინტერვალი
- ნაბიჯი 8: ნაბიჯი 8: ასე რომ, ჩვენ გვაქვს დრო და ფული … რა იქნება შემდეგ?
- ნაბიჯი 9: ნაბიჯი 9: ახლა ზოგიერთი სკრიპტისთვის: "იყავი, ან არ იყავი: ეს არის კითხვა"
- ნაბიჯი 10: ნაბიჯი 10: ზოგიერთი ბონუს სკრიპტი
- ნაბიჯი 11: ნაბიჯი 11: ზოგიერთი საბოლოო აზრი
ვიდეო: ESPHOME SONOF S26 დროული განათება: 11 ნაბიჯი (სურათებით)
2024 ავტორი: John Day | [email protected]. ბოლოს შეცვლილი: 2024-01-30 10:16
Კარგი დღე. ასე რომ, მე მაქვს თევზის სატანკო შუქი, რომლის ჩართვა და გამორთვა მინდა დღის გარკვეულ დროს. მე უბრალოდ უნდა გავართულო ეს ჩემთვის. მინდა შევძლო შეცვალო დრო, როდესაც ის ჩართულია და გამორთულია ჩემი Home Assistant პანელიდან. შეიძლება უფრო მეტიც.
მოდით ვნახოთ, კიდევ რამდენის შეტანა შემიძლია კურდღლის ხვრელში.
ნაბიჯი 1: ნაბიჯი 1: მე მჭირდება გზა სახლიდან ასისტენტის გასაგზავნად
ზოგიერთი გუგლი ეხმარება. თმის გაძევება გეხმარებათ, თუკი ნამდვილად გაქვთ: მიუთითეთ ჩემი Visual Studio Code Editor დანამატი. კონფიგურაციის საქაღალდეში იპოვეთ configuration.yaml ფაილი და დააკოპირეთ და ჩასვით რაღაცეები, რაც მე ვიპოვე რაღაც ფორუმში. უკაცრავად, თუ გამახსენდა, მადლობას ვუხდი. დაამატა კოდი და გადატვირთეთ სახლის ასისტენტი.
ნაბიჯი 2: ნაბიჯი 2: დაამატეთ შემდეგი კოდი Configuration.yaml
input_number:
ft_start_hr:
დასახელება: FT Light Start Hours
icon: mdi: საათის დაწყება
წთ.: 0
მაქსიმუმი: 23
ნაბიჯი 1
# საწყისი: 13
პირველი ხაზი იქნება შეყვანის ნომერი ერთეულის id.
შემდეგი ჩვენ გვჭირდება დეტალები ამ პატარა ძმაკაცისთვის:
სახელი გასაოცარი იქნება: FT Light Start Hours for this one P. S. FT არის Fish Tank– ისთვის … არა ის, რასაც სწორად ფიქრობდით?
შემდეგი არის სურვილისამებრ ხატი. ბევრი არსებობს არჩევანის გაკეთება ისე გაგიჟდება … თუ არა.
შემდეგ ჩვენ შეგვიძლია ჩავსვათ min, max და step მნიშვნელობა. რამდენადაც ეს საათია, მე ავირჩიე 0 - 23 ერთი ნაბიჯით.
თავდაპირველად მე მქონდა საწყისი მნიშვნელობა და როდესაც სახლის ასისტენტი გადატვირთავდა ის შეცვლიდა მას ამ საწყის მნიშვნელობამდე. მე გადავწყვიტე გამომეხმაურა, რადგან მინდოდა, რომ სახლის ასისტენტი ეცადა და დამამახსოვრდეს ბოლო მნიშვნელობა, რაც მე მისთვის დავადგინე.
თქვენ შეგიძლიათ დააყენოთ რეჟიმი ყუთის არჩევისთვის. როგორც ნაგულისხმევი, ის ირჩევს თქვენთვის სასიამოვნო სლაიდერს. ვფიქრობ, სლაიდერი გააკეთებს ახლა.
იცოდეთ ჩაღრმავებები, რადგან ისინი ძალიან მნიშვნელოვანია. იხილეთ სურათი
ასე რომ, ეს მოგცემთ ერთეულებს სახლის ასისტენტში, რომ შეძლოთ მორგება.
აქ არის ბმული დამატებითი ინფორმაციის შესახებ ციფრების შეყვანის შესახებ:
www.home-assistant.io/integrations/input_n…
ნაბიჯი 3: ნაბიჯი 3: ახლა ჩვენ უნდა მივიღოთ ინფორმაცია ESPHOME API– ში
სენსორი:
- პლატფორმა: შაბლონი
სენსორები:
ft_start_hr:
ღირებულების_შაბლონი: '{{States.input_number.ft_start_hr.state | int}} '
n
ეს მისცემს ESPHome API– ს საჭირო კავშირს, ასევე ის არის რიცხვი ლამაზი ტექსტის სლაიდერის ნაცვლად:-P
აქ ის იღებს შეყვანის რიცხვის მდგომარეობას და გარდაქმნის მას მთელ რიცხვზე და ინახავს სენსორში.
აქ არის დამატებითი ინფორმაცია შაბლონებზე:
www.home-assistant.io/integrations/templat…
ოჰ, მე შევცვალე ჩემი ფაილის ფაილის გაფართოება ტექსტად, ასე რომ შემიძლია მისი ატვირთვა … ინსტრუქციები შეიძლება დამსხვრეული იყოს იამლით…
ნაბიჯი 4: ნაბიჯი 4: ასე რომ, დანამატის ESPHome კონფიგურაცია
დავიწყე s-on-off დანამატის ბაზის კონფიგურაციით და შემდეგ დავიწყე ლაპარაკი.
მე არ შევალ დეტალურად, თუ როგორ უნდა აანთო S26 დანამატი ESPHome– ით, რადგან Google– ს აქვს ყველა პასუხი.
ჩემი სრული კონფიგურაციის ფაილი ხელმისაწვდომი იქნება ბოლომდე ჩამოსატვირთად. და და დაჰ…
მოდით დავიწყოთ მთავარი ასისტენტის დაკავშირებული ნაწილით:
ჩვენ უნდა შევქმნათ სენსორები, რომლებიც შეესაბამება სახლის ასისტენტის სენსორებს, რათა მათ შეძლონ ერთმანეთთან საუბარი.
ნაბიჯი 5: ნაბიჯი 5: ESPHome Home Assistant Connection… Beam Me Up Scotty
სენსორი:
- პლატფორმა: სახლის დამხმარე
unit_id: sensor.ft_start_hr
id: id_ft_start_hr
ახლა ჩვენ ვქმნით სენსორს ESPHome ტიპის homeassistant– ში. ვინ გამოიცნობს?
ერთეულის ID უნდა ემთხვეოდეს იმას, რაც თქვენ შექმენით თქვენს configuration.yaml ფაილში.
მე შევქმენი პირადობის მოწმობა ისე, რომ ESPHome- ს შეეძლო ამ სენსორის მითითება აზროვნების სიმრავლეში.
ნაბიჯი 6: ნაბიჯი 6: მოდით დავამატოთ ცოტა დრო
ასე რომ, ეს არის დროული დანამატი … მოდით რეალურად დავამატოთ გარკვეული დრო … ან გამოკლებაა? ახლა წარსულშია?
აქ მოცემულია დროის კომპონენტის რამდენიმე საფუძველი. ჩვენ შეგვიძლია ავირჩიოთ რამდენიმე განსხვავებული, მაგრამ მე ავირჩიე დიასახლისი. Ძალიან ადვილი?
esphome.io/components/time.html
ნაბიჯი 7: ნაბიჯი 7: ინტერვალი
არა, შესვენება არ არის, თუ არა?
ინტერვალი:
- ინტერვალი: 1 წამი
შემდეგ:
- ლამბდა: |-
id (gl_ft_start_hr) = id (id_ft_start_hr). სახელმწიფო;
ასე რომ, მე დავაყენე 1 წამიანი ინტერვალი, რომ დავწერო სენსორის მნიშვნელობა სახლის ასისტენტიდან გლობალურ ცვლადზე.
მე უბრალოდ მინდა ამის გაკეთება წამში ერთხელ, რადგან დრო მიდის … tick tock
ნაბიჯი 8: ნაბიჯი 8: ასე რომ, ჩვენ გვაქვს დრო და ფული … რა იქნება შემდეგ?
ასე რომ, მე გადავწყვიტე გამოვიყენო ორობითი სენსორის შაბლონი, რათა დადგინდეს დროა თუ არა გადამრთველის გადამრთველზე ჩართვა … სარელეო
მე შევქმენი სამი გადამრთველი პირადობის მოწმობით: start_time_valid, stop_time_valid და run_time_valid
start_time_valid მართალია, როდესაც უკვე დასრულებულია სარელეო ჩართვის დრო.
მე გამოვიყენე დაბინდული თუ განაცხადები, რომ შევამოწმო, თუ ჩვენ ვიყავით უფრო დიდი ან ტოლი საჭირო წამებში, შემდეგ წუთები და ბოლოს საათები.
stop_time_valid მართალია მაშინ, როდესაც ის ახლაა, სანამ დრო არ არის დაყენებული გადამრთველის გამორთვისთვის. ეს საპირისპიროა იმის შესამოწმებლად, რომ ახლა არ გასულა სარელეოს გამორთვის საჭირო დრო
run_time_valid მართალია მაშინ, როდესაც ორივე start_time_valid და stop_time_valid მართალია. მე ვფიქრობ, მე შემეძლო გამომეყენებინა ნორმალური და პირობა ამისთვის. მე უბრალოდ ლამბდაებით შევედი ნივთების საქანელში.
- პლატფორმა: შაბლონი
დასახელება: "დაწყების დრო ძალაშია"
id: start_time_valid
ლამბდა: |-
if (id (homeassistant_time). ახლა (). საათი> id (gl_ft_start_hr)) {
ჭეშმარიტი დაბრუნება;
}
else if (id (homeassistant_time). ახლა (). საათი == id (gl_ft_start_hr) &&
id (homeassistant_time). ახლა (). წუთი> id (gl_ft_start_mn)) {
ჭეშმარიტი დაბრუნება;
}
else if (id (homeassistant_time). ახლა (). საათი == id (gl_ft_start_hr) &&
id (homeassistant_time). ახლა (). წუთი == id (gl_ft_start_mn) &&
id (homeassistant_time). ახლა (). მეორე> = id (gl_ft_start_ss)) {
ჭეშმარიტი დაბრუნება;
}
სხვა {
დაბრუნება ცრუ;
}
ნაბიჯი 9: ნაბიჯი 9: ახლა ზოგიერთი სკრიპტისთვის: "იყავი, ან არ იყავი: ეს არის კითხვა"
ჰმ, არასწორი სკრიპტი ძმაო!
ასე რომ, თუ ჩამრთველი ჩამრთველი ჩავრთე … ან სახლის დენი ახლახან დაუბრუნდა, მინდოდა გადამრთველმა იცოდეს, იგულისხმება ის ჩართვა თუ გამორთვა და შესაბამისად ვიმოქმედო. (დიახ, ჩვენ ყველანი მივდივართ სამსახიობო გაკვეთილებზე)
პირველი სკრიპტის ID: checkingstatuson, არის შემოწმება, ვგულისხმობთ თუ არა ჩვენ ვიყოთ და ვიმოქმედოთ შესაბამისად. მე ასევე ჩავრთე გლობალური დროშა პირადობის მოწმობით: თვალყურის დევნება, იმის უზრუნველსაყოფად, რომ ეს სკრიპტი გაშვებულია ერთხელ და არ შეაფერხებს ჩემს სხვა სცენარებს სპექტაკლში თავიანთი როლის შესრულებაში.
ამას აქვს 3 და პირობები: სარელეო გამორთულია, იგულისხმება ჩართვა და მე უკვე არ შევასრულე ჩემი ნაწილი. ეს გათიშავს ნებისმიერ სხვა სკრიპტს, ჩართავს რელეს და დააყენებს თვალთვალის დროშებს.
მეორე სკრიპტის id: checkingstatusoff, არის პირველის საპირისპირო. ჩვენ უბრალოდ ვამოწმებთ, გვჭირდება თუ არა ახლა ფარდების დახურვა. თვალთვალის დროშა ამ ერთი არის trackingoff
ამ ორ სკრიპტს ვუშვებ 1 წამის ინტერვალში, რათა შევამოწმო ყოველი წამი.
ნაბიჯი 10: ნაბიჯი 10: ზოგიერთი ბონუს სკრიპტი
კიდევ ორი თვისება, რომლის დამატებაც მინდოდა იყო, თუ ავზთან სინათლეს ჩავაქრობდი, ის კვლავ ჩართული იქნება 5 წამის შემდეგ, თუკი სინათლე ამ დროს უნდა იყოს ჩართული. ასევე, თუ შუქი ჩამქრალი იქნებოდა და მინდოდა ჩამებარებინა ჩემი თევზების სანახავად და ის დროულად არ იყო დაგეგმილი, ის ჩაირთვება 5 წუთის განმავლობაში. დიახ, 5 წუთი საკმარისია … დაუბრუნდით სამსახურს.
პირველი სკრიპტის id: relayisoff აანთებს შუქს 5 წუთის განმავლობაში, თუ ის დროულად გამორთულია და შემდეგ გამორთულია.
მეორე სკრიპტის id: relayison პრაქტიკულად პირველის საპირისპიროა და 5 წამის შემდეგ შუქს კვლავ ჩართავს, თუ მისი ჩართვა იგულისხმება. ვინ თქვა, რომ შეგიძლია გამორთო ჩემი ბატონო!
აქ არის კიდევ რამდენიმე ინფორმაცია სკრიპტების შესახებ:
esphome.io/guides/automations.html
სკრიპტების შესახებ ზოგიერთი ბონუს ინფორმაცია არის ის, რომ ისინი არ იბლოკება. თუ ლამბდაში დაგვიანებას არ დადებთ.უჰ არა არა არა
ნაბიჯი 11: ნაბიჯი 11: ზოგიერთი საბოლოო აზრი
სახლის ასისტენტიდან მინდოდა, რომ გადამრთველი ისე მოქმედებდა, როგორც ღილაკი.
მე არ დავარქვი სახელი ორობითი სენსორის ადგილობრივ გადამრთველს, რადგან არ დამჭირვებია მისი ასისტენტში შეყვანა.
მე არ მითქვამს სარელეო გადართვის სახელი, რადგან მინდოდა სკრიპტები გამომეყენებინა სახლის ასისტენტიდან გადასვლისთვის.
მე შევქმენი შაბლონის გადამრთველი სახელწოდებით, ასე რომ შემიძლია გამოვიყენო ის სახლის ასისტენტიდან გადასასვლელად. ის გაუშვებს ჩემს სკრიპტებს იგივე როგორც ადგილობრივი გადამრთველი დანამატში.
მე არ შემიმოწმებია თუ არა ჩემი სახლის ასისტენტის გამორთვა, თუ დანამატი მაინც იმუშავებს სწორად. მე ამის იმედი მაქვს. მე ვნახე პოსტები ზოგიერთ საკითხთან დაკავშირებით, როდესაც ვკარგავ კავშირს Home Assistant API– სთან.
მე ნამდვილად ვიმედოვნებ, რომ ეს პატარა გაკვეთილი დაგეხმარებათ და გთხოვთ მოგერიდოთ დამეხმაროთ უკეთესობისკენ. მე არ ვარ ექსპერტი და ვსწავლობ ძალიან ნელა. მე უბრალოდ ვიფიქრე, რომ რაღაცეები, რაც ვისწავლე როგორ უნდა გავაკეთო, შეიძლება დაეხმაროს ვინმეს იქ, რომელიც ცდილობს გაარკვიოს.
ახლა სახლის ასისტენტში დროის შეცვლა მზის ამოსვლისა და ჩასვლის საფუძველზე…+ - რამდენიმე
გირჩევთ:
ჭკვიანი სამაგიდო LED განათება - ჭკვიანი განათება W/ Arduino - Neopixels სამუშაო ადგილი: 10 ნაბიჯი (სურათებით)
ჭკვიანი სამაგიდო LED განათება | ჭკვიანი განათება W/ Arduino | Neopixels Workspace: დღეების განმავლობაში ჩვენ დიდ დროს ვატარებთ სახლში, ვსწავლობთ და ვმუშაობთ ვირტუალურად, ასე რომ, რატომ არ გავხადოთ ჩვენი სამუშაო სივრცე უფრო დიდი და ჭკვიანი განათების სისტემით Arduino და Ws2812b LED- ებით დაფუძნებული. აქ მე გაჩვენებთ როგორ ავაშენოთ თქვენი Smart სამაგიდო LED განათება, რომელიც
წვრილმანი - პროტოტიპი - Arduino დროული USB დამტენი: 8 ნაბიჯი
წვრილმანი - პროტოტიპი - Arduino დროული USB დამტენი: ჩვენი სემინარის დროს არდუინოს შესახებ ჩვენ უნდა გამოგვეგონა ბედნიერი ჰაკი არდუინოს ჩათვლით. ჩვენ გადავწყვიტეთ ავირჩიოთ მოწყობილობა, რომელიც შეწყვეტს ენერგიას მოწყობილობების დატენვას არდუინოს კოდის გამოყენებით. Powerbuddy! ეს პროტოტიპი ფაქტობრივად არ იტენება მოწყობილობებზე, როგორც
ESP8266 - დროული და დისტანციური მართვის სოკეტი (ხანდაზმულთა დაცვა): 6 ნაბიჯი
ESP8266 - დროული და დისტანციური მართვის სოკეტი (ხანდაზმულთა დაცვა): ინფორმაცია: ეს შეკრება არის შემოწმება გადახურების, ხანძრისა და უბედური შემთხვევებისგან, დაკავშირებული მოწყობილობების დავიწყების შემთხვევაში (ძირითადად ალცჰაიმერით დაავადებული ხანდაზმული ადამიანები). ღილაკის გააქტიურების შემდეგ, სოკეტი იღებს 110/220 VAC 5 წუთის განმავლობაში (სხვა
გააკეთეთ დროული მუდმივი ტემპერატურის სადილის ყუთი: 16 ნაბიჯი
გააკეთეთ დროული მუდმივი ტემპერატურის სადილის ყუთი: მიუხედავად იმისა, რომ ჩვეულებრივი სადილის ყუთი გამოსაყენებლად და გამოსაყენებლად მარტივია, მაგრამ აქვს ერთი ფუნქცია, შეუძლებელია დროის დაყენება ან ტემპერატურის გათბობა. ამ ნაკლის გასაუმჯობესებლად, ამჯერად წვრილმანი მზადდება მზარეულის საფუძველზე
ეზოს ინტერაქტიული განათება, საფეხმავლო განათება: 3 ნაბიჯი
ეზოს ინტერაქტიული განათება, საფეხმავლო განათება: მინდოდა ავაშენო ინტერაქტიული ეზოს განათება ჩემი უკანა ეზოსთვის. იდეა ის იყო, რომ როდესაც ვინმე ერთი გზით მიდიოდა, ის ანიმაციას წამოიღებდა იმ მიმართულებით, სადაც თქვენ დადიოდით. დავიწყე დოლარის გენერალური $ 1.00 მზის ნათებით