I used the Aspire 9.0 'wrapping job setup Gadget to successfully mill square stock down to a 1.4" round stock. I then tried to use the same 0.5" end mill to create round 0.75" mortise on each end of the dowel (so the dowel would fit into round 0.75" tenons on some shelves)... The Aspire 9.0 simulation (and .mmg tool path commands) show the 4th axis rotating in full 360 degree motions... But the actual chuck was only moving between +/- 24.628 degrees.
I've checked: I'm NOT losing steps; My 4th axis belt/gears are NOT slipping. Does anyone know what might cause the CNC machine's 4th axis (i.e. the handheld controller) to scale down or limit the degrees of travel commanded by the tool path file?
Thanks for the reply. I tried getting rid of the 0.5" wide pocket altogether, and instead routed with my 0.5" end mill on a profile line (that was longer than the circumference of the wooden dowel)... this way, the diameter of the end mill would not come into play. Unfortunately, I ended up with the exact same results. The Aspire 9.0 simulation showed me what I expected to see and the tool path's angular code appear to command 360 degree rotations. It just seems that my CNC machine's handheld controller is scaling or limiting the rotations.
Does anyone know if the G-code angles mean to move so many increments of degrees from the current position, or does it mean to go to a certain absolute position regardless of the current position? For example, If my 4th axis was sitting at 180 degrees, would 'A45.000' command a positive rotation of 45 degrees to the 225 degree position? Or would my 4th axis rotate in a positive direction for 225 degrees to reach the absolute position of 45 degrees past home?
Post by Gary Campbell on Jun 12, 2018 23:29:51 GMT -5
Daniel... All (for the vast majority, at least) the code we run on small CNC machines is absolute positioning. In your example above the answer is neither. If the current position is 180*, then a commanded position of 45* would result in a 135* negative movement to the absolute position of 45*.
Can you post a file and the resulting posted code that has the erroneous results you speak of above?
Looks like you have your table set up like mine. Can you please do me a favor and see how this file runs on your 4th axis? Profile 1.mmg (1.38 KB)
The attached tool path is set up for:
The 4th axis runs along the Y axis (wraps the X values).
I've got Y0 set near the chuck; the spindle will route in the Y- direction towards Home.
I've got my Z0 set to center of board.
You won't need any wood in your chuck or a bit in you're spindle... I would just like to see if your chuck rotates 360 degrees as suggested by the Aspire preview below, or if your chuck only rotates a limited 50-ish degrees like I'm actually seeing. Thank you.
All (for the vast majority, at least) the code we run on small CNC machines is absolute positioning. In your example above the answer is neither. If the current position is 180*, then a commanded position of 45* would result in a 135* negative movement to the absolute position of 45*.
By studying my code, I would agree with you that the Z movement code is for sure set up for absolute positioning.
Here's what I'm seeing on my 4th axis:
Controller C+ turns my chuck "CCW"
Controller C- turns my chuck "CW"
I'll have my CNC machine zeroed out and then start my program:
"A-27.000" command rotates my chuck in the CCW (+ direction) by 27* to position 27.000*.
"A387.000" command then rotates my chuck in the CW (- direction) by 54* to position 333.000*.
this 4th axis rotation pattern repeats until I reach my desired depth.
It almost looks like my +/- direction is reversed either in the tool path file or in my CNC controller... I'll have to see if there's an easy way to switch the C axis direction in my 4th axis post processor file (seeing as how my +/- directions are correct when I run XYZ programs using the XYZ post processor file). Thoughts in general?
Post by Gary Campbell on Jun 16, 2018 15:44:03 GMT -5
Daniel... I agree. Lets assume your 4th axis is Y parallel. That means you wrap X around Y.
From the Y zero (front) end of the table 4th axis rotation should be positive = clockwise. Which end is your headstock on?
Remember that the rotary works like a moving table. To show positive (to the right) X direction, the rotary has to turn to the left (negative) direction.
Next, your post processor should have a line in it that reads ROTARY_WRAP_X = "-A" Or B if that's what is in place on your machine. You can make the rotary turn the opposite direction by removing the "-" sign, but it will usually work better if you get the motor turning the right direction first.
There are 4 wires that go from the motor into the drive. from one end, reverse wires 3 and 4
Looks like you have your table set up like mine. Can you please do me a favor and see how this file runs on your 4th axis? Hi Dan. The file ran exactly the same way for me with 4th axis only moving roughly 45* back and forth... I will venture over to the Vectric forum and see if I can't grab your .crv file. I would like to see how it's set up.
Unless the rotary axis has been specifically setup by Axiom for the headstock on the far end of the table you will need to reverse the motor wires to get proper motion.
I hope you do this Dan and report back as I am very, very curious. I have 11 months left on my warranty and Chad would catch me if I did this.
I have zero knowledge of g-code and any comments would only reflect my inexperience at this time.
With that being said, my headstock is at the far end of the table and A+ rotates the chuck CCW and A- rotates CW. The files I have been running are 2 rail sweeps with a roughing and finishing toolpath and the chuck moves CW when executing these files.
On an interesting note, I have been attempting to run very similar paths as yours on my project. I have successfully run my profile and engraved on my profile. My final step is to run recessed fillets (radially) on my profile. These are simply small dado's. Really no difference to what you are trying to do. I thought this was going to be the easiest to figure out but it wasn't. The chuck moved back and forth without completing a full rotation or, depending on changes I made, the chuck wouldn't rotate at all and my bit sank to depths I didn't want to see.
Now to the interesting part.....
* I opened the "draw text" and created a series of underscores ( _ ). 14 to be exact for the 1st run.
* I resized these underscores to fit within my work area and ran a V-carve/Engraving toolpath.
* To my delight this created a perfect fillet around my profile with no separation between each "underscore", albeit with 14 entry and exit points.
Next time, I created 1 underscore and stretched to fit my work area and ran the same toolpath. Did not work this time.
For the 3rd attempt, I created 2 underscores, stretched to fit and ran the same toolpath. Worked like a champ with only 2 entry and exit points. Now I am running perfect fillets on my profile. I know....I'm a cheater .
I ran your file with this in mind and your dado and rabbit ran perfectly. I know this doesn't help you in solving the issue at hand, but for me it is a work around so I can proceed with my goal.
Thought I should share my logic behind the above workaround...
Noticing that I could not get any toolpath to run radially with the 4th axis, everything appears to always raster, I decided that I would figure out how to create the fillet with 'steps' involved. Thus my use of underscores to create 'steps'. This was influenced by an email from Chad a few weeks ago where he confirmed that the malfunction behind the radial rounding toolpath was a software glitch.