Goodwe SEMS Portal API

Home Assistant, Arduino, SDS, Raspberry, Linux, vzdálený dohled, automatizace, měření, opensource, closedsource, hotová řešení, DIY, stavebnice, komponenty, software, postupy, návody, schémata, rady, zkušenosti ...
MichalSix
Příspěvky: 38
Registrován: pon pro 27, 2021 11:27 pm

Goodwe SEMS Portal API

Příspěvek od MichalSix »

Udělal jsem aplikaci, která sbírá data přes API z Goodwe cloudu, nicméně, narazil jsem na to, že jejich data jsou obrovská a nepřehledná. Co mě štve je to, že někteří uživatelé mají PowerFlow data a někteří ne. Takže pro ty, co je nemají, musím vymyslet, jak z toho vydolovat to, co dává smysl - potřebuji:

- výroba z panelů (W)
- zátež (W)
- grid (W) plus/minus
- baterie (W) plus/minus

Problém je, že ať se snažím jak se snažím, nikdy mi nevychází součet všech dat, aby to dávalo smysl. Například když vyrábí 5000W, zátěž je 4500W, tak by 500W mělo jít do baterie a grid 0. Zajímá mě, zda se tímto někdo v rámci automatizace nezabýval a nemá to již vyřešené.

Zkoušel jsem psát na support, jenže mi napsali, že dokumentace k API podléhá NDA, nechápu proč.

Zde je výsledek volání endpointu:
https://eu.semsportal.com/api/v2/PowerS ... rstationId

Kód: Vybrat vše

