This software and instructions are provided as is, without warranty of any kind. This is a hobby project. Using this might damage your equipment, cause injury or death. Use at your own risk. Original author didn't state the lisence for the code so it remains unknown.
Metal lathe electronic lead screw project built on top of Russian-speaking DigitalFeed ELS system by Oleg A. and contributors from ChipMaker.ru.
If you're willing to manufacture this device and/or sell it as a kit, we'd be happy to link to your page for free - especially if it makes the build cheaper than buying all the components separately.
Code is provided in the folder above. It requires tuning a few constants at the top of Digital_Feed_7e2.ino
to fit your lathe and motors.
Verify that hardware parameters are set correctly:
- Use
mm/min
mode and a clock to ensure each axis moves in the right direction and by the expected amount of mm within 60 seconds - Use "Dividing head" mode (last one) to check that when you turn the spindle by hand in the "forward" direction, angle on screen increments from 0 to 360
Every time hardware parameters change, update Cone_Info
and Thread_Info
tables in the middle of that file using calculator in tables.html
. If you don't recalculate those tables, your threads and cones will come out wrong even when mm/min
and dividing head tests above pass.
To upload the code to your device, install Arduino IDE, connect your Arduino Mega to the computer via a USB cable, open Digital_Feed_7e2.ino
, select Arduino Mega 2560
in Tools > Board
and click Sketch > Upload
.
Some PCB production techniques use lead and other nasty stuff. Order at your own risk and dispose properly.
Ordering it from JLCPCB.com takes just a few clicks - upload the ZIP file, use all default settings, choose shipping and checkout. Costs around 20 euro with delivery for 5 PCBs (minumum order).
Cheaper, country-specific options: Ukraine (feel free to add more)
- Arduino Mega 2560 (micro USB)
- Connector pins that would get soldered to the board
- 1602 LCD 5V
- 9 6*6 push buttons
- 8-position switches
- Manual pulse generator 5V 4-pin 100 pulses 60mm
- 4-position joystick with latching and a button though this one is a little too big and hard to switch
- 2 RV09 10kOhm potentiometers
- KF2EDG connectors with 3.5mm pitch - 5 with 4 pins, 1 with 6 pins, make sure to order both plug and straight needle
- 4 1kOhm resistor arrays with 8 resistors each
- 2 1kOhm resistors and 4 680 Ohm resistors
- 5V buzzer
- 2 ceramic capacitors e.g. 10 uF
- 4 LEDs
The following cases are designed to be used with M3 threaded inserts that would be pushed into the 4 designated holes using your soldering iron tip and receive M3 nylon screws (for MPG) or 20mm standoffs (for the main case).
Here the lid is connected using nylon screws into 20mm standoffs that work as screws holding the PCB down. It's designed to be mounted using two M5 bolts 135mm apart on centers.
Cut 1 line on the right side of the case and push the small part of the wall to the outside to get access to the mini USB port of the Arduino.
Download: STL body and STL lid or f3d
Printable SVG with labels for the controls.
Download: STL body and STL lid or f3d
- Select
Z
orX
axis using the corresponding switch - Select
1x
or10x
scale using the corresponding switch - Rotate the handwheel
20220122_234541-h264.mp4
1 impulse from the handwheel should correspond to 0.01mm movement of the motor in 1x
, 0.1mm in 10x
. If the motor doesn't move, try switching to submode to manual or switching mode to a different value.
20220122-3-h264.mp4
- Set mode to
Feed mm/rev
- Set submode to manual
- Start the spindle
- Use joystick to start/stop feeding into any of the 4 directions
- Use the top-left potentiometer to change the speed
20220122-2-h264.mp4
- Set mode to
Feed mm/min
- Set submode to manual
- Use joystick to start/stop feeding into any of the 4 directions
- Use the top-left potentiometer to change the speed.
Using the right-hand thread cut to the chuck as an example:
20220123-1-h264.mp4
- Set mode to
Thrd
- Set submode to manual
- Use up/down menu buttons to select the pitch. For TPI pitches, scroll up through all the metric pitches.
- Move the tool using the handwheel to the left-most
Z
position - Set the left limit using the corresponding button
- Move the tool using the handwheel to the right-most
Z
position - Set the right limit using the corresponding button
- Start the spindle
- Move in the cutter (manually or using the handwheel)
- Set joystick to "left" and wait for the tool to reach the left limit (don't stop the spindle)
- Move the cutter out
- Set joystick to "right" and wait for the tool to reach the right limit (don't stop the spindle), use joystick button for faster movement
- Move in the cutter
- Set joystick to "left" and so on
Using the right-hand thread cut to the chuck as an example:
20220123-2-h264.mp4
- Set mode to
Thrd
- Set submode to manual
- Use up/down menu buttons to select the pitch. For TPI pitches, scroll up through all the metric pitches.
- Move the tool using the handwheel to the left-most
Z
position - Set the left limit using the corresponding button
- Start the spindle
- Move the tool using the handwheel so that the cutter just barely touches the material
- Move the tool using the handwheel to the right-most
Z
position - Set the right limit using the corresponding button
- Set submode to external
- Set joystick to "left" and wait for the operation to complete
When done, set joystick to neutral and submode to manual to be able to use the handwheel again.
When automatic threading is finished you can test fit and potentially make a few more passes:
20220123-3-h264.mp4
- Move joystick to neutral
- Set submode to manual
- Set joystick to "right" and press the joystick button to move past the right limit
- Turn on the spindle (no need to reverse it) and wait for the cutter to move out of the way, turn off the spindle
- Test fit the part
- Set joystick to "left"
- Turn on the spindle, move in the cutter, make another pass, it should stop at your existing left stop
- Move out the cutter, no need to stop the spindle
- Set joystick to "right", it should stop at your existing right stop, repeat until the part fits
20220128-1-h264.mp4
- Set mode to
>
or<
- Set submode to manual
- Pick the cone angle using the menu buttons
- Turn on the spindle
- Use joystick "left" and "right" positions to move the cutter along the cone
- Use joystick "forward" and "back" positions to move the cutter in or out
There are some instructions explaining how to operate the ELS that I auto-translated and corrected a bit but expect to invest some time here :)