|
@@ -3,7 +3,7 @@ package ua.ansymo.hintco
|
|
|
import org.slf4j.Logger
|
|
|
import org.slf4j.LoggerFactory
|
|
|
|
|
|
-class PowerCorrectionPort extends ExtrapolationAdaptedPort {
|
|
|
+class PowerCorrectionPort extends StoreAdaptedPort {
|
|
|
|
|
|
var String portId
|
|
|
|
|
@@ -18,8 +18,10 @@ class PowerCorrectionPort extends ExtrapolationAdaptedPort {
|
|
|
|
|
|
Logger logger = LoggerFactory.getLogger(typeof(PowerCorrectionPort))
|
|
|
|
|
|
+ AdaptedFMUInstance fmu
|
|
|
+
|
|
|
new(String pId, PowerOutAdaptedPort po, StoreAdaptedPort pi, AdaptedFMUInstance f) {
|
|
|
- super(pId, f)
|
|
|
+ fmu = f
|
|
|
portId = pId
|
|
|
pOut = po
|
|
|
pIn = pi
|
|
@@ -38,8 +40,7 @@ class PowerCorrectionPort extends ExtrapolationAdaptedPort {
|
|
|
}
|
|
|
|
|
|
override computeReal(double t, double dt, double h, double H) {
|
|
|
- var givenInput = extrapolate(t, dt, h, H)
|
|
|
- givenInput = current_val
|
|
|
+ val givenInput = storedVal
|
|
|
val piControlOut = Kp*energyDeficit + Ki*accumulatedDeficit
|
|
|
val actualInput = givenInput + piControlOut
|
|
|
logger.debug("Applying power correction on port {}.{}.",
|