By continuing to use this site, you agree to our use of cookies. Find out more
Forum sponsored by:
Forum sponsored by allandale

helical lathe prototype - choice of components

All Topics | Latest Posts

Search for:  in Thread Title in  
john constable11/07/2018 23:45:43
avatar
80 forum posts
9 photos

So, after loads of helpful advice I've settled on the following for my project. Its a small tabletop light duty helical turning lathe. Any comments welcome.

61pum1bozrl._sl1000_.jpg

https://www.amazon.co.uk/gp/product/B06Y4NYJWN/ref=ox_sc_act_title_3?smid=A16ALI0DJJWDXC&psc=1

71oximfx+tl._sl1000_.jpg

https://www.amazon.co.uk/gp/product/B07BB979R4/ref=ox_sc_act_title_4?smid=A281VSOIV3TOD6&psc=1

71jod4fpjtl._sl1500_.jpg

 
https://www.amazon.co.uk/gp/product/B071JV158X/ref=ox_sc_act_title_1?smid=A54GFBX2KVQG6&psc=1
41bxsejhsxl.jpg
 
 
https://www.amazon.co.uk/gp/product/B072J97N8T/ref=ox_sc_act_title_3?smid=AR85BMET0MBNK&psc=1

Edited By john constable on 12/07/2018 00:16:44

SillyOldDuffer12/07/2018 22:34:58
3193 forum posts
651 photos

Looks like a good way to start John. It already understands G-code (grbl). It also solves the user interface design issues I was wittering about in the other thread because all that is done on a PC. The Arduino gets its instructions off an SD-Card, which keeps that side simple.

My only tiny worry would be unwanted side-effects because it's a 3D printer driver. For instance the firmware might make a fuss if the bed & extrusion heating stuff is left disconnected - the motors might wait forever until a non-existent printing part was up to temperature. Shouldn't be a showstopper - I think it's all open source and hackable.

 

Edited By SillyOldDuffer on 12/07/2018 22:35:40

john constable12/07/2018 23:36:42
avatar
80 forum posts
9 photos
Posted by SillyOldDuffer on 12/07/2018 22:34:58:

Looks like a good way to start John. It already understands G-code (grbl). It also solves the user interface design issues I was wittering about in the other thread because all that is done on a PC. The Arduino gets its instructions off an SD-Card, which keeps that side simple.

My only tiny worry would be unwanted side-effects because it's a 3D printer driver. For instance the firmware might make a fuss if the bed & extrusion heating stuff is left disconnected - the motors might wait forever until a non-existent printing part was up to temperature. Shouldn't be a showstopper - I think it's all open source and hackable.

Edited By SillyOldDuffer on 12/07/2018 22:35:40

is that going to be the same with most of these kits?

Martin Connelly13/07/2018 11:23:51
avatar
693 forum posts
71 photos

It shouldn't be too hard to spoof a few signals to use it as is, my biggest worry would be the torque available from the motors. 3D printing doesn't put much load on a motor so small holding torques don't cause a problem. You may need to up the holding torque by either replacing some of the motors with something beefier or by fitting a planetary gearbox on some of the stepper motors. You will only find out if you need more torque when you have got it all set up and start to cut something. I would work on the basis that as the spindle will not need high rpm for your application there would be no problem putting a 10:1 ratio gearbox on the spindle motor from the off. It may be cheaper than a bigger stepper with its own power supply and driver unit. These motors are 40 N.cm which is the same as 0.4Nm. Since people converting mills and lathes to CNC will be looking at steppers or servos with holding torque up to something like 20Nm you can se where my concern is coming from.

Martin C

john constable13/07/2018 16:40:17
avatar
80 forum posts
9 photos
Posted by Martin Connelly on 13/07/2018 11:23:51:

It shouldn't be too hard to spoof a few signals to use it as is, my biggest worry would be the torque available from the motors. 3D printing doesn't put much load on a motor so small holding torques don't cause a problem. You may need to up the holding torque by either replacing some of the motors with something beefier or by fitting a planetary gearbox on some of the stepper motors. You will only find out if you need more torque when you have got it all set up and start to cut something. I would work on the basis that as the spindle will not need high rpm for your application there would be no problem putting a 10:1 ratio gearbox on the spindle motor from the off. It may be cheaper than a bigger stepper with its own power supply and driver unit. These motors are 40 N.cm which is the same as 0.4Nm. Since people converting mills and lathes to CNC will be looking at steppers or servos with holding torque up to something like 20Nm you can se where my concern is coming from.

