Mục lục:

ESPHOME SONOF S26 Timed Light: 11 bước (có hình ảnh)
ESPHOME SONOF S26 Timed Light: 11 bước (có hình ảnh)

Video: ESPHOME SONOF S26 Timed Light: 11 bước (có hình ảnh)

Video: ESPHOME SONOF S26 Timed Light: 11 bước (có hình ảnh)
Video: The Coast to Coast Killer-Ác quỷ nhập thể chính mình 2024, Tháng mười một
Anonim
Đèn định giờ ESPHOME SONOF S26
Đèn định giờ ESPHOME SONOF S26

Ngày tốt. Vì vậy, tôi có một đèn bể cá muốn bật và tắt vào một thời điểm nhất định trong ngày. Tôi chỉ cần làm cho nó phức tạp cho chính mình. Tôi muốn có thể thay đổi thời gian nó bật và tắt từ trang tổng quan Trợ lý chính của tôi. Có thể hơn thế nữa.

Vì vậy, hãy chỉ xem tôi có thể đưa mình vào hố thỏ thêm bao nhiêu nữa.

Bước 1: Bước 1: Tôi cần một cách để gửi thời gian từ trợ lý tại nhà

Một số googling hữu ích. Một số thao tác nhổ tóc sẽ giúp ích cho bạn, nếu bạn thực sự có bất kỳ điều gì: Mở tiện ích bổ sung Visual Studio Code Editor của tôi. Trong thư mục Config, tìm tệp config.yaml và sao chép và dán một số nội dung tôi tìm thấy bị ẩn trong một số diễn đàn. Xin lỗi nếu tôi nhớ tôi sẽ đưa ra lời xác nhận. Đã thêm mã và khởi động lại trợ lý tại nhà.

Bước 2: Bước 2: Đã thêm mã sau vào Configuration.yaml

Bước 2: Đã thêm mã sau vào Configuration.yaml
Bước 2: Đã thêm mã sau vào Configuration.yaml

input_number:

ft_start_hr:

tên: Giờ bắt đầu ánh sáng FT

biểu tượng: mdi: clock-start

tối thiểu: 0

tối đa: 23

bước 1

# tên đầu tiên: 13

Dòng đầu tiên sẽ là id thực thể số đầu vào.

Tiếp theo, chúng ta cần một số thông tin chi tiết về anh chàng nhỏ bé này:

Một cái tên sẽ rất tuyệt vời: FT Light Start Hours cho cái này P. S. FT dành cho Bể cá… Không phải như những gì bạn đang nghĩ đúng không?

Tiếp theo là một biểu tượng tùy chọn. Có rất nhiều thứ để lựa chọn vì vậy có nên điên rồ … hay không.

Sau đó, chúng ta có thể đặt giá trị min, max và step. Vì đây là giờ, tôi đã chọn 0 - 23 với các bước duy nhất.

Ban đầu, tôi có một giá trị ban đầu và khi trợ lý gia đình khởi động lại, nó sẽ thay đổi nó thành giá trị ban đầu này. Tôi quyết định bình luận vì tôi muốn Trợ lý gia đình thử và ghi nhớ giá trị cuối cùng mà tôi đã đặt cho nó.

Bạn có thể đặt ở chế độ để chọn một hộp. Nhưng theo mặc định, nó chọn một thanh trượt đẹp cho bạn. Tôi nghĩ rằng một thanh trượt sẽ làm được ngay bây giờ.

Hãy lưu ý các vết lõm vì chúng rất quan trọng. Xem hình ảnh

Vì vậy, những điều này sẽ cung cấp cho bạn các thực thể trong trợ lý tại nhà để có thể điều chỉnh.

Đây là một liên kết để biết thêm thông tin về số đầu vào:

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

Bước 3: Bước 3: Bây giờ chúng ta cần lấy thông tin cho API ESPHOME

Bước 3: Bây giờ chúng ta cần lấy thông tin cho API ESPHOME
Bước 3: Bây giờ chúng ta cần lấy thông tin cho API ESPHOME

cảm biến:

- nền tảng: mẫu

cảm biến:

ft_start_hr:

value_template: '{{state.input_number.ft_start_hr.state | NS }}'

n

Điều này sẽ cung cấp cho API ESPHome yêu cầu kết nối, cũng như bây giờ nó là một số nguyên thay vì thanh trượt văn bản ưa thích:-P

Ở đây nó đang lấy trạng thái số đầu vào và chuyển nó thành một số nguyên và lưu trữ nó trong một bộ cảm biến.

Dưới đây là một số thông tin thêm về các mẫu:

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

Ồ, tôi đã thay đổi phần mở rộng Tệp của tệp của mình thành văn bản để tôi có thể Tải nó lên… Các tài liệu hướng dẫn có thể bị phá hủy bằng một yaml…

Bước 4: Bước 4: Vì vậy, Cấu hình ESPHome của Plug Now

