فهرست مطالب:

ESPHOME SONOF S26 تنظیم نور: 11 مرحله (همراه با تصاویر)
ESPHOME SONOF S26 تنظیم نور: 11 مرحله (همراه با تصاویر)

تصویری: ESPHOME SONOF S26 تنظیم نور: 11 مرحله (همراه با تصاویر)

تصویری: ESPHOME SONOF S26 تنظیم نور: 11 مرحله (همراه با تصاویر)
تصویری: Trial Bike Epic Stunts Gameplay 🎮📲🏍 Part 2 2024, نوامبر
Anonim
ESPHOME SONOF S26 چراغ زمان بندی شده
ESPHOME SONOF S26 چراغ زمان بندی شده

روز خوب. بنابراین من چراغ مخزن ماهی دارم که می خواهم ساعت مشخصی از روز را روشن و خاموش کنم. فقط باید برای خودم پیچیده می کردم. من می خواهم بتوانم زمان روشن و خاموش شدن داشبورد دستیار خانگی خود را تغییر دهم. شاید حتی بیشتر.

بنابراین بگذارید ببینیم چقدر بیشتر می توانم خودم را به سوراخ خرگوش ببرم.

مرحله 1: مرحله 1: من به راهی برای ارسال زمان از دستیار خانه نیاز دارم

برخی از گوگل کمک می کند. در صورت وجود برخی از موهای شما کمک می کند: افزودنی Visual Studio Code Editor من را باز کنید. در پوشه Config فایل configuration.yaml را بیابید و برخی از مواردی را که در برخی انجمن ها پنهان شده بود کپی و جایگذاری کنید. ببخشید اگه یادم اومد تقدیر میکنم کد را اضافه کرد و دستیار خانه را مجدداً راه اندازی کرد.

مرحله 2: مرحله 2: کد زیر را به Configuration.yaml اضافه کنید

مرحله 2: کد زیر را به Configuration.yaml اضافه کنید
مرحله 2: کد زیر را به Configuration.yaml اضافه کنید

ورودی_شماره:

ft_start_hr:

نام: FT Light Start Hours

icon: mdi: start-clock

دقیقه: 0

حداکثر: 23

مرحله: 1

# اولیه: 13

اولین خط شناسه نهاد شماره ورودی خواهد بود.

در ادامه به جزئیاتی برای این شخص کوچک نیاز داریم:

یک نام عالی خواهد بود: ساعت شروع FT Light برای این P. S. FT مخصوص مخزن ماهی است … نه آن چیزی که شما درست فکر می کردید؟

بعد یک نماد اختیاری است. کارهای زیادی برای انتخاب از دیوانه شدن وجود دارد … یا نه.

سپس می توانیم مقدار min ، max و step را وارد کنیم. با توجه به این که ساعت ها صفر است - 23 را با یک مرحله انتخاب کردم.

در ابتدا من یک مقدار اولیه داشتم و هنگامی که دستیار خانگی مجدداً راه اندازی می شود ، آن را به این مقدار اولیه تغییر می دهد. من تصمیم گرفتم در مورد آن نظر بدهم زیرا می خواستم Home Assistant آخرین مقداری را که برای آن تعیین کرده بودم به خاطر بسپارد.

می توانید در حالت انتخاب جعبه قرار دهید. اما به طور پیش فرض یک اسلایدر خوب برای شما انتخاب می کند. من فکر می کنم یک اسلایدر در حال حاضر انجام دهد.

از تورفتگی ها مطلع باشید زیرا بسیار مهم هستند. تصویر را ببینید

بنابراین اینها به شما امکاناتی را در دستیار خانگی می دهند تا بتوانید آنها را تنظیم کنید.

در اینجا پیوندی برای اطلاعات بیشتر در مورد شماره های ورودی آمده است:

www.home-assistant.io/integrations/input_n…

مرحله 3: مرحله 3: اکنون باید اطلاعات را به ESPHOME API برسانیم

مرحله 3: اکنون ما باید اطلاعات را به ESPHOME API برسانیم
مرحله 3: اکنون ما باید اطلاعات را به ESPHOME API برسانیم

سنسور:

- پلت فرم: قالب

سنسورها:

ft_start_hr:

value_template: '{{States.input_number.ft_start_hr.state | int}} '

n

این به ESPHome API اتصال مورد نیاز را می دهد و همچنین به جای لغزنده متن فانتزی یک عدد صحیح است:-P

در اینجا حالت شماره ورودی را گرفته و آن را به یک عدد صحیح تبدیل کرده و در یک حسگر ذخیره می کند.

در اینجا اطلاعات بیشتری در مورد الگوها آورده شده است:

www.home-assistant.io/integrations/templat…

اوه ، من پسوند فایل فایل خود را به متن تغییر دادم تا بتوانم آن را بارگذاری کنم … دستورالعمل ها ممکن است با یک yaml قابل تخریب باشند…

مرحله 4: مرحله 4: بنابراین ESPHome Configuration of the Plug Now

