Automated Wheel Cutting GCode for the Tormach with the Sherline CNC Rotary Table

I have been putting this off as I thought it would be hassle and in fact it was very simple.

Here is the code which is the first time I have ever used a sub-routine.

The top section is my standard set up routine for the Tormach.

The middle section has some out of the way locations to try the idea so don’t get too fixated by these.   The important bit is the M98 call for the sub routine, the sub routine name (1001) and the number of repeats (the L5 for five repeats).

The last section is the sub routine indicated by the O1001.   The M64 command is specific to the Tormach USB Expansion board and it makes relay P0 in the box close its contact which in turn activates the Sherline CNC Rotary table to move one step.   The cutter than moves across to cut the tooth and then returns whereupon the relay drops out (M65), waits and then closes once more to increment the table.   Once five repeats have happened the M99 closes the sub routine and the program jumps back to the Z10 line in the middle section before stopping the spindle, homing and ending.

The joy of this method is that it is a simple edit of one line (the M98  instruction) to change the number of tooth cutting increments. I like it a lot.

Some fine tuning is still needed on the back and forth distances needed to clear the cutter through the wheel blank.

The normal test of the cut depth routine will still be needed before this could be run but once this is done it should be a sit and watch job.   Hopefully.

I have yet to run a wheel in anger so I will let you know how it goes. 

A compiled write up of all the related blog entries on this subject can be found on the downloads page.

Similar or related subjects : –

Cycloidal Cutters and Finding the Cutting Centre

It has been a thoughtful morning on the Tormach wheel cutting setup. 

In order to cut clock wheels the first step is that I need to be able to set the cycloidal cutter centre line accurately on the centre line of the blank brass diameter.  See the picture and description below.

Exaggerated mock up of the cutting setup showing a brass blank mounted on a super glue arbor and a cutter mounted in the Tormach Slitting Saw arbor. The centre line of the cycloidal cutter teeth sits on the centre line of the brass blank and cuts on the rear edge as seen above. After each cut the CNC rotary table increments the blank by one tooth ready for the next cut. (In practice the super glue arbor would need to be much larger in diameter in order to be more in keeping with the diameter of the brass blank and so ensure maximum support while the cutting was done).

