Hi,
Using NXP S12Z MagniV, we are rotating a 3 phase BLDC motor.
We are using "Current Sense Amplifier and Overcurrent Comparator" in the GDU.
The GDU is driven by PWM from the PMF module.
Present implementation -
When over current situation occurs, the OC comparator trips and cause the GDU output to be OFF.
Since this point, the motor stops permanently till the MCU reset.
Requested modification -
When the OC comparator trips and cause the GDU to be OFF, is there a way to clear this trip condition using software such that the PWM output from the GDU can be re-started ?
If yes, what is the procedure/settings for this ?
Hi,
Have you tried to write "1" to the GDUF_GOCIF[1:0]? Similar action should work for all the flags (e.g. if a desaturation is asserted). Please set a correct "overcurrent action" (GOCAx) to prevent the system from consequent faults (depending on your system requirements).
For your future reference (I understand it's hard to link the information together), please follow the Reference Manual:
Chapter 18.3.2.3 GDU Interrupt Enable Register (GDUIE)
Chapter 18.3.2.5 GDU Status Register (GDUSTAT)
Mainly:
Chapter 18.3.2.7 GDU Flag Register (GDUF)
Chapter 18.3.2.15 GDU Overcurrent Register 0 (GDUOC0)
Chapter 18.4.7 Fault Protection Features
Chapter 18.4.8 Current Sense Amplifier and Overcurrent Comparator
Best regards,
Matej
Thank you Matej!
We have set the overcurrent action as GOCA0=1(turn off all high side and low side predrivers ) and because of this setting motor stops permanantly till the MCU reset.
We want to know that, is there any way to clear this trip condition by software so that PWM output will restart again and no need to reset MCU?
Try this: GDUF_GOCIF0 = 1;
(or GDUF_GOCIF1 = 1; respectively if the other overcurrent comparator is used).
You can do it using FreeMaster as well.
Hello,
I have the same settings and if I write "1" to the GDUF_GOCIF[1:0], the GDU works again. Have you tried it? There is no need for resetting the MCU.
Matej