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

CNC Lathe Scratch Build

All Topics | Latest Posts

Search for:  in Thread Title in  
John P17/08/2021 09:11:05
328 forum posts
226 photos


Hi Joe,

The dovetail cutter you mention was back in 2017.
Here is a photo of the two cylinders as you can see
the construction is very simple, i only needed a connecting tube
of 4mm OD as the grinder movements are small and fairly slow,
the down feed when in cnc mode is 0.00001 inch. per motor step,
perhaps more important is the tube does not place any load
on the in feed axis of the grinding wheel as this can feed in increments
of much less than 1 um if needed, i would think that if you were to use
a similar system a larger connection tube would be needed to cope
with the greater axis speed.

John

counterbalance cylinders.jpg

Joseph Noci 117/08/2021 11:10:16
1006 forum posts
1247 photos

Thanks for the reminder John!

I guess once the lathe is together I will be able to evaluate better what might be needed and may just reach out to you again..

Joe

blowlamp17/08/2021 12:18:59
avatar
1516 forum posts
98 photos

John & Joe.

For your lathe application, with its fast moving slides, maybe a hybrid solution could work if it turns out you need anything.

Dispense with the hydraulics and instead substitute a Bowden Cable arrangement. This would allow a remote counterbalance of similar layout to that of Johns, but also enable a compact & lightweight connection to the X axis that could be set up to not put undue restriction to free movement.

Martin.

Joseph Noci 131/08/2021 18:56:46
1006 forum posts
1247 photos

The last two weeks have been have been spread over 'wildlife' issues, with not too much time available to work on the lathe - did manage some over the last two days though..

The ATC's co-axial live spindle requires the remake of a number of items, with design changes - I have made most of the parts and a trial fit shows promise..One of my concerns was the effect of tolerance build-up in the linear mode of the assembly. I ended up with 0.13mm 'elongation' beyond my drawing tolerances, and had allowed for 0.3mm in 'adjustments' so all is well!

As a reference for parts, i have included the block diagram again:

live spindle sketch.jpg

This is a trial assembly of the important parts - the motor fitting still in progress

trial assy.jpg

The main new item was a replacement central shaft, with through hole for the live spindle drive shaft -

here is the shaft being threaded for the toolplate, central pre-load nuts and motor mount.

threading.jpg

Toolplate thread test fit:

toolplate thread fit.jpg

The collet and bearings fitted - test spin by hand..Face pre-load nut still to be made.

collet spinning.jpg

Spindel dive motor and halls sensors fitted:

The left section is the magnetic rotor .

motor and hall sensors.jpg

The orange part of the rotor will be machined off, as the rotor fits into the new motor housing below:

magnet end to machine.jpg

Motor stator inside motor housing

motor assy.jpg

Motor Rotor slid into motor housing - own shaft still to be pressed out and the orange part machined off.

motor magnet rotor in housing.jpg

As usual, more to come.

Joe

Joseph Noci 101/09/2021 17:01:39
1006 forum posts
1247 photos

CNC'ed the air cooling holes into the magnet Rotor housing this morning, and fitted the locking grubscrews. rotor aircooling1.jpg

rotor aircooling2.jpg

Getting there...

Joseph Noci 104/09/2021 14:51:58
1006 forum posts
1247 photos

The motor Rotor/Housing is complete - just finished dynamic balancing of it at 8000RPM - worked out nicely. Have created a separate post on the balancing - this post is becoming a bit of a saga..

air spinning and bearing housings.jpg

final balance holes.jpg

Joe

Joseph Noci 116/09/2021 16:26:41
1006 forum posts
1247 photos

The ATC is 'complete' - all parts are done and the thing is assembled. I have tested it using a Nucleo with some test code - The Hirth coupling disengages @ 105psi and the stepper turns the tool plate just fine. The live spindle drive also works very well, so all in all I am happy.

View of the Bellville springs under preload.

bellville preload.jpg

Piston travel limiter installed.

piston travel limter.jpg

Piston fitted into the cylinder body.

