Doing the Math

Wanders, thanks for fixing the link; that is a bountiful resource, no doubt! Some parts are taken directly from the book, though there appears to be quite a bit of new information in there as well. It will take some time to absorb what was expressed. The challenge is that some of the math is not intuitive and there are leaps of faith between equations; this is where I need to do the proofs myself least I become a tinker before my time. :wink:

Again, thanks Wanders for this bright gem <nods>

Most agreeably appreciative, KF
 
Sorry if this has been covered in previous posts (I have a printed copy of this entire thread right up to the point where I started adding posts) but I was unable to find a definitive answer – I bet I skipped right over it.

Anyway, seen as you have probably discussed it, in a multi-stage rotor design, would the rotors between stators (So not the end rotors) need any magnetic material between the magnets, if you used both sides of said magnet? As opposed to doubling the magnets up on the one rotor (a magnet either side).

Does that make sense? Basically do you need a magnetic metal rotor between stators in a multi stage AF motor? Or could it be composite (carbon fibre) with a single set of magnets embedded in the rotor – one face facing the stator on the left and the other face facing the stator on the right. Is a metal rotor needed to help focus the magnetic flux in this instance, or will the magnets be sufficient?

Again I’m sure this is covered somewhere but I just can’t seem to find it - or concentrate on my normal work…”damn holiday mode” :wink:

EDIT: Found my answer in the following paper: http://www.asiansaldo.com/_modules/download/download/pdf/Multi%20stage%20Axial-flux%20Pm%20machine%20for%20direct-drive%20railway%20traction%20applications_oct05.pdf
In a multi-stack AFPM the flux driven by magnets passes axially from a north-pole on one rotor to a facing south-pole on the other, as shown in Fig. 1. Thus, only the external rotor discs must be made of material with good magnetic properties (typically mild steel), since they are used to provide a path for flux. The intermediate ones, on the other hand, are used merely for mechanical support of the magnets, and so light weight non-magnetic materials can be used for their construction thus enhancing the compactness and lightness of the machine.
 
MM,
The simplest answer goes like this:

  • I am studying an ironless solution. At the start of the FEMM Studies I evaluate a 3R2S (3 rotors, 2 stators) using Halbach Array (HA) on the ends and non-Halbach in the center. The Non-Halbach Array (NHA) has the exact same magnets as the HA except that the Left-Right magnets are removed.
  • FEMM Studies Part II evaluates multiple rotors and stators to see how far the flux degrades which each addition.
  • FEMM Studies Part III evaluated slapping 2R1S HAs together for comparison.
  • FEMM Studies Part IV follows after the Search for Spock and is The Voyage Home. Just checking to see if yer awake; evaluates 2R1S & 3R2S side by side for 4, 5, and 6 mm sizes.
… and on it goes with different configurations. In all, I am using Aluminum 7075 to capture the magnets and the Stator. This alloy is the same strength as high-grade steel at 40% of the weight, and lucky for us ~ relatively inert to magnetic flux.

I also evaluated many configurations using NHA with a Flux Ring instead just to see the performance differences in FEMM (many of these studies are not published because they were extensive, and in the end – I prefer the simplicity of the HA end-caps).

Fastening:
Specifically, HA magnets are glued to the face of the metal as indicated by positioning in the multitudes of drawings posted. However the NHB magnets are centered within the plate since the forces acting upon them are essentially equal and self-canceling. The adhesive would need to be heat-cued but at a temperature below the limit which degrades the magnets. I haven’t bothered sourcing the adhesive yet because it appears to be straight-forward to resolve. Fasteners could be used as well, though I do not plan so with my design just yet; it all depends upon your application and where you want to go with it.

It has been discussed either here or elsewhere that carbon fiber acts like a conductor if the copper is touching. This may be the reason why some references suggest fiberglass-epoxy. Frankly I was going to use an aluminum backbone overlaid with fiberglass for my stator because the aluminum – regardless of alloy – has better thermal-transfer qualities over just about everything except copper and silver. They don’t make structural materials out of copper or silver… :roll:

Does that provide enough answer for you brave lad? :)

Disclaimer: Just to be clear, I have not built an AF motor yet, although I hope to do so soon within months. :)

The part that is blocking me from further progress is the Litz wire. I did note that Mr. Gieras’s examples in that last sparkly gem of data did not appear to use Litz wire of any sort; it looked like plain magnetic wire to me. However – I am a competitionist of sorts and greatly desire to follow up and calculate a solution with same, leaving no stone unturned. <nods> There is however a small fear that like the Epic Battery Bag, I’ll perfect a design and then not be able to source qualified talent for fabrication. Why do I feel like a trout lurking for a mate at the spawn of the Industrial Age? Or is it that all qualified talent has retired or moved off-shore? Wouldn’t it be novel to actually build a fabrication plant here in the old US of A like grand-pappy and his grand-pappy did? Heck, just give me a garden and garage; I’ll do it myself! :twisted:

D’oh! Meditate, relax, breath, eat something savory, listen to the Grateful Dead, bowl of Ben&Jerry’s, pet the kitty, not too hard, where’s my binky… that’ it… just relax…

Whew! KF
 
I am planing some builds like this too!!! So a start of fabrications yes!
One thing you need to concider in an AF ironless motor is the stator housing can not conduct electricity otherwise it will make eddy curents! This is why you see a lot of them made from wood!
 
Well gents I am in the early construction stage of building a small test AF motor. Just a 3-phase, 9 tooth 8 poll, 2r1s motor to test some theories. Nothing special. Normal winding, using 05.mm copper - 5m per tooth. 162mm diameter rotor. 12mmx32mmx3.5mm (WxLxH) N45 Magnets. I've got it held together and cooled with an impeller ring like the launchpoint motor. The stator frame will be wood. Even though I designed it to be made from aluminum I decided that it would result in some cogging effects (can't remember where I read it) so I've gone with the wood...for now.

In case you can't tell I used no mathematics to design it. I have no idea what load it can take, what power output it will produce and even if it will straight up work. I'm just going to buy a hub motor controller and up the power until it hits 80 degrees...or something. lol.

I'm going to use it to learn more about motor control, hall sensor placement, winding techniques and general construction practices. Honestly, winding these coils is the hardest part!

I have to wait until the new year to get my drawings sent off for laser cutting though, I missed the boat by 2 days :(

Also - there seems to be no shortage of skilled people here in Australia :wink: except they're all in stupid Sydney.

EDIT: Forgot to address the reason I was responding in the first place! Thanks for the summary King...I'll be hopefully going with a 4r3s motor (if I get that far) water cooled stators. Long way off though. I see the launch point motor uses carbon fiber spokes for the stator frame but they do NOT touch the coils. *hint*. But I'm definitely keeping all the stators metal free.
 
OK, I've been working on FEMM 4.2 models for a Halbach array, and I'm having very little luck. In particular, for N40 Neo material that is 1/4" thick, with an air gap of 1/4", with a left-right-up-down magnet sequence and square magnet cross-section, I'm not seeing the field magnitude that I expected. Less than 0.7 tesla, on average across an orthogonal pole pair. Considerably less if you average over the entire Halbach array. See image.


So, what gives? I expected closer to 1 tesla. KF, two questions:

1) How did you get your Halbach array model to generate larger fields? Is my 1/4" material too thin?

2) Where did you get your N42 neo material model? Since N42 is very common, can you upload the parameters needed to model this material? My FEMM 4.2 only came with an N40 material model...

Thanks in advance,

wanders
 

Attachments

  • FEMM Analysis.jpg
    FEMM Analysis.jpg
    183.6 KB · Views: 7,341
Wanders, this is how I created my model:

Modeling in FEMM Part 1

  • I own AutoCAD (ACAD), old version but still works. You could also use Illustrator or anything else that can create an accurate drawing. My ACAD can export in different flavors of DXF so I pick the 97’ version being the simplest.
  • Key to creating your model is that it must represent exactly how you are going to fabricate it; make it real-world geometry. With that, all Halbach arrays have touching faces, meaning Left-Top-Right-Bottom (LTRB) repeated over and over with touching faces.
  • The air gap is between the stator windings and the magnet faces perpendicular to the LTRB.
    Then I draw a box around the whole arrangement – and this is to enclose the Air material. Take a look at the image below.

CADmodel-HA.png


  • Some of my lines overlap, though I assure you they are all completely enclosed individual boxes. Blue represent Aluminum 7075; I can give you the specs on that in a moment because it is not a stock material in FEMM. Red represents Magnets; let’s not get lost in the size or widths right now. Yellow denotes the windings.
  • This particular arrangement is what I call a 3R2S, or 3-Rotor 2-Stator layout. The white box encloses the whole magnetic circuit.
    Export the drawing into DXF. If you are using a different editor, export it into something that FEMM can read/import. Now I am going to start up FEMM and give you the exact instructions on how to set this model up.

FEMM:
Your startup may be different than mine as I have preferences set. Mine is set to begin empty; no preloader.
  1. Go to File|New and select Magnetics Problem|OK.
  2. Go to File|Import DXF and browse for your recently-saved DXF file, select Open, accept the default tolerance by selecting OK.
  3. Go to View|Natural to zoom the model so it maps to the largest X or Y dimension fitting the drawing space; you should easily see the entire model bounded by the Box.
  4. Go to Problem and set the units to map to your model; I use MM so I have to change my Length Units to read Millimeters. Set the Depth to map to the length of the magnets. In other words, I have a 20 mm long magnet with a width and height of 5 mm. So the model should represent a bunch of 5mm x 5mm squares and the Depth then becomes the 20 mm length. Make sense? We don’t need to fuss with the Frequency until we start goofing with the windings. Let’s table the windings discussion for now and focus on the magnets problem. Select OK; we are done with this part.
  5. Select Properties|Materials Library. This interface was not well-documented IMO, but here you go… You NEED the Air material and it is the first one we can find without looking. Mouse-down on the Air material, drag it over to the right side where it says Model Materials and drop it. Now you have a copy of the Air material in your model. Simple. Follow me as I add more…
    • Left side, open the PM Materials folder, and open the NdFeB Magnets folder. There should be 5 default materials here. You can modify these later but for now let’s pick NdFeB 40 MGOe and drag it over to the Model Materials.
    • Left side, open the Solid Non-Magnetic Conductors. I made a custom material here. Let’s make one now:
    • Select a material in the folder – doesn’t matter which one. Right-mouse-click it and select Add New Material, and there instantly is “New Material”. Double-click the New Material to see the Block Property panel. We are going to create a profile for Aluminum 7075; you may or not use this in the future – although it figures large in mine. With the Block Property panel, set the following properties:
      • Name: Aluminum 7075
        B-H Curve: Linear B-H Relationship
        Relative ux: 1
        Relative uy: 1
        hx, deg: 0
        hy, deg: 0
        Hc, A/m: 0
        MS/m: 20.88
        J,MA/m^2:0
        Special Attributes: Not laminated or stranded
        Select OK, and your new Aluminum 7075 material is ready for use. Please drag and drop that over to the right side as well.
    We are not calculating the windings right now, but if we did, I’d either select Copper AWG Magnet Wire or the Copper Metric Magnet Wire and the appropriate diameter for a single wind and add that to the Model Materials. But we’re not doing that right now; maybe later. Daylight’s burning and there’s fish to fry!
  6. Now we have Air, magnets, and Aluminum – this is all that is required to create the model. Select OK to close the Materials Library popup.

Part 2 in a moment, KF
 
Modeling in FEMM Part 2

Adding Materials to Blocks
  1. Go to Operation and select Block.
  2. Start dropping Blocks into all the individual boxes within the bounding box, and including the inside of the bounding box. It should look like this when finished, with a bunch of <None> designations.

    FEMMmodel-HA-0.png

  3. Let’s go set the properties. The first one is at the top in the bounding box: Right-mouse-click it so it turns the color RED. Now select the Spacebar; this brings up the Properties for selected block popup. Select the Block type drop-down and change it from <None> to Air, and select OK. Now that area is designated as Air. Simple. Let’s do this now for the Aluminum bits.
  4. Right-mouse-click the left and right plates, and every other block down the center rotor beginning at the top; be sure to skip over the adjoining block. Now we have a bunch of red highlighted boxes, yes? Tap the Spacebar to set them all at the same time: Block type = Aluminum 7075, select OK, and you are done.
  5. The Halbach Array is trickier but it too can be done en masse – you just have to set them in 4ths:
    • Using the image I provided, the magnets will face Top (90*), Right (0*), Bottom (270*), and Left (180*); keep this in your head and I do these next batches.
    • Select the 6 Right-facing magnets, Spacebar, Block type = NdFeB 40 MGOe, and Magnetization Direction = 0 (default), and select OK. Repeat for the next 3 Left-facing, except the Magnetization direction = 180*.
    • Select the 4 Top-facing magnets and set the direction to 90*, and repeat for the 4 Bottom-facing with the direction set to 270*.
    My diagram has two sets of windings and I am going to set the material but not complete the rest of it because that is a different conversation.
  6. Save the Model: File|Save (give it a name).
  7. Now we are ready to evaluate the model. Select Analysis|Analyze; there should be a popup that runs a little status bar then disappears after a brief moment – depending on how quickly your computer processes math. Select Analysis|View Results and you get a new tab with a force representation. Not terribly meaningful.
  8. Just below the Plot X-Y menu is a button that has four colors in a diagonal direction and select it (or select View|Density Plot) to bring up the Dialog popup. Check the Show Density Plot box and select OK. It should look precisely like the image below.

    FEMMmodel-HA-1.png
Part 3 uno momento por favor, KF
 
Modeling in FEMM Part 3

Measuring
I kinda cheat and not do it right because the instructions are not precisely clear to me. However – let me show you the lazy inaccurate method that is definitely not the proper way – and if BTW you should learn the proper way I expect you to tell me so I can remove my dunce cap and myself from the Fool’s Corner and enjoin with you over a beer in celebration at the enlightenment. But first – the cheat:

  1. Look at the menu bar; just below the Zoom menu is a menu box with a two tiny black boxes connected by a red segment. Select that box. Now clock between two points across the air gap between the left HA and center magnet (Non-HA) so it draws a red segment across; it should look like this:

    FEMMmodel-HA-2.png

  2. From the top menu, select Inegrate|B.n (default) and OK which displays the Integral Result.

Before we continue, let me share with you the details of my model used for these diagrams:
  • The Left & Right Aluminum plates are 4.8mm thick.
  • The Magnet Height = 8mm
  • The middle rotor magnet height is also 8mm.
  • The air gap between the magnetic faces is 5mm.
  • The average air gap of the bounding box is 10mm (not terribly important, but don’t make it less).
Back to the Results, my B.n value is 0.880244 Tesla. That’s pretty rocking for wimpy magnets; however I don’t think I can afford the cost per wheel to make this design. It’s nice to dream though. Also, you can also select the Plot X-Y and get some interesting results of value across the gap. The FEMM Help Topics go into more details on what the other measurements mean and how to make them.

Rereading your request, Biff forwarded to me more FEMM materials here on this thread:
Material Library in FEMM

Hopefully this is enough to spur you on your way. :)

Happy Modeling, KF
 
Kingfish said:
Hopefully this is enough to spur you on your way. :)
KF, you never cease to amaze! Thanks for the extensive FEMM tutorial. I had figured out most of this stuff (FEMM excels in neither step-by-step documentation nor user-interface niceties), but it is really useful to have this vast tutorial in a single place.

