What's new
What's new

calibrating and compensating a CNC rotary table

implmex

Diamond
Joined
Jun 23, 2002
Location
Vancouver BC Canada
Hi All:
I have a rotary axis for a wire EDM that needs to be fooled around with to make it respond accurately to commands.
It's a worm and worm gear unit that is driven by a servomotor with a cog belt to the worm and the encoder on the back of the motor.
It's supposed to be able to be commanded in increments of 0.001 degree, and is claimed by the manufacturer to be within 5 seconds of arc of the desired destination if indexed only in one direction and within 15 seconds if reversed.
I need to determine how far it actually moves when I command a rotation increment, and I'd like to be able to interrogate it at all the cardinal points and then at 5 degree increments, so I can enter the proper compensation values in the machine control.
What's the best way to interrogate it to within 1 second of arc or better.
The smallest commandable increment is a bit hokey I know; the increment is smaller than the stated repeatablity of the table, and the mechanics are highly unfavourable to achieve even the 5 seconds of repeatability claimed.
But nonetheless, I want to make it the best it can be.
How would you go about it??
Cheers
Marcus
Implant Mechanix – Design & Innovation - home
Vancouver Wire EDM -- Wire EDM Machining
 
Marcus

my largest cnc rotary table weighs 2,200 lbs. I put rotary encoder on under surface and am happy with resolution
--10,000 pulses per revolution.

some time ago I acquired high end ring encoders with 75 and 100 mm bores. Heidenhain I think. they came off Chinook helicopter main shafts. weather tight. but alas I sold them. they would well on underside of the system you describe. Heidenhain ring encoders are megabucks new---5K or so.
they disappear off ebay fast when reasonably priced.

jh
 
A variant of JBC's method.
I have mounted a simple "pen" laser on the table. Then pointed it at the wall 30 foot away.
Indexed the table (workhead for me) and put a pencil mark on the wall at each index. Put this info back into a CAD system to see the errors.
Since you are dealing with angles lots of distance helps here. The wall is flat and you are tracking a circle, hence the help from the CAD system.


From this I learned a ton about the errors in worm gears. With precision ground gears they repeat with every rev but lag and then "catch up" as the worm contact point changes.
This lag changes as the worm wears over time
Doing this you can build a "map" of the needed corrections based on the worm position.

Now I mount a very high resolution encoder to the workhead and the computer slowly rotates the assembly building my correction table.
Since I write my own controller software I could do this.
My needed resolution is higher than the weenie 176,000 count encoder but the software can interpolate between points in the map giving me the resolution I need.
We remap the head rotation error once a month which takes about 10 minutes since the computer does all the work for me.
This is easier for me since I wrote all the software used from top to bottom in the motion controller.

When dealing with an off the shelf control you could write a macro to output the calibration encoder position at each point, then shove this into a excel spreadsheet to give you a table if you only needed to nail one angle.

The easy solution is to use dual feedback with the resoution that you need.
Also NSK megatorgues and Kollmorgens DDRs systems will get you pretty darn close. (plus they are fast)
Even cheapo worm gear tables repeat very well, the just are not accurate without a secondary feedback device.
Two main errors, worm gear position and tooth spacing on the wheel. Worm rotation angle is the big one once the system has any hours on it and changes with use.
When getting to arc-seconds the secondary feedback has to be running on center within very tight numbers if you are using one.

(I hope something here makes a little sense, it is not easy.)
Bob
 
When using the laser alignment method, one source of error that must be considered if high accuracy is required...
The alignment of the laser beam axis with the table axis of rotation must be exact.

The two laser beams and the wall form a triangle, the apex of which should be coincident with the center of the table.
If this is not true, you introduce a translational error that moves the apex toward or away from the wall, changing the
distance between the two points of intersection with the wall.

This drawing illustrates the problem, with dimensions exaggerated for clarity:
RotaryTableError.png

The magnitude of the error can be calculated if the distance from table center to wall is accurately known.

- Leigh
 
Marcus --

Metrologists have been doing one-arc-second work for more than a century, and it's still a tough nut to crack. One arc-second subtends one inch at a distance of 206,264.8062 inches according to my Casio fx-260 shirt-pocket calculator. That's a touch over 3 1/4 statute miles

Such a distance is too long for any practical tangent arm, but scaling that triangle down may be useful . . . one arc-second subtends 0.0001 inch at 20.626+ inches. I've used a tenth-reading dial gage and a 20 5/8 inch (steel rule measurement, radially from center of rotary table to gage contact point) tangent arm to test uni-directional rotary table position repeatability a few times. The dial gage needs to be bolted to the rotary table base, and the tangent arm to the rotary table surface -- or vise-versa -- after the table has rotated to its check-repeatability-here position.

One full degree at the same 20 5/8 inch radius subtends 0.35997 inch, so you don't loose anything significant by considering the 0.0001 inch per arc-second a constant over the range of a typical "tenth-reading" dial gage.

