Low-Cost Linear Synchronous Permanent-Magnet Motor Platform
Engineered by
William Bowley,
with contributions from
Lawson Gallup
OpenLSM is an experimental project with the objective of designing low-cost permanent magnet linear motors for Cartesian motion systems such as pick-and-place machines or CNC machines. The project will fulfill this goal by using readily available materials and tooling, combined with analytical and hybrid models.
This project has no commercial aspirations. Its contents will remain available under the
MITLicense.
- [x] Support voltage ranges of `12 V`, `24 V`, and `48 V`.
- [/] Achieve a target force per amp of `3.0 N/A` (rms).
- [/] Reach an asymptote temperature of `60°C` under standard use-cases.
- [/] Validate the driver board and linear encoder board for linear motor applications.
- [ ] Validate motor performance and generate performance curves for each voltage range.
- [ ] Scope a `Prototype Gamma` as an entry point for contributors to extend beyond OpenLSM.
(Note).
[ ]Not started.[/]In progress.[x]Complete.
An ironless planar linear motor with a polylactic acid (PLA) armature featuring 6 slots, hand wound using 0.2 mm diameter enameled copper wire and 5 mm wide Kapton tape, with 2 slots in-series per phase (WYE). The stator, similar to the armature, was printed in PLA and had 4 pole pairs per armature length and 10 pole pairs total. The motor produced measurable force, although the force output was not quantified before the PLA coil forms deformed due to thermal stress.
The main conclusion from Prototype Alpha is that planar linear motors likely require laminated silicon steel armatures to produce force efficiently. In response, Prototype Beta shifts to an ironless tubular topology with the goal of quantifying force output and thermal performance.
See the alpha notes for the full report on Prototype Alpha.
(Conceptual). Revision 2 of the ironless tubular linear motor design. Not for fabrication.
(Note). Revision 3 of the ironless tubular linear motor will be fabricated.
An ironless tubular linear motor with a carbon fibre nylon (PA6-CF) armature featuring 12 slots, mechanically wound using 0.4 mm diameter enameled copper wire, with 4 slots in-series per phase (WYE). The stator, unlike the armature, is made of layered carbon fibre epoxy to form a tube with an internal radius of 5 mm and outer radius of 6 mm. The poles are 20 mm in length and 5 mm in radius such that they can be inserted into the stator tube in this pole arrangement (N-S|S-N), using generic superglue to secure the end poles.
See the motor design notes for the full electromagnetic and thermal rationale of
Revision 2.
The radial heat-sink is made of aluminum with radial fins pitched at 1.50 mm, axial thickness of 0.50 mm, and radial thickness of 7.30 mm. The thermal interface material is still to be determined. This is expected to improve thermal steady-state conditions, though both this assumption and the analytical eddy-current model remain to be validated experimentally.
This analytical model uses inverse Clarke and Park transforms to compute the phase current based on position, then uses 1D field approximations to compute the magnetic co-energy, and finally uses its spatial derivative over the z-axis to compute force.
See the Model Notes for the mathematical/computational implementation.
(Paused). This hybrid simulation is currently paused until PCB design finishes.
(Design). The schematic is finished, and the footprints are done. The PCB is currently being modelled.
An isolated triple half-bridge driver with an MCU-side domain of 24 V (DC) and a power domain of 12-96 V (RMS), with current up to 20 A (RMS). It supports step/dir and CANBUS input interfaces and uses RS-485/RS-422 for communication with external input boards for encoders, Hall-effect sensors, etc.
See 03_boards/00_bridge_driver for the detailed design, schematic, PCB, and BOM.
(Fabrication). These boards haven't been populated or validated yet. (Components & PCBs ordered.)
The integrated sensor boards are a platform for measuring the motor's position, acceleration, and thermal profile T(z, t). The system consists of two boards: an encoder board with an estimated accuracy of 10–20 µm, and a sensor board featuring a thermistor array, 3-axis SPI accelerometer, encoder interface, and RS-485/RS-422 output, all controlled via an STM32.
See 03_boards for the supporting PCB designs that enable motor development.
Each section of the repo is self-documenting.
For internal documentation, credits, and contributors, refer to 00_docs.