مرحله 4: بنابراین ESPHome Configuration of Plug Now
مرحله 4: بنابراین ESPHome Configuration of Plug Now

من با پیکربندی پایه برای پلاگین s-on-off شروع کردم و سپس شروع به کار کردم.

من در مورد نحوه فلش کردن پلاگین S26 با ESPHome وارد جزئیات نمی شوم زیرا گوگل همه پاسخ ها را دارد.

فایل پیکربندی کامل من در انتها برای بارگیری در دسترس خواهد بود. دا دا دا…

بنابراین اجازه دهید با قسمت پیوندی به Home Assistant شروع کنیم:

ما باید سنسورهایی ایجاد کنیم که با سنسورهای دستیار خانگی مطابقت داشته باشد تا بتوانند با یکدیگر صحبت کنند.

مرحله 5: مرحله 5: ESPHome Home Assistant Connection… Beam Me Up Scotty

مرحله 5: اتصال ESPHome Home Assistant… Beam Me Up Scotty
مرحله 5: اتصال ESPHome Home Assistant… Beam Me Up Scotty

سنسور:

- پلت فرم: homeassistant

unit_id: sensor.ft_start_hr

شناسه: id_ft_start_hr

بنابراین اکنون ما یک سنسور در ESPHome از نوع homeassistant ایجاد می کنیم. چه کسی حدس می زد؟

شناسه نهاد باید با آنچه در فایل configuration.yaml خود تنظیم کرده اید مطابقت داشته باشد.

من یک شناسه تنظیم کردم تا ESPHome بتواند این حسگر را در تفکر فراوان خود ارجاع دهد.

مرحله 6: مرحله 6: اجازه دهید کمی زمان اضافه کنیم

مرحله 6: اجازه دهید کمی زمان اضافه کنیم
مرحله 6: اجازه دهید کمی زمان اضافه کنیم

بنابراین با توجه به این که یک پلاگین زمانبندی شده است … اجازه دهید در واقع کمی زمان اضافه کنیم … یا آن را کم می کنیم؟ اکنون در گذشته است؟

در اینجا برخی از اصول اجزای زمان آورده شده است. ما می توانیم موارد مختلف را انتخاب کنیم اما من homeassistant را انتخاب کردم. خیلی ساده؟

esphome.io/components/time.html

مرحله 7: مرحله 7: فاصله

مرحله 7: فاصله
مرحله 7: فاصله

نه این یک وقفه نیست ، یا اینطور است؟

فاصله:

- فاصله: 1 ثانیه

سپس:

- lambda: |-

id (gl_ft_start_hr) = id (id_ft_start_hr). دولت؛

بنابراین یک فاصله 1 ثانیه ای برای نوشتن مقدار سنسور از دستیار خانگی به متغیر سراسری تنظیم کردم.

من فقط می خواهم این کار را یک بار در ثانیه انجام دهم زیرا زمان در حال تیک تاک است … تیک تاک

مرحله 8: مرحله 8: بنابراین ما زمان و پول داریم … بعد چه؟

مرحله 8: بنابراین ما زمان و پول داریم … بعد چه؟
مرحله 8: بنابراین ما زمان و پول داریم … بعد چه؟

بنابراین تصمیم گرفتم از یک الگوی سنسور دودویی برای تعیین اینکه آیا زمان روشن شدن سوئیچ سوئیچ … رله زمان آن است یا خیر استفاده کنم

من سه کلید با شناسه ایجاد کردم: start_time_valid ، stop_time_valid و run_time_valid

start_time_valid زمانی صادق است که زمان تنظیم شده برای روشن کردن رله گذشته باشد.

از عبارات nested if برای بررسی اینکه آیا ما بیشتر یا برابر ثانیه های مورد نیاز ، سپس دقیقه و در نهایت ساعت هستیم ، استفاده کردم.

stop_time_valid زمانی درست است که قبل از زمان تنظیم خاموش شدن کلید تنظیم شده باشد. این امر برای بررسی اینکه آیا زمان لازم برای خاموش کردن رله به پایان نرسیده است ، معکوس می شود

run_time_valid زمانی درست است که هر دو start_time_valid و stop_time_valid درست باشند. من فکر می کنم من فقط می توانستم از یک حالت عادی و شرط برای این مورد استفاده کنم. من تازه با lambdas وارد نوسان چیزها شدم.

- پلت فرم: قالب

نام: "زمان شروع معتبر است"

شناسه: start_time_valid

لامبدا: |-

if (id (homeassistant_time). Now (). ساعت> id (gl_ft_start_hr)) {

بازگشت واقعی ؛

}

else if (id (homeassistant_time). Now (). ساعت == id (gl_ft_start_hr) &&

id (homeassistant_time). Now (). minute> id (gl_ft_start_mn)) {

بازگشت واقعی ؛

}

else if (id (homeassistant_time). Now (). ساعت == id (gl_ft_start_hr) &&

id (homeassistant_time). Now (). دقیقه == id (gl_ft_start_mn) &&

id (homeassistant_time). Now (). second> = id (gl_ft_start_ss)) {

بازگشت واقعی ؛

}

