AnsweredAssumed Answered

PWM FMCMOTCON2 custom axi_mc_controller

Question asked by 3ronaldt on Mar 11, 2016
Latest reply on Mar 14, 2016 by ACozma



The axi_mc_controller contains a switch to select betwen open loop and closed loop (e.g. Matlab FOC).


We use closed loop mode (foc_ctrl_s = 1) and implemented a dedicated control algorith, using the Vivado HLS flow.


However, in this closed loop mode the PWM input signals pwm_a_i, pwm_b_i and pwm_c_i of the axi_mc_controller wrapper are passed through to the FPGA PWM outputs.


assign pwm_ah_o = foc_ctrl_s ? !pwm_a : dpwm_ah_s;

assign pwm_al_o = foc_ctrl_s ? pwm_a : dpwm_al_s;


In this case, the dead time insertion (DTI) to prevent shoot-through current (as implemented in motor_driver.v/delay.v [1.28 us DTI] for open loop) is not applied.


How should this be solved and how is this done for FOC control?


Shall we solve this inside axi_mc_controller?


Thanks and regards,