Another approach would be mount a second-order-or-better autocollimating thedolite on the rotary table so that the theodolite's standing axis (aka vertical axis, azimuth axis) is nearly coincident with the rotary table axis. Once that's done, plunge the telescope until its optical axis is very nearly perpendicular to its standing axis, then fix an autocollimation mirror to the table base so that the theodolite telescope can be autocollimated on the mirror. From there, it's a matter of making paired-measurement observations of 1) rotary table position, and 2) theodolite horizontal circle value when autocollimated as you step the table around the circle.

This method probably won't actually deliver a single-arc-second noise floor, but under good conditions you should be able to achieve 2 to 3 arc-seconds without too much trouble. True single-arc-second would probably take a pair of mirrors, one slaved to the table base and one to the table platen, and two, maybe four, sets of theodolite angle measurements between the mirrors.

This has been a hit-the-high-spots description of this type of testing, so feel free to post follow-up questions if you want to go down either of these paths.

John Garner
 
The reason that I suggested a telescope rather than a laser is because of beam divergence. While laser beams are highly directional, laser light has a small divergence. This is a direct consequence of the fact that laser beam comes from the resonant cavity, and only waves propagating along the optical axis can be sustained in the cavity. For most consumer grade devices the beam divergance will be more that 5 arc seconds.

With regard to the geometry, the limit relation

lim( tan(alpha) ) == alpha as alpha --> 0

is your friend.

Sweep small angles, and angles around modulo 360°.
 
Lasers are a poor choice for alignment anyway due to the "shimmering" effect of the light.

I was just pointing out one source of error.

- Leigh
 
First, I want to thank everyone who reponded; some very ingenious ideas have been offered and I really appreciate them.
Second, I need to get a handle on just what I can expect to achieve unaided, and whether I should even be pursuing this with the technology I can muster.
Here's the story in more detail: Some of you may know I bought a new wire EDM machine last summer and bought a brand new rotary axis with it. The wire's been great apart from some small teething troubles, but the rotary's been giving significant difficulty.
The techs were finally able to get it talking to the servopack after much frustration and time spent, but once it was running it became apparent the table was nowhere near capable of the accuracy claimed for it.
It had both mechanical backlash and would not rotate the commanded amount.
A typical error is around 0.045 degrees at the positions that I can interrogate it with reasonable precision.(the cardinal positions)
My method has been to clamp a parallel to the platen, indicate it perfectly level with a tenths indicator and the appropriate machine axis, then command a rotation and indicate the new orientation of the parallel with the new appropriate axis.
I've checked the orthogonality of the axes using the best technology I have (granite square certified to 0.0001" in 6" and tenths clock) and it's dead nuts, as good as I can measure.
Here's the kicker: your contributions here have had me calculating just how crude my best effort actually is, compared to the manufacturers claim, and I've come to realize I really don't have a prayer of verifying whether I've reached the precision I've paid for when I try to set up the compensation table on the machine control for the rotary axis.
The farthest wall from my machine is 6 feet away; that means I'd have to be able to determine the change of position of a laser spot within 0.0017" on the wall to say I've registered a 5 arc second movement.
I can't think of a way to do that, and I certainly can't think of a way to do that for every 5 degrees, 72 separate times without spending a lot of effort for what is ultimately not supposed to be my problem, but properly belongs with the dealer who sold me the machine and the rotary.

I see, from my musings on the internet, that there are calibration services who will do this for me for a fee.
This conversation is making me realize I'm better off having a service do it for me and having the dealer foot the bill, than trying to scare up a theodolite or a ultra high count encoder and fart about trying to do it myself.
This conversation is also making me realize the 5 arc second claim is a bullshit claim on the part of the maker: it's a well made table, but it ain't no 5 arc second table; not with a belt driven worm drive with the encoder mounted two compliant transmissions away from the final motion.
Finally, If I can be within a tenth or two for squareness on a 4" square, I'll be as good as the wire EDM process is really capable of anyway; my flatness error will be bigger than my orthogonalty error.
So, much to think about; thank you all again for opening my eyes to the reality here; it's much appreciated!!
Cheers

Marcus
Implant Mechanix – Design & Innovation - home
Vancouver Wire EDM -- Wire EDM Machining
 
Marcus

It is nice that you have recourse to the dealer to address this problem.

It is an interesting technical problem, and the following relatively trivial solution occured to me while driving to work.

You could calibrate this table with freely available image processing software as is used to generage panographic images, and a consumer grade digital camera where each pixel subtends 5 arc-seconds. Well, better than 2.5 arc-seconds if you're taking the Nyquist limit into account, but the actual accuracy of the table drive will be so much above that it won't make any difference anyway.

So, by my back of the envelope calculations a 12 megapixel camera with a 500mm (35mm format equivalent) lens will subtend about 5 arc-seconds per pixel.

For the free image processing software I would recommend --> Hugin - Panorama photo stitcher

This software has the capability of solving the correspondence problem between a pair of images, and determining the camera angle and position from that image pair. Even better, the accuracy of this solution increases with image sequences as dependant variables are eliminated.

So then you would just need way to trigger the exposures without mechanically perturbing the whole apparatus.