Bước 4: Vì vậy, Cấu hình ESPHome của Plug Now
Bước 4: Vì vậy, Cấu hình ESPHome của Plug Now

Tôi bắt đầu với cấu hình cơ bản cho phích cắm s-on-off và sau đó bắt đầu mày mò.

Tôi sẽ không đi vào chi tiết về cách flash phích cắm S26 với ESPHome vì google có tất cả câu trả lời.

Tệp cấu hình đầy đủ của tôi sẽ có sẵn để tải xuống ở cuối. Da Da Dah…

Vì vậy, hãy bắt đầu với phần được liên kết với Trợ lý nhà:

Chúng tôi phải tạo ra các cảm biến phù hợp với các cảm biến trong trợ lý gia đình để chúng có thể nói chuyện với nhau.

Bước 5: Bước 5: Kết nối Trợ lý Trang chủ ESPHome… Hãy cho tôi biết Scotty

Bước 5: Kết nối Trợ lý Trang chủ ESPHome… Beam Me Up Scotty
Bước 5: Kết nối Trợ lý Trang chủ ESPHome… Beam Me Up Scotty

cảm biến:

- nền tảng: homeassistant

entity_id: sensor.ft_start_hr

id: id_ft_start_hr

Vì vậy, bây giờ chúng tôi tạo một cảm biến trong ESPHome của loại homeassistant. Ai có thể đoán được?

Id thực thể sẽ phải khớp với những gì bạn thiết lập trong tệp config.yaml của mình.

Tôi đã thiết lập một id để ESPHome có thể tham chiếu cảm biến này trong suy nghĩ phong phú của nó.

Bước 6: Bước 6: Hãy thêm chút thời gian

Bước 6: Cho phép thêm chút thời gian
Bước 6: Cho phép thêm chút thời gian

Vì vậy, với đây là một phích cắm định thời … Hãy thực sự thêm một thời gian … Hay là nó trừ đi? Nó bây giờ là trong quá khứ?

Dưới đây là một số điều cơ bản về thành phần thời gian. Chúng tôi có thể chọn một số cái khác nhau nhưng tôi đã chọn homeassistant. Quá dễ dàng?

esphome.io/components/time.html

Bước 7: Bước 7: Khoảng thời gian

Bước 7: Khoảng thời gian
Bước 7: Khoảng thời gian

Không, nó không phải là nghỉ, hay là nó?

khoảng thời gian:

- khoảng thời gian: 1 giây

sau đó:

- lambda: | -

id (gl_ft_start_hr) = id (id_ft_start_hr).state;

Vì vậy, tôi đặt khoảng thời gian là 1 giây để ghi giá trị cảm biến từ trợ lý tại nhà đến biến toàn cục.

Tôi chỉ muốn làm điều này một lần một giây khi thời gian đang trôi qua … tích tắc

Bước 8: Bước 8: Vậy là chúng ta có thời gian và tiền bạc… Tiếp theo là gì?

Bước 8: Vậy là chúng ta có thời gian và tiền bạc… Tiếp theo là gì?
Bước 8: Vậy là chúng ta có thời gian và tiền bạc… Tiếp theo là gì?

Vì vậy, tôi quyết định sử dụng một mẫu cảm biến nhị phân để xác định xem thời gian bật công tắc chuyển mạch công tắc… rơle

Tôi đã tạo ba công tắc với id's: start_time_valid, stop_time_valid và run_time_valid

start_time_valid là true khi đã quá thời gian thiết lập để bật rơ le.

Tôi đã sử dụng các câu lệnh if lồng nhau để kiểm tra xem chúng ta có lớn hơn hoặc bằng số giây được yêu cầu, sau đó là phút và cuối cùng là giờ hay không.

stop_time_valid là true khi nó ở ngay bây giờ trước khi nó được thiết lập để tắt công tắc. Điều này được đảo ngược để kiểm tra xem bây giờ chưa quá thời gian cần thiết để tắt rơ le

run_time_valid là true khi cả start_time_valid và stop_time_valid đều đúng. Tôi cho rằng tôi có thể chỉ sử dụng một điều kiện và bình thường cho cái này. Tôi vừa mới bắt đầu làm việc với những chiếc lambdas.

- nền tảng: mẫu

tên: "Thời gian bắt đầu hợp lệ"

id: start_time_valid

lambda: | -

if (id (homeassistant_time).now (). hour> id (gl_ft_start_hr)) {

trả về true;

}

else if (id (homeassistant_time).now (). hour == id (gl_ft_start_hr) &&

id (homeassistant_time).now (). minutes> id (gl_ft_start_mn)) {

trả về true;

}

else if (id (homeassistant_time).now (). hour == id (gl_ft_start_hr) &&

id (homeassistant_time).now (). minutes == id (gl_ft_start_mn) &&

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

trả về true;

}

khác {

trả về sai;

}

