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.

pmsm3_1 Application Note: "sensored FOC system for controlling speed responses"

Other Parts Discussed in Thread: CONTROLSUITE

Hi all,

I am implementing pmsm3_1 on a F2808.

In a PMSM the application can not now the position of the motor before it has received the first index pulse.

I am wondering how the application note handles not knowing the position of the motor right after it is started.

I can not find the answer in the documentation or the source code.

 

Thanks,

/Al

 

  • There are various ways to handle this situation depending on application. If your applications allows then one simple way is to run open loop until you get the index and close the system with position information. I haven't looked at TI code for a long time now and am assuming they initially run open loop until the system closes the loop when position information becomes available.

     

  • right,Ti havn't given out the right code sample, from pmsm3_1 to pmsm3_4.

    But I got my own answer in one of my dream one night at once.

    i can use speed loop or position loop startting the pmsm motor directly without open loop,

    the method haven't been taken on in any articles (ieee and chinese degree i have search)

     

    akljh007@163.com

  • Dear Jack Liu,

    My name is Murat Karabacak,
    firstly, i appreciate you because of the code you developed.

    I want to ask you a question if would you mind.

    You posted a message in which you mentioned that you are succeed in starting PMSM directly without open loop operation.

    I am working same project now, but i am afraid of that PMSM can draw high current in transient if i start PMSM directly without open loop.
    Besides, how can you set PMSM initial position to ZERO or any degree you wanted? Because, initial position error is set to about zero with open loop operation

    In this context, i have several question.

    1- you started PMSM directly without open loop. But, did PMSM draw high current?

    2- When you started PMSM directly without open loop, But, how could you set PMSM initial position to zero or any degree.

    3- The code you developed, if would you mind, could you send me please?

    I am so sory for your valuable time, thanks in advance.

     

    muratkarabacak@duzce.edu.tr

  • 1. Regarding the initial position detection and angle offset compensation, please refer to the Sensored PMSM project in ControlSUITE. In the lab manual, there is a simple angle offset compensation subroutine that helps the user to calculate it. Should be build level 3.

    You should be able to find the doc in C:\TI\controlSUITE\development_kits\HVMotorCtrl+PfcKit_v1.3\HVPM_Sensored\~Docs when you download controlSUITE.

    2. Following the suggestion above, no open loop start up is needed, therefore, the current is controlled through the current loops. As long as the user apply a reasonable amount of IqRef, high transient currents are not expected at all.

     

    Regards

    Bilal

     

  • Dear Bilal,

    First, i have understood no high currents in transient.

     

    But, please let me tell you more details about my project.

    I have tried to develop a new sliding mode obderver for PMSM sensorless control so as to improve low speed perofrmance of PMSM. So, i have succeeded and obtained sufficent performance improvement in simulations.

    I must prove performance improvement of this new sliding mode observer i developed in experiments, too, but this just depends on known exact initial position angle.

     

    if i read hall signals, the initial position angle is any degree between -30 , +30. So, i cant know exact initial position angle when i start the PMSM directly without open loop.

    ***After motor is started, compensation is come about and position angle error is fixed to zero. I know this. Nevertheless, the fact of unknown exact initial position angle is not changed. If i am fault plese tell me. 

    if i can know exact initial position angle, I can see how the convergence of my sliding mode observer acts in different initial position angles. it is necessary for me to know exact initial position angle to show concergence of SMO in garphics, for example, like 0, 30 60.

    For example, The graphics for 15, 30 and 45 initial position angles show convergence of SMO.

     

    That is the question, Is there anyway for me to know exact initial position angle?

    I hope i can express myself.

    Thanks in advance.