Was bedeutet denn für dich “auf evcs power einstelle” ?
Grüße
Was bedeutet denn für dich “auf evcs power einstelle” ?
Grüße
Hei,
habe den controller so angepasst:
protected static int calculateRequiredPower(int essPower, int gridPower, int evcsPower) {
return gridPower + essPower - evcsPower;
}
Und in der “run methode” gebe ich hier einfach das evcs mit und fertig.
/*
* Calculates required charge/discharge power
*/
var calculatedPower = calculateRequiredPower(//
this.ess.getActivePower().getOrError(), //
this.meter.getActivePower().getOrError(), //
this.evcs.getActivePower().getOrError());
Vermutlich muss man hier noch diverse Anpassungen vornehmen, damit PV überschuss auch berücksichtigt wird, aber sonst entspricht das genau der Anforderung des Threads
Beste Grüße
Beton
Und was ist, wenn keine evcsPower vorhanden ist?
Servus,
guter Einwand!
So sollts gehen:
if(this.evcs.getStatus().getName() == "Charging") {
/*
* Calculates required charge/discharge power
*/
var calculatedPower = calculateRequiredPower(
this.ess.getActivePower().getOrError(),
this.meter.getActivePower().getOrError(),
this.evcs.getActivePower().getOrError());
/*
* set result
*/
this.ess.setActivePowerEqualsWithPid(calculatedPower);
this.ess.setReactivePowerEquals(0);
}
else {
/*
* Calculates required charge/discharge power
*/
var calculatedPower = calculateRequiredPower(
this.ess.getActivePower().getOrError(),
this.meter.getActivePower().getOrError(),
0);
/*
* set result
*/
this.ess.setActivePowerEqualsWithPid(calculatedPower);
this.ess.setReactivePowerEquals(0);
}
Beste Grüße
Beton
so is es schöner oder?
evcsPower = 0;
if(this.evcs.getStatus().getName() == "Charging") {
evcsPower = this.evcs.getActivePower().getOrError();
}
/*
* Calculates required charge/discharge power
*/
var calculatedPower = calculateRequiredPower(
this.ess.getActivePower().getOrError(),
this.meter.getActivePower().getOrError(),
evcsPower);
/*
* set result
*/
this.ess.setActivePowerEqualsWithPid(calculatedPower);
this.ess.setReactivePowerEquals(0);