Bước 9: Bước 9: Bây giờ cho một số kịch bản: 'Trở thành, hay không trở thành: Đó là câu hỏi'

Bước 9: Bây giờ cho một số kịch bản: 'Trở thành, hay không trở thành: Đó là câu hỏi'
Bước 9: Bây giờ cho một số kịch bản: 'Trở thành, hay không trở thành: Đó là câu hỏi'

Hmm sai kịch bản dude!

Vì vậy, nếu tôi cắm công tắc … hoặc nguồn điện trong nhà vừa bật trở lại, tôi muốn công tắc biết nó được bật hay tắt và hoạt động cho phù hợp. (vâng, tất cả chúng ta đều đi học diễn xuất)

Id tập lệnh đầu tiên: checkstatuson, đang kiểm tra xem chúng ta có muốn tham gia và hành động phù hợp hay không. Tôi cũng bao gồm một cờ toàn cầu với id: trackingon, để đảm bảo rằng tập lệnh này chỉ được chạy một lần và không cản trở các tập lệnh khác của tôi thực hiện vai trò của chúng trong vở kịch.

Điều này có 3 và điều kiện: rơle tắt, nó có nghĩa là đang bật và tôi chưa làm xong phần việc của mình. Thao tác này sau đó sẽ tắt bất kỳ tập lệnh nào khác đang chạy, bật chuyển tiếp và đặt cờ theo dõi.

Id script thứ hai: checkstatusoff, hoàn toàn ngược lại với id đầu tiên. Chúng tôi chỉ kiểm tra xem chúng tôi có cần phải đóng rèm ngay bây giờ hay không. Cờ theo dõi cho cái này là theo dõi

Tôi chạy hai tập lệnh này trong khoảng thời gian 1 giây để kiểm tra từng giây.

Bước 10: Bước 10: Một số tập lệnh thưởng

Bước 10: Một số tập lệnh tiền thưởng
Bước 10: Một số tập lệnh tiền thưởng

Hai tính năng nữa mà tôi muốn bổ sung là nếu tôi tắt đèn ở bể chứa thì nó sẽ bật lại sau 5 giây nếu đèn được bật vào thời điểm đó. Ngoài ra, nếu đèn tắt và tôi muốn bật nó lên để xem cá của mình và nó không đúng giờ đã hẹn, thì nó sẽ bật trong 5 phút. Có 5 phút là đủ lâu… Quay lại làm việc.

Id tập lệnh đầu tiên: relayisoff sẽ bật đèn trong 5 phút nếu nó tắt đúng giờ theo lịch trình và sau đó tắt.

Id tập lệnh thứ hai: relayison thực tế được đảo ngược so với id đầu tiên và sẽ chuyển đèn trở lại 5 giây sau đó nếu ý nghĩa của nó là sáng. Ai nói bạn có thể tắt đèn của tôi!

Dưới đây là một số thông tin khác về tập lệnh:

esphome.io/guides/automations.html

Một số thông tin bổ sung về các tập lệnh là chúng không bị chặn. Trừ khi bạn đặt một sự chậm trễ trong một lambda.

Bước 11: Bước 11: Một số suy nghĩ cuối cùng

Bước 11: Một số suy nghĩ cuối cùng
Bước 11: Một số suy nghĩ cuối cùng
Bước 11: Một số suy nghĩ cuối cùng
Bước 11: Một số suy nghĩ cuối cùng

Từ trợ lý gia đình, tôi muốn công tắc hoạt động giống như nút.

Tôi không đặt tên cho công tắc cục bộ cảm biến nhị phân vì không cần thấy nó được đẩy trong trợ lý tại nhà.

Tôi đã không đặt tên cho công tắc chuyển tiếp vì tôi muốn sử dụng các tập lệnh để thực hiện chuyển đổi từ trợ lý tại nhà.

Tôi đã tạo một công tắc mẫu có tên để tôi có thể sử dụng tên đó để chuyển từ trợ lý tại nhà. Nó sẽ chạy các tập lệnh của tôi giống như công tắc cục bộ ở phích cắm.

Tôi chưa kiểm tra xem việc tắt trợ lý tại nhà của mình có còn hoạt động bình thường hay không. Tôi hy vọng như vậy. Tôi đã xem một số bài đăng về một số vấn đề khi mất kết nối với API Trợ lý Trang chủ.

Tôi thực sự hy vọng hướng dẫn nhỏ này sẽ giúp ích cho bạn và vui lòng giúp tôi làm cho nó tốt hơn. Tôi không phải là chuyên gia và học rất chậm. Tôi chỉ nghĩ rằng một số điều tôi đã học được cách làm có thể giúp ích cho những người đang gặp khó khăn trong việc tìm ra nó.

Bây giờ để thay đổi thời gian trong trợ lý tại nhà dựa trên mặt trời mọc và lặn… + - một vài

Đề xuất: