Hello Guest it is May 08, 2021, 05:54:59 AM

Author Topic: Mach4 positioning error  (Read 2375 times)

0 Members and 1 Guest are viewing this topic.

Re: Mach4 positioning error
« Reply #30 on: December 14, 2019, 07:37:39 PM »
Hi again Craig,

Attached is the easy servo(closed loop stepper) driver "in-position" parameter adjusting page, its factory setting is 0 which means "not enabled" i guess.

The double nut ballscrew has 10mm pitch, i am gonna adjust it to D  for a 5micron resolution, is this the correct approach?


Re: Mach4 positioning error
« Reply #31 on: December 14, 2019, 09:35:02 PM »
That is similar to the description of some drives I'm using. (pic)
The "in position window" is merely a selectable value that allows the associated "in position" output to be activated before the axis reaches its actual commanded position.
In one example, I have a servo driven ballscrew slide that goes to an exact position to where a pneumatic pick n place takes over. The position is exact but the pneumatic cycle can initiate a short distance before the move completes. Hence, the "window" is set quite large but the positioning is perfect.
Yours looks similar and maybe has nothing to do with reaching the "actual" position.

Re: Mach4 positioning error
« Reply #32 on: December 15, 2019, 05:22:15 AM »
Hi Russ,

Yes i also thought the same thing when i read it first, it looks like they done it to turn on an output for a PLC/controller or any other equipment but internally within the driver circuit it is possible that they are using it also for positioning adjustment so i agree with Craig, it is better to be adjusted as smaller values to keep the tolerances tight. It may not have any effect in fixing the error i am reading but in normal cnc usage(especially for Mach4) those should be small values.


Re: Mach4 positioning error
« Reply #33 on: December 15, 2019, 10:38:58 AM »
After reading a bit, depending on the quality of your servo components, this problem might be solely related to the accuracy of your motor encoder.


pages 8,9,10

Did you mention the make and model of your servo components ?

Offline RICH

  • *
  •  7,419 7,419
    • View Profile
Re: Mach4 positioning error
« Reply #34 on: December 15, 2019, 11:24:08 AM »

First I must say, in a positive manner, that I appreciate your quest for perfection which is desired
but never achieved. So here is my reality check!

There are TWO standards relative to this thread on positioning error. One is electronic and one is
mechanical and idealy one should agree with the other. The electronic standard (ie; closed loop
and servo related ) I am going to leave to those folks that have in-depth knowledge of that
"system". Doubt you any way to confirm the electronic standard to a traceable basis.

The mechanical standard becomes some "value" based on testing and how the testing is done,
ability to measure accurately, etc, etc, etc. Nothing is perfect, accuracy is a matter of degree, and
the "value" is will represent the "system" of total components.

Thus the real end quest, practical end product of  your efforts, will be a "system" that provides for
some expected tolerence of that machines capability. Note machines capability, not machined part
final tolerence, since that is different matter.


1.Should have manufacturers spec " Taiwan made single nut ballscrew directly attached to a servo
motor with coupling, ball screw grade, etc.  Exactly what kind of coupling is used?

2.Torque specs for whatever relates to installation.

3.Calculated inertion etc required to move the 900# + table. There are programs that can be used
to determine axis system loadings.

1. All "systems" have backlash / play in movement, for both static and dynamic loading, since if
there were NONE the axis could not move. Just a matter of degree.

2.Know what you are actualy measuring. It can get difficult to isolate components of a system
   to see how each component adds to the total.

3. You must be methodical, focused, meticulous as heck, for what ever you measure.

4. The smaller the measurement gets the more difficult  it gets to acquire meaningfull data.
    Other influences come into play when you get to the micron levels.

5. Do you have the calibrated tools to aquire the data and what are their specs.

MEASUREMENT - for each axis
1. When you measure a screw you should actualy "profile" the screw over intended table     
    movement. For 30", with initial backlash removed, record measurements in 0.1" increments.
    It's done for both directions of travel. Say you have a spec for a ground screw and it says
    "0.001" / foot". What your interested in is how linear that screw is. I have seen all kinds of
     variations, such as, it was very linear, or had a section / sections that varied, the reverse           
     direction profile varied from the other direction profile, but, overall  it did meet meet  the
     spec. No screw is "perfectly" linear. A graph of measured movement relative to distance will     
     show the non liearity.  The above is a PITA to do, rather quick and easy for me since I do it   

2. Now note that depending on how the screw and nut is mounted there is play. How will you try
    to measure that component of the system? For setting preload, a rationalization could be, to
    have the static load condition set such that an measured applied torque minimizes play and
    allows for the table to just move. Just making a point that a micon here and there for every
    component can up quickly. How dose calculated force to just move the axis compare to
    your measured force? Maybe one wants to minimize usage of available motor torque to move
   the table so that gained torque is available for actual machining.

3. Inline solid coupling of the screw to a motor eliminates non linear movement of the screw due
    to motor shaft rotation, BUT, depending on how it's installed, loads may be  thrown back into
    the motor. I had a bellows type that overtime started to add backlash to the system and the 
    backlash was not repeatable. Just another component which can affect measured table

4. Motor construction varies and can add varied / non-repeatable linear movement depending on
    how installed or made.

5. 1 micron = 0.00003937"  Human hair is approx 0.003" diameter. So 5 microns =0.0002"
Post collecting all the data, and in consideration of the data, you will rationalize to some practical
value of the  mechanical standard.

HYILDIZ, Have fun and Happy Holidays,

Re: Mach4 positioning error
« Reply #35 on: December 15, 2019, 03:39:15 PM »
Dear Rich,

Thanks for the info but a human being who does not take all of that to consideration can not build a 4 ton milling machine and bring the accuracy within 15micron linearity and parallelism.

We are not talking about chasing 1-2 micron in here there is a 50-60micron positioning error in every axis of the machine in 10mm(20-30micron in 1mm), 50-60 micron is not a small value. With that error u can not do anything with a milling machine. And it is way out of the limits of any standard ballscrew tolerance, the ones i use has 10micron max. error in 500mm. and even both ends machined directly by the manufacturer with spinder precision CNCs not by a local shop or by me.

For your information couplings are german made R+W precision elastomer servo couplings which is backlash free, has excellent vibration damping capabilities and balanced to 12000rpm. One of those couplings price is 60euros.

Most of the mechanical and electronic parts used in this machine are high quality and some are the highest quality.

All linear rail beds, guideways and ballscrews scraped/aligned with a 000 granite straight edge + 00 granite table and 0.5-1 micron precision Mahr and Tesa indicators within 10microns. Ballscrew nuts fixed to steel blocks which are fixed to the axis of the machine with 4 M10 screws, every single screw used in the machine mounted with a torque wrench with specified torque values written in the spec. sheets of every single component.

I didnt buy these components from stores, i got most of them directly from the manufacturers, linear rails manufactured and sent to me by schneeberger in 3 months and they are high precision not regular precision. 4th axis has Kamo Cycloid installed which has 4micron runout. I got these components and bring them all together from the manufacturers around the globe, from Japan, Germany, Korea, China, USA etc..

After bringing all mechanical parts to some accuracy(which is below 1520microns in total) if u get an 50-60micron error reading in 10mm free forward move, it touches your nerve little bit.

So dont give me lessons about precision or measuring, measurements are not complicated measurements and we are not talking about 5-6micron in here its 50-60microns within 10mm u dont need a micron dial indicator or optics or laser interferometer to measure it, even a 10bucks worth chinese dial indicator can measure it.

Before everything u said, if u dont warm up the machine(linear guideways/blocks and ballscrews) prior to the measurements u get different measurements every time.

So if u have an idea which may cause this kinds of errors shoot it, if u dont then shut it.

Re: Mach4 positioning error
« Reply #36 on: December 15, 2019, 03:57:43 PM »
Hi Russ,

That may also be the reason but the thing is there is 2 servo motor and 2 closed loop step motor installed in this machine, servos has 10000ppr, steppers has 30000ppr resolution encoders. If one is faulty what is the possibility of all being faulty? these are not cheap chinese motors, servos are Gservo aka golden age motor(one of the biggest servo and torque motor manufacturer in china) and steps are easyservo brand korean made. I didnt go for panasonic or delta since i used these motors before they work quite nice and precise in other machinery.

Also as i wrote before, to rule out the mistakes for parameters or any other problem within the servo motor/driver combo in X axis, i removed the servo motor, connected 16nm open loop(without any encoder) stepper motor and send the same set of commands to it, it repeated the exact same error.

After adjusting the settings that Craig suggested i am gonna connect the X axis drive directly to the pmdx bob with very short cables like 50-60cm and then send the commands to see if it is going to change anything.


Re: Mach4 positioning error
« Reply #37 on: December 15, 2019, 04:56:53 PM »
Hi Hakan.
If your mechanicals are as precise as you describe, and the electronics are of best quality, I am at a loss for other possibilities. ( btw, I'm not a big fan of elastomer spider type couplings, although many are)
One way I see to make this happen intentionally (other than changing the "steps per unit") is to implement a very small ratio in the electronic gearing parameters.
I feel certain that has been verified as 1:1 though.
Good luck with this. I'll be curiously standing by ...........

edit: There is also an "encoder output scaling factor" parameter that might have an effect, but likely you've checked that also (if present).
Can you post the manuals for your drives ?
« Last Edit: December 15, 2019, 05:25:06 PM by Overloaded »

Offline RICH

  • *
  •  7,419 7,419
    • View Profile
Re: Mach4 positioning error
« Reply #38 on: December 15, 2019, 05:55:46 PM »
So if u have an idea which may cause this kinds of errors shoot it, if u dont then shut it.

Guess I don't , but be carefull when you tell someone to shut up.

Off to the side lines........., :)
Re: Mach4 positioning error
« Reply #39 on: December 15, 2019, 06:46:59 PM »
Hi again Russ,

Attached is the documentation of the servo driver i am using in this one, i played with the electronic gear ratio values(in every manual they describe it and the math different though) and it does the same thing with the step per unit value. At last i set p13 and p14 to 1 so it is 1:1.

Well i played with many parameters to see if there may be any effect on the motion and i am not sure about the "encoder output scaling factor" i dont recall something like that. Adjusting that parameter would be a better idea then adjusting the gear ratio, i am gonna check it for sure, thanks.