Martin C

Thanks Martin. My machine is scratch built rather than converting something heavier and the capacity is small i.e. maximum 2" x 10" wooden spindle. Nothing needs to whizz around too fast either as the tool movement will be slow like thread cutting on a lathe rather than a gantry router.

So, hopefully nema 17s will be fine....

I'm still trying to understand the whole path of CAD through to driver boards fully.I reckon I can learn to write simple gcode which should be enough for my application and can be put on the SD card but it would be nice to control the tool directly from a window on my pc. Not quite sure how to do that.It would also be useful to emulate the effect of my code on my machine before I commit but I'm not sure how to do that yet either.

Martin Connelly13/07/2018 17:27:34
avatar
693 forum posts
71 photos

Are you thinking along the line of manual data input (MDI) where you tell the machine to move to a certain point (for example) or are you after the ability to just move until you have things where you want them (jog). If the latter then you want to be able to put either a game controller in your system or a manual pulse generator (MPG) as often seen on a pendant. I don't know if something designed for a 3D printer will come with these features.

Martin C

john constable13/07/2018 17:45:31
avatar
80 forum posts
9 photos

both would be good

SillyOldDuffer13/07/2018 18:18:17
3193 forum posts
651 photos
Posted by john constable on 12/07/2018 23:36:42:
Posted by SillyOldDuffer on 12/07/2018 22:34:58:

...

My only tiny worry would be unwanted side-effects because it's a 3D printer driver.

...

is that going to be the same with most of these kits?

I don't know, yours is the first kit I've looked at in any detail. (Most people doing mills and lathes seem to either source the parts individually or buy a commercial solution. ) In terms of controlling your lathe it may not matter:

  • Could 'just work'
  • Might need some inputs faked as Martin suggests
  • Might need to hack the software slightly so unwanted printer inputs are ignored

I'd suggest wiring the motors up on a bench and trying it. If you can make them start, stop and reverse with simple g-code, you're OK. If they don't work it's time to find out why and fix it.

Martin may be right about motor torque. I hadn't spotted they're small motors. It's not speed that matters, it's the motor's ability to hold work in position when the tool bites. Embarrassing if applying the tool jams the lathe or pushes a motor in reverse. As Martin says gearboxes will help although they also slow the machine down.

Sending individual lines of g-code to the Arduino could probably be easily done with a terminal emulator. I'm not sure controlling a machine directly is a good idea though. Mistakes are punished immediately! If you mistype and tell the lathe to smash the tool into the work, it will.

I don't have CNC myself, but believe the approach is to either generate g-code from a computer model or write it by hand. Once the g-code exists it can be tested with a simulator, and/or by stepping though the program line by line on a real machine with no cutters. The purpose is to ensure there aren't any collisions, misses, excessive cuts, or inefficient movements. Once satisfied all is well, cutters are fitted and the program run at full speed.

Dave

john constable13/07/2018 18:35:21
avatar
80 forum posts
9 photos

OK - interesting. My strategy to get a kit was that all the components are already selected to work together and as I'm still green that's one less bunch of things to go wrong. However, if I was more confident I would prefer to get them individually.

Sounds like one step and emulation are a safer way to go. I'll look for an emulator so I can start to learn g-code while i'm still building the lathe.

So, is there a way to send your complete G-code to the arduino from the pc without using the sd card?

JasonB13/07/2018 18:53:40
avatar
Moderator
13224 forum posts
1203 photos

It would be worth playing with one of the free CAD/CAM packages such as Fusion360 which will generate all the code for you and give an idea of what can be done just from your drawing on a screen before you even go out and buy any parts.

This one shows a groove being cut around a cylinder

And this one a short helix
john constable13/07/2018 19:24:26
avatar
80 forum posts
9 photos

It's just too elaborate for what I need. I just need to move the tool about a bit to guide it to cut turned rope twists. I'm just not going to be doing anything sophisticated enough to justify a complex cad image. I'd like to model it in 3d so I can understand the effect of speeds on pitch types and number of spirals on one spindle etc and just get an idea of what it'll look like.
I did these last night in OpenSCAD in less than hour including installation and learning the basics of the software.
twist3.jpg
john1.jpg

SillyOldDuffer13/07/2018 20:41:37
3193 forum posts
651 photos

Posted by john constable on 13/07/2018 18:35:21:..

...

So, is there a way to send your complete G-code to the arduino from the pc without using the sd card?

Yes, it's easy, perhaps easier than getting the SD Card working. Have a look at this Getting Started page.

It also recommends 'that you use one of the many great GUIs that users have written to stream your G-code programs to Grbl and to fully harness all of Grbl's capabilities. NOTE: Check out ShapeOko's Wiki. It has the most up-to-date and comprehensive list of Grbl GUIs.' Following the link reveals loads of options.

The way you're approaching this is very sensible. Making use of kits and existing software will save lots of time and brain ache.

Dave

john constable13/07/2018 22:17:15
avatar
80 forum posts
9 photos

So GRBL is a piece of software - like an OS - that runs on the arduino board and controls the controller board by interpreting gcode that is sent to it by usb from a pc which is running one of many user-written GUIs?

Do the GUIs generate code from instructions you give it or do they convert from a CAD image?

SillyOldDuffer14/07/2018 10:09:50
3193 forum posts
651 photos
Posted by john constable on 13/07/2018 22:17:15:

So GRBL is a piece of software - like an OS - that runs on the arduino board and controls the controller board by interpreting gcode that is sent to it by usb from a pc which is running one of many user-written GUIs?

Do the GUIs generate code from instructions you give it or do they convert from a CAD image?

"So GRBL is a piece of software - like an OS - that runs on the arduino board and controls the controller board" - exactly right. It translates G-code commands into the motor steps needed to move a tool or print head to an X,Y,Z coordinate.

grbl will respond to commands typed into a character terminal, this is the best way to test your configuration to prove the motors respond correctly to simple commands. For production work that simplicity gets tedious, hence the GUIs. They do the same job but - once properly set up - are slicker, more helpful and whatever else the designer has thought of.

What the GUI's do varies a bit, but there look to be three levels of sophistication:

  • An improved version of a character terminal, tailored to support 3D, with easier connection.
  • A 'sender', allowing lists of g-code commands to be sent from files, providing access to folders, with buttons allowing grbl to be reset, jog, or otherwise positioned.
  • A 'sender with previewer', these can display the tool-path on screen, allowing the operator to see obvious mistakes before sending them to the machine.

A picture's worth a thousand words, this example is grblgui. (I've not used any of them and can't comment on installation, ease of use, or bugs.)

Do the GUIs generate code from instructions you give it or do they convert from a CAD image?

As far as I can see none of the free GUIs convert from CAD, you either type the code in by hand, or load it from a file. The file is usually created by something else; either a conversion program, or by the drawing package itself. Jason's post shows how Fusion360 does it.

A superficial read suggests OpenSCAD can't produce g-code directly, rather users export the model as a DXF file and run that through a DXF to G-code converter. At this stage it's worth mentioning a potential booby trap! The g-code files needed to print a 3d object are additive, that is the object is built inside-out by depositing layers until the shape is finished. The g-code instructions needed to mill the same 3d object are subtractive, that is the tool removes material from a solid block until the shape is finished, outside in. grbl doesn't care, but it's possible that software written specifically for 3D printing might not support milling and vice-versa. Your lathe is subtractive and the g-code you send to grbl needs to be that way round. It may be necessary to try a few alternatives to find what suits you best.

Dave

Dave

XD 35114/07/2018 11:20:16
avatar
982 forum posts
38 photos

Wouldn't it be easier to run a proper cnc controller like mach3 ? It would be seamless with something like fusion 360 cad/ cam which you can get for nothing on startup .

You can buy cheap 4 axis engraver / router units that just need to be connected to a pc running mach3 that may do what you want

I would build the electronics to be able to handle much more powerful motors - even if you don't need them now you may in the future . Nema 17 motors and the ramps controllers/ drivers are pretty gutless at around 2 amps max .

