IUNGO Forum
Het Forum is voor IUNGO gebruikers en wordt ook vooral beantwoord door andere IUNGO gebruikers.
IUNGO maakt zelf beperkt gebruik van het Forum.
Specifieke vragen of storingen dus graag melden via de mail naar ons info adres.
Het Forum is voor IUNGO gebruikers en wordt ook vooral beantwoord door andere IUNGO gebruikers.
IUNGO maakt zelf beperkt gebruik van het Forum.
Specifieke vragen of storingen dus graag melden via de mail naar ons info adres.
Mijn historische productie van de zonnepanelen wil ik graag uitlezen. Daarna op mijn laptop analyseren. Daarmee wil ik een beslissing maken over de aanschaf van extra zonnepanelen. Alles via Python, want daarmee ben ik bekend
De eerste stap is om de historische meterstanden van de slimme meterstanden uit te lezen. Dat lukt. Dank aan de posts op het forum. Heb dus de `oids` achterhaald via het CURL commando.
curl -X POST -d "{""seq"":1,""method"":""objmgr_list_objects""}" http://192.168.1.251/iungo/api_request
Via Python kan ik zo data van de slimme meter ophalen en plotten.
oid = '538d72d9' # engergy-dsmr4 t_request_from = str(int(time.mktime(datetime.datetime(2023, 8, 21, 2, 0, 0).timetuple()))) t_request_till = str(int(time.mktime(datetime.datetime(2023, 8, 22, 1, 55, 0).timetuple()))) all_t = [] for prop in ['T1', 'T2']: data_req = '{"seq":1,"method":"datalog_get","arguments":{"t1": ' + t_request_from + ',"t2":' + t_request_till + ',"oid":"' + oid +'", "prop": "' + prop + '"}}' respons = requests.post(url, data=data_req, verify = cafile).json() data = respons['rv']['data'] df_data = pd.DataFrame(respons['rv']['data'], columns=['time_in_sec', prop]) df_data['date_time'] = pd.to_datetime(df_data.time_in_sec, unit='s') df_data.pop('time_in_sec') df_data.set_index('date_time', inplace=True) all_t.append(df_data) df_T = pd.concat(all_t, axis=1) delta_T1 = df_T.T1.iloc[-1] - df_T.T1.iloc[0] delta_T2 = df_T.T2.iloc[-1] - df_T.T2.iloc[0] for col in df_T.columns: df_T[f'{col}_delta'] = df_T[col] - df_T[col].iloc[0] df_T[f'T_delta'] = df_T.T1_delta + df_T.T2_delta fig, ax = plt.subplots(1) df_T.plot(y='T1_delta', ax=ax, label=f'T1 delta:{df_T.T1_delta.iloc[-1]:0.2f}') df_T.plot(y='T2_delta', ax=ax, label=f'T2 delta:{df_T.T2_delta.iloc[-1]:0.2f}') df_T.plot(y='T_delta', ax=ax, label=f'T delta:{df_T.T_delta.iloc[-1]:0.2f}')
De tweede stap is om de historische productie van de zonnepalen uit te lezen. Ik heb in de meterkast een bruto productiemeter geïnstalleerd. De `oid` heb ik. Mijn vraag: Wat vul ik in bij `prop`? Ik heb goed gezocht, maar kan de documentatie van de API nergens vinden. Heb daarom wat geprobeerd: 'T', '' of None. Maar dat werkt niet.
oid_sun = 'bef04aef' # zon prop = 'T' data_req = '{"seq":1,"method":"datalog_get","arguments":{"t1": ' + t_request_from + ',"t2":' + t_request_till + ',"oid":"' + oid_sun +'", "prop": "' + prop + '"}}' respons = requests.post(url, data=data_req, verify = cafile).json()
Volgens mij moet je "export" gebruiken.
Bedankt voor je reactie. Ik krijg met 'import' nu het beste resultaat. Kwestie van proberen.
Waar komt de screenshot eigenlijk vandaan? Ik zoek nog steeds naar de handleiding van de API.
Hi Hendrik
Via de control pagina kun je alle info vinden.
Voor jou is de link 🙂
http://192.168.1.251/iungo/control
Links boven staat een tab API
Import of export is maar net hoe je bruto productie meter is aangesloten. Vaak worden de kWh meters verkeerd aangesloten en dan is import de opbrengst van je zonnepanelen