Low speed, startup and stable RPM with IMD111T + power board

Announcements

From sunburn to sun earn – we’ve got the power! Watch our #poweringgreen videos now.

Tip / Sign in to post questions, reply, level up, and achieve exciting badges. Know more

cross mob
lock attach
Attachments are accessible only for community members.
n6xb
Level 2
Level 2
First solution authored 10 replies posted 5 questions asked

Greetings!  I have a few questions from a newbie.

I am using the EVAL-M7-D111T and LVMOS driver board and have MCE Wizard parameters set for my 24V FAN motor.

1. My motor does not seem to want to run below 500 RPM.  What parameters can I change to improve this performance at lower speeds?  My desired RPM range is 200-2500 RPM.

2. My motor startup with MCE Designer seems a little unstable and takes about 2 seconds to start up with some jitter.  How can I get a smoother startup?

3. When running at 500 RPM, the actual RPM varies quite a bit.  Please see attachment.  How can the parameters be set to allow for a more stable RPM?  I noticed that the RPM does get more stable when the motor has a load attached.

Thank you!

0 Likes
1 Solution
psb
Moderator
Moderator
Moderator
250 sign-ins 25 solutions authored 100 replies posted
  1.  If the motor is running properly at other speeds and not not running properly at lower speeds as pointed out, the major reasons for this are : improper current sensing/improper current sensing gains entered, incorrect sensor less flux estimation, wrong values of parameters entered. 

  2. Flux estimator (as briefed in the above comment) won't give the accurate value of Flx_M (which needs to be 2048 ideally), if either the motor parameters are entered wrong or PLLKp and PLLKi are not tuned properly or if at lower speeds, the value of speed falls out of the Flux PLL bandwidth. These three factors need to be corrected for in order to make the flux estimator work correctly. 

  3. In order to tune the speed loop, refer to section 3.2 of AN2020-12 and also corresponding contents in section 4 of iMotion Software Reference Manual

  4. When it comes to entering motor parameters, the descriptions given in the MCE Wizard must be followed. The value of phase-neutral resistance or inductance is always half of the measured phase to phase values for both star and delta connections

  5. f the speed is not increasing beyond a particular speed reference, then it means that either of the current or voltage saturation limits, as shown below is hit. If the current limit is hit, then the current reference is constant and remains at the maximum value. This won’t change the speed. If voltage limit (Vdqlim) is hit and current limit is not hit, then the motor can’t supply enough torque required by the load and it will eventually come to a halt. This is because the internal current loop gets saturated. Increase the value of rated amps in Qn 2 of the MCE Wizard. Please note that this value is the maximum value of the line to line current of the motor. 
    psb_0-1663245320978.jpeg psb_1-1663245342292.jpeg

  6. For the starting, please implement the Initial Angle Sensing algorithm (Qn 15) or Zero speed catchspin or a combination of both.  I would suggest to try the initial angle sensing first, and then catchspin as well if needed. This also avoids the reverse rotation of the motor during startup unlike in parking or open loop angle methods. Initial angle sensing algorithm doesn't work well if the motor parameters are not entered correctly.
Best Regards,
Sai

View solution in original post

0 Likes
11 Replies
psb
Moderator
Moderator
Moderator
250 sign-ins 25 solutions authored 100 replies posted

Hello @n6xb 

  Can you please share the corresponding .mc2 MCE Wizard file  and the motor datasheet so that we can look at the input parameters and come back with further analysis. 

I also want to know a few things. 

1. My motor does not seem to want to run below 500 RPM.  What parameters can I change to improve this performance at lower speeds?  My desired RPM range is 200-2500 RPM.
This is with or without load ? And is this happening always (while starting at low speed, going from high speed to low speed) ? For the given range of speed, 500 rpm doesn't seem to be a lower speed with respect to the closed loop control constraints.

2. My motor startup with MCE Designer seems a little unstable and takes about 2 seconds to start up with some jitter.  How can I get a smoother startup?
Not sure if the issue is with MCE Designer or communication or the input parameters in the MCE Wizard. Is this occurring at only some specific conditions (ex : with load, low speed startup, etc) or at all conditions ?

3. When running at 500 RPM, the actual RPM varies quite a bit.  Please see attachment.  How can the parameters be set to allow for a more stable RPM?  I noticed that the RPM does get more stable when the motor has a load attached.
This can be rectified with the tuning of control loop accordingly by defining the required transient response needed. 

Thanks,
Sai

Best Regards,
Sai
0 Likes
lock attach
Attachments are accessible only for community members.
n6xb
Level 2
Level 2
First solution authored 10 replies posted 5 questions asked

Thank you Sai!  Attached is my motor file.  I had to email my mc2 file as an mc2 file will not attach.

1. My motor does not seem to want to run below 500 RPM.  What parameters can I change to improve this performance at lower speeds?  My desired RPM range is 200-2500 RPM.
This is with or without load ? And is this happening always (while starting at low speed, going from high speed to low speed) ? For the given range of speed, 500 rpm doesn't seem to be a lower speed with respect to the closed loop control constraints.  It does not seem to matter if it is with or without load or if it is from high speed to low speed or starting at high or low speed.  I checked it again, and the motor becomes unstable at 400 RPM.

2. My motor startup with MCE Designer seems a little unstable and takes about 2 seconds to start up with some jitter.  How can I get a smoother startup?
Not sure if the issue is with MCE Designer or communication or the input parameters in the MCE Wizard. Is this occurring at only some specific conditions (ex : with load, low speed startup, etc) or at all conditions ?  Conditions do not seem to matter.  The motor will jiggle for a second, rotate CCW 90 degrees, then begin normal rotation up to the programmed speed.

3. When running at 500 RPM, the actual RPM varies quite a bit.  Please see attachment.  How can the parameters be set to allow for a more stable RPM?  I noticed that the RPM does get more stable when the motor has a load attached.
This can be rectified with the tuning of control loop accordingly by defining the required transient response needed.   Which K parameters would you suggest I adjust in the speed loop?

4. I also noticed that the RED light/GREEN light will not stop/start my motor when using the VSP input with a pot.  The motor just starts without any action on my side.  I must remove the 24V bridge supply to stop the motor.   Is this normal?  

Thank you!

0 Likes
psb
Moderator
Moderator
Moderator
250 sign-ins 25 solutions authored 100 replies posted

Hello @n6xb , 

  Sorry for the delay in response due to the weekend. Can you please attach the .mc2 file as a compressed .zip file. here or send me a private message. 


Meanwhile, let me check the things mentioned and analyze them. 

Thanks,
sai

Best Regards,
Sai
0 Likes
lock attach
Attachments are accessible only for community members.
n6xb
Level 2
Level 2
First solution authored 10 replies posted 5 questions asked

Here is my mc2 file.  Thank you!

0 Likes
psb
Moderator
Moderator
Moderator
250 sign-ins 25 solutions authored 100 replies posted

Hello @n6xb , 

  Thanks for sharing the mc2 file and also the details of various test conditions which are not giving a proper output.  I have a few comments and recommendations for identifying the root cause by ruling out various possibilities. 

1. The flux estimator time constant is 5ms. Make this value somewhere between 8.1ms and 10.1ms, which gives a good bandwidth for the integrators in the flux estimator. 

2. After making the above modification, run the motor with no load, and let us know the startup behavior and also the dynamic and steady state behavior for a given speed input and also the maximum speed the motor can attain. 

3. In case the above step has some issues, kindly repeat the same in the current control mode, which can be set either in the options page in the MCE Wizard or as described in the section 3.1.1 of AN2020-12 . 

Please keep me posted on the findings so that I can suggest for the next steps which can be implemented. 

4. I also noticed that the RED light/GREEN light will not stop/start my motor when using the VSP input with a pot.  The motor just starts without any action on my side.  I must remove the 24V bridge supply to stop the motor.   Is this normal?  

In order to control the speed of the motor using VSP input, then the application control interface in the options page need to be set as VSP input. In other cases, the corresponding GPIO pin needs to be configured accordingly via scripting. 

Thanks,
Sai

Best Regards,
Sai
0 Likes
n6xb
Level 2
Level 2
First solution authored 10 replies posted 5 questions asked

In the Options Page, Current Control mode locks the rotor, although I can turn it by hand.  It draws about 1A.  The rotor does not move, and the motor does make a noisy sound.  I tried adjusting Flx_M and the motor never turns.  Not sure why Current Control will not turn the motor.  I also tried Initial Angle Sensing, and this again immediately triggers Gatekill.  Why do you think Initial Angle Sensing would not work?  Thank you!

0 Likes
n6xb
Level 2
Level 2
First solution authored 10 replies posted 5 questions asked

These tests were done with no motor load:

1. The flux estimator time constant is 5ms. Make this value somewhere between 8.1ms and 10.1ms, which gives a good bandwidth for the integrators in the flux estimator. 

I did adjust the Flux Estimator from 5ms up to 20ms in 1ms steps, and I really did not notice any changes.  When running at 1000RPM, Flx_M = 43%.  (880)  AN2020-12 indicates Flx_M should be around 2048.  Is there a problem here?

I used my fingers just to add some load.  Startup was more unstable, and adjusting Flux Estimator did not seem to make much difference, although it seemed better at 11ms.  With my finger load, in some cases, the motor would rotate backwards and never start spinning correctly.

2. After making the above modification, run the motor with no load, and let us know the startup behavior and also the dynamic and steady state behavior for a given speed input and also the maximum speed the motor can attain. 

startup with no load seems OK.  Although the motor may quickly rotate about 20 degrees rotation in the wrong direction, then rotate in the correct direction up to the target RPM of 1000 RPM.   Also, the motor will not run above 2100 RPM even with no load.  It becomes unstable and runs at some other lower RPM drawing quite a bit more current.  The motor is rated to 3000RPM.  So not sure why this is happening.  Again adjusting flux estimator makes no difference on the maximum RPM of the motor.  Also, the motor will run down to about 50RPM but is a little unstable.

3. In case the above step has some issues, kindly repeat the same in the current control mode, which can be set either in the options page in the MCE Wizard or as described in the section 3.1.1 of AN2020-12 . 

 I am using speed control.  I tried current control by changing it on the Options Page in the Wizard, but the motor would not turn.  But it does make some noise.

I was able to get Initial Angle Sensing working when I increased Gatekill from 58A to 70A.  However, even this does not produce stable motor startup. 

One final item...this is with the fan load.  I have set the PWM frequency to 15khz.  However, the motor does start slightly better running at 20khz.    Startup is quite noisy and can be slow to start. 

Thank you!

0 Likes
psb
Moderator
Moderator
Moderator
250 sign-ins 25 solutions authored 100 replies posted

Hello @n6xb , 

  The Flx_M has to be 2048 at the nominal speed. Did you check the value at 20kHz switching frequency as well ?
  Can you please Enable the fault in Question 70 - Flux PLL Out of Control Fault and check if this fault is occurring.

Best Regards,
Sai
0 Likes
n6xb
Level 2
Level 2
First solution authored 10 replies posted 5 questions asked

The Flx_M at 15khz is 782 and at 20khz it is 815.  So it seems way out of range.   How can I adjust the parameters so that Flx_M is 2048?

In addition, yes, the Question 70 always trips the fault when enabled.

The motor does run much better at 20khz.  15khz does seem to be a problem.  

These tests were done at the motor rated voltage of 24V and with the fan blades attached to provide load.  Catch Spin does not provide any benefit.

Thank you!

0 Likes
psb
Moderator
Moderator
Moderator
250 sign-ins 25 solutions authored 100 replies posted

Hello @n6xb ,

The system has Flux PLL error, which means incorrect value of the estimated rotor flux, unstable startup and lesser maximum speed possible. 

Flux PLL error 

Findings 

  • This has occurred as the value of Flx_M, which is the value of the rotor permanent magnetic flux is incorrect. 
  • The rotor magnetic flux is calculated from the transformation on the alpha-beta values of the rotor flux, which in turn are determined from the sensed DC Bus voltage and  motor currents. The sensing circuit values entered seem to be correct, however I would recommend you to confirm the same in the hardware as well. 
  • Switching frequency affect the calculation of the alpha beta values of rotor magnetic flux, as it is used in the non-ideal integrator which mitigates the DC drift caused by the integration. Kindly refer to 3.2.5.8 of the iMotion Software Reference Manual.
  • The rotor frequency and position are finally matched to the actual one using a PLL, as given below. The value of Kp and Ki which are internally calculated and set by the MCE determine the tracking accuracy of the rotor frequency. 
    psb_0-1655888852434.png

     

    Experimental Data needed

  • Request you to disable the flux PLL fault send us the MCE Designer traces of FluxAngle, FluxMotorSpeed, Flx_M for 15kHz and 20kHz switching frequencies during the starting and also at steady state, at some reference speed where the motor runs smoothly. 
  • In order to change the performance of the PLL above, please tune the PLLKp and PLLKi in the MCE Designer/script, and inform about how that works. Also, refer to sections 3.2.5.5 and 3.2.5.6 of the iMotion Software Reference Manual.
    psb_1-1655889414725.png                             

Issues with the startup

  • Request you to once check according to the section 4.3 of iMotion Software Reference Manual.
  • Please send the traces on MCE Designer of Idfilt, Iqfilt during startup. 
  • I would also recommend to once refer to section 3.2 of AN2020-12 to verify the speed loop settings. 

Maximum Speed of the motor

  • Please give the trace of the DC Bus voltage, Id, Iq to the motor when the reference speed is 2000rpm, 2100rpm, 2200rpm, 3000rpm with and without load. 
  • Once check according to the section 4.4. of  the  iMotion Software Reference Manual
  • Any specific reason why overmodulation is enabled, and field weakening is not ? 

We will get back to you the earliest once we get these results, as these will help us in correlating the system with the root cause of the issues. 

Best Regards,
Sai
0 Likes
psb
Moderator
Moderator
Moderator
250 sign-ins 25 solutions authored 100 replies posted
  1.  If the motor is running properly at other speeds and not not running properly at lower speeds as pointed out, the major reasons for this are : improper current sensing/improper current sensing gains entered, incorrect sensor less flux estimation, wrong values of parameters entered. 

  2. Flux estimator (as briefed in the above comment) won't give the accurate value of Flx_M (which needs to be 2048 ideally), if either the motor parameters are entered wrong or PLLKp and PLLKi are not tuned properly or if at lower speeds, the value of speed falls out of the Flux PLL bandwidth. These three factors need to be corrected for in order to make the flux estimator work correctly. 

  3. In order to tune the speed loop, refer to section 3.2 of AN2020-12 and also corresponding contents in section 4 of iMotion Software Reference Manual

  4. When it comes to entering motor parameters, the descriptions given in the MCE Wizard must be followed. The value of phase-neutral resistance or inductance is always half of the measured phase to phase values for both star and delta connections

  5. f the speed is not increasing beyond a particular speed reference, then it means that either of the current or voltage saturation limits, as shown below is hit. If the current limit is hit, then the current reference is constant and remains at the maximum value. This won’t change the speed. If voltage limit (Vdqlim) is hit and current limit is not hit, then the motor can’t supply enough torque required by the load and it will eventually come to a halt. This is because the internal current loop gets saturated. Increase the value of rated amps in Qn 2 of the MCE Wizard. Please note that this value is the maximum value of the line to line current of the motor. 
    psb_0-1663245320978.jpeg psb_1-1663245342292.jpeg

  6. For the starting, please implement the Initial Angle Sensing algorithm (Qn 15) or Zero speed catchspin or a combination of both.  I would suggest to try the initial angle sensing first, and then catchspin as well if needed. This also avoids the reverse rotation of the motor during startup unlike in parking or open loop angle methods. Initial angle sensing algorithm doesn't work well if the motor parameters are not entered correctly.
Best Regards,
Sai
0 Likes