{
	"language": "en",
	"function": [
		"ADD",
		"UNBIND"
	],
	"hasError": false,
	"msg": "success",
	"code": "0",
	"data": {
		"info": {
			"powerstation_id": "xxxx",
			"time": "08/28/2022 23:59:21",
			"date_format": "MM.dd.yyyy",
			"date_format_ym": "MM.yyyy",
			"stationname": "xxxx",
			"address": "xxxx",
			"owner_name": null,
			"owner_phone": null,
			"owner_email": "xxxx",
			"battery_capacity": 10.8,
			"turnon_time": "07/21/2022 00:00:00",
			"create_time": "07/21/2022 00:18:26",
			"capacity": 7.5,
			"longitude": 5555,
			"latitude": 5555,
			"powerstation_type": "Residential",
			"status": 1,
			"is_stored": false,
			"is_powerflow": false,
			"charts_type": 1,
			"has_pv": true,
			"has_statistics_charts": true,
			"only_bps": false,
			"only_bpu": false,
			"time_span": -2.0,
			"pr_value": "",
			"org_code": "D550001002",
			"org_name": "BC Enegeneering s.r.o."
		},
		"kpi": {
			"month_generation": 356.2,
			"pac": 0.0,
			"power": 9.5,
			"total_power": 460.4,
			"day_income": 47.5,
			"total_income": 2302.0,
			"yield_rate": 5.0,
			"currency": "CZK"
		},
		"powercontrol_status": 0,
		"images": [],
		"weather": {
			"HeWeather6": [
				{
					"daily_forecast": [
						{
							"cond_code_d": "102",
							"cond_code_n": "150",
							"cond_txt_d": "少云",
							"cond_txt_n": "晴",
							"date": "2022-08-29",
							"time": "2022-08-29 00:00:00",
							"hum": null,
							"pcpn": null,
							"pop": null,
							"pres": null,
							"tmp_max": "23",
							"tmp_min": "12",
							"uv_index": null,
							"vis": null,
							"wind_deg": null,
							"wind_dir": null,
							"wind_sc": null,
							"wind_spd": null
						},
						{
							"cond_code_d": "100",
							"cond_code_n": "153",
							"cond_txt_d": "晴",
							"cond_txt_n": "晴间多云",
							"date": "2022-08-30",
							"time": "2022-08-30 00:00:00",
							"hum": null,
							"pcpn": null,
							"pop": null,
							"pres": null,
							"tmp_max": "22",
							"tmp_min": "14",
							"uv_index": null,
							"vis": null,
							"wind_deg": null,
							"wind_dir": null,
							"wind_sc": null,
							"wind_spd": null
						},
						{
							"cond_code_d": "102",
							"cond_code_n": "153",
							"cond_txt_d": "少云",
							"cond_txt_n": "晴间多云",
							"date": "2022-08-31",
							"time": "2022-08-31 00:00:00",
							"hum": null,
							"pcpn": null,
							"pop": null,
							"pres": null,
							"tmp_max": "19",
							"tmp_min": "11",
							"uv_index": null,
							"vis": null,
							"wind_deg": null,
							"wind_dir": null,
							"wind_sc": null,
							"wind_spd": null
						},
						{
							"cond_code_d": "103",
							"cond_code_n": "150",
							"cond_txt_d": "晴间多云",
							"cond_txt_n": "晴",
							"date": "2022-09-01",
							"time": "2022-09-01 00:00:00",
							"hum": null,
							"pcpn": null,
							"pop": null,
							"pres": null,
							"tmp_max": "18",
							"tmp_min": "10",
							"uv_index": null,
							"vis": null,
							"wind_deg": null,
							"wind_dir": null,
							"wind_sc": null,
							"wind_spd": null
						},
						{
							"cond_code_d": "101",
							"cond_code_n": "101",
							"cond_txt_d": "多云",
							"cond_txt_n": "多云",
							"date": "2022-09-02",
							"time": "2022-09-02 00:00:00",
							"hum": null,
							"pcpn": null,
							"pop": null,
							"pres": null,
							"tmp_max": "18",
							"tmp_min": "11",
							"uv_index": null,
							"vis": null,
							"wind_deg": null,
							"wind_dir": null,
							"wind_sc": null,
							"wind_spd": null
						},
						{
							"cond_code_d": "302",
							"cond_code_n": "153",
							"cond_txt_d": "雷阵雨",
							"cond_txt_n": "晴间多云",
							"date": "2022-09-03",
							"time": "2022-09-03 00:00:00",
							"hum": null,
							"pcpn": null,
							"pop": null,
							"pres": null,
							"tmp_max": "19",
							"tmp_min": "12",
							"uv_index": null,
							"vis": null,
							"wind_deg": null,
							"wind_dir": null,
							"wind_sc": null,
							"wind_spd": null
						},
						{
							"cond_code_d": "999",
							"cond_code_n": "999",
							"cond_txt_d": "-",
							"cond_txt_n": "-",
							"date": "2022-09-04",
							"time": "2022-09-04 00:00:00",
							"hum": "-",
							"pcpn": "-",
							"pop": "-",
							"pres": "-",
							"tmp_max": "-",
							"tmp_min": "-",
							"uv_index": "-",
							"vis": "-",
							"wind_deg": "-",
							"wind_dir": "--",
							"wind_sc": "--",
							"wind_spd": "-"
						}
					],
					"basic": null,
					"update": null,
					"status": "ok"
				}
			]
		},
		"inverter": [
			{
				"sn": "xxxx",
				"dict": {
					"left": [
						{
							"isHT": false,
							"key": "dmDeviceType",
							"value": "GW10K-ET",
							"unit": "",
							"isFaultMsg": 0,
							"faultMsgCode": 0
						},
						{
							"isHT": false,
							"key": "serialNum",
							"value": "xxxx",
							"unit": "",
							"isFaultMsg": 0,
							"faultMsgCode": 0
						},
						{
							"isHT": false,
							"key": "laCheckcode",
							"value": "038113",
							"unit": "",
							"isFaultMsg": 0,
							"faultMsgCode": 0
						},
						{
							"isHT": false,
							"key": "capacity",
							"value": "10",
							"unit": "kW",
							"isFaultMsg": 0,
							"faultMsgCode": 0
						},
						{
							"isHT": false,
							"key": "innerTemp",
							"value": "29.4",
							"unit": "℃",
							"isFaultMsg": 0,
							"faultMsgCode": 0
						},
						{
							"isHT": false,
							"key": "ouptputPower",
							"value": "157",
							"unit": "W",
							"isFaultMsg": 0,
							"faultMsgCode": 0
						},
						{
							"isHT": false,
							"key": "outputV",
							"value": "243.7/244.6/244",
							"unit": "V",
							"isFaultMsg": 0,
							"faultMsgCode": 0
						},
						{
							"isHT": false,
							"key": "bakupOutput",
							"value": "15",
							"unit": "W",
							"isFaultMsg": 0,
							"faultMsgCode": 0
						}
					],
					"right": [
						{
							"isHT": false,
							"key": "dcVandC1",
							"value": "0/0",
							"unit": "V/A",
							"isFaultMsg": 0,
							"faultMsgCode": 0
						},
						{
							"isHT": false,
							"key": "dcVandC2",
							"value": "0/0",
							"unit": "V/A",
							"isFaultMsg": 0,
							"faultMsgCode": 0
						},
						{
							"isHT": false,
							"key": "StatusOfBattery",
							"value": "287.1/0.4/115",
							"unit": "V/A/W",
							"isFaultMsg": 0,
							"faultMsgCode": 0
						},
						{
							"isHT": false,
							"key": "batteryStatus",
							"value": "DischargingOfBattery",
							"unit": "",
							"isFaultMsg": 0,
							"faultMsgCode": 0
						},
						{
							"isHT": false,
							"key": "warnBMS",
							"value": "Normal",
							"unit": "",
							"isFaultMsg": 0,
							"faultMsgCode": 0
						},
						{
							"isHT": false,
							"key": "chargeClimitBMS",
							"value": "18",
							"unit": "A",
							"isFaultMsg": 0,
							"faultMsgCode": 0
						},
						{
							"isHT": false,
							"key": "dischargeClimitBMS",
							"value": "18",
							"unit": "A",
							"isFaultMsg": 0,
							"faultMsgCode": 0
						},
						{
							"isHT": false,
							"key": "SOH",
							"value": "100",
							"unit": "%",
							"isFaultMsg": 0,
							"faultMsgCode": 0
						},
						{
							"isHT": false,
							"key": "verFB",
							"value": "819/0",
							"unit": "",
							"isFaultMsg": 0,
							"faultMsgCode": 0
						}
					]
				},
				"is_stored": true,
				"name": "xxxx",
				"in_pac": 0.0,
				"out_pac": 0.0,
				"eday": 9.5,
				"emonth": 346.7,
				"etotal": 460.4,
				"status": 1,
				"turnon_time": "07/21/2022 00:19:57",
				"releation_id": "xxxx",
				"type": "GW10K-ET",
				"capacity": 10.0,
				"d": {
					"pw_id": "xxxx",
					"capacity": "10kW",
					"model": "GW10K-ET",
					"output_power": "157W",
					"output_current": "0.4A",
					"grid_voltage": "243.7V/244.6V/244V",
					"backup_output": "243.4V/15W",
					"soc": "14%",
					"soh": "100%",
					"last_refresh_time": "08.28.2022 23:58:55",
					"work_mode": "Wait Mode",
					"dc_input1": "0V/0A",
					"dc_input2": "0V/0A",
					"battery": "287.1V/0.4A/115W",
					"bms_status": "DischargingOfBattery",
					"warning": "Normal",
					"charge_current_limit": "18A",
					"discharge_current_limit": "18A",
					"firmware_version": 819.0,
					"creationDate": "08/29/2022 05:58:55",
					"eDay": 9.5,
					"eTotal": 460.4,
					"pac": 0.0,
					"hTotal": 540.0,
					"vpv1": 0.0,
					"vpv2": 0.0,
					"vpv3": null,
					"vpv4": null,
					"ipv1": 0.0,
					"ipv2": 0.0,
					"ipv3": null,
					"ipv4": null,
					"vac1": 243.7,
					"vac2": 244.6,
					"vac3": 244.0,
					"iac1": 0.4,
					"iac2": 0.5,
					"iac3": 0.3,
					"fac1": 50.0,
					"fac2": 50.0,
					"fac3": 50.0,
					"istr1": 0.0,
					"istr2": 0.0,
					"istr3": null,
					"istr4": null,
					"istr5": null,
					"istr6": 6.2,
					"istr7": null,
					"istr8": 8.3,
					"istr9": null,
					"istr10": 1.2,
					"istr11": null,
					"istr12": 0.0,
					"istr13": 0.0,
					"istr14": 0.0,
					"istr15": 0.0,
					"istr16": 0.0
				},
				"it_change_flag": false,
				"tempperature": 29.4,
				"check_code": "038113",
				"next": null,
				"prev": null,
				"next_device": {
					"sn": null,
					"isStored": false
				},
				"prev_device": {
					"sn": null,
					"isStored": false
				},
				"invert_full": {
					"ct_solution_type": 0,
					"cts": null,
					"sn": "xxxx",
					"check_code": "038113",
					"powerstation_id": "xxxx",
					"name": "xxxx",
					"model_type": "GW10K-ET",
					"change_type": 0,
					"change_time": 0,
					"capacity": 10.0,
					"eday": 9.5,
					"iday": 62.5,
					"etotal": 460.4,
					"itotal": 2319.0,
					"hour_total": 540.0,
					"status": 1,
					"turnon_time": 1658333997080,
					"pac": 0.0,
					"tempperature": 29.4,
					"vpv1": 0.0,
					"vpv2": 0.0,
					"vpv3": null,
					"vpv4": null,
					"ipv1": 0.0,
					"ipv2": 0.0,
					"ipv3": null,
					"ipv4": null,
					"vac1": 243.7,
					"vac2": 244.6,
					"vac3": 244.0,
					"iac1": 0.4,
					"iac2": 0.5,
					"iac3": 0.3,
					"fac1": 50.0,
					"fac2": 50.0,
					"fac3": 50.0,
					"istr1": 0.0,
					"istr2": 0.0,
					"istr3": null,
					"istr4": null,
					"istr5": null,
					"istr6": 6.2,
					"istr7": null,
					"istr8": 8.3,
					"istr9": null,
					"istr10": 1.2,
					"istr11": null,
					"istr12": 0.0,
					"istr13": 0.0,
					"istr14": 0.0,
					"istr15": 0.0,
					"istr16": 0.0,
					"last_time": 1661723935113,
					"vbattery1": 287.1,
					"ibattery1": 0.4,
					"pmeter": -53.0,
					"soc": 14.0,
					"soh": 100.0,
					"bms_discharge_i_max": 18.0,
					"bms_charge_i_max": 18.0,
					"bms_warning": 0,
					"bms_alarm": 0,
					"battary_work_mode": 2,
					"workmode": 1,
					"vload": 243.4,
					"iload": 0.2,
					"firmwareversion": 8.0,
					"bmssoftwareversion": 0.0,
					"pbackup": 15.0,
					"seller": 0.11,
					"buy": 8.61,
					"yesterdaybuytotal": 393.9453,
					"yesterdaysellertotal": 4.33625,
					"yesterdayct2sellertotal": null,
					"yesterdayetotal": 450.9,
					"yesterdayetotalload": 832.7,
					"yesterdaylastime": 0,
					"thismonthetotle": 346.7,
					"lastmonthetotle": 104.2,
					"ram": 19.0,
					"outputpower": 157.0,
					"fault_messge": 0,
					"battery1sn": null,
					"battery2sn": null,
					"battery3sn": null,
					"battery4sn": null,
					"battery5sn": null,
					"battery6sn": null,
					"battery7sn": null,
					"battery8sn": null,
					"pf": 0.0,
					"pv_power": 0.0,
					"reactive_power": 0.0,
					"leakage_current": null,
					"isoLimit": null,
					"isbuettey": true,
					"isbuetteybps": false,
					"isbuetteybpu": false,
					"isESUOREMU": false,
					"backUpPload_S": 5.0,
					"backUpVload_S": 245.1,
					"backUpIload_S": 0.2,
					"backUpPload_T": 3.0,
					"backUpVload_T": 243.8,
					"backUpIload_T": 0.2,
					"eTotalBuy": 0.4,
					"eDayBuy": 0.0,
					"eBatteryCharge": 16.3,
					"eChargeDay": 3.0,
					"eBatteryDischarge": 21.6,
					"eDischargeDay": 5.2,
					"battStrings": 9.4,
					"meterConnectStatus": 273.0,
					"mtActivepowerR": -6.0,
					"mtActivepowerS": -1.0,
					"mtActivepowerT": -46.0,
					"ezPro_connect_status": null,
					"dataloggersn": "",
					"equipment_name": null,
					"hasmeter": true,
					"meter_type": 255.0,
					"pre_hour_lasttotal": null,
					"pre_hour_time": null,
					"current_hour_pv": 0.0,
					"extend_properties": null,
					"eP_connect_status_happen": null,
					"eP_connect_status_recover": null,
					"total_sell": 4.446875,
					"total_buy": 402.5547,
					"errors": [],
					"safetyConutry": 1.0,
					"deratingMode": null,
					"master": null,
					"parallel_code": null
				},
				"time": "08/28/2022 23:59:22",
				"battery": "287.1V/0.4A/115W",
				"firmware_version": 819.0,
				"warning_bms": "Normal",
				"soh": "100%",
				"discharge_current_limit_bms": "18A",
				"charge_current_limit_bms": "18A",
				"soc": "14%",
				"pv_input_2": "0V/0A",
				"pv_input_1": "0V/0A",
				"back_up_output": "243.4V/15W",
				"output_voltage": "243.7V/244.6V/244V",
				"backup_voltage": "243.4V/245.1V/243.8V",
				"output_current": "0.4A",
				"output_power": "157W",
				"total_generation": "460.4kWh",
				"daily_generation": "9.5kWh",
				"battery_charging": "287.1V/0.4A/115W",
				"last_refresh_time": "08/28/2022 23:58:55",
				"bms_status": "DischargingOfBattery",
				"pw_id": "xxxx",
				"fault_message": "",
				"warning_code": null,
				"battery_power": 114.84,
				"point_index": "12",
				"points": [
					{
						"target_index": 1,
						"target_name": "Vpv1",
						"display": "Vpv1(V)",
						"unit": "V",
						"target_key": "Vpv1",
						"text_cn": "直流电压1",
						"target_sn_six": null,
						"target_sn_seven": null,
						"target_type": null,
						"storage_name": null
					},
					{
						"target_index": 2,
						"target_name": "Vpv2",
						"display": "Vpv2(V)",
						"unit": "V",
						"target_key": "Vpv2",
						"text_cn": "直流电压2",
						"target_sn_six": null,
						"target_sn_seven": null,
						"target_type": null,
						"storage_name": null
					},
					{
						"target_index": 5,
						"target_name": "Ipv1",
						"display": "Ipv1(A)",
						"unit": "A",
						"target_key": "Ipv1",
						"text_cn": "直流电流1",
						"target_sn_six": null,
						"target_sn_seven": null,
						"target_type": null,
						"storage_name": null
					},
					{
						"target_index": 6,
						"target_name": "Ipv2",
						"display": "Ipv2(A)",
						"unit": "A",
						"target_key": "Ipv2",
						"text_cn": "直流电流2",
						"target_sn_six": null,
						"target_sn_seven": null,
						"target_type": null,
						"storage_name": null
					},
					{
						"target_index": 9,
						"target_name": "Ua",
						"display": "Ua(V)",
						"unit": "V",
						"target_key": "Vac1",
						"text_cn": "交流电压1",
						"target_sn_six": null,
						"target_sn_seven": null,
						"target_type": null,
						"storage_name": null
					},
					{
						"target_index": 10,
						"target_name": "Ub",
						"display": "Ub(V)",
						"unit": "V",
						"target_key": "Vac2",
						"text_cn": "交流电压2",
						"target_sn_six": null,
						"target_sn_seven": null,
						"target_type": null,
						"storage_name": null
					},
					{
						"target_index": 11,
						"target_name": "Uc",
						"display": "Uc(V)",
						"unit": "V",
						"target_key": "Vac3",
						"text_cn": "交流电压3",
						"target_sn_six": null,
						"target_sn_seven": null,
						"target_type": null,
						"storage_name": null
					},
					{
						"target_index": 12,
						"target_name": "Iac1",
						"display": "Iac1(A)",
						"unit": "A",
						"target_key": "Iac1",
						"text_cn": "交流电流1",
						"target_sn_six": null,
						"target_sn_seven": null,
						"target_type": null,
						"storage_name": null
					},
					{
						"target_index": 13,
						"target_name": "Iac2",
						"display": "Iac2(A)",
						"unit": "A",
						"target_key": "Iac2",
						"text_cn": "交流电流2",
						"target_sn_six": null,
						"target_sn_seven": null,
						"target_type": null,
						"storage_name": null
					},
					{
						"target_index": 14,
						"target_name": "Iac3",
						"display": "Iac3(A)",
						"unit": "A",
						"target_key": "Iac3",
						"text_cn": "交流电流3",
						"target_sn_six": null,
						"target_sn_seven": null,
						"target_type": null,
						"storage_name": null
					},
					{
						"target_index": 15,
						"target_name": "Fac1",
						"display": "Fac1(Hz)",
						"unit": "Hz",
						"target_key": "Fac1",
						"text_cn": "频率1",
						"target_sn_six": null,
						"target_sn_seven": null,
						"target_type": null,
						"storage_name": null
					},
					{
						"target_index": 16,
						"target_name": "Fac2",
						"display": "Fac2(Hz)",
						"unit": "Hz",
						"target_key": "Fac2",
						"text_cn": "频率2",
						"target_sn_six": null,
						"target_sn_seven": null,
						"target_type": null,
						"storage_name": null
					},
					{
						"target_index": 17,
						"target_name": "Fac3",
						"display": "Fac3(Hz)",
						"unit": "Hz",
						"target_key": "Fac3",
						"text_cn": "频率3",
						"target_sn_six": null,
						"target_sn_seven": null,
						"target_type": null,
						"storage_name": null
					},
					{
						"target_index": 18,
						"target_name": "Power",
						"display": "Power(W)",
						"unit": "W",
						"target_key": "Pac",
						"text_cn": "功率",
						"target_sn_six": null,
						"target_sn_seven": null,
						"target_type": null,
						"storage_name": null
					},
					{
						"target_index": 19,
						"target_name": "WorkMode",
						"display": "WorkMode",
						"unit": "",
						"target_key": "WorkMode",
						"text_cn": "工作模式",
						"target_sn_six": null,
						"target_sn_seven": null,
						"target_type": null,
						"storage_name": null
					},
					{
						"target_index": 20,
						"target_name": "Temperature",
						"display": "Temperature(℃)",
						"unit": "℃",
						"target_key": "Tempperature",
						"text_cn": "温度",
						"target_sn_six": null,
						"target_sn_seven": null,
						"target_type": null,
						"storage_name": null
					},
					{
						"target_index": 23,
						"target_name": "HTotal",
						"display": "HTotal(h)",
						"unit": "h",
						"target_key": "HTotal",
						"text_cn": "工作时长",
						"target_sn_six": null,
						"target_sn_seven": null,
						"target_type": null,
						"storage_name": null
					},
					{
						"target_index": 37,
						"target_name": "PV Generation",
						"display": "PV Generation(kWh)",
						"unit": "kWh",
						"target_key": "pv_etotal_l+pv_etotal_h*65536",
						"text_cn": "光伏发电量",
						"target_sn_six": null,
						"target_sn_seven": null,
						"target_type": null,
						"storage_name": null
					},
					{
						"target_index": 38,
						"target_name": "Pmeter",
						"display": "Pmeter(W)",
						"unit": "W",
						"target_key": "Pmeter",
						"text_cn": "电表功率",
						"target_sn_six": null,
						"target_sn_seven": null,
						"target_type": null,
						"storage_name": null
					},
					{
						"target_index": 39,
						"target_name": "Pbackup",
						"display": "Pbackup(W)",
						"unit": "W",
						"target_key": "Pbackup",
						"text_cn": "后备输出功率",
						"target_sn_six": null,
						"target_sn_seven": null,
						"target_type": null,
						"storage_name": null
					},
					{
						"target_index": 40,
						"target_name": "Vbackup",
						"display": "Vbackup(V)",
						"unit": "V",
						"target_key": "Vload",
						"text_cn": "后备输出电压1",
						"target_sn_six": null,
						"target_sn_seven": null,
						"target_type": null,
						"storage_name": null
					},
					{
						"target_index": 41,
						"target_name": "Ibackup",
						"display": "Ibackup(A)",
						"unit": "A",
						"target_key": "Iload",
						"text_cn": "后备输出电流1",
						"target_sn_six": null,
						"target_sn_seven": null,
						"target_type": null,
						"storage_name": null
					},
					{
						"target_index": 42,
						"target_name": "Vbat",
						"display": "Vbat(V)",
						"unit": "V",
						"target_key": "VBattery1",
						"text_cn": "电池电压",
						"target_sn_six": null,
						"target_sn_seven": null,
						"target_type": null,
						"storage_name": null
					},
					{
						"target_index": 43,
						"target_name": "Ibat",
						"display": "Ibat(A)",
						"unit": "A",
						"target_key": "IBattery1",
						"text_cn": "电池电流",
						"target_sn_six": null,
						"target_sn_seven": null,
						"target_type": null,
						"storage_name": null
					},
					{
						"target_index": 44,
						"target_name": "SOC",
						"display": "SOC(%)",
						"unit": "%",
						"target_key": "Cbattery1",
						"text_cn": "电池电量",
						"target_sn_six": null,
						"target_sn_seven": null,
						"target_type": null,
						"storage_name": null
					},
					{
						"target_index": 45,
						"target_name": "SOH",
						"display": "SOH(%)",
						"unit": "%",
						"target_key": "SOH",
						"text_cn": "电池健康度",
						"target_sn_six": null,
						"target_sn_seven": null,
						"target_type": null,
						"storage_name": null
					},
					{
						"target_index": 46,
						"target_name": "BMS_Temperature",
						"display": "BMS_Temperature(℃)",
						"unit": "℃",
						"target_key": "BMS_Temperature",
						"text_cn": "电池温度",
						"target_sn_six": null,
						"target_sn_seven": null,
						"target_type": null,
						"storage_name": null
					},
					{
						"target_index": 47,
						"target_name": "BMS_Charge_I_Max",
						"display": "BMS_Charge_I_Max(A)",
						"unit": "A",
						"target_key": "BMS_Charge_I_Max",
						"text_cn": "电池充电最大电流",
						"target_sn_six": null,
						"target_sn_seven": null,
						"target_type": null,
						"storage_name": null
					},
					{
						"target_index": 48,
						"target_name": "BMS_Discharge_I_Max",
						"display": "BMS_Discharge_I_Max(A)",
						"unit": "A",
						"target_key": "BMS_Discharge_I_Max",
						"text_cn": "电池放电最大电流",
						"target_sn_six": null,
						"target_sn_seven": null,
						"target_type": null,
						"storage_name": null
					},
					{
						"target_index": 49,
						"target_name": "Daily Output",
						"display": "Daily Output(kWh)",
						"unit": "kWh",
						"target_key": "EDay_EXP_1",
						"text_cn": "日输出电量",
						"target_sn_six": null,
						"target_sn_seven": null,
						"target_type": null,
						"storage_name": null
					},
					{
						"target_index": 50,
						"target_name": "Total Output",
						"display": "Total Output(kWh)",
						"unit": "kWh",
						"target_key": "ETotal_EXP_1",
						"text_cn": "总输出电量",
						"target_sn_six": null,
						"target_sn_seven": null,
						"target_type": null,
						"storage_name": null
					},
					{
						"target_index": 51,
						"target_name": "Pbackup1",
						"display": "Pbackup1(W)",
						"unit": "W",
						"target_key": "BackUpPload_R",
						"text_cn": "后备输出功率1",
						"target_sn_six": null,
						"target_sn_seven": null,
						"target_type": null,
						"storage_name": null
					},
					{
						"target_index": 52,
						"target_name": "Pbackup2",
						"display": "Pbackup2(W)",
						"unit": "W",
						"target_key": "BackUpPload_S",
						"text_cn": "后备输出功率2",
						"target_sn_six": null,
						"target_sn_seven": null,
						"target_type": null,
						"storage_name": null
					},
					{
						"target_index": 53,
						"target_name": "Vbackup2",
						"display": "Vbackup2(V)",
						"unit": "V",
						"target_key": "Istr18_EXP_1",
						"text_cn": "后备输出电压2",
						"target_sn_six": null,
						"target_sn_seven": null,
						"target_type": null,
						"storage_name": null
					},
					{
						"target_index": 54,
						"target_name": "Ibackup2",
						"display": "Ibackup2(A)",
						"unit": "A",
						"target_key": "BackUpIload_S",
						"text_cn": "后备输出电流2",
						"target_sn_six": null,
						"target_sn_seven": null,
						"target_type": null,
						"storage_name": null
					},
					{
						"target_index": 55,
						"target_name": "Pbackup3",
						"display": "Pbackup3(W)",
						"unit": "W",
						"target_key": "BackUpPload_T",
						"text_cn": "后备输出功率3",
						"target_sn_six": null,
						"target_sn_seven": null,
						"target_type": null,
						"storage_name": null
					},
					{
						"target_index": 56,
						"target_name": "Vbackup3",
						"display": "Vbackup3(V)",
						"unit": "V",
						"target_key": "BackUpVload_T",
						"text_cn": "后备输出电压3",
						"target_sn_six": null,
						"target_sn_seven": null,
						"target_type": null,
						"storage_name": null
					},
					{
						"target_index": 57,
						"target_name": "Ibackup3",
						"display": "Ibackup3(A)",
						"unit": "A",
						"target_key": "BackUpIload_T",
						"text_cn": "后备输出电流3",
						"target_sn_six": null,
						"target_sn_seven": null,
						"target_type": null,
						"storage_name": null
					},
					{
						"target_index": 58,
						"target_name": "meterPhase1",
						"display": "meterPhase1(W)",
						"unit": "W",
						"target_key": "MTActivepowerR",
						"text_cn": "电表功率1",
						"target_sn_six": null,
						"target_sn_seven": null,
						"target_type": null,
						"storage_name": null
					},
					{
						"target_index": 59,
						"target_name": "meterPhase2",
						"display": "meterPhase2(W)",
						"unit": "W",
						"target_key": "MTActivepowerS",
						"text_cn": "电表功率2",
						"target_sn_six": null,
						"target_sn_seven": null,
						"target_type": null,
						"storage_name": null
					},
					{
						"target_index": 60,
						"target_name": "meterPhase3",
						"display": "meterPhase3(W)",
						"unit": "W",
						"target_key": "MTActivepowerT",
						"text_cn": "电表功率3",
						"target_sn_six": null,
						"target_sn_seven": null,
						"target_type": null,
						"storage_name": null
					},
					{
						"target_index": 400,
						"target_name": "BMS Version",
						"display": "BMS Version",
						"unit": "",
						"target_key": "BMSSoftwareVersion",
						"text_cn": "BMS版本",
						"target_sn_six": null,
						"target_sn_seven": null,
						"target_type": null,
						"storage_name": null
					},
					{
						"target_index": 409,
						"target_name": "e_charge",
						"display": "e_charge(kWh)",
						"unit": "kWh",
						"target_key": "EBatteryCharge",
						"text_cn": "电池充电",
						"target_sn_six": null,
						"target_sn_seven": null,
						"target_type": null,
						"storage_name": null
					},
					{
						"target_index": 410,
						"target_name": "e_discharge",
						"display": "e_discharge(kWh)",
						"unit": "kWh",
						"target_key": "EBatteryDischarge",
						"text_cn": "电池放电",
						"target_sn_six": null,
						"target_sn_seven": null,
						"target_type": null,
						"storage_name": null
					}
				],
				"backup_pload_s": 5.0,
				"backup_vload_s": 245.1,
				"backup_iload_s": 0.2,
				"backup_pload_t": 3.0,
				"backup_vload_t": 243.8,
				"backup_iload_t": 0.2,
				"etotal_buy": 0.4,
				"eday_buy": 0.0,
				"ebattery_charge": 21.6,
				"echarge_day": 3.0,
				"ebattery_discharge": 21.6,
				"edischarge_day": 5.2,
				"batt_strings": 9.4,
				"meter_connect_status": 273.0,
				"mtactivepower_r": -6.0,
				"mtactivepower_s": -1.0,
				"mtactivepower_t": -46.0,
				"has_tigo": false,
				"canStartIV": false
			}
		],
		"hjgx": {
			"co2": 0.4590188,
			"tree": 25.156256,
			"coal": 0.1860016
		},
		"homKit": {
			"homeKitLimit": false,
			"sn": null
		},
		"isTigo": false,
		"tigoIntervalTimeMinute": 15,
		"smuggleInfo": {
			"isAllSmuggle": false,
			"isSmuggle": false,
			"descriptionText": null,
			"sns": null
		},
		"hasPowerflow": false,
		"powerflow": null,
		"hasGridLoad": false,
		"isParallelInventers": false,
		"isEvCharge": false,
		"evCharge": null,
		"hasEnergeStatisticsCharts": true,
		"energeStatisticsCharts": {
			"contributingRate": 0.52,
			"selfUseRate": 0.99,
			"sum": 9.5,
			"buy": 8.61,
			"buyPercent": 47.8,
			"sell": 0.11,
			"sellPercent": 1.2,
			"selfUseOfPv": 9.39,
			"consumptionOfLoad": 18.0,
			"chartsType": 1,
			"hasPv": true,
			"hasCharge": false,
			"charge": 0.0,
			"disCharge": 0.0
		},
		"energeStatisticsTotals": {
			"contributingRate": 0.53,
			"selfUseRate": 0.99,
			"sum": 460.2,
			"buy": 402.0,
			"buyPercent": 46.8,
			"sell": 4.3,
			"sellPercent": 0.9,
			"selfUseOfPv": 456.2,
			"consumptionOfLoad": 858.16,
			"chartsType": 1,
			"hasPv": true,
			"hasCharge": false,
			"charge": 0.0,
			"disCharge": 0.0
		},
		"soc": {
			"power": 14,
			"status": 2
		},
		"environmental": [],
		"equipment": [
			{
				"type": "5",
				"title": "xxxx",
				"status": 1,
				"statusText": null,
				"capacity": null,
				"actionThreshold": null,
				"subordinateEquipment": "",
				"powerGeneration": "PV:0(kW)",
				"eday": "Generation Today: 9.5(kWh)",
				"brand": "",
				"isStored": true,
				"soc": "SOC:14%",
				"isChange": false,
				"relationId": "xxxx",
				"sn": "xxxx",
				"has_tigo": false,
				"is_sec": false,
				"is_secs": false,
				"targetPF": null,
				"exportPowerlimit": null
			}
		]
	},
	"components": {
		"para": "{\"model\":{\"PowerStationId\":\"xxxx\"}}",
		"langVer": 153,
		"timeSpan": 777,
		"api": "http://eu.semsportal.com:85/api/v2/PowerStation/GetMonitorDetailByPowerstationId",
		"msgSocketAdr": null
	}
}
FV pole - 10kWp (22ks Longi 450 Wp)
Měnič - SOLAX X3-Hybrid-10.0T (G3)
Baterie - 11.6kW (Triple Power LFP 5.8)
Řízení přebytků: Homey (https://homey.app)
Online dohled: Homey (mobilní aplikace & web) + Solax Cloud
Wotan
Příspěvky: 13
Registrován: čtv kvě 12, 2022 11:37 am

Re: Goodwe SEMS Portal API

Příspěvek od Wotan »

Připadá mi to jako vymýšlení kola :). Proč to potřebujete? Integrace pro GoodWe má vyřešenou např. HA. Navíc již spousta fandů udělala vlastní aplikace (Grafana apod.). Pokud ale i tak chcete mít vlastní řešení, tak proč chcete využít SEMS, který má průměrovaná data, má problém se stabilitou a je závislý na připojení střídače do internetu? Není jednodušší brát okamžitá data rovnou ze střídače?
MichalSix
Příspěvky: 38
Registrován: pon pro 27, 2021 11:27 pm

