DIY Toroidal Axial Flux PM

mxlemming said:
I'm moderately against the iron.

I've been quietly following this, resisting the temptation to add another project to my list but...

1) iron makes this much less diy able. As it stands now, i could print this at home, wind it, poke some magnets in and be basically done
2) APLs thread seems to have become a quest for ever more stiffness. It's not in any way a cheap diyable motor.
3) with no iron losses, you can just spin faster surely to gain power?
4) get lower kV by making an extra slice of rotor and stator? I think there are probably gains to be had like fewer magnets in the extra slices, no need for iron etc and the distances are larger than rotor to stator so less stiffness needed.

Just my 2c.

My original quest was for a high performance air core motor, so it does feel a bit blasphemous to include iron at this point. My concerns with purely 3d printed, however, are heat. The PETG has a high melting point, but it will get soft before that, and its guaranteed to have issues then. The stator core will likely need to be made of something else more heat resistant if this is to be useful. I agree that you could spin faster, but again, 3D printed flywheels will only spin so fast before they blow up, and that's no fun. And sure we can add more layers, but I only want to peruse that if there's a clever way of holding the magnets in place and having both sides be useful, and I haven't thought of a good way without adding to the airgap.

Right now, I am looking forward to seeing what a smaller airgap and iron backing to the magnets will add. I imagine it will still be an improvement.

Thanks for your 2c. I appreciate everyone's input to this project. This is a hobby for me, but you all know your stuff.
 
I don't own an osciloscope either and haven't got the budget to buy a "good" one, those thing are kind of expensive ...
HalbachHero said:
Yeah, currently thew plastic bends from the magnets pulling to one another. Having a solid backing would be great, but I think I would need to fabricate those. I have not been able to find a standard thrust bearing washer that I can purchase with the correct dimensions, and unfortunately I don't have the best tools for working with metal.

For that an angle grinder/file and a lot of time on hand would do I think. Will be hard to make it run true but an inlay in a 3D print should be doable.

HalbachHero said:
If I was to go with an iron core I would hope that I could get away with a minimal amount of iron (likely will be saturated) to improve torque without adding too many losses. There must be a balance, but what I don't know either is how saturated iron would affect those losses.

How I see it is that once the iron is saturated the torque increase per amp become less and less. Lot of simulation needed again :lol:

HalbachHero said:
I was considering and high temp epoxy for the mounting all of this, but I like the idea of making the PVA carrier. I didn't even know about that material. I wonder if this idea could be combined with APL's homemade SMC material??

home made SMC is what I mean by "iron powder infused in epoxy" but the windings could also be left to the open for increasing

aircooling.
HalbachHero said:
It's beautiful. I realize that's not realistic, but if you thinned out the iron, and kept the wires in place, that's pretty close to a cross section of what mine looks like. I don't want to incorporate a lot of iron losses but, those numbers sure are fascinating...

The simulation is the one I made for your motor, I only "encapsulated" the winding in iron to see what it would look like.

mxlemming said:
I'm moderately against the iron.

I've been quietly following this, resisting the temptation to add another project to my list but...

1) iron makes this much less diy able. As it stands now, i could print this at home, wind it, poke some magnets in and be basically done
2) APLs thread seems to have become a quest for ever more stiffness. It's not in any way a cheap diyable motor.
3) with no iron losses, you can just spin faster surely to gain power?
4) get lower kV by making an extra slice of rotor and stator? I think there are probably gains to be had like fewer magnets in the extra slices, no need for iron etc and the distances are larger than rotor to stator so less stiffness needed.

I'm with you on this, I'm going for aircore for ease of magnufacturing and in my use case I can spin it fast since it's going to be a friction drive. So low iron core losses is great. And multi stator/rotor is what i'm going for also. A sneak peek of it :

multi_stator_motor_section_view.PNG

Mine won't be 3D printed for robustness in race condition but could well be.
Going with series stator like Lebowsky did decrease KV while keeping copper section.

For sure 3D printed stator will limit temperature range but ABS for exempe has a glass transition temperature of 115° and if heated uniformly won't warp before close to that temp I think. 115°C is a temp I would like to stay clear of anyway since only one mm away are the expensive magnet that loose there strength at 80°C
 
Thecoco974 said:
mxlemming said:
I'm moderately against the iron.

