Integracja falownika solplanet z Home Assistant

Cześć, mam ten falownik od wczoraj i chce dodać do HA zgodnie z opisem jednak pojawia się błąd, a nie jestem biegły w HA

bad indentation of a mapping entry (2:13)

1 | - platform: rest
2 | resource: http://192.168.48.6:8484/getde
-----------------^

wersja HA najnowsza

Witam.
Najpierw sprawdź co w przeglądarce wyrzuca ci ten link
http://192.168.48.6:8484/getde
Następnie jeśli pojawiają się wartości typu:

{“flg”:1,“tim”:“20240518095040”,“tmp”:408,“fac”:5003,“pac”:6038,“sac”:6038,“qac”:0,“eto”:201182,“etd”:107,“hto”:8296,“pf”:99,“wan”:0,“err”:0,“vac”:[2372,2424,2380],“iac”:[84,84,84],“vpv”:[4347,4566],“ipv”:[719,639],“str”:}

To dalej według tych instrukcji.

Jeśli nie masz w przeglądarce nic. Próbuj jak tutaj:

Tak wywala dane:

{“flg”:0,“tim”:“20240518091648”,“tmp”:410,“fac”:4995,“pac”:3706,“sac”:743,“qac”:735,“eto”:424,“etd”:42,“hto”:20,“pf”:0,“wan”:0,“err”:0,“vac”:[2361,2340,2334],“iac”:[23,3,85],“vpv”:[3766,3455],“ipv”:[510,510],“str”:}

W sumie nie wiem na jakim etapie jesteś z HA. Jeśli masz dodatek typu file editor lub musisz go poprostu zainstalować. W nim dokonać całej konfiguracji. Nie robimy tego w konfiguracji dashboardu. To tylko moje przypuszczenia. W sumie ja też ciągle się uczę.

HA u mnie działa już z dwa lata, kilka intergracji mam ale nic wielkiego. FileEditor też mam. Zrobiłem dokładnie z opisem ale HA nie przyjmuje tej konfiguracji

Masz niewłaściwe formatowanie tekstu - spacje na początku lini mają znaczenie.

W pliku /homeassistant/configuration.yaml
wklej i zmień na twój adres:

sensor:
  - platform: rest
    resource: http://..........
    scan_interval: "00:00:10"
    name: SP10KW Moc
    value_template: "{{ value_json.pac | float / 1000 | round(2) }}"
    unit_of_measurement: "kW"
  - platform: rest
    resource: http://..................
    scan_interval: "00:01:00"
    name: SP10KW Suma
    device_class: energy
    state_class: total_increasing
    value_template: "{{ value_json.eto | float / 10}}"
    unit_of_measurement: "kWh"
  - platform: rest
    resource: http://.......
    scan_interval: "00:01:00"
    name: SP10KW Dziś
    device_class: energy
    state_class: total_increasing
    value_template: "{{ value_json.etd | float / 10}}"
    unit_of_measurement: "kWh"
  - platform: rest
    resource: http://.......
    scan_interval: "00:01:00"
    name: SP10KW Temp
    value_template: "{{ value_json.tmp | float / 10}}"
    unit_of_measurement: "°C"
  - platform: rest
    resource: http://.......
    scan_interval: "00:00:10"
    name: SP10KW
    json_attributes:
      - flg
      - tim
      - pac
      - etd
      - hto
      - eto
      - vac
      - tmp
      - iac
      - vpv
      - ipv
      - fac
      - err
    value_template: "{{ value_json.flg}}"
  - platform: template
    sensors:
      falownik_vac3:
        friendly_name: "SP10KW ACF3-V"
        value_template: "{{ (state_attr('sensor.sp10kw', 'vac')[0] | float(0) / 10)}}"
        unit_of_measurement: "V"
      falownik_vac1:
        friendly_name: "SP10KW ACF1-V"
        value_template: "{{ (state_attr('sensor.sp10kw', 'vac')[1] | float(0) / 10)}}"
        unit_of_measurement: "V"
      falownik_vac2:
        friendly_name: "SP10KW ACF2-V"
        value_template: "{{ (state_attr('sensor.sp10kw', 'vac')[2] | float(0) / 10)}}"
        unit_of_measurement: "V"
      falownik_iac3:
        friendly_name: "SP10KW ACF3-A"
        value_template: "{{ (state_attr('sensor.sp10kw', 'iac')[0] | float(0) / 10)}}"
        unit_of_measurement: "A"
      falownik_iac1:
        friendly_name: "SP10KW ACF1-A"
        value_template: "{{ (state_attr('sensor.sp10kw', 'iac')[1] | float(0) / 10)}}"
        unit_of_measurement: "A"
      falownik_iac2:
        friendly_name: "SP10KW ACF2-A"
        value_template: "{{ (state_attr('sensor.sp10kw', 'iac')[2] | float(0) / 10)}}"
        unit_of_measurement: "A"
      falownik_vpv1:
        friendly_name: "SP10KW PV1-V"
        value_template: "{{ (state_attr('sensor.sp10kw', 'vpv')[0] | float(0) / 10)}}"
        unit_of_measurement: "V"
      falownik_vpv2:
        friendly_name: "SP10KW PV2-V"
        value_template: "{{ (state_attr('sensor.sp10kw', 'vpv')[1] | float(0) / 10)}}"
        unit_of_measurement: "V"
      falownik_ipv1:
        friendly_name: "SP10KW PV1-A"
        value_template: "{{ (state_attr('sensor.sp10kw', 'ipv')[0] | float(0) / 100)}}"
        unit_of_measurement: "A"
      falownik_ipv2:
        friendly_name: "SP10KW PV2-A"
        value_template: "{{ (state_attr('sensor.sp10kw', 'ipv')[1] | float(0) / 100)}}"
        unit_of_measurement: "A"
      falownik_hto:
        friendly_name: "SP10KW Czas Pracy"
        value_template: "{{ (state_attr('sensor.sp10kw', 'hto') | float(0) / 10)}}"
        unit_of_measurement: "h"

i teraz zapisało się bez błędu, zaraz będę testował dalej

Ok niby dodało ale:
statistics_not_defined

  • sensor.sp10kw_dzis

statistics_not_defined

  • sensor.sp10kw_suma

i pytanie czy ktoś opracował jak dodać magazyn energii ?

Masz na myśli dodanie do Energia jeśli tak to trzeba odczekać aby statystyki zaczęły działać.

już coś pokazuje, tylko w sekcji energia podać “dziś” czy “sumę” ?

Bez znaczenia ja mam produkcję dzienną czyli dziś. Druga sprawa wiedz o tym że jak falownik pójdzie spać to wartości zmienią się na nieznane niedostępne. Pomocne jest przepuszczenie każdej encji przez pomocnika ostatnio zaktualizowane (połączenie stanu kilku…) by np w dashboardzie było widoczne ile dziś wyprodukowało.

A czy podpowie ktos jak wpisac do pliku zeby mi odczytywalo napiecie z poszczegolnych faz. bo wypluwa mi takie cos:

{"flg":"1","tim":"20240520110654","tmp":"370","fac":"4998","pac":"1981","sac":"1981","qac":"0","ett":"14820","etd":"34","hht":"2845","pf":"99","err":"0","ac":[{"va1":"2474", "ia1":"27"},{"va2":"2468", "ia2":"26"},{"va3":"2449", "ia3":"27"}],"dc":[{"vp1":"1460", "ip1":"832"},{"vp2":"1601", "ip2":"484"}]}

i jak teraz wpisac odczytac to:

ac":[{"va1":"2474", "ia1":"27"},{"va2":"2468", "ia2":"26"},{"va3":"2449", "ia3":"27"}],
- platform: template
  sensors:
    falownik_vac3:
      friendly_name: "Szopa ACF3-V"
      value_template: "{{ (state_attr('sensor.szopa', 'va1')[0] | float(0) / 10)}}"
      unit_of_measurement: "V"
    falownik_vac1:
      friendly_name: "Szopa ACF1-V"
      value_template: "{{ (state_attr('sensor.szopa', 'va2')[1] | float(0) / 10)}}"
      unit_of_measurement: "V"
    falownik_vac2:
      friendly_name: "Szopa ACF2-V"
      value_template: "{{ (state_attr('sensor.szopa', 'va3')[2] | float(0) / 10)}}"
      unit_of_measurement: "V"

Spróbuj w tym sensie.

value_template: "{{ (state_attr('sensor.szopa', 'ac')['va1'] | float(0) / 10)}}"

Wywala blad

I ta linijka w edytorze jest na czarno, a nie jak pozostale na zielono

Skopiuj ten template do trybu developer tam masz szablon. I testuj.Czasem jest brak spacji itd.

- platform: template
  sensors:
    falownik_vac3:
      friendly_name: "Szopa ACF3-V"
      value_template: "{{ (state_attr('sensor.szopa', 'ac')[0].va1 | float(0) / 10)}}"
      unit_of_measurement: "V"`

Witam, czy ktoś może pomóc rozszyfrować co dostaję z device 4? Mam podłączony magazyn energii cześć informacji dotyczy baterii z tym że w dokumentacji do której kiedyś miałem wgląd te wartości miały w oznaczeniach “bat”. Na kilku forach znalazłem tylko zrzuty, bez informacji co który oznacza:( {“flg”:1,“tim”:“20240709150317”,“ppv”:6946,“etdpv”:387,“etopv”:78660,“cst”:10,“bst”:3,“eb1”:64487,“wb1”:65503,“vb”:53850,“cb”:2,“pb”:107,“tb”:250,“soc”:99,“soh”:0,“cli”:0,“clo”:220,“ebi”:51,“ebo”:39,“eaci”:393216,“eaco”:393216,“vesp”:2398,“cesp”:0,“fesp”:6,“pesp”:3,“rpesp”:0,“etdesp”:0,“etoesp”:0,“charge_ac_td”:0,“charge_ac_to”:0}
Czy poniższe jest prawidłową interpretacją?

  • flg: flaga, która informuje o statusie lub trybie urządzenia.
  • tim: datę i godzinę zapisu danych w formacie “YYYYMMDDHHMMSS”.
  • ppv: prawdopodobnie całkowita moc produkcji urządzenia (w watach) w chwili zapisu danych.
  • etdpv i etopv: prawdopodobnie ilość energii przesyłanej do/z baterii po stronie przetwornicy DC (w watogodzinach).
  • cst: prawdopodobnie stan ładowania baterii.
  • bst: prawdopodobnie stan akumulacji baterii, prawdopodobnie wyrażony w procentach.
  • eb1 i wb1: prawdopodobnie bilans energii akumulatora AC i DC, odpowiednio.
  • vb: prawdopodobnie napięcie baterii.
  • cb: prawdopodobnie prąd ładowania baterii.
  • pb: prawdopodobnie prąd rozładowywania baterii.
  • tb: prawdopodobnie temperatura baterii.
  • soc: stan naładowania baterii w procentach.
  • soh: prawdopodobnie stan “zdrowia” baterii w procentach.
  • cli i clo: prawdopodobnie limit ładowania i rozładowywania baterii, odpowiednio.
  • ebi i ebo: prawdopodobnie bilans energii na początku i końcu okresu zapisu danych, odpowiednio.
  • eaci i eaco: ?
  • vesp: prawdopodobnie napięcie na stronie DC.
  • cesp: prawdopodobnie prąd ładowania na stronie DC.
  • fesp: to chyba awaria po stronie DC.
  • pesp: ?
  • rpesp: ?
  • etdesp i etoesp: prawdopodobnie ilość energii przesyłanej do/z magazynu po stronie DC, odpowiednio.
  • charge_ac_td i charge_ac_to: czas ładowania z sieci AC, gdzie charge_ac_td to czas potrzebny do osiągnięcia napięcia docelowego, a charge_ac_to to całkowity czas ładowania.

Czy choć częściowo moje domysły są prawdą?

Możesz spróbować się połączyć lokalnie z falownikiem nie wiem czy to jeszcze działa i powinno być opisane wszystko.
https://forum.arturhome.pl/t/integracja-falownika-solplanet-z-home-assistant/4333/43?u=mirosław_kozieł

Tak jest opisane ale dla device 2 tam są informacje dotyczące raczej falownika z device 4 można uzyskać dane o baterii (chyba, przynajmniej tak zrozumiałem). W apce jest np. SOC w device 4 również co by potwierdzało to co zrozumiałem i że apka korzysta z tych danych, przynajmniej z częściowo.

W sumie masz rację nie ma za bardzo informacji na temat hybrydowego. Znalazłem tylko coś takiego jest część opisana.
https://github.com/Fufs/pysolplanet/wiki/API-Reference#get-getdevcgi—get-device-details