SLAU927B June 2024 – November 2024 MSPM0G3507
#define CURRENT_THREE_SHUNT_AB_C : Select this configuration if A and B phases are sensed through ADC0 and C phase is sensed through ADC1.
#define __CURRENT_THREE_SHUNT_A_BC : Select this configuration if A phase is sensed through ADC0 and B, C phases are sensed through ADC1.
User can also route one of the Phases say 'B' to both the ADC 0 and 1 instance and the other two phases to two different ADC instances. For example say 'phase A' is routed to ADC0 and Phase 'C' is routed to ADC1, Phase B is routed to both ADC0 and ADC1 instances, In this example, algorithm can dynamically switch to the two samples which gives the best current sampling time based on the given sector.
In this three shunt configuration, application supports shifting the current sensing estimation dynamically to the two phases for maximizing the modulation index. As in a balanced three phase Motor, any one of the phase current can be estimated with the other two phase currents as ia= -(ib + ic). Based on the operational sector the two phases with lowest modulation index are selected for current measurement and third phase with highest modulation index is estimated using the other two phase currents. This method helps in extending the modulation index to higher limits with continuous SVM operation.
To select this configuration user can include #define __CURRENT_THREE_SHUNT_DYNAMIC macro in the main.h file. Along with this user need to enable the dynamic shunt selection by setting the macro #define DYNAMIC_CURRENT_SHUNT_CONFIG_EN to TRUE.