Machsupport Forum

Mach Discussion => General Mach Discussion => Topic started by: HimyKabibble on January 14, 2015, 12:55:08 AM

Title: Position Errors Only on Diagonal Moves
Post by: HimyKabibble on January 14, 2015, 12:55:08 AM
Someone I know is having a strange problem that really has me stumped.  The machine is a bed mill, with AC servos.  It will do unlimited, perfect, single-axis moves, cutting exactly to correct dimension every time.  But when cutting a square, rotated 45 degrees so diagonals drawn between opposite corners would be parallel to the X and Y axes, the square becomes a rectangle, with on pair of sides about 0.04" too close, and the other pair of sides about 0.040" too far apart.  There is NEVER any position loss.  It returns to exactly X0, Y0 perfectly, every time.  A square cut so the sides are parallel to X/Y will come out exactly on dimension every time.  Steps per is set correctly, and confirmed by measurement.  Backlash is well under 0.001" on all axes.

As I said, I am stumped.  We've tried it running with a UC100 motion controller, and with the PP, and results are exactly the same.  Reducing velocity and acceleration, even dramatically, makes no difference whatsoever.  Running exactly stop makes no difference.  DROs always show the "correct" position (i.e. - where the machine should be, as opposed to where it actually is).  We've tried several different versions of Mach3 from 3.043.066 down to somewhere in the 050s, and get the same result with all of them.

Any ideas or suggestions?

Regards,
Ray L.
Title: Re: Position Errors Only on Diagonal Moves
Post by: Tweakie.CNC on January 14, 2015, 02:11:12 AM
Hi Ray,

Are you re-drawing the 45 deg. rotated square in CAD/CAM or are you using the Mach3 'Local System Rotate' function and the existing Gcode ??

Tweakie.
Title: Re: Position Errors Only on Diagonal Moves
Post by: HimyKabibble on January 14, 2015, 10:51:23 AM
Tweakie,

All code is generated either by CAM, or hand.  No Mach3 scaling or rotation is in effect.  It appears to me like Mach3 is giving incorrect move commands only for coordinated moves..  I can't think of anything in the hardware that coudl behave this way.  Yet behavior is identical with several different Mach3 versions.  Very odd....

Regards,
Ray L.
Title: Re: Position Errors Only on Diagonal Moves
Post by: BR549 on January 14, 2015, 11:36:36 AM
Ray how are you generating the math to calculate the diagonal points ??

