Field Oriented Controller Operation Point Selection

class gem_controllers.stages.operation_point_selection.foc_operation_point_selection.FieldOrientedControllerOperationPointSelection(max_modulation_level: float = 1.1547005383792517, modulation_damping: float = 1.2)[source]

This is the base class for all field-oriented operating point controls. It also includes a function for level control.

Operation Point Selection for torque control of synchronous motors

Parameters
  • max_modulation_level – Maximum modulation of the modulation controller

  • modulation_damping – Damping of the modulation controller

_select_operating_point(state, reference)[source]

Calculate the current refrence values.

Parameters
  • state (np.ndarray) – The state of the environment.

  • reference (np.ndarray) – The reference of the state.

Returns

current reference values

Return type

np.array

modulation_control(state)[source]

To ensure the functionality of the current control, a small dynamic manipulated variable reserve to the voltage limitation must be kept available. This control is performed by this modulation controller. Further information can be found at https://ieeexplore.ieee.org/document/7409195.

reset()[source]

Reset the FOC operation point selcetion stage

tune(env, env_id, current_safety_margin=0.2)[source]

Tune the operation point selcetion stage.

Parameters
  • env (gym_electric_motor.ElectricMotorEnvironment) – The environment to be controlled.

  • env_id (str) – The id of the environment.

  • current_safety_margin (float) – Percentage of the current margin to the current limit.