pmsm rotor alignment

cancel
Showing results for 
Show  only  | Search instead for 
Did you mean: 

pmsm rotor alignment

Jump to solution
2,093 Views
Sriram
Contributor IV

Hello,

I am trying to run a motor prototype with the modified version of the pmsm closed loop example. I want to know what happens during the alignment sequence. When i start the code by pressing the sw1 button , the execution starts and the motor shaft rotates a bit then stops and draws a large amount of current. 

I changed the polepair values and current limits and the other parameters.Is there something else i should change to get the rotor align process working. ps i havent changed the pi tuning according to the motor i m using . will that affect the align process.

Thank you.

#MBDT

0 Kudos
1 Solution
2,013 Views
stefanvlad
NXP Employee
NXP Employee

Hi Sriram,

 

Since there are multiple unknowns about your hardware and motor setup, i suggest having them better understood and modify the model parameters I have told you previous.

Increase the Voltage and Current limits and all the other needed parameters, take a good look at all the parameters and apply the correct values for each. 

Also update the model from the latest Toolbox release 4.3.0, to update/add the block check_range:

stefanvlad_0-1668088442573.png

Please read carefully this and my other replies and apply the suggestions to your model.

Have a good day!

View solution in original post

6 Replies
2,055 Views
Sriram
Contributor IV

Hello stefanvlad , 

Thanks for the reply. I went through the speed control module. I am modifying the pmsm closed loop example from the nxp blockset s32k144 examples. But here in the example file there is no separate speed or torque control modes available. If i want to run a 120V motor with a rated current of 100 A what parameters should i change apart from the no of poles and pi values of speed and current controller.

And how to choose the Iq and Id reference. Are these values in per unit basis or is it actual value . Attached the base model we are working with. This model was sent by adrian tudor from nxp since we had some issues running the default example model.

Thank you

0 Kudos
2,041 Views
stefanvlad
NXP Employee
NXP Employee

Hi Sriram,

I have looked into your attached model, but it seems there are no modification from the standard model and also it is an older version of the model. We have made some updates for it. I do recommend downloading the latest 4.3.0 Toolbox from: NXP Model-Based Design Toolbox for S32K1xx MCUs - ... - NXP Community

Also, what kind of motor are you using? and what hardware for invertor and all details

Since the model we provide is designed to work on the Kit we deliver: S32K144 BLDC/PMSM Development Kit | NXP Semiconductors. It has 12V power supply and not 150V. This is a problem since you will need to rescale a lot of variables for the control system to work with this High Voltage.

First download latest Model-Based Design Toolbox for S32K1xx – version 4.3.0

Then you will need to modify parameters from Model Explorer: 

stefanvlad_0-1668012861283.png

You will need to modify all those parameters for a motor running 150V with 100A.

0 Kudos
2,028 Views
Sriram
Contributor IV

Hello stefanvlad,

We are using IPMSM rated for 120V  and a inverter which is rated upto 240V 100A. We are planning to test the closed loop model by running the motor at 120V.

I have sent you the modified model we made in private chat. We replaced the hall sensor based positioning with the sine cosine encoder measurement . Current measurement will be done by hall sensors.

0 Kudos
2,029 Views
Sriram
Contributor IV

Hello stefanvlad,

    We are using a separate IPMSM motor rated for 350V and the inverter specs are 240v 100A.We modified some parameter from the base model i sent you earlier. sending you the modified model in private chat.

 

0 Kudos
2,014 Views
stefanvlad
NXP Employee
NXP Employee

Hi Sriram,

 

Since there are multiple unknowns about your hardware and motor setup, i suggest having them better understood and modify the model parameters I have told you previous.

Increase the Voltage and Current limits and all the other needed parameters, take a good look at all the parameters and apply the correct values for each. 

Also update the model from the latest Toolbox release 4.3.0, to update/add the block check_range:

stefanvlad_0-1668088442573.png

Please read carefully this and my other replies and apply the suggestions to your model.

Have a good day!

2,075 Views
stefanvlad
NXP Employee
NXP Employee

Hi Sriram,

Have you looked into the article Module 8: Speed Control - NXP Community check Fig. 31: Rotor Position Conditioning?

It is normal for the motor to draw a large current during the alignment phase, as this will block the motor shaft with that high current, making a standstill of the rotor.

Then the motor control code will start open loop phase, and have a start-up ramp, increasing the speed until it reaches 400 RPM and then it will go to closed loop, using the Hall sensors to read the motor speed and correct the speed loop.

This should help a bit more,

Look in PMSM_ClosedLoop_s32k144/S32K144 EVB/SlowLoopControl/Alignment_vs_NormalOp_Sequence

There are 2 constant blocks: Torque Reference for Alignment (iQ-ref) and Flux Reference for rotor alignment (iD-ref). They will impose the values for currents during the alignment phase. 

You can modify these values a bit but be careful and do not increase too much these values.

Hope this helps you