دیگری {

false false؛

}

مرحله 9: مرحله 9: اکنون برای برخی از اسکریپت ها: "بودن یا نبودن: این سوال است"

مرحله 9: اکنون برای برخی از اسکریپت ها: "بودن یا نبودن: این سوال است"
مرحله 9: اکنون برای برخی از اسکریپت ها: "بودن یا نبودن: این سوال است"

هوم اسکریپت غلط داداش!

بنابراین اگر سوئیچ را وصل کردم … یا برق خانه تازه روشن شد ، می خواستم سوئیچ بداند که آیا روشن یا خاموش است و مطابق آن عمل کند. (بله همه ما برای بازیگری می رویم)

اولین شناسه اسکریپت: checkingstatuson ، بررسی این است که آیا ما قصد داریم در این زمینه کار کنیم یا مطابق آن عمل کنیم. من همچنین یک پرچم جهانی با شناسه: trackingon قرار دادم تا اطمینان حاصل شود که این اسکریپت فقط یکبار اجرا می شود و مانع از انجام سایر نقش های من در نمایشنامه نمی شود.

این دارای 3 شرط است: رله خاموش است ، قرار است روشن شود و من هنوز وظیفه خود را انجام نداده ام. سپس اسکریپت های دیگر در حال اجرا خاموش می شوند ، رله را روشن کرده و پرچم های ردیابی را تنظیم می کنند.

شناسه دوم اسکریپت: checkingstatusoff ، درست برعکس اول است. ما فقط بررسی می کنیم که آیا اکنون باید پرده ها را ببندیم یا خیر. پرچم ردیابی برای این یکی trackingoff است

من این دو اسکریپت را در فاصله 1 ثانیه ای اجرا می کنم تا هر ثانیه را بررسی کنم.

مرحله 10: مرحله 10: برخی از اسکریپت های پاداش

مرحله 10: برخی از اسکریپت های پاداش
مرحله 10: برخی از اسکریپت های پاداش

دو ویژگی دیگر که می خواستم اضافه کنم این بود که چراغ مخزن را خاموش می کنم که اگر قرار باشد چراغ در آن زمان روشن شود بعد از 5 ثانیه دوباره روشن می شود. همچنین ، اگر چراغ خاموش بود و من می خواستم آن را روشن کنم تا ماهیهای خود را ببینم و در موعد مقرر نبود ، باید 5 دقیقه روشن شود. بله 5 دقیقه به اندازه کافی طولانی است … به کار خود بازگردید.

اولین شناسه اسکریپت: relayisoff در صورت خاموش شدن به موقع چراغ را به مدت 5 دقیقه روشن می کند و سپس خاموش می شود.

شناسه اسکریپت دوم: relayison عملاً از حالت اول معکوس می شود و درصورت روشن بودن 5 ثانیه بعد چراغ را دوباره روشن می کند. کی گفته شما می توانید آقای چراغ من را خاموش کنید!

در اینجا اطلاعات بیشتری در مورد اسکریپت ها وجود دارد:

esphome.io/guides/automations.html

برخی از اطلاعات اضافی در مورد اسکریپت ها مسدود نیستند. مگر اینکه در lambda تأخیر ایجاد کنید. Uh No No No

مرحله 11: مرحله 11: چند اندیشه نهایی

مرحله 11: چند اندیشه نهایی
مرحله 11: چند اندیشه نهایی
مرحله 11: چند اندیشه نهایی
مرحله 11: چند اندیشه نهایی

از دستیار خانه می خواستم سوئیچ همانند دکمه عمل کند.

من نامی برای سوئیچ محلی سنسور دودویی نگذاشتم زیرا نیازی به دیدن آن در دستیار خانگی نبود.

من برای سوئیچ رله نامی نگذاشتم زیرا می خواستم از اسکریپت ها برای انجام تعویض از دستیار خانگی استفاده کنم.

من یک سوئیچ قالب با نام ایجاد کردم تا بتوانم از آن برای تغییر از دستیار خانه استفاده کنم. اسکریپت های من همان سوئیچ محلی در پلاگین اجرا می شود.

من آزمایش نکرده ام که آیا همچنان پریز صحیح کار می کند یا خیر ، دستیار خانه را خاموش کنم یا خیر. من اینطور امیدوارم هنگام قطع ارتباط با API دستیار خانگی ، برخی از پست ها را در مورد برخی مسائل دیده ام.

من واقعاً امیدوارم که این آموزش کوچک به شما کمک کند و لطفاً در کمک به من در بهتر شدن آن کمک کنید. من متخصص نیستم و خیلی آهسته یاد می گیرم. من فقط فکر می کردم برخی از چیزهایی که یاد گرفته ام چگونه انجام دهم ممکن است به کسی که در تلاش برای کشف آن است کمک کند.

در حال حاضر برای تغییر زمان در دستیار خانگی بر اساس طلوع و غروب خورشید …+ - چند مورد

توصیه شده: