Running Motor Tuner on my own Motor

取消
显示结果 
显示  仅  | 搜索替代 
您的意思是: 
已解决

Running Motor Tuner on my own Motor

跳至解决方案
1,307 次查看
jacob_andrade
Contributor II

Hello,

I am trying to run the Motor Tuner on a Brushless DC Motor that I have.

It is a 24VDC, 0.6AMP (0.42AMP RMS), 500RPM, 15OZ-IN, 2 Pole Pair motor.

I determined the number of pole pairs by running a constant DC current through two of the motor's phases and counting the number of natural resting spots, which was 2.

Every time I run the Motor Tuner with the values above, I get stuck on the "Spin!" stage with either Motor Startup Faults or "Motor Tuner was not unable to spin your motor as expected..." errors.

I tried increasing the RPM on the information to 1000RPM or 2000RPM. This seems to give me a more precise inertia value, but I still get the errors on "Spin!". I also tried increasing the rated current to .85AMP RMS or 1AMP RMS, but all with the same results.

How can I get Motor Tuner to work with my motor?

标签 (1)
1 解答
1,070 次查看
linestream-adam
Senior Contributor I

Jacob,

When you do the Spin! stage does the motor begin to rotate? Is your motor able to transition into closed loop? 

Your motor has a very low rated speed, you might try going into Motor Manager, clicking on the Speed Control tab and increasing the crossover speed found under the Startup section.

在原帖中查看解决方案

5 回复数
1,071 次查看
linestream-adam
Senior Contributor I

Jacob,

When you do the Spin! stage does the motor begin to rotate? Is your motor able to transition into closed loop? 

Your motor has a very low rated speed, you might try going into Motor Manager, clicking on the Speed Control tab and increasing the crossover speed found under the Startup section.

1,070 次查看
jacob_andrade
Contributor II

My motor will begin to rotate, but then immediately it starts to stutter and go in random directions.

I only saw the motor working in closed loop one time, but when I tried to replicate it, it didn't work again.

After playing around with the "Speed Threshold" under the Startup section in the Speed Control tab, I am noticing that the violent stuttering is only happening around the RPM that the motor tries to enter into closed loop. I have tried raising the "Speed Threshold" to different values, but as soon as the motor's RPM gets close enough to the set value, the motor stutters.

0 项奖励
1,070 次查看
linestream-adam
Senior Contributor I

Can you run in torque mode? Try using that mode and setting a positive q-axis reference current. If that is able to spin the motor than the issue is the speed loop tuning. You should reduce the speed loop bandwidth and attempt the inertia identification again.

1,070 次查看
jacob_andrade
Contributor II

I tried running the motor in torque mode and it worked well. Also, upon playing with the speed loop bandwidth, I was able to enter into sensorless closed loop just fine.

From there I tried out my motor and encoder with sensored position and it worked flawlessly!

I just have 2 questions.

1. How is the closed loop control performed on a sensorless system? Is it done using the BEMF?

2. When using a sensored system for position, I was expecting to see the motor jump to an initial starting position. However it looks like after finding the motor parameters and trying to "Start/Stop Position Control" in the "Position  Control" window, the motor just immediately knows where it is. I was wondering how this was achieved, because currently our implementation on a different system uses Hall sensors to determine the motor position upon startup. In other words, how does the system achieve absolute knowledge of the motor's position right upon startup?

0 项奖励
1,070 次查看
linestream-adam
Senior Contributor I

Jacob,

Great! I'm glad it is now working. 

1. On sensorless systems, the BEMF is estimated using the motor phase current in order to get the angle of the rotor instead of the reading the encoder. Everything else (for the most part) is the same between sensorless and sensored.

2. The reference projects force an alignment step on the motor in order to calibrate the encoder and the rotor. This is done at first power up. Every subsequent Start/Stop, the encoder is tracked the whole time and so therefor it can start from wherever the motor is. You can force the system to do this alignment step by going to the Position Control tab and setting "Is Encoder Aligned" to No.