BTW, if the copper depicted in your drawing are the "into the plane" and "out of the plane" currents of a single phase coil of a (dual) stator, you will almost certainly want to make the coils twice as large in the theta direction (unless there is something I really don't understand about Halbach-array motors). I'm sure you can get your motor to run as depicted, but it may be more efficient with larger coils.

ALSO, regarding getting the average normal B field on a contour, your "cheating" method suffices, but the simple way to get an exact contour directly (say, through one-half magnet phase directly in the center of the gap) is by putting in points (but not lines) before the mesh generation step. I find that the mesh generated can be different, based on where the points are. Anyway, after analysis, the points are still there, and can be used to generate an integration (actually, averaging) contour. If you are using a grid, make sure the grid spacing is no greater than half the air gap distance. Easy!

Thanks again! :D

wanders
 
Wanders you are most welcomed friend. :D

Those are truly choice words. I drew many models and really didn’t give a hoot so much about the coils other than curiosity because the magnetic model had preference. You are correct: Placing two points in the middle where it can bisect the windings is the correct way to do it; I was in a hurry and couldn’t be bothered hence the cheater method. :roll:

Eric has suggested the proper way to get a good model is to rotate the windings through the magnetic flux and take many readings to develop the actual theoretical analysis – but that’s a lot of work when I just want to try various physical geometries, multiple rotors, air gaps, and materials for simple edification. Imagine that I have another series of unpublished models and results using a Flux Ring. The conclusion was: Use the Halbach to reduce the complexity and increase the density up to 10-15% more.

Now I am on the Litz Wire hunt, although paused for the moment as I take care of immediate winterizing needs. Much left to do though.

And – we need sinusoidal controllers to take us there once we build these wheels, right?! :twisted:

<hint hint> KF
 
Kingfish said:
And – we need sinusoidal controllers to take us there once we build these wheels, right?! :twisted:

<hint hint>

Maybe. It certainly would make the motor operation quieter. I read an interesting white paper from PMD (who makes motor controller chips and other things). They have a technique called field-oriented control that looks interesting. PMD claim that it has all the advantages of sinusoidal control with less complexity and control loop error. They make some compelling points, but of course they are promoting their products ...

Regarding Litz wire, the best resource I've seen is MWS WIre Industries.

wanders
 
Modeling in FEMM Part 4

Development of Winding Circuits and calculating Power Output
Now that we have a model with magnets, let us add the windings and circuitry to complete the full model.

CADmodel-HA.png


In the image above we have four tiny boxes that represent the windings in section. We are going to define these as follows:

  1. From the top menu, select Properties|Materials Library. Add a copper winding material. I work in metric units, so I will select Copper Metric Magnet Wire|2.5mm and drag-drop it over into the Model Materials section. Select OK to close the box. Note: I just picked 2.5mm for example; it is worth exploring Litz wire (although you will need to create custom material to do so).
  2. Select Properties|Circuits|Add Property:
  3. Set Name = “i” without quotes. (The name can be whatever you want).
  4. Leave the circuit set to Series if your windings are in series.
  5. Set the ‘Circuit Current Amps’ equal to the value that you think will be the operational Phase Current. As a rule this should not exceed √3 * Battery Current Limit (and we sure hope it is a lot less). Select OK, and OK again to close the boxes.
  6. Select Operation|Block (or pick the ‘Circle around the Node’ button), and then Right-mouse-click the Blocks inside the top two windings so they turn red. Hit the Space Bar:
    • Set the Block type = 2.5mm
    • Uncheck ‘Let Triangle choose Mesh Size’ & set Mesh size = 1.
    • Change ‘In Circuit’ to “i” (or whatever you named it).
    • Set ‘Number of Turns’ to the value that you need (providing they fit).
    • Select OK to close the box.
  7. Repeat these steps for the lower windings with one change:
    • Set ‘Number of Turns’ to the NEGATIVE value that you need. This indicates to FEMM that the current flows in the opposite direction. If you do not set this to a negative number FEMM will not produce useable answers.

Now we are ready to make several important measurements. :)

  1. Select Problem. Insure the Frequency is set to ZERO (0). Select OK to close the box.
  2. Select Analysis|Analyze (goes off and computes), then Analysis|View Results.
  3. Select Operation|Contours and draw a diagonal line across the void of the top-left winding in a manner similarly displayed in the image below.

    AF-FEMM-Contour-Line.png

  4. Select View|Circuit Props and note the results; they are selectable, so copy and paste them into Notepad or Spreadsheet; it’s interesting stuff and we’ll want this for reference in a bit. Just note that these are the values at ZERO rotation.
  5. Select Integrate|B.n to note the Integral Result; again the values are selectable. This is your best average Tesla (at least as best as we can model).
  6. Select Operation|Areas (or the ‘Green box bounded by four points’ button) and click the center of the four winding cross-sections to fill them in a manner similar to below:

    AF-FEMM-Area-JxB.png


    Note: FEMM has a quirky bug and freaks-out occasionally when trying to do this when the color option is plotted out and will flood the whole model in green. Just avoid plotting color when doing this measurement.
  7. Select Integrate|Lorentz force (J x B) and note the y-component given in Newtons. We need this value to meet or exceed the total required Force previously determined at the beginning of the Thread.