From previous posts you will know I have got the chuck securely and centrally mounted on the CNC rotary table and this assembly is in turn rigidly fixed on the tooling table. The position of the centre line of the chuck is now fixed relative to the tooling plate on the bed.  The chuck and rotary table mounting bracket is sufficiently Woody over engineered to hopefully be repeatable.   Likewise the distance from the spindle to the chuck can be repeatably zeroed using the Haimer and its associated tool table entry (#90).

Expanding this a little, if I put my favourite piece of 11mm diameter silver steel in the chuck and bring the Haimer down to contact it, rock the Haimer back and forth in Y to get the steel diameter peak, I can get a Z zero reading to the top of the steel.   By creating a new entry in the Tormach tool table (#91) which is the Haimer length plus 5.5mm (the radius of the silver steel) I can use this virtual length stored as a new tool #91 to allow me to set the Haimer on the silver steel while actually giving me Z0 on the centre line of the chuck. So far so good.

As you might have read from an earlier post, the idea of using the Tormach Slitting Saw arbor to hold my cycloidal cutters would in theory create a repeatable tool length to the centre line of the cycloidal cutter teeth.   Having this as a tool table set up in the Tormach would simplify setting the cutter centre to the centre line of the chuck and therefore the  centre line of the wheel blank being cut. This is where the thinking drifted somewhat.   

I created a new tool table entry (#77) that was the length of the saw arbor to the shoulder that the cycloidal cutter fastens against.   I thought I could then follow the same routine as detailed above and add to this length the half thickness of the cutter and create a new tool table entry to match.  This would once again create a length which would give the centre line of the cycloidal cutter.

That was fine until I measured my tray of cycloidal cutters to see what the thickness of the cutters were …… sadly consistent they are not.   There seems to be no standard by manufacturer or diameter.   I have cutters with thicknesses from 3mm through to 7mm.   I could create a new tool table entry for each thickness but this is a recipe for a mistake when selecting the correct tool table entry for the cutter being used.

The simple solution I think is to use slitting saw arbor tool table length (#77) as the initial setting length to Z0 and then do a G0 Z-x.xx where x.xx is the half thickness of the cutter being used.   Once Z has dropped to this reading the Z axis can be re-zeroed to run the wheel in question with the cutter in question now sitting on its centre line on the centre line of the chuck.

Simple diagram showing the concept of using the Tormach tool table facility to allow easy setting of the centre line of a wheel blank and cycloidal cutter centre lines

I hope that all makes sense …. I could of course just eyeball it and not try to be so fussy but when you have the tools to make things easier you might as well use them.  I also need to look after my precious piece of 11mm diameter silver steel.

Similar or related subjects : –

Tormach USB Expansion Board boxed and mounted

Another piece of the clock wheel cutting hardware completed.

The Tormach USB expansion board is now boxed and the connectors wired to the board.   I milled a viewing window in the box with a matching piece of perspex.   This allows me to see the status LEDs on the pcb. Port #P0 is now dedicated to the Sherline CNC rotary table controller which requires a closure to increment the table stepper motor.   

The connectors are all 8 pin MiniDIN which matches the interface on the rotary table.

Tormach USB Expansion card mounted in an IP55 enclosure and on the blanking panel where the ATC would normally be fitted.
Internal view of the Tormach USB Expansion board mounted in its enclosure. It shows the MiniDIN connectors on the pcb milled using my vacuum table and also the lazy cable gland on the USB cable

Still got to do the GCode …

Similar or related subjects : –

Clock Wheel Cutting Adaptation of a Tormach Saw Mandrel

I am slowly building up to being able to cut wheels on the Tormach PCNC440 with two possible methods.

The first is using Gearwheel Designer which is mentioned elsewhere on my blog.   

The second route is  more conventional using a PP Thornton or similar cycloidal tooth cutter and a dividing device on a rotary table.  This later method is how wheels are traditionally cut in a lathe and there is a lot of information available on this.

In order to use the cycloidal cutters I need some form of arbor to mount the cutter in the Tormach spindle.   I could simply turn a piece of steel bar to suit and mount this in a ER collet in the spindle.   The downside of this simple approach is that every time the arbor was fitted into a collet the cutter would be at a different height from the table.   I really wanted something a bit more repeatable as the centre line of the rotary table will always be the same so why not the cutter centering.

When I ordered the Tormach PCNC440 I also ordered the Tormach small rotary saw arbor (which to date I have never used).   Pondering this last night I sketched up an adapter in Fusion 360 to allow an involute cutter to be fastened to the end of the saw arbor.   

This is shown below. It is made from a piece of 19mm AF hexagonal steel bar with the hexagonal flats going to be used as a tightening it in place in the Tormach arbor. My Myford Super 7 when used with a 3 jaw self centering chuck is not bad on concentricity but for really accurate centering I swap the chuck for a collet face plate instead.    This job was going to need both.

First operation was to turn the hex bar end that would screw into the arbor.  This was done in the lathe chuck.   It was a simple turn to a diameter and drill and tap the end with M6 to match the arbor mounting.   The only pain was the arbor has a slightly protruding lip so I had to undercut the mounting face for this.   Rather than trying to be clever I did it by hand using a graver.

While the hex stock was still in the lathe I roughly turned down the other end of the adapter to the primary diameter and slightly oversize for the cycloidal cutter bore diameter and then cut off the stock so far.

It would be important to get the cutter mounting running as square as possible so I swapped the lathe chuck for the collet plate and mounted the arbor end of the adapter in the collet. I carefully turned the shoulder for the cycloidal cutter diameter and then reduced the remaining length ready to cut a M6 thread.

Here are a couple of images of the finished adapter.

Tormach TTS saw collet with my adapter and a typical clock wheel cutter
Assembled cutter on Tormach TTS collet

I am pleased to say the idea went almost to plan and it runs very true in the Tormach spindle.

I was a bit over enthusiastic with the graver but this is of no consequence.

With hindsight the shank between the cutter and the hex section ought to be longer as this will restrict the diameter of the wheel that can be cut before the blank catches the hex section peaks.

One step closer to trying this method. The next experiment is to work on a sub routine in GCode to move the cutter back and forth while cutting and with the ability to easily program the number of cuts.

Similar or related subjects : –

CNCEST 3040T CNC Router Update

Mach3, Limit Switches and First Cut

Progress has been good in getting the 3040T running.   Mach3 is not like PathPilot but then it is an all things to all machines software whereas PathPilot is dedicated to the Tormach family.   As a result of this Mach3 does take a bit more getting your head around and there is a lot more under the hood settings and adjustments that you have to address.

The first problem was the RnR USB interface card and trying to work out which port was which on the card connections.  Once this was sorted the motors responded to keyboard directional commands with the arrow keys and page up/down.  I had to make changes to the Mach3 Config for this.   If anyone needs screen shots of these setups send me a message.

Having been used to homing the Tormach I decided that adding limit switches to the 3040 would be a good thing.   I fitted 6 microswitches and wired them in series via their normally closed contacts to create a loop.   I connected one end of the loop to the Input 2 terminal on the card terminal strip (Port 3) and the other end to ground.   Any switch when activated will now break the loop and create an alarm condition.   The same switches also perform the home reference function.  (Mach3 just looks for a break in the circuit relevant to the function being asked of it – it knows when it is homing and it knows when it is running and looking for a switch break).   

I made 3D printed mountings for the switches and covers for these.  I had to add extra wiring to the cable forms both on the machine, through the connector cable to the control box and inside the control box.   Fiddly but done. I slipped up with the +Y back stop switch in that I mounted it on the cross plate without realising that the interface cabling to the umbilical connector fouls the movement.   There was a protruding M3 screw holding the interface connector in place which was acting as a crude carriage stop.  I turned an eccentric ‘top hot’ to fit on this screw to activate the microswitch.

Fitting the switches has now made setting up more repeatable and it consistently goes to 0,0,0 when doing a Reference All. Having referenced the spindle head, it can then be moved to the WCS zero ready to run a job. So far I have played with the demo Mach3 which has limited lines of GCode capacity but I have run some of my small PCB milling routines successfully. So all looking good but as ever I wasn’t satisfied and wanted to make life easier by using the Tormach ShuttleXpress controller.   This involved downloading a plug in file to add to Mach3. It sort of works but it isn’t like it is on the Tormach so I am still trying to get to grips with it.

I am waiting for a delivery of TackPack superglue to stick the cable wiring in place, hence the fluorescent green masking tape.   The flat cable is standard ribbon cable stripped down to be the right number of cores as needed. Note that I replaced the backing plate on the Z mounting (the bright aluminium as seen in the first picture) as this protruded too far down and would not allow the microswitch to be easily mounted. A few pictures of progress below and more updates to follow.

3040T limit switches
View showing Z switches and one X switch with its printed cover in place
Limit switch with cover removed
Underside view showing Y limit switches and also ‘Top Hat’ stop fitted on connector mounting screw (aluminium disc in this view)
RnR USB interface card. IN1 is the emergency stop switch and IN2 is the series wired normally closed loop via the limit switches with the return going to GND

Similar or related subjects : –