UCCNC & Rotary Control
- TReischl
- Vectric Wizard
- Posts: 5312
- Joined: Thu Jan 18, 2007 6:04 pm
- Model of CNC Machine: Avid Type| Aspire V12 | Rhino| 3 Bambus
- Location: Leland NC
UCCNC & Rotary Control
As I have posted elsewhere, I have been rebuilding my machine the last few weeks. Everything is coming along pretty well, except . . . .
UCCNC and the rotary axis. I was under the impression that UCCNC supported rotary axis. That may not be the case. For the last two days I have been slogging along trying to get it to work correctly. Bear in mind, this is not something new to me. Been there, done that. I even upgraded my software from 4.5 to 11.5 because some "expert" on the internet said that would solve the problem. Wonder if he could refund the $400 to me?
The axis is configured, it moves under keyboard control or via a program. The problem is that it only has one speed, rapid.
One of my searches uncovered a post about the axis doing that when it is the only axis being moved.
G93
G1A360F45
(I put the G93 in there so someone does not "solve" my issue by saying "well you need a G93, there, problem solved")
The UCCNC manual states that a rotary axis is programmed by the inverse time method (G93).
No matter what value I change the F word to, the axis still runs at rapid. Which is defined in the configuration screen in UCCNC.
Seems to be a common problem.
Ah, but there are some YouTube videos that claim to show the axis being correctly controlled. I watched them. There is nothing in them to suggest that someone did not just set the rapid to a low speed and run a program.
BTW, this is NOT a Vectric software problem, in fact, Vectric software allows for a reasonable workaround to this issue.
Here is the deal, if the linear axis is commanded to move at all on the same line as the rotary command it appears that the feed rate is calculated correctly. So if you want to go round and round you need to tell the software to set the raster angle to something a bit less than 90 degrees. I have tried it with 89.5 degrees successfully. Tomorrow I am going to give 89.9 a try. Did not do it today because SWMBO announced dinner time. Something I do not miss!
Now, maybe I have missed some little thing that would have prevented all this fun. If YOU are running UCCNC, and you can set your raster angle to 90 degrees and the machine actually adjusts the feedrate I would like to know your secret. Remember, the Vectric software outputs the correct code, it is the UCCNC stuff that is not working correctly in my opinion, and a few others.
UCCNC and the rotary axis. I was under the impression that UCCNC supported rotary axis. That may not be the case. For the last two days I have been slogging along trying to get it to work correctly. Bear in mind, this is not something new to me. Been there, done that. I even upgraded my software from 4.5 to 11.5 because some "expert" on the internet said that would solve the problem. Wonder if he could refund the $400 to me?
The axis is configured, it moves under keyboard control or via a program. The problem is that it only has one speed, rapid.
One of my searches uncovered a post about the axis doing that when it is the only axis being moved.
G93
G1A360F45
(I put the G93 in there so someone does not "solve" my issue by saying "well you need a G93, there, problem solved")
The UCCNC manual states that a rotary axis is programmed by the inverse time method (G93).
No matter what value I change the F word to, the axis still runs at rapid. Which is defined in the configuration screen in UCCNC.
Seems to be a common problem.
Ah, but there are some YouTube videos that claim to show the axis being correctly controlled. I watched them. There is nothing in them to suggest that someone did not just set the rapid to a low speed and run a program.
BTW, this is NOT a Vectric software problem, in fact, Vectric software allows for a reasonable workaround to this issue.
Here is the deal, if the linear axis is commanded to move at all on the same line as the rotary command it appears that the feed rate is calculated correctly. So if you want to go round and round you need to tell the software to set the raster angle to something a bit less than 90 degrees. I have tried it with 89.5 degrees successfully. Tomorrow I am going to give 89.9 a try. Did not do it today because SWMBO announced dinner time. Something I do not miss!
Now, maybe I have missed some little thing that would have prevented all this fun. If YOU are running UCCNC, and you can set your raster angle to 90 degrees and the machine actually adjusts the feedrate I would like to know your secret. Remember, the Vectric software outputs the correct code, it is the UCCNC stuff that is not working correctly in my opinion, and a few others.
"If you see a good fight, get in it." Dr. Vernon Johns
- Mark
- Vectric Staff
- Posts: 1087
- Joined: Sat Aug 18, 2007 2:55 pm
- Model of CNC Machine: CNC Shark, ShopBot, Roland PNC3000
- Location: Alcester U.K.
- Contact:
Re: UCCNC & Rotary Control
Hello Ted,
I don't think that we have a standard UCCNC rotary post processor, could you please post up the post processor that you are using so that we can check it out? We should be able to let you know whether it should be working.
Many thanks in advance.
Cheers,
Mark.
I don't think that we have a standard UCCNC rotary post processor, could you please post up the post processor that you are using so that we can check it out? We should be able to let you know whether it should be working.
Many thanks in advance.
Cheers,
Mark.
- TReischl
- Vectric Wizard
- Posts: 5312
- Joined: Thu Jan 18, 2007 6:04 pm
- Model of CNC Machine: Avid Type| Aspire V12 | Rhino| 3 Bambus
- Location: Leland NC
Re: UCCNC & Rotary Control
Mark, thanks for taking an interest in this "issue".
I am using an Avid Wrap Y post processor that I have modified. Essentially removing all the stuff not needed when doing rotary. For instance, highly doubtful I am going to do any helix milling while in rotary.
Did some more testing this morning, I am pretty sure this is not something that Vectric can, or should be, trying to fix. If I remove Vectric from the equation by hand coding I cannot come up with a solution that works correctly without fudging a few numbers.
This is what the gcode looks like when the roughing raster angle is set to 90 degrees This does NOT run correctly, even though F18.2 is programmed, the axis spins at full rapid.
G0 G20 G17 G90 G40 G49 G80
G91.1
M3
G93
G0 A0.0000 X0.0000 Y0
G0 A359.7788 X3.9999
G0 Z1.2000
G1 Z0.8750 F92.3
G1 A0.2212 F18.2
G1 X3.9997 A0.0177 F32068.3
G1 X3.9955 A0.0000 F23547.5
G1 X3.9424 F1886.7
G1 A360.0000 F18.2
G1 X3.8849 F1739.1
G1 A0.0000 F18.2
G1 X3.8274 F1739.1
G1 A360.0000 F18.2
G1 X3.7699 F1739.1
G1 A0.0000 F18.2
G1 X3.7124 F1739.1
The following code is produced when the raster angle is set to 89.9999. It runs correctly.
TReischl
G0 G20 G17 G90 G40 G49 G80
G91.1
M3
G93
G0 A0.0000 X0.0000 Y0
G0 A359.7702 X4.0000
G0 Z1.2000
G1 Z0.8750 F92.3
G1 X3.9999 A0.2212 F18.2
G1 X3.9997 A0.0177 F32068.4
G1 X3.9955 A0.0000 F23547.5
G1 X3.9424 F1886.7
G1 X3.9425 A360.0000 F18.2
G1 X3.8850 F1739.1
G1 X3.8849 A0.0000 F18.2
G1 X3.8274 F1739.1
G1 X3.8275 A360.0000 F18.2
G1 X3.7700 F1739.1
G1 X3.7699 A0.0000 F18.2
G1 X3.7124 F1739.1
Edit Note: Adding an X value into the line does not correct the issue, unless the value is a bit fudged.
Here is the post:
I printed the post here so everyone can take a look. . .
POST_NAME = "Avid Rotary Y Test (*.txt)"
FILE_EXTENSION = "txt"
UNITS = "inches"
DIRECT_OUTPUT = "Mach|Mach4.Document"
ROTARY_WRAP_Y = "A"
INVERSE_TIME_MODE = YES
SUBSTITUTE = "({)}"
+------------------------------------------------
+ Line terminating characters
+------------------------------------------------
LINE_ENDING = "[13][10]"
+================================================
+
+ Formating for variables
+
+================================================
VAR SPINDLE_SPEED = [S|A|S|1.0]
VAR FEED_RATE = [F|C| F|1.1]
VAR INVERSE_TIME = [FI|A| F|1.1]
VAR X_POSITION = [X|C|X|1.4]
VAR Y_POSITION = [Y|C|Y|1.4]
VAR Z_POSITION = [Z|C|Z|1.4]
VAR ARC_CENTRE_I_INC_POSITION = [I|A|I|1.4]
VAR ARC_CENTRE_J_INC_POSITION = [J|A|J|1.4]
VAR X_HOME_POSITION = [XH|A|X|1.4]
VAR Y_HOME_POSITION = [YH|A|Y|1.4]
VAR Z_HOME_POSITION = [ZH|A|Z|1.4]
VAR SAFE_Z_HEIGHT = [SAFEZ|A|Z|1.4]
VAR DWELL_TIME = [DWELL|A|P|1.2]
VAR WRAP_DIAMETER = [WRAP_DIA|A||1.3]
+---------------------------------------------------
+ Commands output at the start of the file
+---------------------------------------------------
begin HEADER
"TReischl"
"G0 G20 G17 G90 G40 G49 G80"
"G91.1"
"M03"
"G93"
"G0 [YH] [XH] Y0"
+---------------------------------------------------
+ Commands output for rapid moves
+---------------------------------------------------
begin INITIAL_RAPID_MOVE
"G0 [Y] [X]"
"G0 [Z]"
begin RAPID_MOVE
"G0 [X] [Y] [Z]"
+---------------------------------------------------
+ Commands output for the first feed rate move
+---------------------------------------------------
begin FIRST_FEED_MOVE
"G1 [X] [Y] [Z] [FI]"
+---------------------------------------------------
+ Commands output for feed rate moves
+---------------------------------------------------
begin FEED_MOVE
"G1 [X] [Y] [Z] [FI]"
+---------------------------------------------------
+ Commands output for a new segment - toolpath
+ with same toolnumber but maybe different feedrates
+---------------------------------------------------
begin NEW_SEGMENT
"M03"
"(Toolpath: [TOOLPATH_NAME] Tool: [TOOLNAME])"
+---------------------------------------------
+ Commands output for a dwell move
+---------------------------------------------
begin DWELL_MOVE
"G04 [DWELL]"
+---------------------------------------------------
+ Commands output at the end of the file
+---------------------------------------------------
begin FOOTER
"G0 [ZH]"
"G0 [XH] [YH]"
"G94"
"M05"
"M09"
"M30"
%
I am using an Avid Wrap Y post processor that I have modified. Essentially removing all the stuff not needed when doing rotary. For instance, highly doubtful I am going to do any helix milling while in rotary.
Did some more testing this morning, I am pretty sure this is not something that Vectric can, or should be, trying to fix. If I remove Vectric from the equation by hand coding I cannot come up with a solution that works correctly without fudging a few numbers.
This is what the gcode looks like when the roughing raster angle is set to 90 degrees This does NOT run correctly, even though F18.2 is programmed, the axis spins at full rapid.
G0 G20 G17 G90 G40 G49 G80
G91.1
M3
G93
G0 A0.0000 X0.0000 Y0
G0 A359.7788 X3.9999
G0 Z1.2000
G1 Z0.8750 F92.3
G1 A0.2212 F18.2
G1 X3.9997 A0.0177 F32068.3
G1 X3.9955 A0.0000 F23547.5
G1 X3.9424 F1886.7
G1 A360.0000 F18.2
G1 X3.8849 F1739.1
G1 A0.0000 F18.2
G1 X3.8274 F1739.1
G1 A360.0000 F18.2
G1 X3.7699 F1739.1
G1 A0.0000 F18.2
G1 X3.7124 F1739.1
The following code is produced when the raster angle is set to 89.9999. It runs correctly.
TReischl
G0 G20 G17 G90 G40 G49 G80
G91.1
M3
G93
G0 A0.0000 X0.0000 Y0
G0 A359.7702 X4.0000
G0 Z1.2000
G1 Z0.8750 F92.3
G1 X3.9999 A0.2212 F18.2
G1 X3.9997 A0.0177 F32068.4
G1 X3.9955 A0.0000 F23547.5
G1 X3.9424 F1886.7
G1 X3.9425 A360.0000 F18.2
G1 X3.8850 F1739.1
G1 X3.8849 A0.0000 F18.2
G1 X3.8274 F1739.1
G1 X3.8275 A360.0000 F18.2
G1 X3.7700 F1739.1
G1 X3.7699 A0.0000 F18.2
G1 X3.7124 F1739.1
Edit Note: Adding an X value into the line does not correct the issue, unless the value is a bit fudged.
Here is the post:
I printed the post here so everyone can take a look. . .
POST_NAME = "Avid Rotary Y Test (*.txt)"
FILE_EXTENSION = "txt"
UNITS = "inches"
DIRECT_OUTPUT = "Mach|Mach4.Document"
ROTARY_WRAP_Y = "A"
INVERSE_TIME_MODE = YES
SUBSTITUTE = "({)}"
+------------------------------------------------
+ Line terminating characters
+------------------------------------------------
LINE_ENDING = "[13][10]"
+================================================
+
+ Formating for variables
+
+================================================
VAR SPINDLE_SPEED = [S|A|S|1.0]
VAR FEED_RATE = [F|C| F|1.1]
VAR INVERSE_TIME = [FI|A| F|1.1]
VAR X_POSITION = [X|C|X|1.4]
VAR Y_POSITION = [Y|C|Y|1.4]
VAR Z_POSITION = [Z|C|Z|1.4]
VAR ARC_CENTRE_I_INC_POSITION = [I|A|I|1.4]
VAR ARC_CENTRE_J_INC_POSITION = [J|A|J|1.4]
VAR X_HOME_POSITION = [XH|A|X|1.4]
VAR Y_HOME_POSITION = [YH|A|Y|1.4]
VAR Z_HOME_POSITION = [ZH|A|Z|1.4]
VAR SAFE_Z_HEIGHT = [SAFEZ|A|Z|1.4]
VAR DWELL_TIME = [DWELL|A|P|1.2]
VAR WRAP_DIAMETER = [WRAP_DIA|A||1.3]
+---------------------------------------------------
+ Commands output at the start of the file
+---------------------------------------------------
begin HEADER
"TReischl"
"G0 G20 G17 G90 G40 G49 G80"
"G91.1"
"M03"
"G93"
"G0 [YH] [XH] Y0"
+---------------------------------------------------
+ Commands output for rapid moves
+---------------------------------------------------
begin INITIAL_RAPID_MOVE
"G0 [Y] [X]"
"G0 [Z]"
begin RAPID_MOVE
"G0 [X] [Y] [Z]"
+---------------------------------------------------
+ Commands output for the first feed rate move
+---------------------------------------------------
begin FIRST_FEED_MOVE
"G1 [X] [Y] [Z] [FI]"
+---------------------------------------------------
+ Commands output for feed rate moves
+---------------------------------------------------
begin FEED_MOVE
"G1 [X] [Y] [Z] [FI]"
+---------------------------------------------------
+ Commands output for a new segment - toolpath
+ with same toolnumber but maybe different feedrates
+---------------------------------------------------
begin NEW_SEGMENT
"M03"
"(Toolpath: [TOOLPATH_NAME] Tool: [TOOLNAME])"
+---------------------------------------------
+ Commands output for a dwell move
+---------------------------------------------
begin DWELL_MOVE
"G04 [DWELL]"
+---------------------------------------------------
+ Commands output at the end of the file
+---------------------------------------------------
begin FOOTER
"G0 [ZH]"
"G0 [XH] [YH]"
"G94"
"M05"
"M09"
"M30"
%
"If you see a good fight, get in it." Dr. Vernon Johns
-
- Vectric Wizard
- Posts: 1018
- Joined: Fri Sep 21, 2007 1:44 pm
- Model of CNC Machine: UCCNC Router, Plasma, Laser
- Location: Australia 3781
Re: UCCNC & Rotary Control
I ran both versions of your code. I could see no difference running between the two.
Of course our machines and setup will be different so that may not mean much. Rotary max velocity 5000 units/min. (degrees)
Have been using UCCNC for about seven years with rotary and had no issues, but again different machines, jobs and probably methods.
Mine has a driver for each axis including Y and A. That also should make no difference.
I will be following this thread to see what you find out.
I did wonder how this paragraph of the manual applies.
Rotary axis: When this option is set then the axis is not calculated into the feedrate of the
movement vector, but only the linear axis are calculated for the feedrate. The rotary axes are only
following the linear axes. The upper limitation for the linear axis feedrate will be still the maximum
velocity of the rotary axis. In other words the rotary axis will not run faster than it's velocity setting
and this might limit the feedrate of the linear movement.
Don't think it means much but here is my cut down G93 PP that I use.
POST_NAME = "Wrap Y to A G93"
FILE_EXTENSION = "txt"
UNITS = "MM"
ROTARY_WRAP_Y = "-A"
INVERSE_TIME_MODE = YES
SUBSTITUTE = "({)}"
+------------------------------------------------
+ Line terminating characters
+------------------------------------------------
LINE_ENDING = "[13][10]"
+================================================
+ Formating for variables
+================================================
VAR SPINDLE_SPEED = [S|A|S|1.0]
VAR FEED_RATE = [F|C|F|1.1]
VAR X_POSITION = [X|A|X|1.3]
VAR Y_POSITION = [Y|A|Y|1.3]
VAR Z_POSITION = [Z|A|Z|1.3]
VAR X_HOME_POSITION = [XH|A|X|1.3]
VAR Y_HOME_POSITION = [YH|A|Y|1.3]
VAR Z_HOME_POSITION = [ZH|A|Z|1.3]
VAR SAFE_Z_HEIGHT = [SAFEZ|A|Z|1.3]
VAR INVERSE_TIME = [FI|A|F|1.3]
VAR FEED_RATE = [F|C|F|1.0]
VAR PLUNGE_RATE = [FP|C|F|1.0]
+---------------------------------------------------
+ Commands output at the start of the file
+---------------------------------------------------
begin HEADER
"G0 G17 G90 G40 G49 G93"
"[S] M03"
"[XH] [YH] [F]"
+---------------------------------------------------
+ Commands output for rapid moves
+---------------------------------------------------
begin RAPID_MOVE
"G0 [X] [Y] [Z]"
+---------------------------------------------------
+ Commands output for the first feed rate move
+---------------------------------------------------
begin FIRST_FEED_MOVE
"G1 [X] [Y] [Z] [FI]"
+---------------------------------------------------
+ Commands output for feed rate moves
+---------------------------------------------------
begin FEED_MOVE
"G1 [X] [Y] [Z] [FI]"
+---------------------------------------------------
+ Commands output at the end of the file
+---------------------------------------------------
begin FOOTER
"G0 [ZH]"
"G0 [XH] [YH]"
"M05"
"G94"
"M30"
%
Of course our machines and setup will be different so that may not mean much. Rotary max velocity 5000 units/min. (degrees)
Have been using UCCNC for about seven years with rotary and had no issues, but again different machines, jobs and probably methods.
Mine has a driver for each axis including Y and A. That also should make no difference.
I will be following this thread to see what you find out.
I did wonder how this paragraph of the manual applies.
Rotary axis: When this option is set then the axis is not calculated into the feedrate of the
movement vector, but only the linear axis are calculated for the feedrate. The rotary axes are only
following the linear axes. The upper limitation for the linear axis feedrate will be still the maximum
velocity of the rotary axis. In other words the rotary axis will not run faster than it's velocity setting
and this might limit the feedrate of the linear movement.
Don't think it means much but here is my cut down G93 PP that I use.
POST_NAME = "Wrap Y to A G93"
FILE_EXTENSION = "txt"
UNITS = "MM"
ROTARY_WRAP_Y = "-A"
INVERSE_TIME_MODE = YES
SUBSTITUTE = "({)}"
+------------------------------------------------
+ Line terminating characters
+------------------------------------------------
LINE_ENDING = "[13][10]"
+================================================
+ Formating for variables
+================================================
VAR SPINDLE_SPEED = [S|A|S|1.0]
VAR FEED_RATE = [F|C|F|1.1]
VAR X_POSITION = [X|A|X|1.3]
VAR Y_POSITION = [Y|A|Y|1.3]
VAR Z_POSITION = [Z|A|Z|1.3]
VAR X_HOME_POSITION = [XH|A|X|1.3]
VAR Y_HOME_POSITION = [YH|A|Y|1.3]
VAR Z_HOME_POSITION = [ZH|A|Z|1.3]
VAR SAFE_Z_HEIGHT = [SAFEZ|A|Z|1.3]
VAR INVERSE_TIME = [FI|A|F|1.3]
VAR FEED_RATE = [F|C|F|1.0]
VAR PLUNGE_RATE = [FP|C|F|1.0]
+---------------------------------------------------
+ Commands output at the start of the file
+---------------------------------------------------
begin HEADER
"G0 G17 G90 G40 G49 G93"
"[S] M03"
"[XH] [YH] [F]"
+---------------------------------------------------
+ Commands output for rapid moves
+---------------------------------------------------
begin RAPID_MOVE
"G0 [X] [Y] [Z]"
+---------------------------------------------------
+ Commands output for the first feed rate move
+---------------------------------------------------
begin FIRST_FEED_MOVE
"G1 [X] [Y] [Z] [FI]"
+---------------------------------------------------
+ Commands output for feed rate moves
+---------------------------------------------------
begin FEED_MOVE
"G1 [X] [Y] [Z] [FI]"
+---------------------------------------------------
+ Commands output at the end of the file
+---------------------------------------------------
begin FOOTER
"G0 [ZH]"
"G0 [XH] [YH]"
"M05"
"G94"
"M30"
%
- TReischl
- Vectric Wizard
- Posts: 5312
- Joined: Thu Jan 18, 2007 6:04 pm
- Model of CNC Machine: Avid Type| Aspire V12 | Rhino| 3 Bambus
- Location: Leland NC
Re: UCCNC & Rotary Control
Greolt: I was hoping you would weigh in. Thanks.
I am sure our setups are a bit different. I included the following screen shots so you can get a look:
X Axis A Axis Notice that the velocity on A is much higher than you mentioned above. If I set 5000 like yours, it looks like a feedrate, not rapid. I would have to do the math again, but I think my ratio is like 10:1 with the pulley setup. I have it right because I can tell it to do 3600 revs and it will land spot on where it started.
Following is a video showing the difference between a 5000 velocity setting and 24000 (there is a kind of long pause in the middle of the video while I was fiddling with the phone, lol)
https://youtube.com/shorts/KODYZT4xog4?feature=share
So, what I am wondering here, and I am not trying to be insulting. . . . is if yours being set at 5000 is where it runs all the time, and it is pretty much a feedrate so everything looks okey dokey to you? I say that because that was going to be one of my workarounds if worst came to worst. The other one was to do all cutting parallel to the X axis.
Went over our posts with a fine tooth comb. They are the same, could not find any difference in them that would effect rotary cutting.
I think that paragraph you quoted from their manual says a mouthful. The "The rotary axes are only
following the linear axes." tells me that if there is no actual linear motion on the command line, the software will default to the max velocity setting. I can prove that by running the file that does not work and keep adjusting the velocity on different runs. It follows the velocity every time.
I am having success by setting the raster angle to 89.9999 degrees. That cause an X motion of about .0002 at 2 inches diameter. Going to play around with smaller diameters to see what will work all the time. Reduced diameter to 1 inch. The x motion is now .0001 and the file runs fine.
Until someone comes up with a solution, I am going to use the .0001 degree workaround.
Edit: I have been using the roughing toolpath for testing and it allows input of numbers like 89.9999. The finishing toolpath does not, it only allows tenths, 89.9. Hmmmmmm
I am sure our setups are a bit different. I included the following screen shots so you can get a look:
X Axis A Axis Notice that the velocity on A is much higher than you mentioned above. If I set 5000 like yours, it looks like a feedrate, not rapid. I would have to do the math again, but I think my ratio is like 10:1 with the pulley setup. I have it right because I can tell it to do 3600 revs and it will land spot on where it started.
Following is a video showing the difference between a 5000 velocity setting and 24000 (there is a kind of long pause in the middle of the video while I was fiddling with the phone, lol)
https://youtube.com/shorts/KODYZT4xog4?feature=share
So, what I am wondering here, and I am not trying to be insulting. . . . is if yours being set at 5000 is where it runs all the time, and it is pretty much a feedrate so everything looks okey dokey to you? I say that because that was going to be one of my workarounds if worst came to worst. The other one was to do all cutting parallel to the X axis.
Went over our posts with a fine tooth comb. They are the same, could not find any difference in them that would effect rotary cutting.
I think that paragraph you quoted from their manual says a mouthful. The "The rotary axes are only
following the linear axes." tells me that if there is no actual linear motion on the command line, the software will default to the max velocity setting. I can prove that by running the file that does not work and keep adjusting the velocity on different runs. It follows the velocity every time.
I am having success by setting the raster angle to 89.9999 degrees. That cause an X motion of about .0002 at 2 inches diameter. Going to play around with smaller diameters to see what will work all the time. Reduced diameter to 1 inch. The x motion is now .0001 and the file runs fine.
Until someone comes up with a solution, I am going to use the .0001 degree workaround.
Edit: I have been using the roughing toolpath for testing and it allows input of numbers like 89.9999. The finishing toolpath does not, it only allows tenths, 89.9. Hmmmmmm
"If you see a good fight, get in it." Dr. Vernon Johns
- TReischl
- Vectric Wizard
- Posts: 5312
- Joined: Thu Jan 18, 2007 6:04 pm
- Model of CNC Machine: Avid Type| Aspire V12 | Rhino| 3 Bambus
- Location: Leland NC
Re: UCCNC & Rotary Control
Just a bit of information for anyone following this thread.
I am not all annoyed over this situation at all. I am annoyed that someone who did not have a clue posted on the internet that the latest version of Vectric would solve this problem, when in fact, it does not. If a person does not know for a fact, they should keep their fingers off the keyboard. It cost me $400. I did not need to upgrade from V4.5. I do not design in Vectric, it is used primarily for tool pathing and post processing. I like using it because if I need to make a last minute change I can do it in the software. Usually.
Having written this sort of software for a lot of years I understand that these things can happen. What I will be interested in hearing if this started occurring recently because of an update someone made to piece of hardware or software. I am certain that is not Vectric. The code from the post processor is correct, it is a machine control issue, possibly in the UCCNC software, or the UC400ETH. I am happy I bought them. Since they are made by the same company, it is going to be difficult to do the old software company "oh, it is THEIR fault, not ours!" trick. I know how to hand code, when I type in G93 the control goes into inverse time mode. When I type in G1A360F10 the rotary better not run at full rapid. Simple as that.
I am not all annoyed over this situation at all. I am annoyed that someone who did not have a clue posted on the internet that the latest version of Vectric would solve this problem, when in fact, it does not. If a person does not know for a fact, they should keep their fingers off the keyboard. It cost me $400. I did not need to upgrade from V4.5. I do not design in Vectric, it is used primarily for tool pathing and post processing. I like using it because if I need to make a last minute change I can do it in the software. Usually.
Having written this sort of software for a lot of years I understand that these things can happen. What I will be interested in hearing if this started occurring recently because of an update someone made to piece of hardware or software. I am certain that is not Vectric. The code from the post processor is correct, it is a machine control issue, possibly in the UCCNC software, or the UC400ETH. I am happy I bought them. Since they are made by the same company, it is going to be difficult to do the old software company "oh, it is THEIR fault, not ours!" trick. I know how to hand code, when I type in G93 the control goes into inverse time mode. When I type in G1A360F10 the rotary better not run at full rapid. Simple as that.
"If you see a good fight, get in it." Dr. Vernon Johns
-
- Vectric Wizard
- Posts: 779
- Joined: Sun Jun 16, 2013 4:40 am
- Model of CNC Machine: Home Built 4-axis Router
- Location: Fort Collins, CO
Re: UCCNC & Rotary Control
Just thinking out loud and wondering about your steps/unit settings of 33.3333
Assuming a 1.8 degree full step angle and 1:10 reduction, the axis should rotate 0.18 degrees per step. That is 5.55555 steps per degree and means your stepper drive is set up for 6 microsteps/full step. Somewhat unusual number but possible.
Also assuming the 24000 units/min means the maximum allowed speed for this controller (?) that would be 400 degrees per second or 1.11111 revolutions per second.
Your command "G1A360F10" means 360 degrees in 6 seconds and should indeed not cause the axis to rotate at full speed but you did not say what speed the axis was actually doing.
Sorry if I stated the obvious...
Assuming a 1.8 degree full step angle and 1:10 reduction, the axis should rotate 0.18 degrees per step. That is 5.55555 steps per degree and means your stepper drive is set up for 6 microsteps/full step. Somewhat unusual number but possible.
Also assuming the 24000 units/min means the maximum allowed speed for this controller (?) that would be 400 degrees per second or 1.11111 revolutions per second.
Your command "G1A360F10" means 360 degrees in 6 seconds and should indeed not cause the axis to rotate at full speed but you did not say what speed the axis was actually doing.
Sorry if I stated the obvious...
Dovetail and Finger Joint, Puzzle, Maze and Guilloche freeware at fabrikisto.com/tailmaker-software
- TReischl
- Vectric Wizard
- Posts: 5312
- Joined: Thu Jan 18, 2007 6:04 pm
- Model of CNC Machine: Avid Type| Aspire V12 | Rhino| 3 Bambus
- Location: Leland NC
Re: UCCNC & Rotary Control
In the post you are referring to I said "but I think my ratio is like 10:1 with the pulley setup." Operative word in that sentence is THINK. I did not feel like digging through my notes so I winged it. I know all about the calculations, trust me. On reflection it was not 10:1. I am of the school that I do not bother remembering things I have written down, take after Einstein in that respect. LOL.Tailmaker wrote: ↑Thu Mar 28, 2024 5:39 pmJust thinking out loud and wondering about your steps/unit settings of 33.3333
Assuming a 1.8 degree full step angle and 1:10 reduction, the axis should rotate 0.18 degrees per step. That is 5.55555 steps per degree and means your stepper drive is set up for 6 microsteps/full step. Somewhat unusual number but possible.
Also assuming the 24000 units/min means the maximum allowed speed for this controller (?) that would be 400 degrees per second or 1.11111 revolutions per second.
Your command "G1A360F10" means 360 degrees in 6 seconds and should indeed not cause the axis to rotate at full speed but you did not say what speed the axis was actually doing.
Sorry if I stated the obvious...
Also, do not ASSUME anything, this controller has run at 48000 units/min with no issues on the A axis. No stalling, no steps lost. In fact, I do not know how fast it will go, I have not pushed it to a limit. 48K was way too fast for my liking no matter what.
Yes, I did say what speed the axis was running at. I said it was running at full rapid, that means 24000 units/min. THAT is the problem!!!
Like I said above, once I put the control in inverse time mode I should be able to type g1a360f10 and have the control run at something besides full rapid. IIRC, and I might be in error here again, Mach 3 kept track of the Z height and did the calcs for a proper feed rate based on the current Z height. It is like UCCNC is not keeping track of where Z is and doing an internal feed calc if there is no linear motion based on the Z height. I think the folks over at UCCNC have some coding to do.
"If you see a good fight, get in it." Dr. Vernon Johns
- TReischl
- Vectric Wizard
- Posts: 5312
- Joined: Thu Jan 18, 2007 6:04 pm
- Model of CNC Machine: Avid Type| Aspire V12 | Rhino| 3 Bambus
- Location: Leland NC
Re: UCCNC & Rotary Control
HUGE UPDATE !!!!
Once again, the Vectric Team rides to the rescue!
I received a PM from one of the Vectric staff. In that private message he referred me to a thread over on the UCCNC forum (cncdrive).
He said he PM'd cause he was not sure what he found would work. Sooo, I am going to reveal his identity here, his initials are GregK.
In that thread someone stated that turning OFF Axis is Rotary solved this issue. HUH? WHAT?
So I trotted out to the workshop and gave it a go. YIKES !!!! That actually worked!!!
Who woulda thunk???
Silly me, here I thought I should tell the software that I was in fact running a rotary axis, but oh noooooo, that is sheer folly.
This works: Do NOT check that box if you are having issues with rotary in UCCNC. It can cost you days and hundreds of $$$$.
Once again, the Vectric Team rides to the rescue!
I received a PM from one of the Vectric staff. In that private message he referred me to a thread over on the UCCNC forum (cncdrive).
He said he PM'd cause he was not sure what he found would work. Sooo, I am going to reveal his identity here, his initials are GregK.
In that thread someone stated that turning OFF Axis is Rotary solved this issue. HUH? WHAT?
So I trotted out to the workshop and gave it a go. YIKES !!!! That actually worked!!!
Who woulda thunk???
Silly me, here I thought I should tell the software that I was in fact running a rotary axis, but oh noooooo, that is sheer folly.
This works: Do NOT check that box if you are having issues with rotary in UCCNC. It can cost you days and hundreds of $$$$.
"If you see a good fight, get in it." Dr. Vernon Johns
-
- Posts: 1
- Joined: Sun Jan 02, 2022 7:51 pm
- Model of CNC Machine: 3 Axis CNC
Re: UCCNC & Rotary Control
Isn't this just what it states in the Uccnc help file. Leave it unticked if wanting to use a controlled feedrate..
"Rotary axis: When this option is set then the axis is not calculated into the feedrate of the
movement vector, but only the linear axis are calculated for the feedrate. The rotary axes are only
following the linear axes"
"Rotary axis: When this option is set then the axis is not calculated into the feedrate of the
movement vector, but only the linear axis are calculated for the feedrate. The rotary axes are only
following the linear axes"
-
- Vectric Wizard
- Posts: 1018
- Joined: Fri Sep 21, 2007 1:44 pm
- Model of CNC Machine: UCCNC Router, Plasma, Laser
- Location: Australia 3781
Re: UCCNC & Rotary Control
Yes as I said my setup will be different than yours.TReischl wrote: ↑Thu Mar 28, 2024 2:47 pmNotice that the velocity on A is much higher than you mentioned above. If I set 5000 like yours, it looks like a feedrate, not rapid. I would have to do the math again, but I think my ratio is like 10:1 with the pulley setup. I have it right because I can tell it to do 3600 revs and it will land spot on where it started.
My rotary axis is built around an industrial right angle gearbox at 40:1
This makes its top velocity a bit slow but has advantages with resisting cutting forces.
So it is possible that I have simply not been aware of this problem.
For almost all my machining, the tool runs along the axis with just a small amount of rotation each pass.
Vcarving on a cylinder is maybe the only time when the rotary velocity is even noticeable.
I will be watching with interest to see what CNCdrive come up with on their forum.
EDIT. I see while I was typing that the paragraph I mentioned above has been pointed out. Interesting.
- TReischl
- Vectric Wizard
- Posts: 5312
- Joined: Thu Jan 18, 2007 6:04 pm
- Model of CNC Machine: Avid Type| Aspire V12 | Rhino| 3 Bambus
- Location: Leland NC
Re: UCCNC & Rotary Control
That is about the most twisted mouthful of garbage ever printed in a manual. When a person is setting up an axis, and it says "Axis is Rotary" and the axis being set up is rotary a normal person would think "Gee, I need to check that box so the software knows it is a rotary axis."Mark68 wrote: ↑Thu Mar 28, 2024 11:27 pmIsn't this just what it states in the Uccnc help file. Leave it unticked if wanting to use a controlled feedrate..
"Rotary axis: When this option is set then the axis is not calculated into the feedrate of the
movement vector, but only the linear axis are calculated for the feedrate. The rotary axes are only
following the linear axes"
I could not care less about all the jargon about how anything is calculated and what follows what.
That is some stupid garbage to put in a manual for users.
And since when should a user have to read a help file to try to figure out whether to check a box that says "Axis is Rotary"?
Bottom Line, the A axis on my machine is a rotary axis. The checkbox says "Axis is Rotary". Nuff said.
Last edited by TReischl on Fri Mar 29, 2024 12:31 am, edited 2 times in total.
"If you see a good fight, get in it." Dr. Vernon Johns
- TReischl
- Vectric Wizard
- Posts: 5312
- Joined: Thu Jan 18, 2007 6:04 pm
- Model of CNC Machine: Avid Type| Aspire V12 | Rhino| 3 Bambus
- Location: Leland NC
Re: UCCNC & Rotary Control
Yup, you would not see any problem cutting along the axis, and a small stepover would not reveal it either. You are exactly right. That was going to be one of my work arounds if a solution did not present itself.Greolt wrote: ↑Thu Mar 28, 2024 11:35 pm.....
So it is possible that I have simply not been aware of this problem.
For almost all my machining, the tool runs along the axis with just a small amount of rotation each pass.
Vcarving on a cylinder is maybe the only time when the rotary velocity is even noticeable.
I will be watching with interest to see what CNCdrive come up with on their forum.
EDIT. I see while I was typing that the paragraph I mentioned above has been pointed out. Interesting.
"If you see a good fight, get in it." Dr. Vernon Johns
-
- Vectric Wizard
- Posts: 1018
- Joined: Fri Sep 21, 2007 1:44 pm
- Model of CNC Machine: UCCNC Router, Plasma, Laser
- Location: Australia 3781
Re: UCCNC & Rotary Control
I must confess it surprises me that someone with your experience would just follow some keyboard expert.TReischl wrote: ↑Thu Mar 28, 2024 3:23 pmI am annoyed that someone who did not have a clue posted on the internet that the latest version of Vectric would solve this problem, when in fact, it does not. If a person does not know for a fact, they should keep their fingers off the keyboard. It cost me $400. I did not need to upgrade from V4.5.

Don't remember when vectric included G93 ability but I think it would be after version 4
Mach3 had its own issues with rotary axis speeds too.
I remember working with Art Fennerty to sort out a couple of errors years ago.
Or maybe it was Brian Barker. It was a long time ago and my brain is getting old.
-
- Vectric Wizard
- Posts: 1018
- Joined: Fri Sep 21, 2007 1:44 pm
- Model of CNC Machine: UCCNC Router, Plasma, Laser
- Location: Australia 3781
Re: UCCNC & Rotary Control
This all got me thinking.
Went to the shed and started up the router to check my settings.
Lo and behold I did not have that "Axis is rotary" checked.
That will certainly add to the list of reasons I did not see the issue.
Went to the shed and started up the router to check my settings.
Lo and behold I did not have that "Axis is rotary" checked.
That will certainly add to the list of reasons I did not see the issue.