john constable14/07/2018 14:26:35
avatar
80 forum posts
9 photos
Posted by SillyOldDuffer on 14/07/2018 10:09:50:
Posted by john constable on 13/07/2018 22:17:15:

So GRBL is a piece of software - like an OS - that runs on the arduino board and controls the controller board by interpreting gcode that is sent to it by usb from a pc which is running one of many user-written GUIs?

Do the GUIs generate code from instructions you give it or do they convert from a CAD image?

"So GRBL is a piece of software - like an OS - that runs on the arduino board and controls the controller board" - exactly right. It translates G-code commands into the motor steps needed to move a tool or print head to an X,Y,Z coordinate.

grbl will respond to commands typed into a character terminal, this is the best way to test your configuration to prove the motors respond correctly to simple commands. For production work that simplicity gets tedious, hence the GUIs. They do the same job but - once properly set up - are slicker, more helpful and whatever else the designer has thought of.

What the GUI's do varies a bit, but there look to be three levels of sophistication:

  • An improved version of a character terminal, tailored to support 3D, with easier connection.
  • A 'sender', allowing lists of g-code commands to be sent from files, providing access to folders, with buttons allowing grbl to be reset, jog, or otherwise positioned.
  • A 'sender with previewer', these can display the tool-path on screen, allowing the operator to see obvious mistakes before sending them to the machine.

A picture's worth a thousand words, this example is grblgui. (I've not used any of them and can't comment on installation, ease of use, or bugs.)

Do the GUIs generate code from instructions you give it or do they convert from a CAD image?

As far as I can see none of the free GUIs convert from CAD, you either type the code in by hand, or load it from a file. The file is usually created by something else; either a conversion program, or by the drawing package itself. Jason's post shows how Fusion360 does it.

A superficial read suggests OpenSCAD can't produce g-code directly, rather users export the model as a DXF file and run that through a DXF to G-code converter. At this stage it's worth mentioning a potential booby trap! The g-code files needed to print a 3d object are additive, that is the object is built inside-out by depositing layers until the shape is finished. The g-code instructions needed to mill the same 3d object are subtractive, that is the tool removes material from a solid block until the shape is finished, outside in. grbl doesn't care, but it's possible that software written specifically for 3D printing might not support milling and vice-versa. Your lathe is subtractive and the g-code you send to grbl needs to be that way round. It may be necessary to try a few alternatives to find what suits you best.

Dave

Dave

That's all good news - thanks, Dave. So I still need CAM or CADCAM software. I'll persevere with fusion 360. However, as I only really want to turn rather than carve, I can probably do without the CAD stage. I just really wanted to see what my twists would look like and I've been able to do that in OpenSCAD.

That also means the inside-out issue won't affect me so all looking good so far.

john constable14/07/2018 14:35:38
avatar
80 forum posts
9 photos
Posted by XD 351 on 14/07/2018 11:20:16:

Wouldn't it be easier to run a proper cnc controller like mach3 ? It would be seamless with something like fusion 360 cad/ cam which you can get for nothing on startup .

You can buy cheap 4 axis engraver / router units that just need to be connected to a pc running mach3 that may do what you want

I would build the electronics to be able to handle much more powerful motors - even if you don't need them now you may in the future . Nema 17 motors and the ramps controllers/ drivers are pretty gutless at around 2 amps max .

Thanks, XD. I won't be engraving or 3D carving as such. I'm just guiding the tool along a slowly rotating spindle of wood so full cnc control software will be overkill unless i have no choice. That's also why I think 17s will be OK but this is just a lightweight prototype to prove the principle and help me understand how it all works. The MkII can use 23s if necessary.

Martin Connelly14/07/2018 18:41:02
avatar
693 forum posts
71 photos

The problem of low torque stepper motors is if they get a small kick when a tool cuts a shaving or bit of swarf they can miss steps. Once out of position they keep on merrily moving things around in the wrong position until there is human intervention or the program stops having produced something that is not quite right. You don't get these types of force with 3D printers, there is no high speed tool spinning around.The other thing is you may be underestimating the amount of force needed to push a work piece and tool together for the cutting action to take place. These motors when used with 3D printers are often driving fine threaded studding which gives some mechanical advantage. Is this what you were thinking of using instead of ball screws? They are not used to push a cutting tool into a work piece either. The Gcode for what you want is trivial don't sweat over it but do get suitable equipment for what you propose otherwise you could be wasting money.