Let’s say for the sake of argument that I require 450 N to spin this wheel at 30 mph. Let’s say I have 20 pole-pairs. The relationship of the y-component is as follows:

  • Total Force = (y-component) * (√3) * (20 pole-pairs). Working backwards...

    450 N / (√3) * (20 pole-pairs) ≈ 13 N.
If the value of the y-component is less than this value then I need to go tweak the model. If the value is higher than required then we get to eat ice cream. If the value is really high then perhaps we need to scale back and reign in the costs of materials. Regardless, this particular measurement is very important.

Other measurements can be useful and I encourage exploration. OK, so now let’s figure out what the results are for when this wheel is spinning at 30 mph.

  1. Switch back to the FEMM Model
  2. Select Problem, and this time we set the Frequency = 112; in my model 112 Hz = 30 mph. Select OK to close.
  3. Select Analysis|Analyze (goes off and computes), then Analysis|View Results.
Notice how the flux lines change. If you want to see it in color, select View|Density Plot and check ‘Show Density Plot’ and select OK to close the box. Makes for a pretty picture. I tend to leave the color step out when developing a solution to speed up my process, however it is quite fun to view the output.

Once again select View|Circuit Props and note the difference between the values when the Frequency was set to Zero and when set to 112 Hz. I am particularly interested in Real Power; the lower this number is the more efficient the design. To calculate the total power used using the same example figures, let’s say I measured Real Power to be 35 Watts:

  • Total Power = (Real Power) * (√3) * (20 pole-pairs) =>

    35 * √3 * 20 = 1212.4 W
Not bad, could be better; we want it better! Other measurements can be taken, and I encourage exploration. :)

That’s what I knows for this evening. Hope it helps.
Happy Modeling, KF
 
Modeling in FEMM Part 5
Using LAU Scripts

In this segment we will analyze how to use a bit of automation to develop a clearer picture of model performance. There is a bit of a challenge for AF motors on how to do this correctly. I wanted to develop a baseline first and try to compare an AF hub motor to a known RF hub motor. Presently I use the 9C 2806 on my ebike as I am quite familiar with how it operates. The complete investigation of the 9C 2806 hub motor in FEMM has come to a safe conclusion, at least to the point where one can understand the nature of the motor well enough, and ending with a nice example of Lua scripting.

What I’d like to do now is adapt those scripts for use with AF. The first step towards that direction is to develop a new AF model for study. I chose a geometry that I think is fun, commonly available, and although perhaps not entirely practical for a hub motor, it is compact enough that it was easy to configure.

AF_Magnetics_Windmill_FEMM_model.png

AF model using common Windmill magnets

View attachment AF_Magnetics_Windmill.zip

Details:
  • Windmill Magnets: 16p N42 (model uses N45) 8” OD x 4” ID x ¼” thick, 2-Rotors (hub covers); inexpensive and easy to acquire. Link
  • Windings: 18t of 1x4 Type-8 Litz (~12 AWG-equivalent) x 6 turns per winding. Link
  • Coreless. (The model uses Air, but could be a host of non-magnetic materials).
  • Back iron is pure iron, 4 mm thick. In the real world this might be Stainless Steel 340.
This model was drawn up and a section was taken at the 76 mm radius (about ½ magnet length). Note that there are a couple of extra poles on the right; we need that for the scripts which will be explained forthwith.

With Radial Flux hub motors we rotate the magnets and back iron relative to the stator. For AF, the motor is unraveled and looks like a racetrack; I think to think of it as a maglev rocket sled track. And instead of rotating magnets, we translate the windings laterally – hence the reason why we need an extra pair of two at the end of the series.

Scripts Examined:
The credit for these scripts rightly belongs to Biff who was kind enough to give us a hand on the 9C 2806 studies. I took the liberty of studying them and making a couple of adjustments which I’d like to explain in detail if folks would be keen on that. :)

Two LAU references are the FEMM Help (very abbreviated), and online – though I have to say that I found it difficult to find a consolidated resource. That said, this link is pretty fun to explore: http://luatut.com/. Don’t be afraid of Lua; it reminds me of Jscript in a way. :wink:

The big changes to Biff’s scripts were resetting the poles to the correct amount (natch), and adding variables and maths that would determine the dX translation. With the Windmill model, these values are:

  • rotor_poles = 16;
  • rotor_radius=76; (in mm)
  • dX = 0;
  • dX_per_step = (rotor_radius*rotor_angle_per_step*3.1416)/180;