Just throwin' it out there for next time.

Cheers
<jbc>
 
Hi jbc:
That's a very clever idea indeed!
I'm assuming the CCD plane of the camera has to be accurately on the axis of the rotary table to avoid an error similar to Leigh was describing for the laser pointer method.
Obviously, the camera would have to be able to be triggered electronically: I don't know of any consumer cameras with that ability, but I haven't looked at digital cameras for years.
An industrial camera of some kind should be able to fill the bill pretty easily though.
I would guess that the photographic target needs to be cylindrical and ideally lined up co-linear to the axis of rotation of the table too.

As I understand it, you'd snap a photo of the target, rotate the camera by commanding the table, snap a second photo, then compare the photos and use the software to determine how many pixels you shifted the target image by.
I'm assuming you need to have the target a known distance away from the table to be able to calculate the angle by the pixel shift.
Since the start condition is a table who's actual movement for a given command is unknown, I can't see how you can get around needing to know the distance to the target unless I've misunderstood your method completely.

On a completely different note, I've been pondering a purely mechanical approach, that won't get me within seconds of arc but should get me close enough to be good for the work this machine will do:
Here's what I had in mind:
1) Mount the rotary table with the platen up and horizontal by making a bracket to hang the rotab in the tank and level it both ways.
2) Bolt a ground bar onto the platen as big as I can swing and still reach both ends with the wire.
3) Home the rotab, and clock in the bar to the X axis
4) Find the approximate center of the rotab and set the origin there.
5) Wire a hole at one end of the bar at say X10.0 Y0.0.
6) Swing the bar 180 degrees by commanding the rotab, then adjusting by jogging until the bar clocks in parallel to X again.
7) Edge find the hole center in its new location and determine how much to move the origin point to get it centered on the rotab axis.
8) Re-wire the hole to a bigger size so it's now in a known location relative to the rotab axis.

Now I should be able to determine (within the accuracy limits of the machine), where the center of the hole is for any angle I command the rotab to by just edgefinding it with the wire.
That should give me the actual angle within a tenth or so in 10".
As soon as I know where the table moved to compared to where it should have moved to, I can set my compensation values at every increment the controller lets me, and can check intermediate angles too.
If I can get it to a tenth in 10" for every angle I can comp, I'll be content.

Of course, this is assuming I can't get a calibration service to come in and set it up for me: after all, this is Vancouver BC Canada; we don't DO much sophisticated industrial stuff up here. (mostly logging, fishing, and mining)
Cheers

Marcus
Implant Mechanix – Design & Innovation - home
Vancouver Wire EDM -- Wire EDM Machining
 
I would guess that the photographic target needs to be cylindrical and ideally lined up co-linear to the axis of rotation of the table too.

As I understand it, you'd snap a photo of the target, rotate the camera by commanding the table, snap a second photo, then compare the photos and use the software to determine how many pixels you shifted the target image by.
I'm assuming you need to have the target a known distance away from the table to be able to calculate the angle by the pixel shift.
Since the start condition is a table who's actual movement for a given command is unknown, I can't see how you can get around needing to know the distance to the target unless I've misunderstood your method completely.

Actually, you don't need to know the position of the camera at all, just that the ro-tab is doing all the motion. That's the beauty of this approach. The camera position is calculated by triangulation. In computer vision this is known as solving the 'correspondence problem'.

You do need to know the angle subtended by the pixels. But that can be back-calculated by using a calibrated (planar is best) target. Like so:

ISO_12233-reschart.jpg


The following link is a little over-the-top, but it describes the methods used in 3d reconstruction.

Camera Calibration and 3d Reconstruction; opencv v2.1 documentation

The 'Hugin - Panorama photo stitcher' has a component that just does that stuff out of the box.

The software tells you directly how much the camera rotated between images.

Its still a quadruple buttload of work though.
 
<jbc> and Marcus --

The accuracy of analytical photogrammetry is almost wholly in the accuracy of the Image Plane (x,y) pairs to be resected to Object Frame (x,y,z) triples, not so much in the resection algorithms themselves. High-precision digital analytical photogrammetry, which should be able to more-or-less routinely achieve 1 part in 100,000 accuracy, typically requires a very specialized metric camera with an error-mapped lens and detector array, multiple camera positions, and both "vertical" and "horizontal" camera-orientation images at each camera position AND an array of "retro-reflective dot" adhesive targets fixed on the object to be measured. (The folks at Geodetic Services in Melbourne, Florida are generally regarded as the world's authorities on precise digital analytical photogrammetry, and make their livings selling their INCA cameras and V-STARS data collection and reduction software. Their website is well worth a look. Geodetic Systems, Inc )

Having said that, I am absolutely intrigued by the idea of doing analytical stereo photogrammetry using photo pairs from a point-and-shoot camera. Let me offer a special tip of my hat to <jbc> for the Hugin and opencv links!

And to you, Marcus . . . I really like your "purely mechanical approach" to characterizing the rotary table errors. Very clever!

John
 








 
Back
Top