Mục lục:

Trình ghi dữ liệu lịch sử máy điều nhiệt Nest: 6 bước (có hình ảnh)
Trình ghi dữ liệu lịch sử máy điều nhiệt Nest: 6 bước (có hình ảnh)

Video: Trình ghi dữ liệu lịch sử máy điều nhiệt Nest: 6 bước (có hình ảnh)

Video: Trình ghi dữ liệu lịch sử máy điều nhiệt Nest: 6 bước (có hình ảnh)
Video: “Người Ngoài Hành Tinh” ở Pháp👽😱 2024, Tháng mười một
Anonim
Trình ghi dữ liệu lịch sử máy điều nhiệt Nest
Trình ghi dữ liệu lịch sử máy điều nhiệt Nest

Bộ điều nhiệt Nest theo dõi nhiệt độ, độ ẩm và mức sử dụng lò / AC và người dùng chỉ có thể xem dữ liệu lịch sử trong 10 ngày. Tôi muốn thu thập dữ liệu lịch sử (> 10 ngày) và tìm thấy tập lệnh bảng tính google ping lồng nhau vào mỗi thời điểm đã định và cũng lấy dữ liệu thời tiết địa phương từ openweathermap.org và lưu vào bảng tính.

Mọi thứ đang diễn ra tốt đẹp trong một năm, và kịch bản đột ngột ngừng thu thập dữ liệu. Sau một số tìm kiếm trên google, tôi nhận ra rằng cứ sau 5 phút lại có một hàng cho google spreadhseet có nghĩa là đạt đến giới hạn ô tối đa mà bảng tính google có thể chứa. Tôi đã cập nhật tập lệnh gốc để vẫn ping Nest 5 phút một lần và thu thập dữ liệu trong 1 hàng mỗi ngày. Tập lệnh kiểm tra hàng cuối cùng và nếu nó trùng ngày, thì tập lệnh sẽ nối dữ liệu vào cùng một hàng chứ không phải thêm một hàng mới.

Tín dụng cho kịch bản gốc. Tôi chỉ thực hiện một vài chỉnh sửa cho phù hợp với nhu cầu của mình.

// tác phẩm của michael-pesce: https://gist.github.com/michael-pesce/a4ba55d4fc4…// Tác phẩm của BEEZLY:

Từ khóa: Lịch sử máy điều nhiệt của Nest, Nhiệt độ của Nest, Lịch sử nhiệt độ của Nest, Hack máy điều nhiệt của Nest, Mẹo về máy điều nhiệt của Nest, Lịch sử về năng lượng của Nest, Sử dụng hàng ngày của Nest, Mức sử dụng hàng ngày của Nest, Tải xuống dữ liệu về máy điều nhiệt của tổ

Bước 1: Tạo Google Trang tính mới (Lưu dưới dạng trên Bảng tính được chia sẻ của tôi)

Tạo một Trang tính Google Mới (Thực hiện Lưu dưới dạng trên Bảng tính Được Chia sẻ của Tôi)
Tạo một Trang tính Google Mới (Thực hiện Lưu dưới dạng trên Bảng tính Được Chia sẻ của Tôi)

Bắt đầu với google sheet được chia sẻ của tôi được liên kết bên dưới (Mở tệp đó và nhấp vào Tệp, sau đó "tạo bản sao" và lưu trong ổ đĩa google của bạn).

P. S: Đừng yêu cầu tôi cho phép bạn chỉnh sửa tập tin này. Trước khi thực hiện bất kỳ thay đổi nào mà bạn sẽ không thể thực hiện vì tôi đã chia sẻ đây là bảng tính chỉ đọc, hãy thực hiện "tạo một bản sao" trong google drive của riêng bạn và sau đó tiến hành chỉnh sửa.

docs.google.com/spreadsheets/d/1zTHUfiltWomhPYmfD3TYRRoJZsgcjrQ_A2xHSTK5_dE/edit?usp=sharing

Đối với những người đang gặp vấn đề với ủy quyền: Hãy thử tập lệnh trong tệp sau. Nó có chức năng bổ sung liên quan đến các giao thức ủy quyền 2.0 mới của Nest. Tôi chưa thử nó, vì vậy nếu bạn gặp bất kỳ câu hỏi hoặc vấn đề nào, vui lòng đăng trong phần bình luận. Tín dụng đến mcr2582.

www.dropbox.com/s/8rbtg7pb0xl9n9x/nest%20t…

Một biến thể khác của tập lệnh bởi Coder56: Chi tiết bổ sung trong phần nhận xét. Tôi đã không thử nó, nhưng tập lệnh được tổ chức rất tốt và nó có vẻ hoạt động tốt đối với nhiều người dùng.

docs.google.com/spreadsheets/d/15bTn9_Cv9I…

Bước 2: Sao chép tập lệnh

Bỏ qua bước này nếu bạn đã lưu một bản sao trên trang tính được chia sẻ của tôi trên google.

  • Trên thanh menu, nhấp vào Công cụ -> Trình chỉnh sửa tập lệnh… để mở Trình chỉnh sửa tập lệnh (cửa sổ mới)
  • Trong Script Editor, hãy xóa tất cả các tập lệnh / tệp mặc định và tạo một tệp mới (tôi gọi là "NestScript.gs")
  • Cắt và dán toàn bộ văn bản này từ tệp đính kèm vào NestScript.gs, sau đó LƯU ĐIỂM (Đối với bước này, vui lòng sử dụng tập lệnh từ google sheet mà tôi đã chia sẻ ở bước 1. Nếu bạn đã lưu một bản sao trên tệp đó, bạn chắc đã có tập lệnh. Nếu không, bạn có thể mở tệp đó và đi tới phần tập lệnh và sao chép văn bản. Tôi đã xóa tệp văn bản tập lệnh được đính kèm với bước này vì nó không được cập nhật và có thể gây nhầm lẫn.).