FEMM has a feature where you can group objects together for study. This is the part about FEMM that is goofy: If I assign a volume to have a property then I expect that volume to inherit all the traits. No so in FEMM: We have to do double-duty to get our model correct (and I have already done the diligence with the attached model). To modify a new model, briefly:

  1. In FEMM, go to Operation|Segment, click the windowing button, and box the whole model sans the bounding box, and group them as “2”.
  2. Redo the operation for just the windings and group them as “1”.
  3. Now add the nodes for the magnets, and then for windings. Select Operation|Block, then the windowing button and select all the winding nodes. Here I set them all to the same value in one swing: Material, Circuit (default to A), Turns (I set them to “-6”), and Group = “1”. Individual processing will now go faster.
  4. Repeat for the Magnets, setting Material, Direction (I picked “270”) and Group = “2”. Then I go back and individually reset every other pair’s direction to “90”.
Anyway – that’s the trick to getting the nodes AND the segments to move together, and it needs doing for either RF or AF models.

Now, back to Lua:
  • With RF, the group selection command is mi_selectgroup(2) which equals the magnets and back iron. I kept that representation in AF, and used Group 1 for the windings. With the AF scripts this changes to mi_selectgroup(1).
  • For RF, the model rotates the selected magnets and back iron with this command: mi_moverotate(0, 0, rotor_angle_per_step, 4). However with AF, we want to translate across the X-Axis, so I changed it to: mi_movetranslate(dX,0,4);
  • RF then increments with: rotor_angle = rotor_angle + rotor_angle_per_step, whereas AF increments with: dX = dX_per_step;
Broken down into bits, it’s pretty simple to comprehend. :)

The variable-torque-AF_Windmill.lua script just ramps the current up from 10 to 110. I think that for the most optimum result the windings need to be in proper alignment with the magnets – and here I am at a loss but to guess that the running-torque-AF_Windmill.lua script would provide the clue.

Torque:
There is one other change I made to new-flux and running-torque scripts for AF...

  • RF torque is determined around the X,Y point of 0,0, and the command that is called is: torque = mo_blockintegral(22) which is the “Steady-state weighted stress tensor torque”. However, because of the geometry of our model we do not have a radius per se. Instead I measured mo_blockintegral(11) which is the “x (or r) part of steady-state Lorentz force”. This is at least consistent with my previous AF FEMM modeling. It still needs a bit of help to convert that to an apples-to-apples value so that we can realistically compare the RF and AF models.

    By definition, Torque (Ï„) = Radius (r) X F, or
    τ = rFsin Θ
If this is correct then it should be a simple matter of modifying the script to provide a suitable output.

Biff, chime in anytime friend :)

Methodically, KF
 
Looks good Mr. The King.

The point about producing optimal torque is right, but wrong at the same time. If you find the place which gives you optimal toruqe, then run your variable-torque script at that location, you will produce optimistic results. I tend to be a pessimist, picking a random point, or one that you know is a good average torque point is probably a good place to run the scripe, espically if you find there is a large torque ripple in the design (that should become obvious in the running-torque simulation).

Also try mo_blockintegral(18) (weighted stress tensor force) I have found that to be more useful than the the lorentz force, but that could be because all of my simulations include force or torque caused by magnetic attraction, not just current induced force.

I have downloaded your model and scripts, and might get a chance to look at them during a layover tomorrow, otherwise expect some more feedback Monday or Tuesday night.

In the mean time, I'll give you some homework. Figure out how long the copper will be in each phase, and what the resistance will be in a phase winding at 80degrees celcius. Then estimate how much heat you can actually extract from your stator, and determine how much RMS current it will take to produce that heat, and finally use your simulated results to determine how much torque you will get at that current. That is really the biggest limiting factor to a motor design; determining how much current you realistically expect to be able to put through the coils.

-ryan
 
I had a quick look at the model.

It is a good idea to create some magnets at each end of the simulation that don't interact with the coils, to reduce the effects of "linearizing" your motor, it will simulate a continuous magnetic field like what woudl be seen by the coils when wraped into a circle.