Re: Goodwe SEMS Portal API

Příspěvek od MichalSix »

Asi jsem se nevyjádřil jasně :shock: . Já mám alternativu k HA, Homey. Tz. že mám systém, který funguje a chci ho pouze rozšířit o podporu Goodwe. Pokud tohle má vyřešené HA, tak to samé musí být možné udělat pro Homey ;)

A právě proto jsem se zkusil zeptat zde, protože jsem si myslel, že tohle už tady lidi řešili a budou vědět, jak ty data použít :)

Proč SEMS? Myslel jsem si (a mohu se hluboce mýlit), že SEMS zvládne nainstalovat každý, kdo má střídač, zatímco řešení, kdy se načítají data přímo, je složitější a nebude pro každého. Nestudoval jsem to, jen jsem zahlédl, že střídač Goodwe běžně nepodporuje načítání dat z lokální sítě.

Pokud tedy existuje nějaké REST API (lokální nebo cloudové), které mohu spolehlivě použít, rád se nechám poučit :)
FV pole - 10kWp (22ks Longi 450 Wp)
Měnič - SOLAX X3-Hybrid-10.0T (G3)
Baterie - 11.6kW (Triple Power LFP 5.8)
Řízení přebytků: Homey (https://homey.app)
Online dohled: Homey (mobilní aplikace & web) + Solax Cloud
Wotan
Příspěvky: 13
Registrován: čtv kvě 12, 2022 11:37 am

Re: Goodwe SEMS Portal API

Příspěvek od Wotan »

Ideální je kouknout jak to má HA udělané. Domnívám se ale, že nekomunikuje se SEMS, ale přímo se střídačem. Střídač data přes síť poskytuje (nakonec ten SEMS se ho taky nějak ptát musí), jen někdy bývá problém se stabilitou wifi, ale v tom případě má SEMS taky problém. Popis protokolu najdete třeba zde https://github.com/tkubec/GoodWe/wiki. Jsou tam popsané registry. Nedávno jsem na toto fórum dával kompletní popis registrů, kdybyste jich potřeboval víc...
bofisko
Příspěvky: 4
Registrován: stř lis 23, 2022 12:09 pm
Lokalita: Trnava

Re: Goodwe SEMS Portal API

Příspěvek od bofisko »

Zdravím, mate to vyriešené? Ja používam QA na čítanie dát. Dorábal som si tam akurát , že vytvorí svoje child. Ak mate záujem pošlem Vám ju.
Uživatelský avatar
Mareg
Příspěvky: 1
Registrován: ned led 15, 2023 7:02 pm
Lokalita: Uh.Hradiště

Re: Goodwe SEMS Portal API

Příspěvek od Mareg »

https://github.com/marcelblijleven/goodwe

Strukturu TB pro mysql a případně upravený python skript pro vkládání dat do DB můžu na požádání zaslat.
Uživatelský avatar
Hochmi
Příspěvky: 1
Registrován: ned kvě 28, 2023 7:56 am
Lokalita: Beroun
Systémové napětí: >48V
Výkon panelů [Wp]: 16500
Kapacita baterie [kWh]: 14,2

Re: Goodwe SEMS Portal API

Příspěvek od Hochmi »

Mareg píše:https://github.com/marcelblijleven/goodwe

Strukturu TB pro mysql a případně upravený python skript pro vkládání dat do DB můžu na požádání zaslat.
Zdravím. Řeším něco podobné. Chtěl bych nějakou rutinou (přes plánovač úloh spouštěnou uloženou procedurou) plnit data na MS SQL. V SQL ledacos zvládnu. Neporadil byste?

Díky

  • Podobná témata
    Odpovědi
    Zobrazení
    Poslední příspěvek