This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

TMS320F28035: Current Limit Algorithm

Part Number: TMS320F28035

Tool/software:

Hi,

I am using TMS320f28035 for driving motor control with PMSM sensored. How can i limit the current of main bara? Is there any method for this using Id, Iq values or anything 

  • Hi Yavuz,

    Could you check this Q&A on MathWorks forum and see if it is helpful? Thanks!

    https://www.mathworks.com/matlabcentral/answers/2129026-dc-current-limitation-in-foc-of-pmsm

    Thanks,

    Jiaxin

  • /*--------------------------DC Current Limit Code Snippet depend on SpeedRPM--------------------------*/
        if (DC_Bara_Current_value_mA > DC_BARA_Current_max_limit)
        {
            if (limitHizAtamaSwitch == 0)
                limitedSpeedRPM = YENI_REF_HIZ_FROM_RS422; // speed command assign to limitedRPM value when dc calculated value surpass the limit current value
    
            limitHizAtamaSwitch = 1;    //for once assign
            akimHizLimitleyici = 1;  // for doesnt assign new command speed value in control algorithm
            limitedSpeedRPM -= 0.1;             // decreasing 0.1RPM every loop
            SpeedRef = _IQ(limitedSpeedRPM / speed1.BaseRpm); // for new proccessing value for speed
        }
        else if (DC_BARA_Current_max_limit - DC_Bara_Current_value_mA < 150.0)   //schmitt zone for 150ma
        {
            if (limitedSpeedRPM > YENI_REF_HIZ_FROM_RS422)
                akimHizLimitleyici = 0; // In hysteresis zone if new RPM value is low from limited RPM valu, it run 
            else
                akimHizLimitleyici = 1; // In hysteresis zone if new RPM value is high from limited RPM valu, it doesnt run 
        }
        else        // normal proccesing 
        {
            limitHizAtamaSwitch = 0; //for new RPM value assign 
            akimHizLimitleyici = 0;
        }
    /*-----------------------------------------------------------------------------------------------------------*/

    Here my code for current limit depends on speed RPM.

    I try to limit DC bara current with speed control of command value but my oppinion there can be another way with control id iq max min parameters. I already calculate DC bara with shunt resistor. If I find out how Id Iq values gives us how much current(their values come with per unit ), I can control them. And also they change through wiht DC bara voltage I know.