Also you won't want to use Stainless steel for back iron as it is non-magnetic.

-ryan
 
Sorry for all the short reples, I just have time between flights to get a little bit of stuff done and I don't want to forget about it.

In the back iron, you want around 2T max flux dencity .. the 2.4 you have right now will most likely cause a force limitation as you increase the current in the coils. For most motor design the rotor yoke flux dencity is kept at 1.8-1.9T when laminated, so going to solid will allow you to push that a bit because you don't have to worry about the space taken up by insulation between laminations.

-ryan
 
The thin back iron doesnt seem to cause any problems with torque, the Kf remains constant past 100A RMS / phase. Also with the coreless axial flux motor, the torque shouldn't change significantly through the cycle, so wherever you test the Kf (aka Kt once converted to a radial motor) should be fine, so ignore what I said earlier. The phases as they are in your design are Phase A = -180, B=-60, C = 60 (or close to that). The (DC) Kv I get is around 46rpm/V delta and 28RPM/V Wye. The Kf = 5.36N / (Amp RMS/phase). I havent checked to see if that Kv and Kf match up when converting between electrical and mechanical power. I did find that Lorentz force which you suggested works better than Stress Tensor Force.

Is there any reason why you didnt fill the stator with copper? are you planning on building some sort of support structure for the coils or something? I quickly ran a simulation where the windings would be similar to that of the CSIRO motor completely filling the airgap, and the Kv came down slighty (suggesting more torque for the same current), from the same magnets and numbers of turns, it also increased the crossection of copper, which would reduce your copper losses.

-ryan
 
Hiya Biff

Copper fill
I ran several simulations that did show marked improvement when the windings were filled to their maximum, however I am not convinced that the stator could be constructed having any rigidity without some sort of support. For that I allowed 2mm between the windings to provide ribbing, and likely a perimeter band as well. I haven’t decided if the sides facing the magnets will have a thin facing sheet as well: Everything depends upon flatness, and maintaining that flatness during some very high lateral forces. Not having built one before I tend to err on the conservative. The losses are visibly noted in the graphs below.

AF_16p18t_frontview.png

Front view of the AF Windmill magnet and winding layout (note the gaps between magnets and windings).

Back iron
I ran through several iterations with various materials and back iron thicknesses from the exotic to the absurd. Getting T < 2 had the thickness up to 8mm ≈ 5/32 inch which might be realistic if they were ½-inch thick magnets, however they’re only ¼-inch. It probably deserves some investigation to comprehend the limits for modeling. To be honest it made me go back and review Halbach arrays in like configuration, but I was hating it because of the projected costs and small drop in total Force.

Hell crazy on Lua
I do have some graphs to post though. Read, tweaked, read some more, tweaked some more – applied the same scripts to both the 9C 2806 RF and the 16p18t AF (with obvious customizations) and… it just begs for more questions. There’s even a Halbach version of the 16p18t… Biggest change was that I included the Force and the Torque for a full 2-pole cycle. The Force is calculated using the mo_blockintegral(18) method.

AF 16p18t @ 10 Amps

Graph_AF_16p18t.png

Measuring Torque is kinda pointless with AF.

High/Low/Diff Force = 105/-5/111 N
Ave Torque = 53.4 Nm

AF 16p18t Halbach @ 10 Amps

Graph_AF_16p18t_HB.png


High/Low/Diff Force = -78/-3/75 N
Apologies; I think this motor is running backwards.

9C 2806 @ 10 Amps

Graph_RF_46p51t_9C2806.png

For comparison...

High/Low/Diff Force = 35/-37/72 N
Ave Torque = 11.3 Nm

Modified LUA script outputs both Force and Torque side-by-side for easier comparison.
View attachment 1

The changes to the AF scripts were simple and could have both the force and torque combined, but I woz lzy. The basic problem with Torque calcs on AF is that they revolve around 0,0 so it’s kinda pointless. The script below calcs the force for the Windmill through two magnet/one complete magnetic pole, with nice headers for Excel.

View attachment running-Force-AF_Windmill.zip

:idea: I do want to review the maximum Tesla that can be crammed through a thin back iron; that is key to factoring out design and manufacturing. I wonder what the permeability of CRS is.

Twiddlin’ KF
 
Back
Top