I've been quietly following this, resisting the temptation to add another project to my list but...

1) iron makes this much less diy able. As it stands now, i could print this at home, wind it, poke some magnets in and be basically done
2) APLs thread seems to have become a quest for ever more stiffness. It's not in any way a cheap diyable motor.
3) with no iron losses, you can just spin faster surely to gain power?
4) get lower kV by making an extra slice of rotor and stator? I think there are probably gains to be had like fewer magnets in the extra slices, no need for iron etc and the distances are larger than rotor to stator so less stiffness needed.

I'm with you on this, I'm going for aircore for ease of magnufacturing and in my use case I can spin it fast since it's going to be a friction drive. So low iron core losses is great. And multi stator/rotor is what i'm going for also. A sneak peek of it :

multi_stator_motor_section_view.PNG

Mine won't be 3D printed for robustness in race condition but could well be.
Going with series stator like Lebowsky did decrease KV while keeping copper section.

For sure 3D printed stator will limit temperature range but ABS for exempe has a glass transition temperature of 115° and if heated uniformly won't warp before close to that temp I think. 115°C is a temp I would like to stay clear of anyway since only one mm away are the expensive magnet that loose there strength at 80°C

oooh, I quite like this. Close to what I've been imagining in my head. Except the "friction drive" bit. But I can see a nice belt fitting on that... Or a few gears. I can see this dropping onto my ebike quite nicely.

My concept for the stator (and possibly rotor?) is actually to get the hot bits and spinny bits milled from fibreglass once done with 3D printing.
 
Just a few notes:
Rolls of shim steel: No idea where the stuff I have here came from, probably engineering surplus from when British manufacturing was wiped out by vulture capital in the 1980s. I see iron foil listed on ebay and amazon but prices are a little steep, 1st place I'd try is an engineering materials supplier (the kind of place that sells seamless bronze tube and acetal bar rather than girders and checkerplate).

Thrust bearings: How come you need one? Often when you see them used they're a later addition to get around an unexpected problem. Not always of course but unless you're dealing only with thrust forces then taper roller or angular contact ball are usually used. The latter is probably the only sensible option with 3d printed parts and are usually available in the same dimensions as regular ball bearings. Deep groove (regular) ball bearings have surprisingly high thrust load ratings, it's very unlikely anything 3d printed could overload them.

Oscilloscopes: I've not much experience of the options but a 40 euro PC based Hantek has worked out very well for me. In hindsight I'd maybe have gone for something a little higher priced but at the time it was one of those "is it really worth it?" buys, turned out a very useful addition that's paid for its self many times over.

Heat: Heat is inefficiency, under normal operating conditions (cruising) things should be cool to the touch. Things will inevitably heat up in overload conditions, burst acceleration but if they're getting hot under normal load something's wrong. Maybe it's just being pushed too hard or maybe there's unpleasant magnetic voodoo going on but either way it's a fault, maybe it needs more windings or its magnetic daemons exorcised ;) A controller with configurable thermal limiting is vital imo, just needs a tiny thermistor in the windings and the limits can safely be pushed without risking meltdown.

A cheap, reliable and efficient 3d printed motor is certainly possible imo and it will almost certainly be coreless :)
 
Thecoco974, your rendering looks great. I would love to see that come together, and would certainly like to see that on a bike one day!

stan.distortion said:
Thrust bearings: How come you need one? Often when you see them used they're a later addition to get around an unexpected problem. Not always of course but unless you're dealing only with thrust forces then taper roller or angular contact ball are usually used. The latter is probably the only sensible option with 3d printed parts and are usually available in the same dimensions as regular ball bearings. Deep groove (regular) ball bearings have surprisingly high thrust load ratings, it's very unlikely anything 3d printed could overload them.

I'm not actually using the thrust bearings, just the washers. They were an easy to purchase round piece of metal (1.5mm thick) that will run pretty true without any modifications.

Thanks for the suggestions too, I will do some shopping soon, and see if I can find a new toy.


So admittedly I gave up on the 5 turn stator too. it was becoming too difficult on the last lap of the last phase. (was a real bummer to give up there). But in the effort to make progress, I decided to keep the 4 turns. I wound this really quickly (took about 1h total), with a little super glue to help the last turn of the last phase a bit, I was able to complete it.
resized-image-Promo (54).jpeg
resized-image-Promo (53).jpeg

