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.

TMS320F280049-Q1: istanspin issue when motor loaded - not spinning

Part Number: TMS320F280049-Q1
Other Parts Discussed in Thread: C2000WARE

Hi everybody , 

My EVM is Boostxl_drv8320rs + F280049C. The SW I’m using comes from C2000Ware_MotorControl_SDK_5_03_00_00, which project path is “C:\ti\c2000\C2000Ware_MotorControl_SDK_5_03_00_00\solutions\boostxl_drv8320rs\f28004x\ccs\sensorless_foc\ is07_speed_control_coff.projectspec”.

I am using Lab07_speed_control for debugging.  The motor can startup successfully with no load, and operate at a minimum frequency of 1 Hz. But with full load, it startup failed. When the load is reduced sufficiently, the motor can startup successfully. I increase the target frequency from 1hz to 4hz, the maximum load also increases accordingly. It seems that the lower the target frequency, the smaller the maximum load that can be successfully started.

I tuned the parameters according to the InstaSpin_guide, including closed loop PI parameters, forced angle etc. But it seems useless.

in attach you get  more details and screenshots -  no current limitation on power supply 

please what is wrong ?

thank you 

BR
Carlo instaspinISSUE 2.docx 

 

  • Carlo,

    Looks like this one got assigned incorrectly on e2e.  Are you still facing issue here?

    THanks,
    Jason

  • Hi Jason 

    yes   they seems not to have solved .  please any suggestions ? 

    thank you 

    BR
    Carlo

  • I am assuming the load is based on the speed. Due to unavailability of flux the motor might not startup under load at very low speeds.

    What is the frequency that motor needs to be start under full load ? Can you try to startup at 10 Hz under full load ?

    Other thing you can try is to start at low speed without any load and then add the load, once motor is running.

    The other idea is to start the motor with some +Id reference at start ?

    Let me know, if any of the above parts work.  

  • Hi Akshay,

    The full load starting frequency should be as low as possible. I think it should be at least 3 to 4 HZ. Because our application is an oil pump that requires cold start.

    I tried to startup at different frequency under full load, which min frequency is 8HZ, the rotor wobbled from side to side but eventually started successfully. And motor start with no load and then add the load to full, the lowest frequency is 6 HZ. 

    As for the +Id reference, I increased the id value from 0A to 2.5A(Max Iq 14A), the min frequency is approximately 5 HZ. Then continue increasing the Id value, no significant improvement.

    The image shows Pi and motor parameters.

    Do you have any good suggestions? Thank you very much!

  • Hi Jiawen,

    I think the PI and motor parameters look good. I could only see one more issue is the motor inductance values. Is the motor SMPMSM or IPMSM ? The current TI method, it provides an average common value for Ld, Lq. If the motor is IPMSM, correct values for inductance with saliency could also improve the p[erformance. One more part is, at high current (full load condition) the inductance gets saturated, and the value will be smaller than the inductance values at no load. This is very machine specific phenomenon. What you could do it try decreasing the inductances a little for each high load startup conditions. 

    Otherwise, I think adding the Id to improve the flux is the best choice we could do. There is fundamental problem of the observer is that it depends on the flux and at very low speed especially with full load conditions, the observer might not work as intended. As you have mentioned, increasing further Id, did not improve the performance, which is a fair observation. Try higher Id and decrease the inductance value to check for the performance. If not, this is the best possible lower speed we could control with the observer. Let me also check with some engineers here, if they could help with some additional tricks. 

    Worst case scenario, to run the motor at even lower speed under full load, try going for high frequency injection based speed/angle observer method.  They have better performance at lower speed as they don't depend on flux or b-emf.  

  • Hi Akshay,

    Thank you for your reply!

    The motor is IPMSM. The inductance parameters I used were obtained through the Lab5 motor parameter identification. I don't know it provides an average value. I have modified it to use the actual value measured via the bridge.

    As you suggested, I decreased the Lq value by 18% when full load startup. And increased the id value. When the Id is 7.5A, the min full load startup frequency is 2HZ. I think it is worked. Increasing further Id, did not improve the performance. I think 2HZ is maybe the lowest speed of the flux observer. It can meet my requirements, but I'm concerned about that high Id(7.5A) will limit the Iq and torque. If you have some additional tricks, please share with me. 

    The high frequency injection method you mentioned,  It seems to have better low speed performance. I don't find in the InstaSPIN lab projects. Could you provide it to me? I want to compare it with flux observer. Thank you in advance.

  • Hi Jiawen,

    I think Id injection is the last resort we have. It's true that the Id injection might not be idea, but if it's just for to start the motor then it should not be an issue. 

    The idea is to start with high Id to start the motor at full load, and then gradually decrease the Id as speed increases. I feel motor should handle the motor should handle more than rated current for short amount of time. However, if the requirement is to run it continuously at low speed, then that's the issue. I guess, this is a compromise. 

    I don't think so TI has it as a part of InstaSPIN lib or available open source. I need to check with some engineers here. 

  • Hi Akshay,

    I get you idea. The oil will melt when the motor startup successfully, then the speed increases. I will test the Id injection method continuously.

    As for the high frequency injection, if you have any results, please let me know.

    Thanks a lot!

  • Unfortunately, we don't support it as a part of InstaSPIN lib. However, there are tons different HFI methods available in the literature. You can always try to implement the same on your own. 

  • Okay, I will try to implement the HFI methods. If have any questions, could I ask you?

    Thank you in advance!