ELFOS - a Control System for Multiple Stepper Motors
Overview
Ed L. French (ELF) created an operating system to make use of stepper motors on the rose engine lathe significantly easier. This system is based on the Teensy Microcontroller and uses a Nextion Human Machine Interface touch screen.
This system was developed to
- Automate the mundane tasks
- Provide for the use of stepper motors
- Provide for electronically synchronizing multiple activities (much like other OT equipment is synchronized using mechanical linkages)
- Provide a way to do this for users who are not strongly computer-literate by using an intuitive, touch-screen interface
ELFOS versions are outlined below.
Version |
Spindle |
X Axis |
Y Axis |
B Axis |
M3 Axis1 |
M4 Axis2 |
Comments |
2 |
✓ |
✓ |
✓ |
✓ |
Version 2 has been deprecated. Upgrading to version 3 is recommended. | ||
3 |
✓ |
✓ |
✓ |
✓ |
✓ |
|
Notes:
- M3 (motor 3) is a configurable axis, and is often used for controlling the rosette phaser / multiplier
- M4 (motor 4) is a configurable axis, and is easily used for spherical slide
Usage Notes
The ELFOS V3 User Manual contains a number of calculators which make some operations easier. Examples of this include:
- Dynamic rosette phasing with lobe multiplication
- Using the Recip function to make a basket weave pattern
The on-line manual also includes instructions for topics like
- Adding threads to an object
How it works
The system is comprised of these key components:
1 A Nextion Human Machine Interface touch screen which is the manner by which the artist interacts with the system. Ed's software includes the screen configurations for the Nextion display. This display is often-times many feet away from the rest of the system, tethered by a single cable. Ed has developed a 3D-printed case for both the 4.3" and the 7" displays, and the 3D printing designs are on his GitHub page. | ||||||||||||||||||||||
|
| |||||||||||||||||||||
2 A Teensy Microcontroller is used to perform the actions selected by the user on the Nextion display. It performed the real-time computation to synchronize all the movement on the selected axes (AKA, stepper motors). Ed's software includes all the programming necessary for this. Ed has also developed a printed circuit board (PCB) for more easily connecting all the electronics needed for the Teensy. This 5-axis PCB is used by the Teensy to connect to the Nextion display and the stepper motors via drivers. There are 3 Teensy microcontrollers supported by ELFOS at this time:
| ||||||||||||||||||||||
|
| |||||||||||||||||||||
3 Each stepper motor is connected to a stepper driver. The one typically used is the StepperOnline DM542T, though there are other options. The Pololu DRV8825 is used by some and has the advantage that it mounts onto the PCB. However, it does require more work to ensure it is correctly setup or the chip can be overloaded, necessitating replacement. A separate driver is needed for the spindle and for each axis. |
Notes on making one
Ed has maintains the complete code base for the system on GitHub.
The documentation for building the system, along with the components required is on the MDF Rose Engine Library. The key documents are on the 2nd shelf. The manuals of note in the Instructions for Building the Control System for Multiple Stepper Motors include:
- ELFOS Hardware: General Instructions & BOM (Volume 1, Part 1), which outlines the bill of materials for the system,
- ELFOS Hardware: Electronics (Volume 1, Part 3), which outlines how to build the system, and
- ELFOS Software: Installing & Upgrading the System (Volume 2)
Microcontrollers Supported
ELFOS |
Microcontroller |
Comments | |||
Teensy 3.2 |
Teensy 3.5 |
Teensy 3.63 |
Teensy 4.14 | ||
2 |
✔ |
✔ |
✔ |
⨯ |
Version 2 has been deprecated. Upgrading to version 3 is recommended. When using a Teensy 3.2, a microSD card reader is needed for loading the INI file. This connects via the SPI connections. |
3.0.5 |
✔ |
✔ |
✔ |
⨯ |
When using a Teensy 3.2, a microSD card reader is needed for loading the INI file. This connects via the SPI connections. The Teensy 4.1 is not supported. |
3.0.8+ |
⨯ |
✔ |
✔ |
⨯ |
The Teensy 3.2 and Teensy 4.1 are not supported. |
Displays Supported
ELFOS |
Printed |
Nextion Display Options |
Comments | ||
4.3” |
5” |
7” | |||
2 |
4-axis |
✔ |
⨯ |
⨯ |
Version 2 has been deprecated. Upgrading to version 3 is recommended. |
5-axis |
✔ |
⨯ |
⨯ | ||
3.0.5 |
4-axis |
✔ |
not |
not |
When using any of the Nextion Intelligent displays, a 5-axis PCB is recommended. That board has circuitry to handle the higher voltages used on these displays. This can particularly be an issue if you are using a Teensy 3.6. |
5-axis |
✔ |
✔ |
✔ | ||
3.0.8+ |
4-axis |
⨯ |
not |
not |
Use of the 5-axis PCB is highly recommended for the reasons mentioned above. |
5-axis |
⨯ |
✔ |
✔ |
Stepper Motor Drivers Supported
ELFOS |
Driver Options |
Comments | |
StepperOnline |
Pololu | ||
2 |
✔ |
✔ |
Version 2 has been deprecated. Upgrading to version 3 is recommended. |
3.0.5 |
✔ |
✔ |
Other drivers can also be used, but these have been extensively tested. |
3.0.8+ |
✔ |
✔ |
Other drivers can also be used, but these have been extensively tested. |
Notes:
- The StepperOnline DM542T requires less re-configuration as options or connections change. However, it also requires more space than the on-board Pololu DRV8825s.
- The Pololu DRV8825 mounts onto the printed circuit board (PCB). However, it does require more work to ensure it is correctly setup or the chip can be overloaded, necessitating replacement.
- The Teensy 3.6 is faster than the 3.5; however that extra speed is really not needed. Additionally, the pins on the Teensy 3.6 are more sensitive to over voltages than the Teensy 3.5. This voltage sensitivity can be more problematic when using a Nextion Intelligent display as these use higher voltages for communications than the Nextion Enhanced displays (5V vs 3.3V).
- The Teensy 4.1 is not supported at this time by the code library used with ELFOS.
If you pursue making one of these, consider the 7" display options. The larger screen is much nicer to use than the 4.3" display, though it does take up more space.
More Information
Web Sites
- 3D-printable Enclosure for 4.3" Nextion Display
- 3D-printable Enclosure for 7" Nextion Display - The 7" display is recommended
- ELFOS Code on GitHub
- ELFOS V3 User Manual
- MDF Rose Engine Library
Disclaimer: eMail comments to me at OTBookOfKnowledge @ Gmail.com. The process of woodturning involves the use of tools, machinery and materials which could cause injury or be a health hazard unless proper precautions are taken, including the wearing of appropriate protective equipment. |