Just a thought, (;-0 TP
Title: Re: Position Errors Only on Diagonal Moves
Post by: HimyKabibble on January 14, 2015, 11:43:25 AM
Terry,

No math.  Draw a square, CAM the square.  The problem is NOT the g-code.  It has been verified by hand, and by simulation.  The square is a perfect 1.25" x 1.25" square in all cases.  It has been verified correct 12-ways from Sunday, and hand-generated code gets the same result.

Regards,
Ray L.
Title: Re: Position Errors Only on Diagonal Moves
Post by: BR549 on January 14, 2015, 11:49:24 AM
Have you checked the BED to make sure IT is square ??

Are the DRO values correct when it moves out of square ??

(;-) TP
Title: Re: Position Errors Only on Diagonal Moves
Post by: HimyKabibble on January 14, 2015, 11:52:54 AM
Terry,

It cuts absolutely PERFECT squares, EXACTLY on-dimension, and EXACTLY square, as long as they are aligned to the X/Y axes.  So, yes, the bed is square.  Yes, the DRO values are correct.

Regards,
Ray L.
Title: Re: Position Errors Only on Diagonal Moves
Post by: BR549 on January 14, 2015, 12:00:01 PM
OK next test Does it cut exactly the same IF you reverse the order of cut From  CW to CCW. IS the offsetting of the cut the same ??

(;-) TP
Title: Re: Position Errors Only on Diagonal Moves
Post by: Tweakie.CNC on January 14, 2015, 12:13:53 PM
If it’s any help to the discussion I have just been and cut two 50mm squares, one on the X-Y axis and one at 45 deg. They were both cut ‘on the line’ with a laser so turned out 49.4mm x 49.4mm but they both measure identical.

Tweakie.
Title: Re: Position Errors Only on Diagonal Moves
Post by: Overloaded on January 14, 2015, 12:56:10 PM
Is the 0,0 part position at the center of the square ? or elsewhere ? (at a corner)
Might try it both ways just to see if there's a difference there.
I would, but can't right now.
Russ
Title: Re: Position Errors Only on Diagonal Moves
Post by: HimyKabibble on January 14, 2015, 01:45:27 PM
OK next test Does it cut exactly the same IF you reverse the order of cut From  CW to CCW. IS the offsetting of the cut the same ??

(;-) TP

Terry,

Good question!  I think we tried that, but not 100% sure.  I'll make sure we try that.

Regards,
Ray L.
Title: Re: Position Errors Only on Diagonal Moves
Post by: HimyKabibble on January 14, 2015, 01:46:47 PM
If it’s any help to the discussion I have just been and cut two 50mm squares, one on the X-Y axis and one at 45 deg. They were both cut ‘on the line’ with a laser so turned out 49.4mm x 49.4mm but they both measure identical.

Tweakie.


Doesn't surprise me.  I'm sure this is something in this machine, or Mach3 install.

Regards,
Ray L.
Title: Re: Position Errors Only on Diagonal Moves
Post by: HimyKabibble on January 14, 2015, 01:47:40 PM
Is the 0,0 part position at the center of the square ? or elsewhere ? (at a corner)
Might try it both ways just to see if there's a difference there.
I would, but can't right now.
Russ

It's generally been off to the left, but perhaps not always.  I'll have to check. 

Regards,
Ray L.
Title: Re: Position Errors Only on Diagonal Moves
Post by: FineLineAuto on January 14, 2015, 02:38:26 PM
Well, I am the friend that's been having issues. Here is the thread on cnczone: http://www.cnczone.com/forums/showpost.php?p=1624744 this thread documents the tests I have run now.

The code is generated in HSMXpress. As Ray noted, it has been hand checked. I have generated code that had the origin:
  - in the center of the square.
  - at points below and left of the square
  - at points above and left of the square
  - at points below and right of the square
  - at points above and right of the square

In all cases my 90 degree squares (sides parallel to the x and y axes) come out perfect. My 45 degree 1" wide squares (sides are 45 degrees from the x and Y axes) are always coming out .956 in one direction and 1.042 in the other.

Note that I set up dial indicators and did testing for lost steps as well as for backlash and neither are occurring.

Not on that thread but another data point: I took the control computer from one of the CNC routers in my shop and put it on the mill. That Mach 3 installation functions perfectly on the CNC router. I copied over the mill XML profile and ran the test again. It came out with the same dimensions.

Title: Re: Position Errors Only on Diagonal Moves
Post by: mrprecise44 on January 14, 2015, 03:17:31 PM
The resultant box cut on the diagonal acts like it is a mechanical backlash problem in one axis only.
Also, if there is a mechanical problem, it cannot cut a perfect circle.
The problem may only show up when both axis are under load, versus the cutting the box with sides parallel to x and y.
Also, check the gibs in the head, using a long bar lever. If the machine is new, something may have been overlooked
in the assembly, like final clearance adjustment.

John

 
Title: Re: Position Errors Only on Diagonal Moves
Post by: ger21 on January 14, 2015, 04:16:50 PM
Quote
I copied over the mill XML profile and ran the test again. It came out with the same dimensions.

Then create a new .xml from scratch and try it.
Title: Re: Position Errors Only on Diagonal Moves
Post by: FineLineAuto on January 14, 2015, 04:34:38 PM
The resultant box cut on the diagonal acts like it is a mechanical backlash problem in one axis only.
Also, if there is a mechanical problem, it cannot cut a perfect circle.
The problem may only show up when both axis are under load, versus the cutting the box with sides parallel to x and y.
Also, check the gibs in the head, using a long bar lever. If the machine is new, something may have been overlooked
in the assembly, like final clearance adjustment.

John

 

The machine is about 1 year old. To test backlash under load, I ran the square test with a engraving bit going only .01" deep. Just enough to score the part. The spindle load meter was at 2% the whole time. It still came out the same.

I first thought it was lost steps or backlash. I measured my backlash according to this video: http://www.youtube.com/watch?v=buXHZ_McbOY and I got less than .001" on each axis. Even if there was backlash due to load, the square is off by 0.042" in each direction, which is at least 10x the amount I would reasonably expect. I also did extensive testing for lost steps and my indicators read no steps through the entirety of my testing.

My next steps for testing will be:
  - cut the square backwards and see if it's different.
  - swap the X and Y servo drives and see if that reverses the cut.
Title: Re: Position Errors Only on Diagonal Moves
Post by: FineLineAuto on January 14, 2015, 04:37:29 PM
Quote
I copied over the mill XML profile and ran the test again. It came out with the same dimensions.

Then create a new .xml from scratch and try it.


In a separate test, I had the manufacturer send me a vanilla xml they use for the machines and I tried that. I also tried redoing it from scratch. I tried with just the PP. I tried with a UC100 motion controller. The square came out off by the same amount for all of them.

Title: Re: Position Errors Only on Diagonal Moves
Post by: Hood on January 14, 2015, 04:51:11 PM
Have you tried it with a G4P1 at the end of each move?
Can you monitor the encoder position in the servo drive software? (not sure what drives you have)

Hood
Title: Re: Position Errors Only on Diagonal Moves
Post by: Overloaded on January 14, 2015, 05:16:56 PM
Ray said this was a bed mill. Is it a commercial metal cutting mill ? Or more of a hobby level type ?
 
Just curious.
Russ
Title: Re: Position Errors Only on Diagonal Moves
Post by: FineLineAuto on January 14, 2015, 05:21:55 PM
Have you tried it with a G4P1 at the end of each move?
Can you monitor the encoder position in the servo drive software? (not sure what drives you have)

Hood

Hood,

I am afraid I am not all that familiar with the G4P1 command. Can you explain what it does?

I am not sure on monitoring the servo drives. I know that they are MaxSine drives. Beyond that I am not sure. Ray will probably know better than I will. The mill is a Novakon Torus Pro.

Nate
Title: Re: Position Errors Only on Diagonal Moves
Post by: Hood on January 14, 2015, 05:31:52 PM
G4P1 will just pause the code for 1 second.
I am wondering if it is a tuning issue and that 1 second delay may show it up, ie it will give the drive plenty of time to get to position.
Hood
Title: Re: Position Errors Only on Diagonal Moves
Post by: FineLineAuto on January 14, 2015, 05:37:31 PM
G4P1 will just pause the code for 1 second.
I am wondering if it is a tuning issue and that 1 second delay may show it up, ie it will give the drive plenty of time to get to position.
Hood

That makes sense. I will try it.
Title: Re: Position Errors Only on Diagonal Moves
Post by: Overloaded on January 14, 2015, 05:41:07 PM
Hey folks, sorry ... I somehow missed those earlier posts. I'd retract mine if possible to keep the clutter down.
Jeesh, I'll try to pay better attention in the future. ::)
Again, apologies.  :-[
Russ  :P

 :)
Title: Re: Position Errors Only on Diagonal Moves
Post by: FineLineAuto on January 14, 2015, 05:48:13 PM
Hey folks, sorry ... I somehow missed those earlier posts. I'd retract mine if possible to keep the clutter down.
Jeesh, I'll try to pay better attention in the future. ::)
Again, apologies.  :-[
Russ  :P

 :)

No need to apologize. I appreciate all the responses and input I can get. That said, I had set up some indicators and measured not only against the table but against the fixture plate to rule out the possibility of the x and y not being square.
Title: Re: Position Errors Only on Diagonal Moves
Post by: HimyKabibble on January 14, 2015, 08:16:42 PM
Ray said this was a bed mill. Is it a commercial metal cutting mill ? Or more of a hobby level type ?
 
Just curious.
Russ

It's a Novakon Torus Pro - Perhaps not quite "commercial" level, but a big, strong machine - 25" X 15"Y 12"Z travels 1.5HP, 6000 RPM.  It's no wimp.  Same machine I use to run produfction parts for my PDBs and ATCs, and will do close to 4 cu. in/min. MRR on 6061 all day long without breaking a sweat, while giving better than +/-0.001" tolerance.

Regards,
Ray L.
Title: Re: Position Errors Only on Diagonal Moves
Post by: BR549 on January 14, 2015, 09:00:50 PM
OK using a different PC from a KNOWN working machine and it did the same thing where as on the other machine it worked correctly ? That would rule out MAch3 and the PC would it not ??

IS this a servo drive machine ?? Have the servos been TUNED to the machine correctly ?? (;-) NOT just by ear but with a scope.  Put a medium load on the bed and tune it with a scope.

Try switching the 2 drives XY with each other and see IF the offsetting changes with it.  

Check the servo power supply voltages while running the code that offsets ?

You said that it is NOT a problem with following error ?? HOW did you check it. WILL the servo actually FAULT if you lock  down the servo motor and try to move it ?

(;-) TP



Title: Position Errors Only on Diagonal Moves
Post by: FineLineAuto on January 15, 2015, 09:36:23 AM
I got to run 2 more tests this morning:

Test 1
   - cut a 2" square that is 45 degrees from XY followed by a 2" square that is parallel to XY
  - use foam to eliminate any possibility of load resistance
  - use 15 ipm instead of 50.
  - run this on a different part of the table

GCode:

     G54

  (Toolchange Start)
     G53 G00 Z0.0000
         X[#100] Y[#101]
     G49
  M05
  M09
  (Tool #6, Aluminum - Pocketing - 1/4in Carbide Endmill)
  (TOOL/MILL,0.2500,0.0000,1.2500)
  M06 T6
     G43 H6
  (USR, Load Tool #6, Aluminum - Pocketing - 1/4in Carbide Endmill)
  M00
  (USR, 2D Contour1, Instance 1)
  M03 S6000
  (Toolchange End)


  M09
     G17
     G90 G00 X2.3510 Y1.3990
     G43 Z0.6000 H6
         Z0.2000
     (LEAD IN)
     G01 Z0.0394 F15
     (PLUNGE)
         Z-0.1000 F15.
     (CUTTING)
         X2.9521 Y2.0000 F15
         X1.7500 Y3.2021
         X0.5479 Y2.0000
         X1.7500 Y0.7979
         X2.3510 Y1.3990
     (TRANSITION)
     G02 X2.3731 Y1.4034 Z-0.1000 I0.0144 J-0.0144
     G03 X2.3952 Y1.4078 Z-0.1000 I0.0077 J0.0188
     (FINISH CUT)
     G01 X2.9874 Y2.0000
         X1.7500 Y3.2374
         X0.5126 Y2.0000
         X1.7500 Y0.7626
         X2.3952 Y1.4078
         X2.9874 Y2.0000
         X1.7500 Y3.2374
         X0.5126 Y2.0000
         X1.7500 Y0.7626
         X2.3952 Y1.4078
     (RAPID)
     G00 Z0.2000
         X5.3500 Y2.0000
     (LEAD IN)
     G01 Z0.0394
     (PLUNGE)
         Z-0.1000 F15.
     (CUTTING)
         Y2.8500 F15
         X3.6500
         Y1.1500
         X5.3500
         Y2.0000
     (TRANSITION)
     G02 X5.3625 Y2.0187 Z-0.1000 I0.0203 J0.0000
     G03 X5.3750 Y2.0375 Z-0.1000 I-0.0078 J0.0187
     (FINISH CUT)
     G01 Y2.8750
         X3.6250
         Y1.1250
         X5.3750
         Y2.0375
         Y2.8750
         X3.6250
         Y1.1250
         X5.3750
         Y2.0375
     (RAPID)
     G00 Z0.6000

  M09 M05
     G53 G00 Z0.0000
         X[#102] Y[#103]
     G49 G54 G90
  (USR, Program Done)
  M30

Results:

(http://tapatalk.imageshack.com/v2/15/01/15/4777c1f5af4ceb50cf5a6036be699b90.jpg)

As you can see, the 45 degree square is still about + or - 0.042" off on one side. The square parallel to XY came out perfect.

Test 2
   - cut a 1.5" square that is 45 degrees from XY followed by a 1.5" square that is parallel to XY
  - use foam to eliminate any possibility of load resistance
  - use 15 ipm instead of 50.
  - run this on a different part of the table that previous tests.
  - cut the square backwards from my Normal tests

GCode:

     G54

  (Toolchange Start)
     G53 G00 Z0.0000
         X[#100] Y[#101]
     G49
  M05
  M09
  (Tool #6, Aluminum - Pocketing - 1/4in Carbide Endmill)
  (TOOL/MILL,0.2500,0.0000,1.2500)
  M06 T6
     G43 H6
  (USR, Load Tool #6, Aluminum - Pocketing - 1/4in Carbide Endmill)
  M00
  (USR, 2D Contour1, Instance 1)
  M03 S6000
  (Toolchange End)


  M09
     G17
     G90 G00 X2.1743 Y2.4243
     G43 Z0.6000 H6
         Z0.2000
     (LEAD IN)
     G01 Z0.0394 F15
     (PLUNGE)
         Z-0.1000 F15.
     (CUTTING)
         X2.5985 Y2.0000 F15
         X1.7500 Y1.1515
         X0.9015 Y2.0000
         X1.7500 Y2.8485
         X2.1743 Y2.4243
     (TRANSITION)
     G03 X2.1964 Y2.4198 Z-0.1000 I0.0144 J0.0144
     G02 X2.2185 Y2.4154 Z-0.1000 I0.0077 J-0.0188
     (FINISH CUT)
     G01 X2.6339 Y2.0000
         X1.7500 Y1.1161
         X0.8661 Y2.0000
         X1.7500 Y2.8839
         X2.6339 Y2.0000
         X1.7500 Y1.1161
         X0.8661 Y2.0000
         X1.7500 Y2.8839
         X2.2185 Y2.4154
     (RAPID)
     G00 Z0.2000
         X5.1000 Y2.0000
     (LEAD IN)
     G01 Z0.0394
     (PLUNGE)
         Z-0.1000 F15.
     (CUTTING)
         Y1.4000 F15
         X3.9000
         Y2.6000
         X5.1000
         Y2.0000
     (TRANSITION)
     G03 X5.1125 Y1.9812 Z-0.1000 I0.0203 J0.0000
     G02 X5.1250 Y1.9625 Z-0.1000 I-0.0078 J-0.0187
     (FINISH CUT)
     G01 Y1.3750
         X3.8750
         Y2.6250
         X5.1250
         Y1.3750
         X3.8750
         Y2.6250
         X5.1250
         Y1.9625
     (RAPID)
     G00 Z0.6000

  M09 M05
     G53 G00 Z0.0000
         X[#102] Y[#103]
     G49 G54 G90
  (USR, Program Done)
  M30

Results:

(http://tapatalk.imageshack.com/v2/15/01/15/6bd8004b524542f5092296851f3706f2.jpg)

As you can see, the 45 degree square is still about + or - 0.042" off on one side. The square parallel to XY came out perfect.

Next tests:

- Flip XY servos around and see if the error flips around.
- run the 2" test and put a G4P1 after every move to test for servo tuning


Nate
Fine Line Automation
www.finelineautomation.com
Title: Position Errors Only on Diagonal Moves
Post by: FineLineAuto on January 15, 2015, 09:46:31 AM
OK using a different PC from a KNOWN working machine and it did the same thing where as on the other machine it worked correctly ? That would rule out MAch3 and the PC would it not ??

One would think. I am not entirely sure though. The thing that is preventing me from saying absolutely yes it is not Mach 3 or the pc is the fact that the squares parallel to XY are coming out perfect and I am not losing steps running the program.

IS this a servo drive machine ?? Have the servos been TUNED to the machine correctly ?? (;-) NOT just by ear but with a scope.  Put a medium load on the bed and tune it with a scope.

This is a servo drive machine. I am assuming the set is were tuned at the factory. I have not done any tuning and I don't have a scope to check it out.

Try switching the 2 drives XY with each other and see IF the offsetting changes with it. 

Check the servo power supply voltages while running the code that offsets ?

Swapping the drives is my next test.

I will need to get with Ray to figure out which lines I need to measure voltage from.

You said that it is NOT a problem with following error ?? HOW did you check it. WILL the servo actually FAULT if you lock  down the servo motor and try to move it ?

(;-) TP

What error are you referring to? If I run the table up to the hardstop the servo drive definitely faults.

Regards,

Nate


Nate
Fine Line Automation
www.finelineautomation.com
Title: Re: Position Errors Only on Diagonal Moves
Post by: Tweakie.CNC on January 15, 2015, 11:02:45 AM
Running your Gcode, using a laser, the centreline of the toolpath produces a 1.2" square on the first pass and a 1.25" square on the second pass. Both the X-Y aligned square and the 45 deg. square are absolutely identical in dimension - there is no error.

So I think I can safely say there is absolutely nothing wrong with your Gcode or the Mach3 interpretation of that Gcode.

Hope this helps in finding your problem.

Tweakie.
Title: Re: Position Errors Only on Diagonal Moves
Post by: Overloaded on January 15, 2015, 11:20:43 AM
Hi Nate,
Back plotting your code, I see that the lead in/out looks a bit peculiar.

I wonder if that might be contributing ?
Maybe adjust the code and run the same profiles but without any leadins/outs ?

Just a guess, ::)
Russ
 :)
Title: Re: Position Errors Only on Diagonal Moves
Post by: HimyKabibble on January 15, 2015, 11:23:08 AM
Russ,

That's the transition between the roughing and finishing passes.  The actual lead-in and lead-out are just straight Z moves.

Regards,
Ray L.
Title: Position Errors Only on Diagonal Moves
Post by: FineLineAuto on January 15, 2015, 11:31:14 AM
Running your Gcode, using a laser, the centreline of the toolpath produces a 1.2" square on the first pass and a 1.25" square on the second pass. Both the X-Y aligned square and the 45 deg. square are absolutely identical in dimension - there is no error.

So I think I can safely say there is absolutely nothing wrong with your Gcode or the Mach3 interpretation of that Gcode.

Hope this helps in finding your problem.

Tweakie.

Tweakie,

I am inclined to agree with you, especially after I:
  - took a known good control computer from another machine and upon hooking it to the mill it produced the same off results.
  - rebuilt the configure file from a pristine manufacturers file and a second time from scratch and still got the same off results.
  - get the same results using the PP or a UC100

My only question is, what do I check now?


Nate
Fine Line Automation
www.finelineautomation.com
Title: Re: Position Errors Only on Diagonal Moves
Post by: Overloaded on January 15, 2015, 11:43:23 AM
Ray,
 Watching this run Single Step, you can see that the rough pass plunges straight in, but it stays at depth and does the S shaped lead in to the finish pass.
If I see it right.
Russ
Title: Re: Position Errors Only on Diagonal Moves
Post by: Tweakie.CNC on January 15, 2015, 11:55:54 AM
Hi Nate,

It beats me but I think you have ruled out everything but your machine electrical's and the tuning of your servo's.
Are all your voltages correct and being maintained during the run ? - Are all your electrical connectors truly sound ?

Tweakie.
Title: Re: Position Errors Only on Diagonal Moves
Post by: HimyKabibble on January 15, 2015, 12:30:21 PM
Ray,
 Watching this run Single Step, you can see that the rough pass plunges straight in, but it stays at depth and does the S shaped lead in to the finish pass.
If I see it right.
Russ

Russ,

Yes, that is exactly right.

Regards,
Ray L.
Title: Re: Position Errors Only on Diagonal Moves
Post by: Overloaded on January 15, 2015, 12:35:21 PM
Thanks Ray
Ok, I'm curious ....  just 1 more and I'll stay out ..
You've had this machine about a year, and has it ever run any decent parts?
Any diag. interpolated move is trash?
I see it stated where CAM and hand coding does the same.
Did you try a simple point to point rotated square pattern of 4 holes maybe ?
Start at X0,Y0

X1
hole
X0 Y1
hole
X-1 Y0
hole
X0 Y-1
hole

Then measure.

Just wondering if you tried something this simple as a test  ?
This would maybe eliminate some possibilities.
Russ
Title: Re: Position Errors Only on Diagonal Moves
Post by: HimyKabibble on January 15, 2015, 12:44:21 PM
Hi Nate,

It beats me but I think you have ruled out everything but your machine electrical's and the tuning of your servo's.
Are all your voltages correct and being maintained during the run ? - Are all your electrical connectors truly sound ?

Tweakie.

It has AC servos, powered directly off the 220VAC line, so supply power is not an issue.

What baffles me is it would have to be a problem in BOTH the X and Y drives as both are going to the wrong position.  But what would cause it to only happen on coordinated moves?

Very odd problem indeed....

Regards,
Ray L.
Title: Re: Position Errors Only on Diagonal Moves
Post by: BR549 on January 15, 2015, 01:50:50 PM
Ray did you measure the Square from corner to corner to check for square or just side to side ??

Have you tried a SIMPLE test with just the basic moves . only one cut, no finish cuts,No offseting , no tool changing etc?

G20 (Units: Inches)
G40 G90 G91.1 G49 G80
F1
(Part: TestSquare)

G0 Z1.000
G00 X0.8839 Y0.0000
G01 Z-0.010 F10.0

X0.0000 Y0.8839 F17.0
X0.8839 Y1.7678
X1.7678 Y0.8839
X0.8839 Y0.0000

G00 Z0.5000
X3.4008 Y0.8839

G01 Z-.010 F10.0
Y0.2589 F17.0
X2.1508
Y1.5089
X3.4008
Y0.8834
G00 Z0.5000
M05 M30
Title: Re: Position Errors Only on Diagonal Moves
Post by: BR549 on January 15, 2015, 02:19:53 PM
Then one more test to change the way it is programmed.

(TestSquare2.txt)
G20 (Units: Inches)
G40 G90 G91.1 G49 G80 G69
F1
(Part: TestSquare)
G00 Z1.000
G00 X0.000 Y0.000
G00 Z0.010

G01 Z-.010 F10.0
G91
G1 X2.000  F20
Y2.000
X-2.000
Y-2.000
G90
G00 Z0.5000

G91
G00 X4
G90
G68  R45

G90
G1 Z-.010 F10
G91
G1 X2.000  F20
Y2.000
X-2.000
Y-2.000
G90
G0 Z0.5000

G69
G0X0.000 Y0.000
M05 M30
Title: Position Errors Only on Diagonal Moves
Post by: FineLineAuto on January 15, 2015, 03:24:14 PM
Thanks Ray
Ok, I'm curious ....  just 1 more and I'll stay out ..
You've had this machine about a year, and has it ever run any decent parts?


I have been running good parts for a while. My 5 production parts I have been running for close to a year now consist of the following operations:
- drilling
- cleaning up edges of barstock (so a straight line operation that is always parallel to the axes.
- facing

I can still run these production parts without issue and they do GO rapid moves for positioning in 2 axes all the time.

I first noticed the problem when I went to do a production run of a new pat that I have that has a pocketed circle for a bearing. What's interesting is that even though the bearing pocket came out wrong, the rest of the operations (drilling and edge cleanup) came out spot on.



Any diag. interpolated move is trash?
I see it stated where CAM and hand coding does the same.
Did you try a simple point to point rotated square pattern of 4 holes maybe ?
Start at X0,Y0

X1
hole
X0 Y1
hole
X-1 Y0
hole
X0 Y-1
hole

Then measure.

Just wondering if you tried something this simple as a test  ?
This would maybe eliminate some possibilities.
Russ

If I do the program you mention about, it will come out perfect. It's only on G1 moves. G0 moves end up in the right position.

Regards,

Nate


Nate
Fine Line Automation
www.finelineautomation.com
Title: Position Errors Only on Diagonal Moves
Post by: FineLineAuto on January 15, 2015, 03:26:43 PM
Ray did you measure the Square from corner to corner to check for square or just side to side ??

Have you tried a SIMPLE test with just the basic moves . only one cut, no finish cuts,No offseting , no tool changing etc?

G20 (Units: Inches)
G40 G90 G91.1 G49 G80
F1
(Part: TestSquare)

G0 Z1.000
G00 X0.8839 Y0.0000
G01 Z-0.010 F10.0

X0.0000 Y0.8839 F17.0
X0.8839 Y1.7678
X1.7678 Y0.8839
X0.8839 Y0.0000

G00 Z0.5000
X3.4008 Y0.8839

G01 Z-.010 F10.0
Y0.2589 F17.0
X2.1508
Y1.5089
X3.4008
Y0.8834
G00 Z0.5000
M05 M30

I have tried just a one cut, Simple move hand coded GCode with 0,0 in the center. Still came out the same.

Let me check the square from corner to corner when I get back to the shop.


Nate
Fine Line Automation
www.finelineautomation.com
Title: Re: Position Errors Only on Diagonal Moves
Post by: Overloaded on January 15, 2015, 04:32:15 PM


If I do the program you mention about, it will come out perfect. It's only on G1 moves. G0 moves end up in the right position.

Regards,

Nate


Nate
Fine Line Automation
www.finelineautomation.com

I was assuming G1 for that test.

Really strange :
If you MDI

From 0,0 - G1 X1 Y1 F30

it goes to a different position than ..
 
From 0,0 - G0 X1 Y1

Spindle running, or not makes no difference ? (noise)

Weird

Good luck Gents,
Russ
 :)
Title: Re: Position Errors Only on Diagonal Moves
Post by: BR549 on January 15, 2015, 05:16:29 PM
IF you get a different position from a G00 move as apposed to the same move with G01 then you may have a servo "drive" problem with the TUNING out of wack.

A servo's precision is ONLY as good as it's tuning.

To get to the bottom of it you may have to have a "good" CNC TECH do a bar/bar test on the machine and tune the servos with a scope.

Just a thought, (;-) TP
Title: Re: Position Errors Only on Diagonal Moves
Post by: Overloaded on January 15, 2015, 05:24:22 PM
Hey TP,
 It seems that the errors would be opposite of what they are if tuning is affecting it.
Correct me if I'm thinking wrongly here.
Seems a slower G1 move would more likely be closer to the code than a full throttle G0 move.
Just seems backwards to me.
Thanks,
Russ
Title: Re: Position Errors Only on Diagonal Moves
Post by: BR549 on January 15, 2015, 05:37:53 PM
acutally it can go either way as the faster move overshoots then rebounds back it may stop short of the target.

It is either a servo drive problem OR table out of square problem. I am thinking servo drive BUT I have been wrong from time to time (;-)

(;-) TP
Title: Position Errors Only on Diagonal Moves
Post by: FineLineAuto on January 15, 2015, 05:55:16 PM
Some good news logically. The 90 degree squares are not really squares. Here's the corner measurements.

(http://tapatalk.imageshack.com/v2/15/01/15/dd3192f2011f07e6d3ff8939591696a6.jpg)


Also, I noticed something else. Look at the edge where the 1.585 is written. It's and the one opposite of it are oblong while the other 2 corners are a normal round.


Nate
Fine Line Automation
www.finelineautomation.com
Title: Re: Position Errors Only on Diagonal Moves
Post by: BR549 on January 15, 2015, 07:36:37 PM
What happens IF you mill a circle ??

Just a thought, (;-)
Title: Position Errors Only on Diagonal Moves
Post by: FineLineAuto on January 15, 2015, 08:06:21 PM
Some good news logically. The 90 degree squares are not really squares. Here's the corner measurements.

(http://tapatalk.imageshack.com/v2/15/01/15/dd3192f2011f07e6d3ff8939591696a6.jpg)


Also, I noticed something else. Look at the edge where the 1.585 is written. It's and the one opposite of it are oblong while the other 2 corners are a normal round.


Nate
Fine Line Automation
www.finelineautomation.com

Some more good news to report.

I ran Hood's test using the 2" square code I ran earlier today with a g4p1 in between each move and slowed the feedrate down to 5 ipm. The square parallel to XY came out right at 2" and measured the same on opposite corners. The 45 degree square was at 1.999 for one side and 2.027" for the other side.  The 2 corner measurements came out the same.

So, can we define it is servos needing tuned?


Nate
Fine Line Automation
www.finelineautomation.com
Title: Re: Position Errors Only on Diagonal Moves
Post by: Overloaded on January 15, 2015, 08:33:24 PM
I wouldn't blame it on the tuning ... until you get whatever is loose corrected, recheck everything mechanical.
The Z slide, spindle bearings/thrust end play, tool holder/drawbar. Something must be loose, that machine is capable of FAR better finishes than that.
Use a prybar and push on every slide in all directions.
I can get better finishes with a hand router.
That's rough, it should be a much better finish.
Title: Re: Position Errors Only on Diagonal Moves
Post by: BR549 on January 15, 2015, 08:52:35 PM
Have you by chance played with the Gib adjustment since you got the machine ??? Looks like the axis is rocking creating 2 good corners and 2 bad corners.

(;-) TP

Title: Re: Position Errors Only on Diagonal Moves
Post by: Overloaded on January 15, 2015, 09:15:21 PM
The Torus PRO uses LM type ball slides for the Z and parallel type gibs on the X and Y.
I'd do a good pry bar type backlash check on all of the screws and mounts.

I looked this machine over at Cabin Fever last year. You can tell it's chinee, but is pretty stocky.
Russ
Title: Re: Position Errors Only on Diagonal Moves
Post by: Hood on January 16, 2015, 02:55:21 AM
Do you have software for the servo drives? Normally with modern AC servos you should be able to hook up to a computer via serial port and monitor everything via software.
You should be able to see what the max +/- errors are and also you should have an inbuilt scope so you can see how the axis is behaving, ie is it over shooting, what the damping is like etc. You should also be able to see what the following error is set to in the software.

Hood
Title: Re: Position Errors Only on Diagonal Moves
Post by: Overloaded on January 16, 2015, 08:45:40 PM
Here is the thread on cnczone: http://www.cnczone.com/forums/showpost.php?p=1624744 this thread documents the tests I have run now.

 

Updated broken kink/incomplete link.
http://www.cnczone.com/forums/novakon-systems/207688-torus-pro-log-13.html
For those of us curious to follow along.
I'm sure Nate will post back with his findings. :)
Thanks

Title: Position Errors Only on Diagonal Moves
Post by: FineLineAuto on January 17, 2015, 06:04:20 PM
Found the problem. A setting on the Y servo drive was not set properly.

The results are beautiful, my bearings now fit perfectly and the finish is much better. Thanks to everyone for the suggestions provided!

Test circle for bearing fit (I cut it over top a previous test cut so ignore the round partial cuts you see.)

(http://tapatalk.imageshack.com/v2/15/01/17/9ed2f4eff33a702bab94360d9b180d47.jpg)

The test piece. Bearing just slips in al nice and snug. Finish is excellent too.

(http://tapatalk.imageshack.com/v2/15/01/17/13325c0ac4ab997ef546724e41d1bbc5.jpg)





Nate
Fine Line Automation
www.finelineautomation.com
Title: Re: Position Errors Only on Diagonal Moves
Post by: Overloaded on January 17, 2015, 06:18:17 PM
That's great Nate ... simple as that.
I love it when a plan comes together.
Appreciate you posting back, this may be a "recommended reading" post for future reference.

Good job.
Thanks again,
Russ
Title: Position Errors Only on Diagonal Moves
Post by: FineLineAuto on January 17, 2015, 06:34:19 PM
That's great Nate ... simple as that.
I love it when a plan comes together.
Appreciate you posting back, this may be a "recommended reading" post for future reference.

Good job.
Thanks again,
Russ

It was Ray who suggested checking the parameters. Given this is my first experience with servo drives, I am glad I had some resources to turn to.

Thanks again for all the suggestions!


Nate
Fine Line Automation
www.finelineautomation.com