Based on results drawn from my first prototype, I designed and produced an improved linear motor design. I used my custom brushless servo control firmware
Besides the messy look of the original design I created, there were a few points I wanted to improve. The first of which was the frame, which I 3d printed in several parts before. My new design uses a 15mm carbon fiber tube as the core of frame (just like I used for the magnet tube), 2mm 3d printed spacers between 8mm wide coils, as well as a 30mm carbon fiber tube as an outer casing.
As a result, the motor is much narrower than the previous iteration, so I added more coils in series (15 coils in the new design compared to 6 in the old). I believe this improves the force-to-mass ratio of the linear motor because for the same number of coil turns, the coils are smaller.
Another problem I had with the original design was that winding the motors was tedious, particularly because I used too thick of a wire guage (20AWG), and because I wound each coil section separately and wired them together later. For the new design, I use multiple strands of thinner wire (4x24AWG), and wound all the coils of each phase using a continuous strand, so there were only solder joints at either end. I also added a nice MR30 3-pole connector and a receptacle for it.
I first 3D printed the spacers and end caps. These were printed fairly solid, so there was a bit of over extrusion that required some sanding. I also 3D printed a jig to help align the spacers and end caps evenly over the inner carbon fiber tube.
I super-glued the spacers and one end cap in place over the inner carbon fiber, first. Once the glue had cured, I cut the tube to length so the remaining end cap would fit properly and then glued that in place too.
For the coils, I bought a 5lb spool of 24AWG enameled copper wire (rated to 200C, which is a nice benefit for motors). I calculated the length of wire needed to wind and entire phase, and I respooled 4 strands in parallel on a separate spool. Once I had such a spool for each of the 3 phases, I wound one coil at a time along the frame, overlaying the connections in between. I used a winding pattern with an winding factor of 1, so the pattern of windings was AbCaBc...
, where each letter represents a phase and the capitalization denotes the winding direction (I've found that emetor is a good resource about motor winding patterns).
I next cut the outer carbon fiber tube to made the length from one end cap to the other, and cut a notch in one side so that the wires for each phase can be accessed. Before I slid the inner tube and frame into the outer tube, I soldered the ends of each phase together to make the motor a wye-configuration motor.
Finally, I soldered the other ends of each phase to the poles of the MR30 connector and placed that inside a small housing to cover the notch in the outer casing. Overall, I'm very happy with the the new version of the linear motor; it feels a lot more solid and looks a lot cleaner than the first prototype.
One step I haven't yet done to the motors that would improve thermal performance would be to fill the entire case with potting compound. This would help transfer heat in the coils to the casing and out of the motor, but would add a bit extra mass. I mostly haven't done this yet because it would be fairly permanent, to say the least, and I still want to do testing with the motors.