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.

MSPM0G3507: Sensorless MSPM0G3507 + DRV8353RS

Part Number: MSPM0G3507
Other Parts Discussed in Thread: TMS320F28069M

Tool/software:

Ladies and Gentlemen,

I purchased LP-MSPM0G3507 and DRV8353Rx-EVM boards.
When we move the motor we have to constantly change max current.

From MSPM0 SDK 2.02.00.05 I installed the “Sensorless FOC PMSM Motor Control” project.
The project is working well.
But there is no way to change MAX motor current when motor is running.

I then installed the "Sensored FOC PMSM Motor Control" project from MSPM0 SDK 2.02.00.05.
The project is working well.
And that's when I found this opportunity. g_pMC_App->foc.closeLoop.currentReferenceSqrMaxSet.
And that works well.

In this project algoLib is there. For “Sensorless FOC PMSM Motor Control” algoLib is missing, but FOC_Lib.lib is connected.

  1. Can you tell me how can I adjust this max current when the motor is rotating?
  2. Or maybe you have algoLib available for sensorless project?
  • Hi Dennis, 

    Can you try copying the algoLib folder into your current project and add the reference to it in your main code?

  • No. That is not possible.
    Sensored FOC has some components that do not exist in Sensorless FOC and vice versa.
    For example: Sensored FOC has Hall control and Sensorless FOC has ISD (Initial Speed ​​Detection Configuration) and Reverse Drive Configuration.
    Such building blocks are compiled purely into FOC_Lib.lib. (Sensored FOC)

  • Hey Dennis, let me check internally to see if there is a workaround for this. I will get back to you shortly.

  • Hi Dennis, after speaking with the internal team we have parameter called Ilimit for setting max current. The variable you mention is internal algo variable and that can be configured only temporarily. I am getting more information on this, but this should at least get you headed in the right direction.

    -Brian

  • Unfortunately, I created my question twice and can say again that I know ILIMIT, but that doesn't help me much.
    https://e2e.ti.com/support/motor-drivers-group/motor-drivers/f/motor-drivers-forum/1439759/drv8353rs-evm-sensorless-mspm0g3507-drv8353rs/5524718#5524718

    How can I currently control:

    1.With Sensorless FOC PMSM Motor Control I can only set ILIMIT (current limit in closed loop) with 4A (converted to iq)

    2. Then start the motor.

    3. Rotate the motor (10 seconds).

    4. Stop the motor.

    5. Adjust ILIMIT to 2A again.

    6. Start the motor again.

    In my opinion this is too complicated instead of adjusting the current while turning the motor.

     
  • Hi Dennis,

    The intention behind the Ilimit is to limit the Maximum torque applied to the motor at a given instant in their application. Its more like a protection feature to not exceed the maximum torque supported by motor. We expect that the max load torque shouldn't change dynamically for a given application. And its computationally intensive to compute the associated parameters regularly. So we have limited updating this configurations dynamically.

    Can I ask what  the use case is for dynamic control the max torque?  If the application requires torque control you can switch to Torque mode by setting the control mode configuration in closeloop1 register to "2".

  • Our company 3S Antriebe builds devices for buried valves and ball valves (water, sewage, gas).

    Buried valves or ball valves must be opened or closed with a specific speed ramp profile. That's why speed control is a MUST for us. When starting to rotate, you almost always have to give more torque, but then, when the motor is rotating, you absolutely have to reduce the torque so that you don't damage the valve.

    Previously (2015-2016) I already developed a power electronics based on Texas MCU (TMS320F28069M with Insta Spin). And there I used the "STVELCTL_setOutputMaximums" function to adjust the "SpinTAC.VelCtlOutputMax_A" value when the motor was rotating. And that worked well.

  • Hi Dennis, we are actually coming up with Open Source version of FOC in the next SDK release planned for end of this month.. This will allow full control on the parameters similar to Sensored and you can adjust current limits on the fly.

  • Thank you for this pleasant message. Working with Texas is fun.