Enum EmsPowerMode

  • All Implemented Interfaces:
    OptionsEnum, java.io.Serializable, java.lang.Comparable<EmsPowerMode>

    public enum EmsPowerMode
    extends java.lang.Enum<EmsPowerMode>
    implements OptionsEnum
    See table 8-16 EMS Power Mode.

    Note:

    • for low-priority energy sources, when the battery charging power is limited or the rated output power of the inverter is limited, the load shall be reduced first.
    • Xmax represents the upper limit of the power control value, and the actual power will be adjusted according to the working condition.
    • Xset represents the target value of power control, and the actual power must reach the set value.
    • Enum Constant Summary

      Enum Constants 
      Enum Constant Description
      AUTO
      Scenario: Self-use.
      BATTERY_STANDBY
      Scenario: The inverter is used as a unit for power grid energy scheduling.
      BUY_POWER
      Scenario: Regional energy management.
      CHARGE_BAT
      Scenario: Force the battery to work at set power value.
      CHARGE_PV
      Scenario: Control the battery to keep charging.
      CONSERVE
      Scenario: Off-grid reservation mode.
      DISCHARGE_BAT
      Scenario: Force the battery to work at set power value.
      DISCHARGE_PV
      Scenario: Control the battery to keep discharging.
      EXPORT_AC
      Scenario: The inverter is used as a unit for power grid energy scheduling.
      IMPORT_AC
      Scenario: The inverter is used as a unit for power grid energy scheduling.
      OFF_GRID
      Scenario: Off-Grid Mode.
      SELL_POWER
      Scenario: Regional energy management.
      STOPPED
      Scenario: System shutdown.
      UNDEFINED  
    • Method Summary

      All Methods Static Methods Instance Methods Concrete Methods 
      Modifier and Type Method Description
      java.lang.String getName()
      Gets this enums String representation.
      OptionsEnum getUndefined()
      Gets the enum that is used for 'UNDEFINED' values.
      int getValue()
      Gets this enums int representation.
      static EmsPowerMode valueOf​(java.lang.String name)
      Returns the enum constant of this type with the specified name.
      static EmsPowerMode[] values()
      Returns an array containing the constants of this enum type, in the order they are declared.
      • Methods inherited from class java.lang.Enum

        clone, compareTo, equals, finalize, getDeclaringClass, hashCode, name, ordinal, toString, valueOf
      • Methods inherited from class java.lang.Object

        getClass, notify, notifyAll, wait, wait, wait
    • Enum Constant Detail

      • STOPPED

        public static final EmsPowerMode STOPPED
        Scenario: System shutdown.

        Stop working and turn to wait mode

      • AUTO

        public static final EmsPowerMode AUTO
        Scenario: Self-use.

        PBattery = PInv - Pmeter - Ppv (Discharge/Charge)

        The battery power is controlled by the meter power when the meter communication is normal.

      • CHARGE_PV

        public static final EmsPowerMode CHARGE_PV
        Scenario: Control the battery to keep charging.

        PBattery = Xmax + PV (Charge)

        Xmax is to allow the power to be taken from the grid, and PV power is preferred. When set to 0, only PV power is used. Charging power will be limited by charging current limit.

        Interpretation: Charge Battery from PV (high priority) or Grid (low priority); EmsPowerSet = negative ESS ActivePower (if possible because of PV).

        • Grid: low priority
        • PV: high priority
        • Battery: Charge Mode
        • The control object is 'Grid'
      • DISCHARGE_PV

        public static final EmsPowerMode DISCHARGE_PV
        Scenario: Control the battery to keep discharging.

        PBattery = Xmax (Discharge)

        Xmax is the allowable discharge power of the battery. When the power fed into the grid is limited, PV power will be used first.

        Interpretation: ESS ActivePower = PV power + EmsPowerSet (i.e. battery discharge); useful for surplus feed-to-grid.

        • PV: high priority
        • Battery: low priority
        • Grid: Energy Out Mode
        • The control object is 'Battery'
      • IMPORT_AC

        public static final EmsPowerMode IMPORT_AC
        Scenario: The inverter is used as a unit for power grid energy scheduling.

        PBattery = Xset + PV (Charge)

        Xset refers to the power purchased from the power grid. The power purchased from the grid is preferred. If the PV power is too large, the MPPT power will be limited. (grid side load is not considered)

        Interpretation: Charge Battery from Grid (high priority) or PV (low priority); EmsPowerSet = negative ESS ActivePower; as long as BMS_CHARGE_MAX_CURRENT is > 0, no AC-Power is exported; when BMS_CHARGE_MAX_CURRENT == 0, PV surplus feed in starts!

        • Grid: high priority
        • PV: low priority
        • Battery: Charge Mode
        • The control object is 'Grid'
      • EXPORT_AC

        public static final EmsPowerMode EXPORT_AC
        Scenario: The inverter is used as a unit for power grid energy scheduling.

        PBattery = Xset (Discharge)

        Xset is to sell power to the grid. PV power is preferred. When PV energy is insufficient, the battery will discharge. PV power will be limited by x. (grid side load is not considered)

        Interpretation: EmsPowerSet = positive ESS ActivePower. But PV will be limited, i.e. remaining power is not used to charge battery.

        • PV: high priority
        • Battery: low priority
        • Grid: Energy Out Mode
        • The control object is 'Grid'
      • CONSERVE

        public static final EmsPowerMode CONSERVE
        Scenario: Off-grid reservation mode.

        PBattery = PV (Charge)

        In on-grid mode, the battery is continuously charged, and only PV power (AC Couple model takes 10% of the rated power of the power grid) is used. The battery can only discharge in off-grid mode.

      • OFF_GRID

        public static final EmsPowerMode OFF_GRID
        Scenario: Off-Grid Mode.

        PBattery = Pbackup - Ppv (Charge/Discharge)

        Forced off-grid operation.

      • BATTERY_STANDBY

        public static final EmsPowerMode BATTERY_STANDBY
        Scenario: The inverter is used as a unit for power grid energy scheduling.

        PBattery = 0 (Standby)

        The battery does not charge and discharge

      • BUY_POWER

        public static final EmsPowerMode BUY_POWER
        Scenario: Regional energy management.

        PBattery = PInv - (Pmeter + Xset) - Ppv (Charge/Discharge)

        When the meter communication is normal, the power purchased from the power grid is controlled as Xset. When the PV power is too large, the MPPT power will be limited. When the load is too large, the battery will discharge.

        Interpretation: Control power at the point of common coupling.

        • Grid: high priority
        • PV: low priority
        • Battery: Energy In and Out Mode
        • The control object is 'Grid'
      • SELL_POWER

        public static final EmsPowerMode SELL_POWER
        Scenario: Regional energy management.

        PBattery = PInv - (Pmeter - Xset) - Ppv (Charge/Discharge)

        When the communication of electricity meter is normal, the power sold from the power grid is controlled as Xset, PV power is preferred, and the battery discharges when PV energy is insufficient.PV power will be limited by Xset.

        Interpretation: Control power at the point of common coupling.

        • PV: high priority
        • Battery: low priority
        • Grid: Energy Out Mode
        • The control object is 'Grid'
      • CHARGE_BAT

        public static final EmsPowerMode CHARGE_BAT
        Scenario: Force the battery to work at set power value.

        PBattery = Xset (Charge)

        Xset is the charging power of the battery. PV power is preferred. When PV power is insufficient, it will buy power from the power grid. The charging power is also affected by the charging current limit.

        Interpretation: Charge Battery from PV (high priority) or Grid (low priority); priorities are inverted compared to IMPORT_AC.

        • PV: high priority
        • Grid: low priority
        • Battery: Energy In Mode
        • The control object is 'Battery'
      • DISCHARGE_BAT

        public static final EmsPowerMode DISCHARGE_BAT
        Scenario: Force the battery to work at set power value.

        PBattery = Xset (Discharge)

        Xset is the discharge power of the battery, and the battery discharge has priority. If the PV power is too large, MPPT will be limited. Discharge power is also affected by discharge current limit.

        Interpretation: ???

        • PV: low priority
        • Battery: high priority
        • Grid: Energy In Mode
        • The control object is 'Battery'
    • Method Detail

      • values

        public static EmsPowerMode[] values()
        Returns an array containing the constants of this enum type, in the order they are declared. This method may be used to iterate over the constants as follows:
        for (EmsPowerMode c : EmsPowerMode.values())
            System.out.println(c);
        
        Returns:
        an array containing the constants of this enum type, in the order they are declared
      • valueOf

        public static EmsPowerMode valueOf​(java.lang.String name)
        Returns the enum constant of this type with the specified name. The string must match exactly an identifier used to declare an enum constant in this type. (Extraneous whitespace characters are not permitted.)
        Parameters:
        name - the name of the enum constant to be returned.
        Returns:
        the enum constant with the specified name
        Throws:
        java.lang.IllegalArgumentException - if this enum type has no constant with the specified name
        java.lang.NullPointerException - if the argument is null
      • getValue

        public int getValue()
        Description copied from interface: OptionsEnum
        Gets this enums int representation.
        Specified by:
        getValue in interface OptionsEnum
        Returns:
        the int representation
      • getName

        public java.lang.String getName()
        Description copied from interface: OptionsEnum
        Gets this enums String representation.
        Specified by:
        getName in interface OptionsEnum
        Returns:
        the String representation
      • getUndefined

        public OptionsEnum getUndefined()
        Description copied from interface: OptionsEnum
        Gets the enum that is used for 'UNDEFINED' values.
        Specified by:
        getUndefined in interface OptionsEnum
        Returns:
        the UNDEFINED enum