Saturday, 16 April 2022

Threading the turret locknut - buttockus tightus!!

Finally, after fighting and beating the Fusion 360 post processor, I am in a position to machine and thread the nut. 

First, drill out 16mm diameter:


Face off and chamfer:

Bore out to 17.0mm:

Close enough!

Here's the insert for a 1.5mm internal thread. You can buy LH and RH inserts but the so-called "LH" inserts are simply intended for use with the spindle in reverse and the tool cutting behind the axis. So this is a "RH" insert.

Yes, it's pretty tight. The insert is 16mm diameter from the tip to the back of the bar. The bore is 17mm and the final diameter of the thread root is 18mm, so not much room for mistakes. Touching off at 17mm here leaves an alleged 1mm clearance at the back.

Sanity checking with an MF18 tap. Looks plausible, certainly.


And off we go...



There's about 2mm clearance between the main body of the boring bar and the workpiece. I set up the thread depth in Fusion to take into account the length of the shank but it's good to see I hadn't cocked up the measurements.


It took less than a minute in the end and the finishing tap went straight in. If anything, it was slightly oversize but not by much. I've got plenty of threads to work with and the male thread is 100% threaded by the looks of it.


Bottom line is that it spins on nicely without undue slop.


Now, refit to the chuck and get it running true, so I can create the finished nut which isn't simply a threaded hex bar. I got lucky here, as the runout was minimal first time round.


At this point my concerns about swarf getting to the ballscrew and magnetic linear encoder proved valid. The tiny bits of swarf from my previous steel machining (the spindle nose 5C cartridge) had got everywhere inside, not least the magnetic strip. This caused loss of encoder signal and a loss of axis position. You can see some of the swarf on the stainless steel strip below:


I've cleaned it up now and taped over the open holes but ultimately will need to make a proper cover for the top of the cross slide.

Next - turn down the turret nut to the correct dimensions and refit the turret.

Friday, 15 April 2022

Another Fusion 360 post processor cockup

Sounds frustrating?
Yes, I've lost most of today buggering about with the Fusion 360 / LinuxCNC post processor and the resulting g-code, trying fruitlessly to get the Bantam to cut my blessed left hand thread.

Here's the output from Fusion:

%
(1002)
N10 G7
N11 G18
N12 G90
N13 G21
N14 G28 Z0.

(THREAD2)
N15 T6 M6
(LH THREADING MF18X1.5)
N17 G54
N18 G97 S250 M3
N19 G95
N20 G90 G0 X15.093 Z6.125
N21 G0 Z-31.092
N22 X16.96
N23 G33 Z2.474 K-1.5
N24 X16.093 Z2.908 K-2.121
N25 G0 X15.593
N26 Z-30.993
N27 X17.319
N28 G33 Z2.394 K-1.5
....

and so on, until the full depth has been cut. It all looks fine and simulates fine. I can load the file and run the program until it gets to the G33 on line N23, at which point it freezes. No helpful error message, no means of forcing it to proceed.

This is similar to the issue you will encounter if you don't have a valid index pulse coming from the spindle encoder. The index pulse is used (required) for synchronising the spindle position with the tool, so that multiple passes occur at the same position each pass. However, I can see the index using Halscope and furthermore, the external / right hand thread g-code I ran back in November still works today. Clearly something else is happening.

The LinuxCNC g-code help file manual thing doesn't provide any clear pointers.

21. G33 Spindle Synchronized Motion

G33 X- Y- Z- K- $-
  • K - distance per revolution

For spindle-synchronized motion in one direction, code G33 X- Y- Z- K- where K gives the distance moved in XYZ for each revolution of the spindle. For instance, if starting at Z=0G33 Z-1 K.0625 produces a 1 inch motion in Z over 16 revolutions of the spindle. This command might be part of a program to produce a 16TPI thread. Another example in metric, G33 Z-15 K1.5 produces a movement of 15mm while the spindle rotates 10 times for a thread of 1.5mm.

The (optional) $ argument sets which spindle the motion is synchronised to (default is zero). For example G33 Z10 K1 $1 will move the spindle in synchrony with the spindle.N.revs HAL pin value.

Spindle-synchronized motion waits for the spindle index and spindle at speed pins, so multiple passes line up. G33 moves end at the programmed endpoint. G33 could be used to cut tapered threads or a fusee.

All the axis words are optional, except that at least one must be used.

Note
K follows the drive line described by X- Y- Z-. K is not parallel to the Z axis if X or Y endpoints are used for example when cutting tapered threads.
Technical Info

At the beginning of each G33 pass, LinuxCNC uses the spindle speed and the machine acceleration limits to calculate how long it will take Z to accelerate after the index pulse, and determines how many degrees the spindle will rotate during that time. It then adds that angle to the index position and computes the Z position using the corrected spindle angle. That means that Z will reach the correct position just as it finishes accelerating to the proper speed, and can immediately begin cutting a good thread.

HAL Connections

The pin spindle.N.at-speed must be set or driven true for the motion to start. Additionally spindle.N.revs must increase by 1 for each revolution of the spindle and the spindle.N.index-enable pin must be connected to an encoder (or resolver) counter which resets index-enable once per rev.

