FluxMapID
Description
This state includes an process for FluxMap identification.
It is based on [1] and has been modified to fit into the ParameterID library of the UltraZohm.
The desired range of the identified flux maps can be set in the d- and q-axis, with an input for the stepsize as well.
From these input parameters, this state will create a rectangular grid.
Each point of this grid will be set and reference currents will be given to an external current controller.
This state needs some sort of current controller to work properly.
It does not measure the needed signals to calculate the flux maps in each point.
It only controls the triggering of the operating points.
The necessary measurement vales can either be captured via the JavaScope or an external measurement device.
For this purpose a trigger (when activeState = 403) signals the point of time, at which the measurement of this operating point can take place.
During operation, it is possible to automatically determine the current winding temperature, via identifying the current stator resistance and comparing it to a reference value at a set temperature.
This guarantees that the measurements are only recorded when the motor has the same winding temperature. This can be turned off. The ID-state simply assumes then, that the winding temperature is constant.

Fig. 63 Schematic overview of the FluxMapID
Necessary measurement values
i_dq
v_dq
FluxMapID object
-
typedef struct uz_ParaID_FluxMapID_t uz_ParaID_FluxMapID_t
Object definition for uz_ParaID_FluxMapID_t.
FluxMapID config
-
struct uz_ParaID_FluxMapIDConfig_t
configuration struct for FluxMapID specific settings
FluxMapID output
-
struct uz_ParaID_FluxMapID_output_t
output struct of FluxMapID
FluxMapID functions
-
uz_ParaID_FluxMapID_t *uz_FluxMapID_init(void)
Initializes the uz_ParaID_FluxMapID_t object.
- Returns
uz_ParaID_FluxMapID_t pointer to object
-
void uz_FluxMapID_step(uz_ParaID_FluxMapID_t *self)
steps the FluxMapID state once
- Parameters
self – pointer to uz_ParaID_FluxMapID_t object
-
void uz_FluxMapID_set_Config(uz_ParaID_FluxMapID_t *self, uz_ParaID_FluxMapIDConfig_t Config)
Sets the config struct for the FluxMapID.
- Parameters
self – uz_ParaID_FluxMapID_t pointer to object
Config – configuration struct for the FluxMapID
-
void uz_FluxMapID_set_ActualValues(uz_ParaID_FluxMapID_t *self, uz_ParaID_ActualValues_t ActualValues)
Sets the ActualValues struct for the FluxMapID.
- Parameters
self – pointer to uz_ParaID_FluxMapID_t object
ActualValues – struct for the measurement values
-
void uz_FluxMapID_set_GlobalConfig(uz_ParaID_FluxMapID_t *self, uz_ParaID_GlobalConfig_t GlobalConfig)
Sets the GlobalConfig struct for the FluxMapID.
- Parameters
self – pointer to uz_ParaID_FluxMapID_t object
GlobalConfig – struct for the general settings of the ParameterID
-
void uz_FluxMapID_set_ControlFlags(uz_ParaID_FluxMapID_t *self, uz_ParaID_ControlFlags_t *ControlFlags)
Sets the ControlFlags struct for the FluxMapID.
- Parameters
self – pointer to uz_ParaID_FluxMapID_t object
ControlFlags – pointer to the struct with the enable signals of the ParameterID
-
bool uz_FluxMapID_get_enteredFluxMapID(uz_ParaID_FluxMapID_t *self)
Gets the status of the enteredFluxMapID flag.
- Parameters
self – pointer to uz_ParaID_FluxMapID_t object
- Returns
true state has been entered
- Returns
false state hasn’t been entered
-
bool uz_FluxMapID_get_finishedFluxMapID(uz_ParaID_FluxMapID_t *self)
Gets the status of the finishedFluxMapID flag.
- Parameters
self – pointer to uz_ParaID_FluxMapID_t object
- Returns
true state has finished
- Returns
false state hasn’t finished
-
uz_ParaID_Controller_Parameters_output_t *uz_FluxMapID_get_FOC_output(uz_ParaID_FluxMapID_t *self)
Gets the pointer to the output controller struct of the FluxMapID.
- Parameters
self – pointer to uz_ParaID_FluxMapID_t object
- Returns
uz_ParaID_Controller_Parameters_output_t* pointer to the FOC controller parameters struct
-
uz_ParaID_FluxMapID_output_t *uz_FluxMapID_get_output(uz_ParaID_FluxMapID_t *self)
Gets the pointer to the output struct of the FluxMapID.
- Parameters
self – pointer to uz_ParaID_FluxMapID_t object
- Returns
uz_ParaID_FluxMapID_output_t* pointer to the output struct
Sources
- 1
Automatisierte Identifikation nichtlinearer Flusskennfelder permanenterregter Synchronmaschinen, Michael Hoerner, 2018