Gcode for a barley twist

G01 X0 Y0 Z0 A0 F50 (Move to starting position. Tool over the centre of the work piece at one end and just touching the work piece. Use A=180 for a second start 180° around from the first and add 180 to the A value below ie 360+180=540)

G01 Z-1 F25 (Move the tool down 1mm into the work piece)

G01 X250 A360 F50 (Move the tool 250mm along the work piece whilst rotating the work piece 360°. Change 250mm and 360° to suit your requirements.

G01 Z2 (Lift the tool away from the work piece)

G0 X0 A0 (Rapid move back to X=0

G01 Z-2 F25 (Lower the tool 1mm more than before to do a second cut)

Repeat with decreasing Z until you have got to the depth you want.

Martin C

john constable14/07/2018 20:32:39
avatar
80 forum posts
9 photos

OK, I've listened to all the advice regarding 17s vs 23s. I still think my machine's motors will need very little torque - I can't see a router spindle binding when taking a shallow cut in wood for instance. However I came here for the benefit of your advice so I'd be mad to ignore it. I might also be underestimating the torque needed for my xy table which is quite cheap and, my MKII will probably need 23s and I can move them across.
So, can any suggest a driver/controller board kit that will cope with 23s? And can I mix 17s (where I know there is a low torque requirement) or does that get complicated for a novice?

john constable14/07/2018 20:33:59
avatar
80 forum posts
9 photos
Posted by Martin Connelly on 14/07/2018 18:41:02:

The problem of low torque stepper motors is if they get a small kick when a tool cuts a shaving or bit of swarf they can miss steps. Once out of position they keep on merrily moving things around in the wrong position until there is human intervention or the program stops having produced something that is not quite right. You don't get these types of force with 3D printers, there is no high speed tool spinning around.The other thing is you may be underestimating the amount of force needed to push a work piece and tool together for the cutting action to take place. These motors when used with 3D printers are often driving fine threaded studding which gives some mechanical advantage. Is this what you were thinking of using instead of ball screws? They are not used to push a cutting tool into a work piece either. The Gcode for what you want is trivial don't sweat over it but do get suitable equipment for what you propose otherwise you could be wasting money.

Gcode for a barley twist

G01 X0 Y0 Z0 A0 F50 (Move to starting position. Tool over the centre of the work piece at one end and just touching the work piece. Use A=180 for a second start 180° around from the first and add 180 to the A value below ie 360+180=540)

G01 Z-1 F25 (Move the tool down 1mm into the work piece)

G01 X250 A360 F50 (Move the tool 250mm along the work piece whilst rotating the work piece 360°. Change 250mm and 360° to suit your requirements.

G01 Z2 (Lift the tool away from the work piece)

G0 X0 A0 (Rapid move back to X=0

G01 Z-2 F25 (Lower the tool 1mm more than before to do a second cut)

Repeat with decreasing Z until you have got to the depth you want.

Martin C

Thanks, for all that Martin. It's been very useful. It's also my first look at real g-code!

All Topics | Latest Posts

Please login to post a reply.

Magazine Locator

Want the latest issue of Model Engineer or Model Engineers' Workshop? Use our magazine locator links to find your nearest stockist!

Find Model Engineer & Model Engineers' Workshop

Latest Forum Posts
Support Our Partners
Eccentric July 5 2018
Expo Tools July 14
Ausee.com.au
Meridienne Sept 5
Eccentric Engineering
emcomachinetools
Shapiro
Allendale Electronics
Warco
ChesterUK
SPG Tools October Seventeen
TRANSWAVE Converters
Sarik
Subscription Offer

Latest "For Sale" Ads
Latest "Wanted" Ads
Get In Touch!

Do you want to contact the Model Engineer and Model Engineers' Workshop team?

You can contact us by phone, mail or email about the magazines including becoming a contributor, submitting reader's letters or making queries about articles. You can also get in touch about this website, advertising or other general issues.

Click THIS LINK for full contact details.

For subscription issues please see THIS LINK.

Digital Back Issues

Social Media online

'Like' us on Facebook
Follow us on Facebook

Follow us on Twitter
 Twitter Logo

Pin us on Pinterest