See the Integrators Manual for more information on spindle synchronized motion.

G33 Example
G90 (absolute distance mode)
G0 X1 Z0.1 (rapid to position)
S100 M3 (start spindle turning)
G33 Z-2 K0.125 (move Z axis to -2 at a rate to equal 0.125 per revolution)
G0 X1.25 (rapid move tool away from work)
Z0.1 (rapid move to starting Z position)
M2 (end program)
  • See G90 & G0 & M2 sections for more information.

It is an error if:

  • All axis words are omitted.

  • The spindle is not turning when this command is executed

  • The requested linear motion exceeds machine velocity limits due to the spindle speed

Aha!!
About the only difference I can see between my 2 files is the polarity of the "K" variable, which is negative for a LH thread if you are using a "forward" spindle direction. Sure enough, if I remove the negative sign in front of the K, the program will proceed past the line:

N23 G33 Z2.474 K-1.5

becomes

N23 G33 Z2.474 K1.5

and all is well. Until you get to the return move, which uses another (negative) K:

N24 X16.093 Z2.908 K-2.121

FFS. A global find and replace of "K" in place of "K-" results in a functioning toolpath finally.

I guess I could mess with the post processor but I'd need to be very careful. What would happen if I ran the machine in reverse with the tool behind the workpiece - that's a perfectly reasonable scenario. The change in spindle direction would require the tool to move in the opposite direction. For now, I'll simply edit the file manually and think about modifying the post processor at a later date. I don't expect to be cutting LH threads very often after all.

What about the Centroid post?
Good point, as I'll be using a Centroid Acorn for the Tree when it's working. As it's using a different post processor and some of the g-codes are different, it may not be a problem. Sure enough, the canned cycle used is G32 and the variable used ("F") is positive. I guess they thought it through a little more thoroughly.

;1001
N10 G98 G90
N11 G21
N12 G50 S6000
N13 G28 U0.
N14 G28 W0.

;THREAD2
N15 T0600
;LH THREADING MF18X1.5
N16 G54
N17 G99
N18 G97 S250 M3
N19 G4 P1.
N20 G0 X15.093 Z6.125 T0606
N21 G0 Z-31.092
N22 X16.96
N23 G32 Z2.474 F1.5
N24 X16.093 Z2.908 F1.5
N25 G0 X15.593
N26 Z-30.993
N27 X17.319
...

It's a different g-code but it's still a spindle synchronised, so the same considerations would surely apply.

Well finally I can look forward to cutting this damned LH thread of mine......

Sunday, 10 April 2022

Preparing to thread the turret lock nut - CAD, CAM and tool library

I've ordered an MF18 finishing tap but short of buying both a roughing and a finishing tap, I'll need to rough out the thread on the Bantam. This will be my first internal threading operation.

Firstly, let's create a CAD model. This is a 1-1/4" hex body with a 17mm bore, 'cos that's what I've got. That's a little under 100% thread but it will be more than sufficient.


A section view, to sanity check:


Now I need to create a threading tool and set up the toolpath. The 16mm sized inserts I bought from Cutwel seem to by Vardex, so here's the relevant part of the datasheet:


Managed to get the tool set up:


And the toolpath. As the insert tip is 15mm from the back of the toolbar and the bore is only 17mm, I don't have much room for retract and clearance moves. Ideally I'd have some 11mm sized inserts but I'm not about to buy another boring bar and inserts.


Took a bit of buggering about to get there but I seem to have got there in the end. I'll need to drill out the stock and get it ready for threading but otherwise we seem to be ready to have a go. As ever, "what could possibly go wrong" etc. Watch this space.....

Try out the new motors for size

I received the 4kW 2 pole spindle motor and the 2 servo motors/drives during the week, so let's check them out. Also, a single groove 300mm pulley and single groove 71mm pulley. My original plan for a 300mm double groove pulley has been superseded now, due to a cunning plan for a 2 speed spindle.

Spindle motor and drive pulleys:

Trial fit of the 300mm single groove pulley and the "best estimate" belt. The pulley is loosely fitted and the motor is just sitting on its cradle. I seem to have got the belt length roughly right at least.


This was my first attempt at a dual pulley arrangement. Due to the design of the large pulley, there's too much of an axial gap between the vees. That isn't ideal and would likely cause belt wear.



...but if I swap the pulleys over, the vees are much closer to the spacing on the spindle pulley. That's the arrangement I'll go with, although the details will have to come later. It may even involve a manual belt change but at least I should have the option for a lower speed range.


Let's figure out where the motor needs to be positioned. It's obvious that the threaded fixing holes I made a week or so ago are in the wrong place, either due to change in pulleys, numerical incompetence or both. Using a straight edge, it's easy to see where it needs to be.



It's about 15mm too far outboard, so I'll need to tap another set of holes.


There we go.



Fitting the Z axis (carriage) servo motor:

Here's a trial assembly.


That top right screw is a bit close to the belt. But if I simply slide the pulley further away from the motor to clear the screw head, it won't have much shaft to clamp onto.