piston in cylinder body.jpg

Mating all parts together

mating parts.jpg

Live spindle drive shaft installed

live spindle driveshaft.jpg

Spindle motor and drive electronics fitted

spindle motor electronics.jpg

Main cover fitted

main cover on.jpg

All covers on, ready to fit to lathe

atc closed.jpg

Views on the lathe

atc on lathe1.jpg

atc on lathe2.jpg

Now the big deal is to get LinuxCNC to talk to the ATC, so I am bum on chair and head buried in the mess of LinuxCNC, HAL and that cryptic world!

Last post on this lathe will hopefully be a video of it working..

Joe

Pete.17/09/2021 03:18:19
avatar
638 forum posts
102 photos

Hi Joe,

I've been quietly following your progress, I know nothing about electronics so can't comment on that side of things, but you've done an amazing job machining all those components and bringing you design to life, I can't wait to see it fired up and put to work.

Thanks for taking the time to document the process, personally I think it's the best thread on here for ages.

Joseph Noci 117/09/2021 08:36:58
1006 forum posts
1247 photos

Thank You Pete. This is not most folk's cup of tea and it is good to receive some comment! Not this forum's idea of 'Model Engineering', and I am considered somewhat anal and excessively fastidious by some....

On top of that, this project has been, and still is, a challenge. It's scope grew beyond my intentions and the basic capability of most of my machines and challenged me to the point of almost giving up - a few times...Here in Namibia there are NO other folk dabbling in this stuff at all, so cannot even go see someone and lament over a cup of tea, or a barrel of beer!

Thanks for the encouragement.

Joe

Ady117/09/2021 09:19:52
avatar
4728 forum posts
714 photos

wow, can't wait to see it working

I would work on lumps of balsa wood for a while, until I was really really sure

Surely deserves a writeup on lathes.co.uk this one

Joseph Noci 126/09/2021 13:30:04
1006 forum posts
1247 photos

Well, nothing useful to report, other than that I am feeling somewhat like a piece of threaded rod at the moment...

It turns out that when I started this project, the future dilemma would, and did, lie in the fact that success was 'doomed' as I did not know what I did not know. And to discover what you don't know only seems to come about when the task in front of you demands that you dig deep and research a lot, for days...

I was searching for a machine controller that could do lathe C axis with live tooling, and did not realised what I should have asked was - C axis with live tooling AND polar interpolation...

Many climbed in and said to persevere with LinuxCNC as it 'can do anything' - but if you search ( exhaustively!) you find NO one has actually done this with LinuxCNC...

Bottom line is that LinuxCNC CANNOT do Polar modes - it lacks the kinetics, and so lathe polar work is not possible with Polar style Gcodes. And Polar Gcodes are what is generated by ALL the CAM packages I have looked at, tried, trialled and cried over.

All CAM packages that deal with Caxis/live tool lathes generate a G12.1 code which sets a suitable controller into polar mode and which then does the Cartesian/polar math. For this to work with LinuxCNC the CAM package would have to convert all coordinated Caxis/Xaxis polar moves to small line increments of angle and x Axis move commands. I have not found any package that can do it! 'Someone' siad F360 can, but did not have the time to test a simple case for me...I also understand that F360 Lathe post-processor has 'warts'...?

I had a few CAM companies looking at the issue - it took some doing to get them to understand the issue - they could not get past the disbelief initially that a lathe CNC controller could not do Polar motion...These are companies whose CAM costs between $2000.00 and $4500.00 per seat..Out of 5 companies, 2 were very helpful they even phoned me here in Namibia a few times for more details - I was so frustrated that I was 'sort of' considering paying such a price for something that would work and explained such. They went away and came with a proposal to add the non-polar piece wise Gcode stream - cost to add would be around $2500.00 plus some TBD cost to adapt a postprocessor for the lathe...

So I thanked them for their time, and thats that!