Bước 3: Triển khai dưới dạng ứng dụng web

Triển khai dưới dạng ứng dụng web
Triển khai dưới dạng ứng dụng web
Triển khai dưới dạng ứng dụng web
Triển khai dưới dạng ứng dụng web
  • Trên thanh menu, nhấp vào Công cụ -> Trình chỉnh sửa tập lệnh… để mở Trình chỉnh sửa tập lệnh (cửa sổ mới)
  • Trên thanh menu, nhấp vào Xuất bản -> Triển khai dưới dạng Ứng dụng web
  • Chọn "Thực thi ứng dụng với tư cách là tôi"
  • Chọn Ai có quyền truy cập vào ứng dụng: "Bất kỳ ai, kể cả ẩn danh"
  • Sao chép / ghi chú liên kết đến ứng dụng web mới của bạn ngay bây giờ và nó sẽ được thêm vào quy trình runDataCollection bên dưới (mã đầu tiên) trong các bước sau.

Bước 4: Kích hoạt

Gây nên
Gây nên
Gây nên
Gây nên
Gây nên
Gây nên

Đây là nơi bạn xác định tần suất thu thập dữ liệu.

  • Trên thanh menu, nhấp vào Trình kích hoạt dự án hiện tại
  • Nhấp vào thêm trình kích hoạt mới
  • Đối với Run, chọn hàm runDataCollection, Events: time-driven và chọn phần còn lại theo sở thích của bạn (tôi thực hiện cứ sau 5 phút)

Bước 5: Thông tin bổ sung trong tập lệnh

Thông tin bổ sung trong tập lệnh
Thông tin bổ sung trong tập lệnh
Thông tin bổ sung trong tập lệnh
Thông tin bổ sung trong tập lệnh
Thông tin bổ sung trong tập lệnh
Thông tin bổ sung trong tập lệnh

Hãy sửa đổi tập lệnh thành bộ điều nhiệt, thành phố và trang tính google cụ thể của bạn.

Mỗi thay đổi được liệt kê với một số dòng của tập lệnh. Bạn sẽ phải đến dòng đó trong script và cập nhật theo hướng dẫn bên dưới. (Số dòng phải chính xác nếu dòng 40 là "runDataCollection ()…").

  • Dòng 45: thêm liên kết webapp trong định tuyến runDataCollection (Đây là những gì bạn đã lưu ý trong một trong các bước trước đó)
  • Dòng 53: Tên người dùng và mật khẩu Nest
  • Dòng 77: ID thiết bị điều nhiệt

Bạn có thể lấy id cho từng bộ điều nhiệt bằng cách đi tới trang tổng quan Nest, nhấp vào Bộ điều nhiệt, nhấp vào biểu tượng bánh răng ở trên cùng bên phải, sau đó sao chép trường "Số sê-ri". Nó sẽ giống như sau: 02XX01XX471XXX3S

Dòng 90: ID thành phố (hướng dẫn bổ sung trong tập lệnh phía trên dòng này có thể hữu ích.)

Để tìm ID thành phố, hãy truy cập "https://openweathermap.org/find?q=" tìm kiếm thành phố của bạn, nhấp vào liên kết thành phố và ID sẽ là số có 7 chữ số trong URL

Dòng 103: ID trang tính của Google (hướng dẫn bổ sung trong tập lệnh phía trên dòng này có thể hữu ích.)

Id Trang tính có thể được lấy từ URL shee Xem mẫu này để biết id Trang tính nằm trong URL:

Bước 6: Hoàn thiện bảng tính

Bỏ qua bước này nếu bạn bắt đầu với bảng tính được chia sẻ của tôi.

Hai dòng này cần phải có trong bảng tính để mã hoạt động.

Dòng đầu tiên (Hàng tiêu đề): Dấu cách phân tách các cột

Ngày / Giờ Tháng Ngày Năm Nhiệt độ Độ ẩm Bên ngoàiTemp Bên ngoài Độ ẩm Nhiệt độ Sử dụng AC_Công dụng Thời tiết Tự động Đi vắng

Dòng thứ hai:

Thêm ngày hôm qua vào cột đầu tiên và số không trong các cột còn lại.

Đó là nó. Hãy để tập lệnh chạy và tập lệnh sẽ thêm một hàng mỗi ngày và ping bộ điều nhiệt và thời tiết địa phương của bạn để biết dữ liệu theo tần suất kích hoạt bạn đặt.

Nếu bạn triển khai lại ứng dụng web, hãy sử dụng bản sửa đổi mới. Tôi đã gặp sự cố khi sử dụng các bản sửa đổi tương tự với tập lệnh không chạy

Nếu tập lệnh không chạy, hãy thực hiện lại các bước trước đó và đảm bảo rằng bạn đã cập nhật tập lệnh theo đề xuất của các bước này một cách chính xác. Đây là nguyên nhân rất có thể gây ra sự cố tập lệnh không chạy

Các vấn đề đã biết (Nếu ai đó biết cách khắc phục, vui lòng trả lời trong phần nhận xét):

1) Tập lệnh không lấy được dữ liệu từ tổ trong suốt cả ngày. Tôi kích hoạt 5 phút một lần, điều này sẽ dẫn đến tổng cộng 288 lượt đọc trong suốt một ngày. Tôi nhận được ~ 170. Mức thấp nhất mà tôi đã nhận là 16 và cao nhất là 264.

Đề xuất: