Calculation of the radial force of the rotor of a motor

General discussion about Elmer
Post Reply
Jenwel
Posts: 27
Joined: 22 Jun 2017, 07:07
Antispam: Yes
Contact:

Calculation of the radial force of the rotor of a motor

Post by Jenwel »

Hi,
I am anlyzing the force acting on a rotor of the switched reluctance motor in a 2D transient model.
The solver "MagnetoDynamics2D" is used to solve the potential, and the "MagnetoDynamicsCalcFields" is used to extract the distribution of flux density, and also the magnetic torque and force acting on the rotor.
I find the nodal force are saved in the vtu results. But I want to know how to calculate the scalar radial force in X and Y direction acting on the rotor, and save them in the .dat file?
I know the force acting on the rotor may be summed, but I do not know how to call the related variables in Elmer.
The sif and mesh files are attached.

Thank you in advance!

Best Regards
Jenwel
Attachments
SRM_force.zip
(1.65 MiB) Downloaded 390 times
Jenwel
Posts: 27
Joined: 22 Jun 2017, 07:07
Antispam: Yes
Contact:

Re: Calculation of the radial force of the rotor of a motor

Post by Jenwel »

Hi guys,
I have solved the problem, after I slightly modified the source code in the file "CalcFields.F90".
An additional subroutine is added and can be called by the subroutine "MagnetoDynamicsCalcFields".
Now, the solver can also solve the electromagnetic force acting on the steel in x and y direction, for a 2D Magnetic Problem.

The modifed file "ModifiedCalcFields.F90" and the file "Utils.F90" are attached, if anyone needs that, please compile them to "MagnetoDynamics.dll" via the compiler Elmerf90.
The previous dll file "MagnetoDynamics.dll" in the directory of Elmer should be replaced by the modified compiled file "MagnetoDynamics.dll".
Besides, in the sif file, the body for calculating the electromagnetic force should be identified by "Force Groups = Integer 1", as follows:

Code: Select all

Body 21
  Name = RotorIron
  Equation = 1
  Material = 2
  Body Force = 1
  Torque Groups = Integer 1
  Force Groups = Integer 1
End
Then, the scalar electromagnetic force in x and y direction can be calculated as the result in the dat file.

Good luck!

Jenwel
Attachments
ModifiedCalcFields.F90
(114.43 KiB) Downloaded 353 times
Utils.F90
(18.87 KiB) Downloaded 344 times
hory
Posts: 1
Joined: 13 Dec 2018, 00:50
Antispam: Yes

Re: Calculation of the radial force of the rotor of a motor

Post by hory »

Thank you for sharing you work.
Though I am a newbie to Elmer FEM, I happen to find out how to output Magnetic Force as scalar results.

From your attachment: ./Questions\transient_force.sif, I paste the setup of Solver 5 for convenience:

Code: Select all

Solver 5  
Exec Solver = After timestep
  
Equation = scalars
  
Procedure = "SaveData" "SaveScalars"
  
Filename = transient_results.dat
  
Output Directory = results

Variable 1 = Time
!Variable 2 = Variable nodal force
!	REAL MATC SUM tx(0) 
!Operator 1 = int "21"
End
In this Solver, maybe you should add "Save Component Results = Logical True".
I got this hint from another post
viewtopic.php?f=3&t=5197&p=18490&hilit= ... fcb#p18490

By the way, I am also working on a project of bearingless motors :D

Warm regards,
Jiahao
Jenwel
Posts: 27
Joined: 22 Jun 2017, 07:07
Antispam: Yes
Contact:

Re: Calculation of the radial force of the rotor of a motor

Post by Jenwel »

Hi Jiahao,
Thank you for your hints.
Actually, all the scalers can be automatically saved, with or without the "Save Component Results".
I do not know the detail reason.

Currently, I am trying to combine the Elmer with MATLAB-Simulink.
My Researchgate is as follows:
https://www.researchgate.net/profile/Jingwei_Zhang6

If you have any question or idea to share, you are more than welcome to contact me.

BR
Jenwel
Post Reply