I do not like F360 - it is to complex to live with - if you don't use it for a few months, it takes a day to get back into it, re-learn the syntax and commands, etc - and they keep changing it - also dislike very much the user use-case and cloud base nonsense...So if someone who knows F360 well is prepared to do a small test code for me, I would be most appreciative - if it works maybe i'll purchase a license...- this may be my only solution bar one - this being that I write my own polar kinematics for linuxcnc and somehow integrate it with some new Gcodes (G12.1/G13.1), etc. That is such a mission - it was supposed to be a user adaptable tool, not a project unto itself!

Bah!

At least the mechanics are successful - the ATC works well and the whole thing works well as a 2 axis lathe!

John Haine26/09/2021 14:32:29
4170 forum posts
242 photos

By polar code, do you mean using the spindle as an A axis? Could you not adapt a milling profile for when you want to do this?

blowlamp26/09/2021 15:58:05
avatar
1516 forum posts
98 photos

This is from the PlanetCNC gcode reference - I don't know if it's of any help, I'm just posting if you weren't aware.

Martin.

G15 - Polar Coordinate Cancel
Usage: G15
Cancel polar mode coordinate positioning.
Parameters:
#<_polarmode> - (RW) current polar mode
G16 - Polar Coordinate Enable
Usage: G16
Enable polar mode coordinate positioning. In the polar coordinate mode movement end points are
specified as a radius and angle. Origin is determined by the absolute/incremental position mode
setting.
The current plane setting determines which word is radius and which is angle.
G17 – XY Plane – X is radius, Y is angle
G18 – ZX Plane – Z is radius, X is angle
G19 – YZ Plane – Y is radius, Z is angle
Parameters:
#<_polarmode> - (RW) current polar mode
Example:
(square with corners -30,-30 and 30,30)
G0 X0 Y0
G16
G00 X42.4264 Y225
G01 X42.4264 Y135
G01 X42.4264 Y45
G01 X42.4264 Y315
G01 X42.4264 Y225
G15

Joseph Noci 126/09/2021 19:56:12
1006 forum posts
1247 photos
Posted by John Haine on 26/09/2021 14:32:29:

By polar code, do you mean using the spindle as an A axis? Could you not adapt a milling profile for when you want to do this?

John, the spindle is actually the C axis in a lathe, but the principle is similar. And no, you can't adapt a milling profile - or I suppose you can, but you have to unwrap the c axis required motion into a Y axis linear motion and convert that to C axis motion coordinated with X...! So no, not really..

Joseph Noci 126/09/2021 20:04:16
1006 forum posts
1247 photos
Posted by blowlamp on 26/09/2021 15:58:05:

This is from the PlanetCNC gcode reference - I don't know if it's of any help, I'm just posting if you weren't aware.

Martin.

G15 - Polar Coordinate Cancel
Usage: G15
Cancel polar mode coordinate positioning.
Parameters:
#<_polarmode> - (RW) current polar mode
G16 - Polar Coordinate Enable
Usage: G16
Enable polar mode coordinate positioning. In the polar coordinate mode movement end points are
specified as a radius and angle. Origin is determined by the absolute/incremental position mode
setting.
The current plane setting determines which word is radius and which is angle.
G17 – XY Plane – X is radius, Y is angle
G18 – ZX Plane – Z is radius, X is angle
G19 – YZ Plane – Y is radius, Z is angle
Parameters:
#<_polarmode> - (RW) current polar mode
Example:
(square with corners -30,-30 and 30,30)
G0 X0 Y0
G16
G00 X42.4264 Y225
G01 X42.4264 Y135
G01 X42.4264 Y45
G01 X42.4264 Y315
G01 X42.4264 Y225
G15

Hi Martin. Unfortunately , not really.. G16 initiates Polar mode but in XY plain, and so intended mainly for XYZ axis machines such a mills. What G12.1 does on a Polar modes equipped lathe is take the polar Y modes of the XYZ machine and convert the motion to X linear and C axis rotation, wrapping what was Y axis linear around the C axis.

The key lies in your last bits of the post -

G00 X42.4264 Y 225
G01 X42.4264 Y 135
G01 X42.4264 Y 45
G01 X42.4264 Y 315
G01 X42.4264 Y 225

