á¨ááĽáŤáľ áĽá á¨áá áá፠á á°áá áአááĽá á áľáŁáá - á¤á°á°áŚáź á áŁá áĽá áá áá? á°á
á, á á, á ááłá á˘áŤ á¤áľ ááľáĽ áááłá ááá áĽá áŚááá á á, ááá áá áááá áĽáá° á¨áĽáłáľ á á°á áá¨áá¨áŤ á°áŤá°áá˝ á áá°áŠá. áĽá á°áá ááá á¨ááááĽáĽ áááľááá (ááá áĽááłá á ááłá á˘áŤ á¤áľ ááľáĽ áá á°á áĽáááłáá)ᢠá¨áĽááľ á ááłáľ á ááľ áĽá ááľááá
á á áἠáá áá° á¤áľ á¨áłáľ áĽáá° áĽáἠá¤áľ áľááá´ áááŹáŤááᢠá¨ááááŤáśáš ááľáĽ á ááą á¨á°ááŤáŠ á áááľ ááŤáá˝á ááš á¨ááááŁáą áĽáľá áŤáá á¨áá°á áá á áŤáá áá¨á áá°áĽá°áĽá á¨áá°áŤááľ á˝ááł áĽáť áá áá˘
á áá
á˝áá ááľáĽ á¨á°ááá¸á áá¨á á á˛áľ á áá°áá, áĽááá
áá á á°ááŤáŠ áľáľáśá˝ áľá áŤá áááŽá˝ áá°á á˛á á á˘áá°áááľ áá á°ááá¸áá. ááá áá áĽáŤááłááą á˝áá, áĽáá° á ááľ á°ááĽ, á ááľ á ááŤá¨áĽ ááá áá˝áł áĽáť ááááá. áĽááá
á áá á ááŤá¨áŚá˝ áááłá°á áĽá á áŁá á°áľáá á¨áááá áĽáŤá´á ááá¨áĽ áá á¨áĽá. á˝áá á ááá á áá¨á á á°áŁá°áĽ áá á¨á°áá áá¨á á áá°áĽáᣠááá áá áĽá áĽáá´áľ áĽááłá°á¨ááŠáľ á¨áá áá፠ááááľ ááᢠáľááá
ááᢠáľá˝áśá˝ áĽá á¨ááťáťáŤ áááŽá˝ á á°áľáł ááá ááá˘
á¨á˝áአááá
áľááá á¨ááŹá á¨á áŤá áĽááľ áĽáá áľáá´ áἠáἠá¨áá áĽá á¨á¤áááľáŞá áááł ááŤáá˝á ááááľ ááá˘
- á á°ááľ á 2 áááľ
- á á¨áá á 2 áłáááłáľ
- (á ááŤá) á á¨áłáááą áĽá á á¨ááŠ
á áá ááľáĽ á ááłááľ á˝ááŽá˝ á á-
- á¨áá°á á áá áł áááá˝ á áŁá á°áŤá áá¸á. á áĽáŠ áááł á¨ááľáá ááŤá á ááĽáĽ ááááŁáľ áá˝ááá˘
á á°áἠá¨áááá á¨áá°á á áá áłáá á á á á¨ááŤáŤáá á¨áśáľá°á ááá áááá˝á ááááľ áľá˝ááá ᢠáá¤áľ á¨áłáľ, á ááá á°á¨á, áĽáŠ áĽá á¨ááŤáá á áŤá
á ááľá°á ááŤá áŤááľ áá á á°áá°á ááአá¨á°áá°á áááĄ-- á¨á áá áá áłáá áááááá˝ á áľááá ááá°áśá˝ áááááľ á áľá¸á᪠áá (á¨á ááá áľááľ á á ááľ á°ááľ áááááŽá˝ á°ááá áˇá áá á áááľ á¨á ááľ á°ááľ á áá á¨áá¨áá ááá°áśá˝ á ááááá ááĽáŽá˝ ááááŁá)
- á¨á°ááŤáŠ á áŤááľá áá° á ááľ ááŤá áá¨á á áá˝áá (áááłá á¨áááľ áá á áĽá áĽááĽá áľ ááá á¨á áá ááŤá á¨á ááľ ááľáá áá ááŁáá)
- á¨á¤áľ á¨áłáą á ááŁáŞááľ áĽá
á áĽááłááá á¨SQLite áłáłá¤á áĽáť á áá°áá á¨áá ááá (áĽá áĽá á¨áĽá
áŁáááŤá ᨠMySQL ááá Postgresá áááľ á á°áἠá ááá
áá) ááᥠá áŁá áĽáŠ á áá ááááľ á áá¨áá˝áᢠáľááá
ᣠáááłáᣠá áĽáŤááłááą ááἠá¨áááŞáŤ áľááš á˛ááłá áááŞáŤáŁ á ááľ áŞááŁááľ á¨ááŤá
á ááá json áá° áłáłá¤á ááááá˘
{"entity_id": "sensor.water_cold_hourly", "old_state": {"entity_id": "sensor.water_cold_hourly", "state": "3", "attributes": {"source": "sensor.water_meter_cold", "status": "collecting", "last_period": "29", "last_reset": "2020-02-23T21:00:00.022246+02:00", "meter_period": "hourly", "unit_of_measurement": "l", "friendly_name": "water_cold_hourly", "icon": "mdi:counter"}, "last_changed": "2020-02-23T19:05:06.897604+00:00", "last_updated": "2020-02-23T19:05:06.897604+00:00", "context": {"id": "aafc8ca305ba4e49ad4c97f0eddd8893", "parent_id": null, "user_id": null}}, "new_state": {"entity_id": "sensor.water_cold_hourly", "state": "4", "attributes": {"source": "sensor.water_meter_cold", "status": "collecting", "last_period": "29", "last_reset": "2020-02-23T21:00:00.022246+02:00", "meter_period": "hourly", "unit_of_measurement": "l", "friendly_name": "water_cold_hourly", "icon": "mdi:counter"}, "last_changed": "2020-02-23T19:11:11.251545+00:00", "last_updated": "2020-02-23T19:11:11.251545+00:00", "context": {"id": "0de64b8af6f14bb9a419dcf3b200ef56", "parent_id": null, "user_id": null}}}
á áŁá áĽááľ á´áá°áŽá˝ á áá (á¨áááľ áłáłážá˝ á áĽáŤááłááą áááᣠáá áĽá á¤áááľáŞá ááŁáŞáá˝) áĽá á ááłááśáš á°áá á áŁá áĽá ááἠáŤáááŤáᢠáááłá ᣠá¨á¤áľá˛á¤á220 á¤áááľáŞá ááŁáŞ áĽáť á á¨10-15 á°á¨ááľ á°ááá áŤá á áĽá´áśá˝á áŤáááŤá ᣠáĽá 8 áĽáá°áá áŤá ááľáŽá˝á ááŤá áĽááááá ᢠáĽá á ááá˝ áłáłážá˝ áá á¨á°áá°á¨áą á á ááá ááŹáśá˝á á áᢠáŤá˘ áĽááá áá áááá˝ á á¨áá á 100-200 áᣠá¨ááἠááłáá á ááá áá¨áá áá˝áá. á á ááľ áłáááľ ááľáĽ áľáááą áĽááĽáá á áááááá áĽá ááááŁá, áĽá á á ááľ áá ááľáĽ ááá˝ á áááá áááłá (á á°áááś á¨á¤áľ ááľáĽ á¨áłáľ á Raspberry PI áá á˛áŤá) áĽá áá ááľ á ááľ áá áá¨á áľááá¨áá¸áľ ááá áááá ááá á áá˝áá. .
- áĽáľáá á¨ááá ááŁáŞá áŤáą áááłá áááĽá áá˝ááᢠááŁáŞáá á ááááá áá ááááá áĽá á¨á°á áŤáá á¨áááł áá áľááľ á°ááľ áĽáá°áá áá á¨á
áá˝ááᢠáĽáá° á°ááĄ, á˛ááłá á áááá˝ (RS232 / RS485 / Modbus / Zigbee) áŤáá¸á ááá á¨á¤áááľáŞá ááľáŽá˝ áĽáá°áá
á áááľ áĽáľá áá°áŁá.
ááŁáľáŁ ááłáŞáŤá á ááá á ááłááľ á á˝á áłá áááŞáŤáá˝á (áááłá á á˝á áłá ááá ááá á á¨áľ) áááŤáľ ááá á ááá á á¨X ááľ-á°ááą ááá ááľá (pulses) áááá¨áľ á¨áťáᢠá¨á፠áĽáá´áľ áĽá á áá áĽáá°ááááľ áĽá áá á¨áľ áĽáá°áá¨áá˝ áá°áĽ á ááĽááľá˘ á ááááá ááááŤáľ á¨áááĽááá áŞáááľ á¨ááŁáľ á á°á á á, áĽá á¨áľáááą áľááááááľ á á á ááá áĽáŤááá˝á áŤáľááłá. á áĽááἠáá áá áá áĽáá° á¤áľ á¨áłáľ ááá áááá á¨á¤áľ áľáááľ á á°áŤ ááľá áľ áá˝áá ᣠáá ááá á°á á áá¨á ááą ááľáĽ áľááá á¨ááá˘áŤ áĽááľ ááĽáĄá á¨á°á¨áá á¨áá ᣠáĽá á¨áľáá˝ ááľáŤ áłáłážá˝ á á°á¨ááľ á¨á ááľ áá á áá á áá°áŠá (ᨠá¨á¤áľ á¨áłáľ áĽá ááá).
á ááŤá¨áĽ 1
á ááááŞáŤáŁ áá á¨á¤áľ á¨áłáľ á¨áłáĽá ááľáĽ áĽáá°áá°áĽ áĽááᢠá á ááľ áá ááľáĽ áááłá áááŤáľ á áŁá á¨áááá á°ááŁá ááᢠáĽááἠáá, á¨á¨á á áá á ááľ áĽáá° áአá áŤá - utility_meter á°á°ááĽáŻá.
á¨ááĽá¨áą áááľ á¨á ááá_á¨á°á áŤáá_áá á°áááá á¨ááľáĽ áááá áĽá á¨á°áá°á áá (á°á áľ/áłáááľ/áá) á áá áłáá ááľááá ááᢠááá áŤáą ááŞáá á°áááá (á¨á ááłááľ ááááľ áłáłá˝ áá) áááŁá áŤá ᣠá áĽá´áą ááľáĽ áááŚá˝á áááááŁá - á¨á°á ááááá áá¤áľ áĽáť áŤáááᢠáá ááá á ááááŞáŤá ááá ááľáĽ á áĽááľ ááľááŽá˝ ááľáĽ á°áááżá
utility_meter:
water_cold_hour_um:
source: sensor.water_meter_cold
cycle: hourly
water_cold_day_um:
source: sensor.water_meter_cold
cycle: daily
áĽáá
á´áá°á.á¨áá_ááľá_ááááá áĽá á¨áááá á ááľá ááľáĽ áŤáá á¨ááľá áá ááá˘
á¨á°ááľ áĽá áááłá áá áł áŽáľ ᨠlovelace-UI áá
á áááľááá˘
- type: history-graph
title: 'Hourly water consumption using vars'
hours_to_show: 48
entities:
- sensor.water_hour
- type: history-graph
title: 'Daily water consumption using vars'
hours_to_show: 360
entities:
- sensor.water_day
á áĽáááą, á áá áľáá°-ááá ááľáĽ á¨áá á á°áŤá á˝áá á á. á áľááľá áĽáá°ááá˝áŠáľ ááĽáŤááłááą áᢠáĽá´áľ (ááĽáŤááłááą ááŁá ááľá á¨á áá á¨ááľá ááŁáĽ) á áá¨á ááą ááľáĽ 1 áŞáŁ áááἠááá áŤáᢠáĽáŤááłááą á¨áááá፠ááľá á á˛áľ áĽá´áľ áŤáááŤá, áĽáąá á°áá á áá á¨áą áá á°á¨ááŻá. á á¨á°ááą / á á¨áá / áłáááłá / áááá ááŁáŚá˝á áá°áĽá°áĽ á¨ááááŠ, á á, ááĽá á¨áá áááŁáŤáá˝, áĽá á¨á¤áááľáŞá ááľáŽá˝ áĽá˝á áĽááłá áá¨áá, áá á áŁá áĽá ááἠáááá. á°á á ᣠá áľááá ᣠáĽá ááἠá¨áá ᣠáá á¨á¤áľ á¨áłáą áĽá á ááľááá áá¨ááá˝á áá° áłáłá¤á áľááá˝á ᣠá¨ááἠááłá áá á á ááá áĽá áá°á áŤáľááᢠááłáááłá áĽá áááá áá áłáá˝ á¨áá á¨áąá áá á áááááľ áĽááłá áĽááŤááá˘
á á°á¨ááŞá á¨áááá፠ááŁáŞá áŤáą á˝ááŠá á áááłáá. á¨áŠá˛áᲠááľá á´áŤ á á¨á°ááą áá° 0 á¨áááá áá á áĽá¨á¨áᨠá¨áááľ á°ááŁá ááᢠáĽáá˛áá áá°á áá ááš á¨áá á¨áááł ááá ááĽá áŤáľááááá, á ááá áá áŤá á ááľá á°á á. áá°á áá á¨áłáŞá-ááŤá á áŤá áá á á áŤá°ááá, ááá áá ááŤáá áá-ááŤá-áŤááľ ááá áá¨áłá áá˝áá.
áá ᨠlovelace-UI á¨áŤááľ áŽáľ áááĄ-
- aggregate_func: max
entities:
- color: var(--primary-color)
entity: sensor.water_cold_hour_um
group_by: hour
hours_to_show: 48
name: "Hourly water consumption aggregated by utility meter"
points_per_hour: 1
show:
graph: bar
type: 'custom:mini-graph-card'
áĽáá° áłáłá˝ áľáᣠá¨ááŤá á áááľáŁ ááá (áá°á ááá áĽááąáŤáá á ááá°áľáŠáľá) á¨áá°á á á ááĽáŽá˝ á á°á¨á᪠áĽáá 3 á ááĽáŽá˝á ááľá°áá á áá ááá˘
- áĄáľá_á áĄá°ááľ - áá áłá á¨á°ááą ááááŞáŤ áá á á°á°áá á ááśá˝ ááá áŤáá˘
- ááĽáŚá˝_á á°ááľ: 1 - á á°ááľ á ááľ á áá
- áĽá á¨ááá á ááᣠaggregate_funcᥠá¨áá°áá á áĽáŤááłááą á°á áľ ááľáĽ á¨áá°ááá áá ááá°áľ ááᢠᨠsawtooth áá áłáá áá° á áááá˝ á¨áááá¨á áá áá¤áľ ááá˘
á á፠á áŠá áŁáá á¨á ááśá˝ á¨áľá áá áľáŠá¨áľ á áľáľáĽ - áá
ááá áá¨á á¨áá á¨ááá áá°á á áŁá
᪠áá. ááá áá ááá á áááľ áá¨á á ááá á¨á - ááá
á
áá áľá á¨áĽááľ á°á áłáľ á ááľ á¨áá¨á á á°áŁá°áĽá á¨á¨ááľáŠáľ á¨áŠá˛áᲠááľáá á áá áá áá (á¨á ááá á áŤááľ á áĽááą áĽáááťáá)á˘
á áá áĽáá áá á ááłááľ áá á¨ááἠááłáŤá áĽááłá áĽáá°áá°áŤ áááłá¨áľ ááá áá á, áĽá á ááááš á áľááá áľáááá áĽá´áśá˝á áŤáááŁááá. áá ፠áĽáť á áá°ááᢠá áá ááááŤáľ á¨á ááą 11 á°ááľ áĽáľá¨ 12 á°ááľ áŁáá áá ááľáĽ á¨á°ááá á ááľ 19 ááľá áŤáłáŤá ᣠááá áĽááłá á áĽááľ ááŤá áá áá°ááłáłá áá á¨á°ááłáłá áłáłá˝ ᨠ62 ááľ áááłá áĽááŤááᢠáłá፠ááá áĽáá˝ á áá áá¸áᢠáá á áá á áŠá áŤáá áá¨á ááá áĽáá°á°áá¨á á ááá á áááŁáá - áĽá፠áŤáá áááł á¨á°ááá° áá á ᣠáĽáąá á¨áĽááľ ááŤáá ááłáŤáá˘
á á á ááá, á¨áá á á ááŤá¨áĽ á áłááááľ ááłáŤáľ á ááťááŠá - ááŤá áááá áááľ ááťáá á ááłááľ ááááľ áááá ááľá áŤáłáŤá.
ááá áłáłá˝ á°ááłáłá áŽáľá˘
- aggregate_func: max
entities:
- color: var(--primary-color)
entity: sensor.water_cold_day_um
group_by: interval
hours_to_show: 360
name: "Daily water consumption aggregated by utility meter"
points_per_hour: 0.0416666666
show:
graph: bar
type: 'custom:mini-graph-card'
áĽáŁááá á¨áĄáľá_á áááŞáŤá áá° ááá°áľ áááááąá áĽá á¨ááĽáĽ_á á°ááľ áááŞáŤá áááá ááá áááŁá áŤáᢠáĽá áá á¨áá á áŤá áá á˝áá áá - Point_per_hour á á°á áľ ááá á¨á፠áŁáá° áá áłáá˝ áá á á°áἠáá°áŤá ááá áá á áľááá ááá°áśá˝ áá á á¸áŤá ááᢠáľááá á á ááľ áá ááľáĽ á ááľ á ááľ áááááľ áĽá´áąá 1/24=0.04166666 ááľááŁáľ áá á¨áĽáᢠá¨áááŤá áľá áłáááłá áĽá áááá áá áłáá˝ á áá°ááá˘
á ááŤá¨áĽ 2
á¨á¤áľ á¨áłáąá áĽáŤáŁáŤáᣠáá á áŞá˛áŽ á ááááľáĄ-
áŁáá°á¨áŁá á¨á°ááŤáŠ ᨠXiaomi áśáŹáśá˝ á¨áááł áá¨áá áá°á áľáŁáᢠá¨áĽáą á°ááŁá áľáá˝ ááá áá - áááŹ, áľáááľá áĽá ááአá¨áááł ááá áĽáť áŤáłáŠ. ááá áá áłáá˝ á áŤáľááááá˘
áľá á á˝á áłá á¨ááá áĽá´áśá˝ á áĽá áá á°áľ ááááŽá˝á áá° áá áĽáá°áá - áľá á¨áá á ááŤá¨áĽ âáľááááááľâ áá°á áĽáŹ á˝á áá áᢠáá°á á˛á á á°ááłáłá áá፠á¨á°á°á á°áĄáľá á¨á°á¨áḠá¨áááł áááá˝ ááá áĽááłáá°á áá ááá˝ á áá°áá. á áĽá á áľá°áŤá¨áľ, á áĽá¨áľ áááĽáŤá ááľáĽ áŤáá áá á°áľ á á°áťá áááł áá°áŤá.
á¨áŞá˛áŽá ááľáĽ áá°áá°á áá áááłá á áĽá á¨ááá á ááłáĽ áĽáááľáłáá ᢠáá ááľ á°á ᣠááᏠáĽá ááľáááľ áááá˝ áĽáť ááłá°áŁá ᣠáá á¨á áá áĽáááłáá áĽá ááŤá áááłá áĽááááŤááᢠá áĽá ááłá áá á¨áá¨á á áá´ ááá ááá áĽáá°áá¨á°áá áá.
á á°ááą_ááááŞáŤ_á°áááá áĽá´áľ áĽáááĽáŤááᣠá áá
ááľáĽ á¨á ááá á¨ááŁáŞ ááŁáŚá˝á áĽáá˝áááá˘
á á°ááą áá¨á¨áť (ááá á áááĽáá ááááŞáŤ áá) á áá ááŁáŞá áá°á¨áľ, á áá áŁáá ááŁáĽ áĽá á á°ááą ááááŞáŤ áá á á°á¨áá¸á ááŤá¨á áŤááá ááŠááľ áĽáá°ááá. áá
ááŠááľ áá áá á°ááľ áááł áááá - áĽá´áąá áá° á´áá°áŠ áĽááľááá ááá, áĽá ááá°ááą á áá
áĽá´áľ áá á áááľá¨áľ ááŤá áĽáá°áŤáá.
áĽáá˛áá á¨ááŁáŞáá á¨á ááá áá áĽá፠á ááťá á°áááá áĽá´áąá "á ááááŞáŤ_á°ááľ_ááááŞáŤ" áá "áłáá ááľááá" áŤáľáááááłáá˘
áá áá á áĽáŠ áááł áá¨ááá áá˝áá ... á áŤáą á¨á¤áľ á¨áłáľ á ááŤáááľ.
á¨ááłáá á ááŤá¨áĽ ááá áľáá˝ á°á¨á᪠áŽáľ ááťá ááááĽááłáᢠá áĽááá "á°ááááŽá˝" áĽáááá. á¨áłáĽá ááᣠâá°ááááâ á áŤá á¨áááᣠáá ᨠmqtt á°áá á áááááśá˝á áá áá áá˝ááᢠáĽá´áśá˝á á¨áá áŁá ááŤá = áĽááá°á áŁáá˛áŤ áá áĽáááŤáá - áá á á°ááá ááľáĽ áŤááá áá áááĽáŁá áĽá á¨á¤áľ á¨áłáą áĽáá°áá á áááłá áľ áá áĽááłá á ááááá áá ááᣠáá˝ááᢠá á¨á°ááą áĽá á á¨áá ááŁáŞáá˝á á á ááľ áá á áŤáá˘
- platform: mqtt
state_topic: "test/water/hour"
name: water_hour
unit_of_measurement: l
- platform: mqtt
state_topic: "test/water/hour_begin"
name: water_hour_begin
unit_of_measurement: l
- platform: mqtt
state_topic: "test/water/day"
name: water_day
unit_of_measurement: l
- platform: mqtt
state_topic: "test/water/day_begin"
name: water_day_begin
unit_of_measurement: l
ááá á áľááľ á á¨á°ááą áĽá á á¨áá˝áą á áá áŤá á ááśááľáľ ááľáĽ áá¨á°áłáá˘
- id: water_new_hour
alias: water_new_hour
initial_state: true
trigger:
- platform: time_pattern
minutes: 0
action:
- service: mqtt.publish
data:
topic: "test/water/hour"
payload_template: >
{{ (states.sensor.water_meter_cold.state|int) - (states.sensor.water_hour_begin.state|int) }}
retain: true
- service: mqtt.publish
data:
topic: "test/water/hour_begin"
payload_template: >
{{ states.sensor.water_meter_cold.state }}
retain: true
- id: water_new_day
alias: water_new_day
initial_state: true
trigger:
- platform: time
at: "00:00:00"
action:
- service: mqtt.publish
data:
topic: "test/water/day"
payload_template: >
{{ (states.sensor.water_meter_cold.state|int) - (states.sensor.water_day_begin.state|int) }}
retain: true
- service: mqtt.publish
data:
topic: "test/water/day_begin"
payload_template: >
{{ states.sensor.water_meter_cold.state }}
retain: true
áááąá á ááśáá˛ááľ 2 áááŽá˝á áá°áŤáá˘
- á áááť áĽá á áá¨á¨áťá áĽá´áľ ááŤá¨á áŤáá ááŠááľ á áĽáŤááłááą á¨áá ááá°áľ ááľáĽ áŤááá áá á áľá
- áááŁáŠ á¨áá ááá°áľ áá°á¨áłá áĽá´áąá áŤááá
á áá ááłá áá á¨ááŤáá˝ áááŁáł á á°ááá°á áłáŞá-ááŤá á°ááľáˇá-
- type: history-graph
title: 'Hourly water consumption using vars'
hours_to_show: 48
entities:
- sensor.water_hour
- type: history-graph
title: 'Daily water consumption using vars'
hours_to_show: 360
entities:
- sensor.water_day
áá á áááľááá˘
á ááá
á°á¨á, áá
áĽááľá á¨áááááľ ááľááá áá. á¨áá
áá´ áĽá
á áá¨áá á á¨á°áá°á áá á ááľ áá ááá አáá. áĽáááŤá˘ áá°ááą áťááľ á áá 24 áá¤áśá˝á˘
áĽáá° á áááłá°á áá, áá á ááá á¨áĽáľááľ áá°á¨áľá á á ááá á˝áá á áááłáá. áááá á¨áááł ááŤá á¨áááአá˘áŤááľ áá ááľ á ááľ áá¨á áá¨áá¸áľ á ááĽáᢠáĽá á¨á¤áľ ááľáĽ á¨áłáľ áá á ááá á¨ááἠááł á ááľ á¨áá¨ááť áááł á ááĽá áĽáť áľáááŤáááĽáŁ áá áááľ á áľáááą ááľáĽ áŤá ááá áá¨ááá˝ áá ááľ á ááľ áŤá á áááἠá ááŁá¸á áááľ ááᢠáááłá, á á ááľ á ááľ ááľáĽ 200 ááľá áŠáĽ áá áĽá ááá, áá á áááľ á áá¨á ááą ááľáĽ 200000 áááŁáśá˝ áááľ áá. áĽá ááá˝ áłáłážá˝á á¨áááľ ááľáĽ áŤáľáᥠᣠá¨á፠ááľá á á á ááá á¨áááľ á¨áá°áá ááááá˘
á ááŤá¨áĽ 3
áĽáá° áĽáľá ááᣠáĽáá á°áὠᨠInfluxDB áłáłá¤á á ááťá áá áá á˝áá ááľá°ááłáᢠáá á¨ááἠááł á á°áá á áá áá á¨á°áá°á¨á° áá¨áá ááá¨áá¸áľ á¨á°ááťá¸ áĽá á¨á°ááŤáŠ áłáłážá˝á áĽá´áśá˝á ááá¨áá¸áľ á°áľáá áá. áľáááą áĽá´áśá˝á á¨áá¨á ááą ááááŁáľ áĽá á¨ááŤá á á°ááŤáŠ ááááśá˝ áĽáá˛áááą á¨ááŤáľá˝áááľá SQL á¨áááľá á¨áĽáŤá ááá áŤáááŁáᢠá áá¨á¨áťá, á¨á°ááŤáŠ áá¨ááá˝ áá°ááŤáŠ áááŤáľ áááᥠáá˝áá. áááłáᣠáĽáá° á¨áááľ áá á ááá áĽááĽá áľ áŤá ááŁáŚá˝á á á°á°ááá ááá¨á á¨ááťáá ááááľ áłáááłáľ áĽáť á˛áá á á¨áá á¨áá áááł ááŁáŚá˝ áá ááľ á ááľ áŤá á áááᥠáá˝ááá˘
á¨InfluxDB á á°á¨á᪠áĽáá á°áá˝ ááŤááá ááá°ááľáŁ ᨠInfluxDB ááἠááŤáá˝á á¨ááłá áľáááľá˘ ááŤáá á¨á°ááŤáŠ á¨áá áł ááááśá˝á ááłáᣠá áááá ááŤá á áá¸á áá˝ááᣠáĽá á¨ááá á ááᣠáĽááá áá áłáá˝ áá° lovelace-UI á¨á¤áľ á¨áłáľ ááľáĽ âáá°áŤáľâ áá˝ááá˘
á°ááłáą
áľááá ᣠá ááááŞáŤáŁ á influxDB ááľáĽ á¨ááŁáŞ áĽá´áľ áá¨á áĽááááᢠá¨á¤áľ á¨áłáľ áá á ááŤá (á áá ááłá ᣠá áĽááľ áĽáť áłááá á áá ááá áĽááááá)
influxdb:
host: localhost
max_retries: 3
default_measurement: state
database: homeassistant
include:
entities:
- sensor.water_meter_hot
- sensor.water_meter_cold
á°ááłáłáŠá ááἠáĽáá°áá áĽááłáá áá˝ áá° á¨á¤áľ á¨áłáľ á¨ááľáĽ áłáłá¤á ááľáááĽá áĽááĽááĄ
recorder:
purge_keep_days: 10
purge_interval: 1
exclude:
entities:
- sensor.water_meter_hot
- sensor.water_meter_cold
á áá áá° InfluxDB áŽááśá áĽáááľ áĽá á¨ááἠááłá˝áá áĽááá áᢠá á°ááá, á¨á°áá°á ááἠááá áŤá á áá áĽáá°áá¨áá˝ áááá áŤáľáááááłá. áá á¨áááŁá á¨á á ááŁááľ ááᢠá¨áá፠ááᲠ- áá á ááá á¨ááἠááł ááľáĽ áŤá á¨ááἠááłáá˝ áá á°ááłáłá ááᣠáĽáŤááłááą á¨ááľáĽ áłáłá¤á á¨áŤáą ááźáľ á ááᢠá ááŁáŞáŁ ááá ááἠá ááśáá á°áĽá áá°áá áŤá á¨áá፠ááᲠááłá¨ááᣠáá ááἠáá ááľ áłáááľ ááááŁáᢠá¨á°ááľ ááἠáá ááľ áá áĽáá˛á¨áá˝áŁ áłáááłá áá¨á áá ááľ á ááľ áĽá áááá áá¨á á ááŤá˝ áĽááłáá°á¨á áĽáááááᢠá°áᢠá¨áá፠ááá˛áá˝á áĽáááĽáŤáá
CREATE RETENTION POLICY "month" ON "homeassistant" DURATION 30d REPLICATION 1
CREATE RETENTION POLICY "year" ON "homeassistant" DURATION 52w REPLICATION 1
CREATE RETENTION POLICY "infinite" ON "homeassistant" DURATION INF REPLICATION 1
á ááᣠá áĽáááąáŁ ááá áá´ ááŁáááľ áŤáá áá áá á á áá áá á¨ááἠáá°áŁá°áĽ ááᢠáá á á°áá°á á¨áá ááŠááľ ááľáĽ áá ááá á áŤáľ-á°á á¨ááŤáľááááŁá¨áá á áá áá áá¨á á¨áá°á áľáĽ áĽá áá¤áąá áá° á á˛áľ áĽá´áľ á¨áá¨áá áá´ ááᢠá ááľ ááłá áĽáááá¨áľ (áá°ááŁá˘ááľ á á ááľ ááľáĽ áĽá˝ááá ᣠáá á áĽáááą áá áá áľááá á á ááľ ááľáá áá ááľááŁáľ áá á¨áĽá)
CREATE CONTINUOUS QUERY cq_water_hourly ON homeassistant
BEGIN
SELECT max(value) AS value
INTO homeassistant.month.water_meter_hour
FROM homeassistant.autogen.l
GROUP BY time(1h), entity_id fill(previous)
END
áá áľáĽáááĄ-
- á á¤áľ á¨áłáľ áłáłá¤á ááľáĽ cq_water_cold_hourly á¨áá ááŁáááľ áŤáá áĽáŤá áááĽáŤá
- áá áá á á¨á°ááą (á°ááľ(1á°)) áá¨áááá
- áá áá á¨áááá áĽá á¨áá áá ááŁáŚá˝á á¨áᎠáááá áá¨ááá˝ á¨áááŤáľa homeassistant.autogen.l (ááľá) áŤááŁáá˘
- á¨á°ááá° ááἠá Entity_id ááá°áŁáᣠáá á áá ááá áĽá áá áá á¨á°áᨠáĽá´áśá˝á áááĽáŤáá˘
- á¨ááľáŽá˝ ááŁáŞ á áĽáŤááłááą á°ááľ ááľáĽ á á ááľ áá áĽá¨á¨áᨠá¨áááľ á á°á á°á¨á°á áľááá á¨áá°ááá áĽá´áľ ááá°áľ áŤáľáááááłá ᣠáľáááá áá á°áą á á¨áá°áá (áĽá´áľ) á°ááŁá áá¨áááá á˘
- á á˛áą áĽá´áľ áá á¨á ááľ áá á¨áá፠áá ááᲠáľá á ááá áľ homeassistant.month.water_meter_hour ááááᢠá á°á¨ááŞá ᣠá áááá áĽá áá áá áá áŤáá áá¨á á á°ááá á áá ááłáá፠áĽá á áĽá´áľ ááľáŠ ááľáĽ áŤáá áĽá´áľ áá áá° á°ááŤáŠ ááááŚá˝ áá°áŤáŤáá˘
á áááľ ááá ááá á°á á¤áľ ááľáĽ á ááááá áľ áá á¨áá áááł á áááá, áĽá á áá áá á¨áľ á homeassistant.autogen.l ááľáĽ ááá á á˛áľ ááááŚá˝ á¨áá. á áá°á á áá ááá˝ ááľáĽ á¨áá°á áĽá´áśá˝á áááľááᾠᣠáááľ (á¨ááľá) áá áá áá˝ááᢠáá InfluxDB áŤáááá á°ááľ áá áĽáá˛á áá áŤáľááľá°ááá˘
áĽáá° á áááłá°á áá ááŁáááľ áŤáá áá áá
áአáŁá
᪠á ááᥠááááľ(á¨ááľáá) áĽáááľ á áá°áŤá áĽá ááááŚá˝ á ááá á áá°áá áŠáᢠá¨áá
á á áá áá
á ááľ ááááľ á¨áááłáá á˝áá áá, áĽáąá
áá áĽáá°á°áá ᨠáĽáááľá˝ (á áĽááἠááĽááľ á°ááłáľ áá á á á ááĽááľ)
> select * from homeassistant.month.water_meter_hour group by entity_id
...
name: water_meter_hour
tags: entity_id=water_meter_cold
time value
---- -----
...
2020-03-08T01:00:00Z 370511
2020-03-08T02:00:00Z 370513
2020-03-08T05:00:00Z 370527
2020-03-08T06:00:00Z 370605
2020-03-08T07:00:00Z 370635
2020-03-08T08:00:00Z 370699
2020-03-08T09:00:00Z 370761
2020-03-08T10:00:00Z 370767
2020-03-08T11:00:00Z 370810
2020-03-08T12:00:00Z 370818
2020-03-08T13:00:00Z 370827
2020-03-08T14:00:00Z 370849
2020-03-08T15:00:00Z 370921
á áá¨á ááą ááľáĽ áŤááľ áááá˝ á áŠá˛á˛ ááľáĽ á¨á°á¨ááš áááá¸áá áἠáá á ᣠáľáááá áá áááá á 3 á°ááłáľ ááľáĽ áááŤáŤá - á InfluxDB áá ááľ ááľáĽ áŤáᾠᨠ7am áááá˝ á¨áá á áá áŁááľ áá áłáá˝ ááľáĽ áŤáᾠᨠ10 am áĽá´áśá˝ áá ááááłáᢠáĽáá˛áá á áᾠᨠ2 áĽáľá¨ 5 áŁáá áá ááľáĽ ááá ááááŚá˝ áĽáá°áá áἠáá á - áá ááŁáááľ áŤáá áá áá áŁá ᪠ááá˘
áĽáá°áááá¨áąáľ ᣠá¨á°ááá° áĽá´áľ áĽáá˛á áá á á áá áááł áĽá¨á¨áᨠá¨áááľ á á°á á°á¨á°á áá ᣠáá¤áśá˝ áĽáť áĽá áá áŤááą áá¸á - á á°ááľ á ááľ ááᢠáá áá á˝áá á áá°áá - ááá áłá áľáááááá ááἠá¨ááŤáᣠáá áá áá ááá áĽáá˝áááá˘
SELECT difference(max(value))
FROM homeassistant.month.water_meter_hour
WHERE entity_id='water_meter_cold' and time >= now() -24h
GROUP BY time(1h), entity_id
fill(previous)
áĽá áĽááłáááĄ-
- ᨠhomeassistant.month.water_meter_hour áłáłá¤áᣠááá¨á¨áťá áá (á°ááľ >= á áá() -24á°á áľ) á entity_id='water_meter_cold' áłáł áĽáááľáłááá˘
- áĽáá°ááá˝áŠáľáŁ á ááłááľ áá¤áśá˝ á¨homeassistant.month.water_meter_hour á á°á á°á¨á°á áááľá áá˝ááᢠáĽáŤááá á GROUP BY áá(1á°á áľ) á ááľáŹáľ áá áá áá¨á áĽááľáłááᢠá áá áá ááááľ (á¨ááľáá) á áľááá áá°áŤá, á¨áá°ááá ááἠá áááá¨áľ (á°ááŁáŠ á¨áá°ááá áá áááľáłá)
- á áá áá áá ááľáĽ á áŁá á áľáááá ááá á¨ááŠááľ á°ááŁá áá, áá á á á°ááľ ááááśá˝ ááŤá¨á áŤááá ááŠááľ áŤá°áá. á áŤáą, á áá°áŤá áĽá á¨áá°áá á°ááŁá áŤáľááááá. áá á¨áá á ááľ áĽá á áá á¨ááá á¨áá°á() áááá˘
á¨ááľáá¸á፠áá¤áą áá á áááľáá
name: water_meter_hour
tags: entity_id=water_meter_cold
time difference
---- ----------
...
2020-03-08T02:00:00Z 2
2020-03-08T03:00:00Z 0
2020-03-08T04:00:00Z 0
2020-03-08T05:00:00Z 14
2020-03-08T06:00:00Z 78
2020-03-08T07:00:00Z 30
2020-03-08T08:00:00Z 64
2020-03-08T09:00:00Z 62
2020-03-08T10:00:00Z 6
2020-03-08T11:00:00Z 43
2020-03-08T12:00:00Z 8
2020-03-08T13:00:00Z 9
2020-03-08T14:00:00Z 22
2020-03-08T15:00:00Z 72
á¨á ááą 2 am áĽáľá¨ 5 am (UTC) ááá áááł á ááá á¨áᢠá˘áááᣠáá áá á°ááłáłá á¨áááł ááá á ááááľ ááááłá (á¨ááľáá) áĽá á¨ááŠááľ á°ááŁá áá áá áĽá´áľ á¨áŤáą á ááááľ 0á áŤááá ᣠáá á á áĽáááą áŤáľááááá˘
á¨ááá¨á ááŤá ááááŁáľ áĽáť ááᢠáá áá áááľá¨á, Grafana á ááááą, á ááłááľ ááŁá (ááá á á˛áľ) áłá˝áŚááľ ááááą, á á˛áľ ááá ááá áŠ. á¨áá áł á áá áśá˝ áĽáá°áá¨á°áá áááá.
á¨áááá áĽá á¨áá
áá áá¨áá á á°ááłáłá ááŤá áá á áłááťááᢠáĽáŤáá á¨áá á¨ááá˝áŠáľ áá á°ááłáłá ááá˘
á¨ááłáŤ áááŞáŤáá˝ áĽáá°áá¨á°áá á°ááá áá. ááĽá ááľááŽá˝ (ááľááŽá˝) áŤáá ááŤá áááá, áĽáąá á á°á¨á (á°á¨ááá˝) ááľáĽ áááłá. á¨ááá áááŞáŤ á¨áá á áłá˝ ááĽáŤáŤáᢠá¨áá á áłá˝ áááľ á°á¨á᪠á¨ááłáŤ á ááŤáŽá˝ á áᣠáá áŤá áŤá á á áľá°áłá˝ á áá°ááá˘
á¨á°áááá ááŤá áá° á¨á¤áľ á¨áłáľ ááá¨áá á¨áá¨á°ááľá ááľá¨á á ááĽááľ:
- á¨áá áł á ááľááľ áááł ááŁá˘ á áá ááááŤáľ áľááááá á¨áá áł áááŞáŤ á áá áśá˝ á¨ááááĄáľ á¨áłá˝áŚááľ áá˝ áĽáť ááá˘
- á¨áá áłá áľá ááĽá áŤááá áľáŞáŤááá á á áŤáľááᣠá¨áááá ááľáĽ á ááŤá ááá¨áĄ
- á áá¨áá°á ááľáŽáľ ááľáĽ áá° ááá°áť áľá áááą
- á¨á ááá á¨áá ááá ááááľ áŤááą - á¨áá áááá á áŠá áá¤á áĽááááááá˘
- á áľááááá áááľ ááá¨áĄ. á áĽá áááł áĽááá áá
- á¨á°áááá áŠá áá¤á áá° lovelace-UI á ááĽáŽá˝ áŤááľ áá áą
- type: iframe
id: graf_water_hourly
url: "http://192.168.10.200:3000/d-solo/rZARemQWk/water?orgId=1&panelId=2&from=now-2d&to=now&theme=light"
áĽáŁááá á¨áá ááá (áŤáááľ 2 áááľ) á¨á°ááá á¨á áĽáá áá áĽáá á áłá˝áŚááľ á áá áśá˝ ááľáĽ á ááááá áἠáá áá˘
á°áá á¨áĄ áá á áááľááᢠáŁáááľ 2 áááľ ááľáĽ áá áá á áá°á áááŠá, áľááá áááá áá á ááľ ááŤá áĽáť ááłáŁá.
á¨áľááá áá áł áĽáá°ááá°á ááŤá´ á ááá°ááŠáᣠá°á¨á ááľáá ááá áĽááá°á á áááá˝á˘ áľááá
ᣠá¨áááłá áááł ááá ááĽáá á ááá ááłá áĽá°áŁáá ᣠá áá
áá á áĄá á¤áśá˝ ááľáĽá˘ áá ááá˝ á¨á°áááĄáľ á¨áá áĽáá°á°áááá á á°ááłáłá ááááľ áá. á¨ááłáŤ á ááŤáŽá˝ á¨áá¨á°ááľ áá¸á:
áá
áá áł áá
á áááľááá˘
áľááá
ᣠáľá ááá áááŞáŤá˘ á áá
ááŤá áá áááá áá áŁá á áá áŁá áá ááłá. á á ááá áááą á¨á á
ááá áááá áĽá áá
áá áááł áá ááááłá.
á¨ááłáŠáľ ááá ááŤáá˝ á°áááá áá¸áᢠá áá¤áá á ááááľ ááĽáĽ áá ááááłááľ áĽá ááááŽá˝á áĽá ááá á á ááľ á¨á°áá°á ááĽáĽ áá áá¨áľ áá˝ááá˘
á ááŤáłáá áááł, á á áŁáľ ááľáĽ áŤá áĽááľ ááἠá ááá á¨á. á áŁá áá áł áá (á¨á°á¨á ááľááŽá˝ áá áŤáá ááŤá á á°áá¨) á¨á ááá ááá¨á á áá á ááá˝ áá á áá°áá, áá á 00:00. áĽáááŤá˘ á¨á ááá á¨á፠ááá˝ á ááľáá áá ááľá á°áľáá. áľááá á¨á áłá áĽá á¨áĽááľ á°áá á¨áŚá˝ á¨á°ááŤáá áá á áľá°á፠áľáá˝ ááłáᢠáĽáá´áľ áĽáá°áá¸áá áĽáľáŤá áľá¨áľá˘
ááá á˝áá á áááá ááá°áśá˝ á áľááá ááľáŤáľ á áááťá áá. áĽáááłá áá á¨á°ááľ / áá / áłáááľ ááááľ áá áá, ááá áá á¨áአááááľ á áĽáŤááłááą áá á¨á°áᨠáá. InfluxDB ááľáŤáľ á¨áá˝áá á áĽáŠá ááá°áśá˝ áĽáť ááᢠáĽáľáŤáá áľá¨áľáŁ á ááááź á 30 áááľ á¨á°áá°á á¨áá ááá°áľ ááááááľ á á áá¸áᢠá áᣠáá áłá á áááą ááľáĽ áľáá˝ áááłááá áĽá á ááááš á¨ááŤáľ áá á áľááá á ááááąáᢠááá áá áá ááá ááĽá áá áĽáá° ááłáŤ áááŞáŤ áľáááľáĽáŁ á áá ááłá áá á°á á ááá˘
á˘áŤááľ áááľ áááľááá˝á á áŤááá˘
- á áááá áá áłáá˝ áá áááľáá á áĽá áĽáŤáľáá á á¨áłáááą áĽáť áááľáĄá˘ á áááľ ááľáĽ 52 áłáááłá áá ἠá¤áśá˝ á áŁá áĽáŠ ááá ááłáŤá
- áááá áááł áĽáŤáąá áĽáá° áá´ ááĽá 2 ááá አáĽá ááŤááá áááŤáአááŤáá˝ áĽáť áá ááᢠá áŁá áľáááá áááľá ááᢠáááááá áŤáááá á ááľ áá áłáá˝á áĽááłá áá°áŤá¨áĽ áá˝áá - grafana áŤáá ááľá¨á áá˝ááá˘
áá°áá°ááŤ
ááá áĽáá°áá á ááá áᣠáá áĽááá á á áááľ áá áłáá˝ áĽááłááᢠá áááľ á á¨áá°á ááĽááľ áĽá ááá ááá áĽá¨á°áá¨á¨ áááá áŤáłáŤá. áľáááľ áĽá áá á áᏠáľáá˝ á á áá áá ááá áááŤáᢠá áááł áááľ áá á¨á¤á°á°áĽ áá á áĽáŽ áááľáŤáľ áááŤá. ááá áá á áá áŁáá á¨ááἠááááľ áĽááłá ᣠá ááłáĄ ááľáĽ áŤáá áľáá áĽá ááá¨áłáľ á¨áááťá á°á ááľááá á áľááá áá°ááťá á¨áááł ááľá áĽá¨á°ááá ááá˘
á ááŽááŤáááľ áá° 20 áááľ á¨áá á áĽáŤ áĽááá á¨áá¨á ááśá˝ áá á áá°áááááᢠáľááá
ᣠá¨áá áłáłá¤á ááŤá á áŁá á¨á°ááłá°á áĽá ááá¨áłáľ á¨áááťá ááá áááľááᢠááá ááá á°áááŻá
á áááą ááľáĽ á¨á¤áááľáŞá áááłá á á áťáá. áĽáá° á áááłá°á áá á á áá áá ááá ááŤá áá á¨áĽ á áá˝ááᢠá ááľ á¤áľá˛á¤á120 ááľá ááˇáᣠáááá á°áá á ááľáŁáľ á áŠá á˛á°á¨áľ á˝áá á áá áľá˘ ááá, áá á ááá ááአá¨áá á á˝áá áááľ á áááłáá - ááŤáá˝ áĽáá° áá á á°ááłáłá ááááľ ááááŁá.
á áá
á˝áá ááľáĽ áĽá áŤá´ á¨áá¨ááłá¸áá áĽáááŤá á ááŤá¨áŚá˝ á°áĽáťá¸áááᢠá áĽááá áááľ á¨áááááá á¨áá¨á á á°áŁá°áĽ áĽá áĽááłá á¨áá°áŤááľ ááá˝ ááááśá˝ á áᢠá á áľá°áŤá¨áśáš ááľáĽ áľá áĽáą ááááŠá, á áŁá ááááľ áĽááŤáá. ááᢠáľá˝áśá˝á áĽá á áłá˛áľ ááłáŚá˝á á á°áľáł áĽá°áŁááᢠá¨áá áŤáá á˝áá á ááľá á°á áĽáá°áá¨áłá á°áľá á á°áááá.
ááá: hab.com