Solar Array and home energy dashboard.
25'ten fazla konu seçemezsiniz Konular bir harf veya rakamla başlamalı, kısa çizgiler ('-') içerebilir ve en fazla 35 karakter uzunluğunda olabilir.
 
 
 
 
 

2.3 KiB

Fast JS loading: https://web.archive.org/web/20200108190917/https://humanwhocodes.com/blog/2009/07/28/the-best-way-to-load-external-javascript/

aiohttp websockets: https://web.archive.org/web/20200108235147/https://aiohttp.readthedocs.io/en/stable/web_quickstart.html#websockets

aiohttp static files: https://aiohttp.readthedocs.io/en/stable/web_reference.html#aiohttp.web.UrlDispatcher.add_static

aiohttp client response: https://aiohttp.readthedocs.io/en/stable/client_reference.html#aiohttp.ClientResponse

WebSocket JS specification: https://web.archive.org/web/20200109005314/https://html.spec.whatwg.org/multipage/web-sockets.html#dom-websocket

Lazy loading HighCharts: https://web.archive.org/web/20200109045439/https://www.highcharts.com/stock/demo/lazy-loading

Dynamicly adding data: https://web.archive.org/web/20200109045531/https://www.highcharts.com/docs/working-with-data/live-data#2-api-methods

uses afterSetExtremes event on xAxis to load data, which then set’s it via setData

Stacked area chart: https://web.archive.org/web/20200109053708/https://www.highcharts.com/demo/area-stacked

Graphs

Note: HighCharts uses milliseconds since unix epoch for time stamps.

Grid Import/Export navigation: net import by hour or six hours

Solar Panel navigation: solar production by hour

Navigation data needs to be generated as part of the index generation.

Maybe heatmap for solar panels

Use removePoint and addPoint: https://web.archive.org/web/20200109083308/https://api.highcharts.com/class-reference/Highcharts.Series.html to add/remove the end null point and add points as they dynamically arrive

WebSocket Definition

Messages to the websocket: q Quit

Messages from the websocket:

id	description
c	Consumption -- current power consumed
    Sent for each update.  units kW.
ng	Net Grid -- What the current power draw is from the grid (negative when sending power).
    Sent for each update.  units kW.
p	Solar production -- current power produced by the solar panels in aggregate.
    Sent for each update.  units kW.

ov	overview of data, contains gird, production and consumption data.
    following is JSON object

One the first connection, the following messages/data will be sent: c, ng, p, ov

The following will be sent as they are updated: c, ng, p