I know it's not an improvement on the number of turns but the air gap will be a lot less, and with iron backed rotors, it will certainly be even more of an improvement. Now I need to mount this to the inner hub. My current plan is to epoxy a ring to it which can then connect to the hub itself, but I'm thinking it would be great If I could find a way to epoxy or otherwise connect it to the hub directly without the connector ring. The plan is to connect the ring using M2 screws received by heat-set inserts on the hub, but I think I could save some weight If I just didn't do that. As you can see there is very little to connect to on the inner or outer diameter of the stator, so I feel as though it would have to be some type of epoxy. Thoughts?
 
It's been a busy week. With the weather getting warmer. There is plenty to do outdoors. I have tried to make a bit of progress over the last week or so though.

I spent some time learning how to model coils and circuits in FEMM and started making the simulation generator support making the coils too. I have been thinking a lot about this software, and I think it could be a useful tool to keep working on it. I have a few features I would like to add over time. Some more feasible than others.

I also fixed a few UX bugs and bugs with the simulation modeling.

Check it out!
https://cjohnson25.github.io/femm-sim-gen-app/
I also redesigned the hub for the stator, and purchased some 3M DP110 epoxy. I looked at the datasheet which shows a really no promising glass transition temp of ~55C, but I'm going to try it anyway. I'd like to see if its a heater or not anyway. Unfortunately I will need to wait for that to ship which might be a bit. I also am waiting for my thrust bearing washers still. I tweaked the rotor design as well, making it accommodate the smaller stator height. I tried to get the gap between the rotor and stator to about 0.5mm on either side, but this might be a game of trial and error to get it to print the way it needs to.

Still moving along
 
mxlemming said:
oooh, I quite like this. Close to what I've been imagining in my head. Except the "friction drive" bit. But I can see a nice belt fitting on that... Or a few gears. I can see this dropping onto my ebike quite nicely.

My concept for the stator (and possibly rotor?) is actually to get the hot bits and spinny bits milled from fibreglass once done with 3D printing.

Yeah The friction drive part is quite silly. We have races here with old modified 50cc friction drive (A solex if you want to look it up). But the plan is to do a cain drive on a motorcycle if this is successfull. The design is, I think, quite versatile and it's just a matter of stacking more layers to increase power. For milled fibreglass to work you'll need to find high temperature ones id they exist or building your own (standard resin holds up to 60°C only).

HalbachHero said:
As you can see there is very little to connect to on the inner or outer diameter of the stator, so I feel as though it would have to be some type of epoxy. Thoughts?

To bad for the last turn but it will for sure be an improvment anyway ! Great pictures to see as always.
For the connection part epoxy is the only easy solution I see too. Couldn't you just print a gigger inner hub flange the thickness of the stator and glue it on directly ? The only issue I see is that you will require a gluing fixture to keep it axially oriented (if not, tight tolerance with stator will be a problem).

HalbachHero said:
It's been a busy week. With the weather getting warmer. There is plenty to do outdoors. I have tried to make a bit of progress over the last week or so though.

I spent some time learning how to model coils and circuits in FEMM and started making the simulation generator support making the coils too. I have been thinking a lot about this software, and I think it could be a useful tool to keep working on it. I have a few features I would like to add over time. Some more feasible than others.

I also fixed a few UX bugs and bugs with the simulation modeling.

Check it out!
https://cjohnson25.github.io/femm-sim-gen-app/
I also redesigned the hub for the stator, and purchased some 3M DP110 epoxy. I looked at the datasheet which shows a really no promising glass transition temp of ~55C, but I'm going to try it anyway. I'd like to see if its a heater or not anyway. Unfortunately I will need to wait for that to ship which might be a bit. I also am waiting for my thrust bearing washers still. I tweaked the rotor design as well, making it accommodate the smaller stator height. I tried to get the gap between the rotor and stator to about 0.5mm on either side, but this might be a game of trial and error to get it to print the way it needs to.

Glad you took a look at this ! I tried figure out how to had support for this in your LUA script but haven't got enough time looking at it. It sure is going to be usefull for iterating on design and improving once the models are beeing validated by a prototype.

I haven't had enough time to look at how you implemeted this yet but here are some suggestions :