Still all linear moves, just computing the XY position in polar form...

The only way forward I see is for me to write my own full Polar Interpolation kinematics.

 

 

Edited By Joseph Noci 1 on 26/09/2021 20:07:36

Michael Gilligan26/09/2021 21:38:42
avatar
18925 forum posts
942 photos

Joe,

It’s way out of my league … but I just remembered downloading this a while back: **LINK**

https://www.researchgate.net/publication/257337791_A_CNC_program_module_based_on_polar_coordinate_system

… It may be of more use to you than it has been to me blush

MichaelG.

John Haine27/09/2021 10:22:52
4170 forum posts
242 photos

Joe, am I missing something here? On my mill under Mach3 the rotary axis is A, and can make coordinated moved with any of the other 3 axes. The A axis is calibrated in degrees,. I guess if your CAM insists on making C axis moves you could just do a global edit on the g code?

John.

Joseph Noci 127/09/2021 12:16:23
1006 forum posts
1247 photos

Hi John,

Here is where one has to get you mind wrapped around the issue ( or the axis)...Also why I am only discovering the issue now, since as I mentioned before, you really only learn when you need to, not in passing..!

Anyway - The motion you speak of is essentially still just linear.

In other words, when you issue G01 X10.00 A10.00the two axes will move to 10mm and 10deg coordinated. So when A has move 1deg, X has moved 1mm, etc. The two axes will accelerated together, travel together and both decel to the 10mm/10deg finish line together. That's coordinated, not interpolated in the true sense.

This works identically in the C axis lathe - A G01 X10 C10.00 will do as your mill did.

Now Imagine cutting a square head on the end of a shaft in a Caxis/live tool lathe - It is educational to visualise the actual C axis / X axis movement relationships in travel as the path is cut - the path is non-linear, sort of Hyperbolic.

If the CAM packagedid the interpolation and then generated Gcode that was simple coordinated 'linear' moves, ie, many short G01 Xxx Cyy moves, then each move would be coordinated and the actual cut path alone one side of the square would be done by hundreds of such G01 moves - Caxis would rotate a tiny bit and X would likewise move a tiny bit, etc.

But CAM packages that are capable of C axis/live tool lathe camming tend NOT to generate such piece-wise code - they use 'interpolated modes' - They issue a G12.1 (or similar) which places the controller in polar mode. Then the issues Gcode are a specific notation of X and C axis moves, which if the G12.1 were not active, would make the two axes simply move in coordinated motion as the examples above - the path followed would not be along the side of the square at all! The G12.1 makes the controller looks at the X/C move command and do a linear to polar conversion to establish the path, and back to cartesian coordinates to then move each axis in normal coordinated mode, in very tiny increments, many thousands, compared to the hundred in the example above.

A long story...!

Hope that explains a little?

blowlamp27/09/2021 14:28:16
avatar
1516 forum posts
98 photos

It looks like Centroid make a C-Axis controller, but at a price. You'd be looking at around $2300 for the board & software.

 

Martin.

Edited By blowlamp on 27/09/2021 14:29:31

Joseph Noci 127/09/2021 16:12:27
1006 forum posts
1247 photos
Posted by blowlamp on 27/09/2021 14:28:16:

It looks like Centroid make a C-Axis controller, but at a price. You'd be looking at around $2300 for the board & software.

Martin.

Yes, they do. Centroid was my first port of call, with a near_purchase...It does implement a C axis and was told it would do what I want, but turns out that was not so - It does exactly what my LCNC setup as at present does - NO Polar Interpolation, no G12.1/G13.1. As with mine, it can only do C axis Indexing and coordinated moves. So you can drill holes on the face of a part at any angle, using the live spindle, etc, but no polar stuff..I searched for a controller or software to do this...Considering the pain en-route to what I have, I would have happily paid $3K for an of-the shelf option!

Joe

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
cowells
JD Metals
walker midge
BOLDON
emcomachinetools
Warco
rapid Direct
Eccentric Engineering
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