So instead I'll omit that screw and fit the other 3 fixings.


Like this:


Job done, cover back in place.


X axis (cross slide) servo motor:


Luckily the screw heads clear the belt here:


The motor is sort of exposed out the back - but this is largely covered by the capstan housing anyway. I've looped the control cables so that any fluids running down them won't end up on the connectors.


I'll try to remember to make a small circular cover plate for where the encoder used to sit. The original cover sticks out several inches and now has no purpose.


Refitting the carriage limit switch:

Before I consider refitting the enclosure, I need to ensure the carriage limit switch is refitted....


...then refit the telescopic way covers.

That's a good start - all 3 motors fitted. Nothing to drive them yet but that is another key step in the mechanical assembly / fitting process.

Saturday, 2 April 2022

Reassembling the turret - and buggered castle nut

During my absence on Thursday / Friday, the o-ring for the turret arrived. It's very slightly larger in diameter than the one that came off. However, I followed the recommended procedure for measuring and specifying an o-ring (measure the ID ie the groove inner diameter) and the actual diameter of the o-ring section itself. Here's the new (top) and old (bottom). Let's fit the thing and move on. Having said that, obvs I bought 2 of the buggers, as it doesn't look easy to refit them without nipping the edge off, as seen in the old one:


That went fairly well, although I've no means of telling until I pressure test it. Apart from oiling the parts beforehand, there's not a lot you can do to ensure the assembly goes well. I'd checked the entry to the bore was clean and smooth previously.


This is the time to refit the external dust seal, as the screws are not accessible once the turret is fitted. That also means the turret will need to be inserted past the seal over a large circumference simultaneously, which could be tricky.


The next operation is to insert the turret, then.


Time for a good slathering of oil.


Not forgetting the needle thrust bearing and its 2 washers.


But wait. Nothing's as simple as that and sure enough, the castle nut isn't looking too clever. Nor does it want to simply spin onto the end of the shaft. I smell a rat here.

Sure enough, the thread is well and truly buggered, with bits of swarf hanging off internally. Once those have been pried away with various scrapers, it's clear there's almost no thread to speak of. Or just enough to jam the nut when you try to thread it on. Standing back somewhat, it's pretty clear that this is actually a replacement, home made affair.

Time to measure up what we have here. Is it metric or imperial? So far, all the fixings on this turret have been metric, so I'll expect that first. I'm guessing this turret wasn't actually made by Tree, otherwise we'd be seeing UNC / UNF threads.


But firstly, I need to reassemble the thread gauge. This was rusted TF, so I tried out my Evaporust on it. This worked OK but now I'll need to sort them all out into metric and imperial, then order then in ascending order....


...like this...


...and then fit them to the frame. Phew. Wasn't as bad as I'd feared.


Here we go - 1.5mm pitch:


...and 18mm  diameter - LEFT HAND THREAD.


So it seems that it's a standard thread - MF18 ie metric fine, 18mm diameter by 1.5mm pitch. When I dismantled the turret, there was no split pin evident in the castle nut until the thing had come off, at which point I was able to see the remains of a split pin in the hole here. So some clot had simply forced the nut off, shearing the pin and buggering the thread of the castle nut in the process. NO, it wasn't me - or even The Stupid Fat Bloke.

So, what to do here? The nut's clearly fucked, so needs to be replaced. This is a problem. Although my Bantam would love to thread this, I can't easily remove the male threaded (mating) part. So even if I manage to make the required nut, I'd not be able to try it on the shaft unless I was able to remove the entire nut and chuck. I can do this with a D1-3 spindle nose, as we find on the Bantam but it would be far from easy to try out the fit with a bloody great collet chuck hanging off the back of it. 

So I have a choice:

  1. Make up a blank nut and thread it with an off the shelf tap.
  2. Make and thread a nut myself, removing the whole nut / chuck to try the fit.
  3. Make a dummy male thread of the correct size.
  4. Somehow procure an MF18 go / no go thread gauge.
I like option 1, if I can find something at a sensible price. 2-4 don't appeal unless I'm really in a corner. I would normally hope to find something at Drill Service, Cutwel or possibly even The Tap and Die Company But no obvious cigar appears...

However, all is not yet lost. It seems I can buy a set of LH MF18 taps for £75 plus VAT and postage from MSC UK. At that price, we can happily forget that as an option. Alternatively, we have Eurafco(?) who sell individual LH MF18 taps for ~£25, like this one. That works out at £31, which would save a lot of faffing about. Deal done. You never know, I may actually receive it by next weekend. However, I'll need to make myself up a blank nut anyway, so I couldn't use one even if I got it tomorrow.

Currently, the castle nut requires a rather special driver to tighten it, due to the awkward shroud around the end of the shaft. If I'm going to make this myself, I'll go for a different, simpler solution, like a good old fashioned hex section. I could even turn down the shroud and make life much simpler....

Setting up to test the rewired CNC Bantam and Probe Basic Lathe

Now that I've developed a ballscrew attachment for the JD TB3 tube bender, I need to prepare to get the new compts machined. This requir...