- There need to be one stator pole per rotor pole in even design like we are doing (If you want to simulate odd number I think the simulataion should be done with a common divider of the two number). What I call a stator pole is one positive winding number and the returning negative number strand. All three phase should have one stator pole per rotor pole each spaced 1/3 of the rotor pole length appart for the winding type we are doing(120° electrical degrees).

- For Power loss estimation and closer matching the reality there is a "litz wire" option in the material parameter windows, once selected, number of parrallel strands can be enter (not sure if that's necessary and possible in LUA, but there is the option so why not )

- The three phases currents need to be 120° degrees appart so : I1=sin(theta) ; I2=sin(theta+120°) ; i3=sin(theta+240°).
Theta is choosen by looking at which coil is centered or not on the rotor Pole. Th center of the stator pole is in the middle of one positiv number strand and one negative. If one coil is centered then the phase current should be 0 and the other two calculated a accordingly. A coil centered in between two rotor pole should have full current.

Looking forward to see your motor turning again :D
 
Thecoco974 said:
Yeah The friction drive part is quite silly. We have races here with old modified 50cc friction drive (A solex if you want to look it up). But the plan is to do a cain drive on a motorcycle if this is successfull. The design is, I think, quite versatile and it's just a matter of stacking more layers to increase power. For milled fibreglass to work you'll need to find high temperature ones id they exist or building your own (standard resin holds up to 60°C only.

...
Looking forward to see your motor turning again :D

I was planning on using fr4pcb fiberglass. Cheap as anything and definitely useable way above 60 degrees C. Certainly way higher than any 3d print material.

I am also keen to see this spinning again! Videos please!
 
FR4 Glassfibre seems to have a glass transition temperature of 135°C (down to 110 still in tolerances) so a bit better than the high temp epoxy I got and ABS (at 115°C). Being a thermosetting material it might behave better than a thermoplastic like ABS near and after GT thought.
A good vacum system is needed to mill this I think, glass fiber dust is a pain.
 
Thecoco974 said:
FR4 Glassfibre seems to have a glass transition temperature of 135°C (down to 110 still in tolerances) so a bit better than the high temp epoxy I got and ABS (at 115°C). Being a thermosetting material it might behave better than a thermoplastic like ABS near and after GT thought.
A good vacum system is needed to mill this I think, glass fiber dust is a pain.

I plan on just getting jlcpcb to do it. They mill funny shapes 5off for 2$. Might even get a winding included for my 🤑
 
Oh sorry I haden't understood you were going for a plain PCB stator :oops:
I haven't really studied this but had alway thought copper density will be too low especially considering the traces need to be really thin to avoid too much eddy curent losses.
 
Thecoco974 said:
Oh sorry I haden't understood you were going for a plain PCB stator :oops:
I haven't really studied this but had alway thought copper density will be too low especially considering the traces need to be really thin to avoid too much eddy curent losses.

I'll also wrap tons of copper wire around it. Thinking 1mm pcb, rather than having all the copper etched away I'll turn it into some extra turns, then wrap it in enameled copper wire.

I'm assuming I'll have to cut the traces fairly thin and have lots of them. But it's still better than having them start with copper and etch it all away.

This is a long way off mind you. The MESC calls for a sensorless observer, and a code port to the 100V many many amp f405 board sitting on my desk. Realistically this is next winter's project.
 
Thecoco974 said:
- There need to be one stator pole per rotor pole in even design like we are doing (If you want to simulate odd number I think the simulataion should be done with a common divider of the two number). What I call a stator pole is one positive winding number and the returning negative number strand. All three phase should have one stator pole per rotor pole each spaced 1/3 of the rotor pole length appart for the winding type we are doing(120° electrical degrees).

Okay I adjusted the spacing to match the rotor phase count. This way the simulation is locked into the 1:1 ratio, but maybe I can make it more flexible in the future. I have also adjusted the spacing as needed.

Thecoco974 said:
- For Power loss estimation and closer matching the reality there is a "litz wire" option in the material parameter windows, once selected, number of parrallel strands can be enter (not sure if that's necessary and possible in LUA, but there is the option so why not )

I see the settings for this, but it appears to not be a supported option via LUA unfortunately. The only other option I can think of is to hardcode, the values to recreate litz wire given the values of the AWG sizes I have supported in the app, but thats for another night

Thecoco974 said:
- The three phases currents need to be 120° degrees appart so : I1=sin(theta) ; I2=sin(theta+120°) ; i3=sin(theta+240°).
Theta is choosen by looking at which coil is centered or not on the rotor Pole. Th center of the stator pole is in the middle of one positiv number strand and one negative. If one coil is centered then the phase current should be 0 and the other two calculated a accordingly. A coil centered in between two rotor pole should have full current.

I updated the circuits and currents accordingly. Thanks for that math. I should know this stuff by now, but sadly there has not been a lot of math in the design of my current motor. Lots of hopes and dreams.
The simulation ran and I got a real-ish looking value. Given the 4 turns instead of 5, its a bit different of a result than you posted a bit ago, but that's to be expected.
Screenshot 2021-05-12 233809.png

The app is improving.

Also, the epoxy showed up. Time to make a jig, and fit that all together.
 
mxlemming said:
I'll also wrap tons of copper wire around it. Thinking 1mm pcb, rather than having all the copper etched away I'll turn it into some extra turns, then wrap it in enameled copper wire.

I'm assuming I'll have to cut the traces fairly thin and have lots of them. But it's still better than having them start with copper and etch it all away.

This is a long way off mind you. The MESC calls for a sensorless observer, and a code port to the 100V many many amp f405 board sitting on my desk. Realistically this is next winter's project.

That's a great idea for sure ! Thought I think i'll go even thinner, the thinner it is the more space for enameled copper and rigidity will then be gain with resin infused outer copper layer. Also a standard 1oz copper will not add that much suction so I was thinking maybe use it to do something clever for accurate rotor position measurment ? something like an isolated 3 phase observer that may be less noisy with separate low cost mcu feeding the main controller throught a standart hall/encoder input. (Just thinking out loud, maybe not a great idea)

Also I'm following your (and thorlancaster328) journey in motor controler design very closely since I'll be in the market for a DIY high phase current and high frequency capable controler pretty soon so keep at it :lol:

HalbachHero said:
Okay I adjusted the spacing to match the rotor phase count. This way the simulation is locked into the 1:1 ratio, but maybe I can make it more flexible in the future. I have also adjusted the spacing as needed.

Nice ! sorry I haven't really understood how you were counting the "Coils per phase" but maybe in the future a "Rotor pole count" variable will be a nice adding just to see how much it effectively reduce the efficiency of the design :lol:

HalbachHero said:
I see the settings for this, but it appears to not be a supported option via LUA unfortunately. The only other option I can think of is to hardcode, the values to recreate litz wire given the values of the AWG sizes I have supported in the app, but thats for another night

That's what I suspected I was scrolling through the FEMM documentation last week and haven't seen the option available either. That's not a big issue since I'm not even sure eddy current losses could be evaluated, once you input a frequency in the simulation parameters all magnetic fields go down to almost 0 so not sure what tis frequency refer to ...

HalbachHero said:
I updated the circuits and currents accordingly. Thanks for that math. I should know this stuff by now, but sadly there has not been a lot of math in the design of my current motor. Lots of hopes and dreams.
The simulation ran and I got a real-ish looking value. Given the 4 turns instead of 5, its a bit different of a result than you posted a bit ago, but that's to be expected.

Just ran the simulation I did previously with 4 turns and found 5.23N so pretty close. But you sould only put coils in between the rotor where the flux isn't affected by the half pole. I redid it with your code and 2 "coil per phase" then did a one pole sliding so the coils are well in between the rotor and got 5.519N. So cool the spped at wich we can run simulation with your code ! :D

HalbachHero said:
Also, the epoxy showed up. Time to make a jig, and fit that all together.

Nive to ear, wainting on the results :thumb:
 
mxLemming, I look forward to seeing your design. I have always love the idea of a PCB motor. So simple. But I do wonder about how much power you could end up putting through one. Can't wait to see it in action.

Thecoco974 said:
Just ran the simulation I did previously with 4 turns and found 5.23N so pretty close. But you sould only put coils in between the rotor where the flux isn't affected by the half pole. I redid it with your code and 2 "coil per phase" then did a one pole sliding so the coils are well in between the rotor and got 5.519N. So cool the spped at wich we can run simulation with your code ! :D

The "Coil per phase" option its supposed to change the number of coil leg pairs (one with positive turns and one with negative). I wanted it to allow users to put arbitrary number of rotor poles or stator poles. But I realize that it makes sense for those numbers to be similar, otherwise your rotor could be way longer that the stator, ill change those to make it jive better. Also there is some oddness, because we do the half poles on the ends, which are technically not counted in the rotor poles.

I modeled my sim after your image you shared where you calculated Force. It appeared that a leg was sitting directly below a halbach magnet. And the others were not directly on top or below a magnet pole. Am I missing something or did I have the correct positioning?

Thanks a lot for your help. Like I said I really don't know much of this math. However I do know math, and can likely figure out how to program it, so I might just need to be fed formulas until it sticks.

I think the next things I would like to add, is support for saving the file automatically, so that you can run the analysis through the script too. This way we could step the coils over, and re-run an analysis. Saving the results along the way. Thinking an upload to Google Sheets after that, and you could collect data pretty rapidly.

I also would still like to show the inner, outer, and center diameter results. I think that could be helpful for designs like mine with the straight magnets.

Any other thoughts on what could be added? I think obviously it would be cool if this supported more motor architectures. A 3 Phase air-core toroidal axial flux motor is a bit niche. Id like others to get some use from this too.
 
Oh, Thecoco974, also I added the depth, to the simulation, but I am trying to better understand what that means. currently the depth of the problem is calucalted as such
Depth = AIR_GAP + TALLEST_MAGNET_HEIGHT * 2

Should this only include the height of the coils, or the air gap too? Thanks!
 
HalbachHero said:
The "Coil per phase" option its supposed to change the number of coil leg pairs (one with positive turns and one with negative). I wanted it to allow users to put arbitrary number of rotor poles or stator poles. But I realize that it makes sense for those numbers to be similar, otherwise your rotor could be way longer that the stator, ill change those to make it jive better. Also there is some oddness, because we do the half poles on the ends, which are technically not counted in the rotor poles.

About that what you could do is as I said previously, input "number of rotor pole pair" and "number of stator pole pair" that could be different, then model only the commun divider of the two number * 2 stator poles count and maybe that number time * 2 + 1 or 3 for the rotor modelling to account for half pole and make sure stator get the representativ flux. Then you get full torque value by multiplying the force result by this commun divider and the mean radius.
For outputting KV you can use the math I detailled on my previous post I think it is correct.

HalbachHero said:
I modeled my sim after your image you shared where you calculated Force. It appeared that a leg was sitting directly below a halbach magnet. And the others were not directly on top or below a magnet pole. Am I missing something or did I have the correct positioning?

The coil placement your code is outputing is correct, One leg is alligned with the hallback array and the returning one too with the next one so that the first phase is centered on rotor pole and his currect is 0 the next two are ofsetted -120° et + 120° from that position so they get -27.71A et +27.71A creating a magnetic flux alligned with that same hallaback magnet (90° off from magnet flux wich lead to highest achievable torque) Here is what's happening :

stator_flux.PNG

Cross are current entering the plane and Point exiting it. They create flux line around them oriented according to the right hand rule, being opposed in current phase they create the flux represented wich lead to a magnetic dipole. The attraction between the created stator dipole and magnet dipole create a force (You are probably well aware of all this but I explain it anyway so that people trying to understand this like myself a few years ago have an hands one explanation).
I did a femm analysis of the stator flux on one of my previous post showing exactly this.

HalbachHero said:
I think the next things I would like to add, is support for saving the file automatically, so that you can run the analysis through the script too. This way we could step the coils over, and re-run an analysis. Saving the results along the way. Thinking an upload to Google Sheets after that, and you could collect data pretty rapidly.

That's the ultimate goal of this development for sure ! I did the automatic saving and analysis by adding these line in your "analyse()" function :

mi_loadsolution()
mo_showdensityplot(1,0,1,0,bmag)

and this line in the "init" function just before "analyse" is called : mi_saveas("C:\\"path"\\"file_name.fem")

HalbachHero said:
I also would still like to show the inner, outer, and center diameter results. I think that could be helpful for designs like mine with the straight magnets.

Any other thoughts on what could be added? I think obviously it would be cool if this supported more motor architectures. A 3 Phase air-core toroidal axial flux motor is a bit niche. Id like others to get some use from this too.

That will be a great adition too, redoing the simulation each time with a different magnet spacing value. however the stator value are only applicable with your radial windings and not round coils or like mine skewwed toroidal since the coil placement varies with the radial position.
For this to be a generical axial flux design tool you would need parametrical coil shape (sectionnal, not all coil are round and radial, not all coil are oriented radialy) and support for parametrical core placement. That's for sure a lot of work if it's even possible.

HalbachHero said:
h, Thecoco974, also I added the depth, to the simulation, but I am trying to better understand what that means. currently the depth of the problem is calucalted as such
Depth = AIR_GAP + TALLEST_MAGNET_HEIGHT * 2

Should this only include the height of the coils, or the air gap too? Thanks!

The depth of the simulation is the torque producing radial length of your design, I called it "MAGNET_LENGTH" wich is usually the bigest dimension of your magnet 1/2" in your case.
 
Thecoco974 said:
About that what you could do is as I said previously, input "number of rotor pole pair" and "number of stator pole pair" that could be different, then model only the commun divider of the two number * 2 stator poles count and maybe that number time * 2 + 1 or 3 for the rotor modelling to account for half pole and make sure stator get the representativ flux. Then you get full torque value by multiplying the force result by this commun divider and the mean radius.
For outputting KV you can use the math I detailled on my previous post I think it is correct.

I found an alternative solution which is just to force the number of stator poles pairs to be less than that of the rotor poles. This way it will never extend beyond. But you are still able to model a variable number of poles. I changed the Poles to be pole pairs too, so that it makes sense that you will always have an even number too.

I added the auto-saving and auto analysis as well. Its not the best UX, but it works.

I think the next thing is to make a public spreadsheet with some formulas that you can punch the results into to get more info.



Thecoco974 said:
That will be a great adition too, redoing the simulation each time with a different magnet spacing value. however the stator value are only applicable with your radial windings and not round coils or like mine skewwed toroidal since the coil placement varies with the radial position.
For this to be a generical axial flux design tool you would need parametrical coil shape (sectionnal, not all coil are round and radial, not all coil are oriented radialy) and support for parametrical core placement. That's for sure a lot of work if it's even possible.

Great points. I wasnt thinking of non radial coils, and the flat or rectangular coils I was thinking of as well. A few other thoughts.
- Iron core modeling. Parameters could define tooth depth, and width, and likely shape to a degree.
- Variable Rotor/stator layers.
- non-overlapped phases.
- more traditional axial-flux style winding patters with the trapezoidal shaped cores.

Thecoco974 said:
The depth of the simulation is the torque producing radial length of your design, I called it "MAGNET_LENGTH" wich is usually the bigest dimension of your magnet 1/2" in your case.

Thanks for this, I have updated the app to ask for a magnet length as well, and that is used for depth
 
I began gluing things together. This is my first time using an epoxy gun. but I have to say I really like it much more than trying to do things by hand with popsicle sticks or skewers. The gun allows me to get really great accuracy. My only concerns are where it globbed around the edge of the hub and stator. Its likely going to drag on the rotor hub due to the clearance there. not sure how I'm going to clean that up after. I also ran some glue across al of the wires in the channels to help keep things in place.

Then I clamped all of that together between pieces of plywood. One side being just a board, and the other is a ring I cut out with a bore bit with a drill and a jigsaw to make the ring. in hindsight. I would have made the ring bigger than the stator, and it would have been nice to have a drill press to get a tighter fit around the center. But I also placed a block of wood on top of the hub. All of the wood touching the epoxy I covered in painters tape to keep the epoxy from sticking. fingers crossed.

resized-image-Promo (56).jpeg

Ill let that cure (48 hours is fully cured), and ill put together a rotor or two next. and I should have something that spins again! almost there
 
I think the epoxy will stick to the painter's tape but you should be able to peel it off to some extent. I generally use polyethylene (plastic bag) for things I don't want the epoxy to stick to. Once the epoxy cures, the plastic bag material can be peeled off, leaving a clean epoxy surface (and very shiny).
 
HalbachHero said:
found an alternative solution which is just to force the number of stator poles pairs to be less than that of the rotor poles. This way it will never extend beyond. But you are still able to model a variable number of poles. I changed the Poles to be pole pairs too, so that it makes sense that you will always have an even number too.

That's great :thumb:
I was actually thinking about comparing ditributed (like we are doing with toroidal winding) and concentrated so that will help :)

HalbachHero said:
I think the next thing is to make a public spreadsheet with some formulas that you can punch the results into to get more info.

About that ... Just found out that they were a python FEMM implementattion called pyFEMM (https://www.femm.info/wiki/pyFEMM). It's a bit late since you have already done a lot of LUA development but functions seems to be identical so maybe porting wouldn't be that hard and if working like I suppose it is allow for some great analysis of the results in real time.

Other than that good to see your new version is comming together quickly ! Excited for the results.

For the blue tape I agree with Fechter on this, epoxy might stick too much. Another great material to use is regular cooking wax paper
 
fechter said:
I think the epoxy will stick to the painter's tape but you should be able to peel it off to some extent. I generally use polyethylene (plastic bag) for things I don't want the epoxy to stick to. Once the epoxy cures, the plastic bag material can be peeled off, leaving a clean epoxy surface (and very shiny).

Well... shoot. but the internet said it would work. Well I saw you comment early enough that I had a chance I guess, I managed to peel it apart with a metal putty knife. Probably a bad idea to use the metal, but its all I could find that was rigid enough. and I think im okay. The wires were covered in epoxy, and in the channels enough.

Got the main magnets on the rotors glues up too. Getting there!

resized-image-Promo (57).jpeg

Thecoco974 said:
About that ... Just found out that they were a python FEMM implementattion called pyFEMM (https://www.femm.info/wiki/pyFEMM). It's a bit late since you have already done a lot of LUA development but functions seems to be identical so maybe porting wouldn't be that hard and if working like I suppose it is allow for some great analysis of the results in real time.

Crap. I wish I had done more research. That would be great. honestly I think it will port over pretty cleanly. The languages seem very similar. That would be great to get it in there, you could do a lot more with it. Guess I have some more work to do
 
Okay the rotors are glued up. I had an issue fitting one halbach magnet. It required digging out the slot and really smacking it in there, but it went eventually. The grey rotor, which is only different by filament I believe, had different tolerances, and the halbach magnets popped right into place. That made that whole rotor super easy. Just need to let those cure (didn't have time to do them over the weekend)

I spent some time trying to clean up the stator too, when I fit an empty rotor over it, it did not sit flat, there was some epoxy sticking up. I think that a few revolutions, and that will work itself out though. I think I will design a printable piece that will more securely fit the stator and hub, hopefully that will push the epoxy out of the way.

As you can see in the previous photos, I left the 6 wires exposed on the stator. I am hoping that I could make something that would allow me to switch easily between star and delta wiring. For no real reason other than my curiosity. If I understand correctly the Kv will be higher with a delta wiring pattern. Which to me doesn't offer anything useful unless the Kv for a star wiring pattern is low. I would love some clarification on this though. For now though I will probably just clip them together into a star pattern for testing.

I would like to more accurately measure statistics on this next one. I have a 3-phase rectifier, and a drill, and a tachometer. If I understand correctly. If I can spin the motor with the drill at a given RPM, and measure the voltage, I could calculate the actual Kv and other specs? Is there a reasonable way to understand current limitations other than seeing how much it can take before it melts?

Still haven't even gotten an update about my thrust bearing washers... id love to make some iron backed rotors
 
Basicaly in star you have two phases in series, the two phase voltages are added and give line voltage. Beeing 120° appart the sum isn't two time peak phase but Root(3) * Peak phase voltage. kv = Peak line-line voltage/RPM so going from star to Delta increase the kV by a factor of Root(3). Also in Delta when powering a phase there is a leakage current going through the two other phases not contributing to torque and causing inneficiencies.
So in most cases star is choosen with a number of turns giving the wanted speed range.
Switching to Delta only when high speed is needed has been done on this forum I think but wasn't giving good results if I recall.

If you have a good multimetre, probing Line to Line in AC mode could give good results if the frequency isn't outside the input frequency range, but the rectifier trick has allowed me measuring it at low frequency on crazy low kv generators.

Without back Iron is a good first test anyway, validating (or not) the simulation result.
Looking forward to it !

Envoyé de mon Redmi Note 9S en utilisant Tapatalk

 
Back
Top