Hello Guest it is May 11, 2021, 07:12:11 PM

Author Topic: Mach4 positioning error  (Read 2385 times)

0 Members and 1 Guest are viewing this topic.

Re: Mach4 positioning error
« Reply #50 on: February 20, 2020, 11:10:16 AM »
Hi Mike,

Thanks for the info, that encoder is the one i can get with very suitable price so it would be better for me to go in that direction.

I think in its documents it says that the output method is "differential line driver" i do not have much knowledge in encoders but what i understand is it has output like A, A-, B, B- right? and as much as i know ESS accepts the encoder signals as A, B(i think they call it TTL) so i thought that if i get this;

https://www.cnc4pc.com/c46-differential-to-single-ended-converter.html#description

I could connect the encoder at one end and connect the other end(A, B output) to the ESS via BOB, so in my mind it should work but in real world nothing works like the way it works in my mind :)

So u are saying that i should get this;

http://pico-systems.com/osc2.5/catalog/product_info.php?products_id=27

and connect the encoder's A, A-, B, B- pins to input of it and connect the output of it to ESS via BOB and it will give the output as A, B right?

that encoder is worth 2700USD so buying the 150USD board to make it work with Mach4 is not a problem, i just want to make sure that its gonna work like that.

Regards,

Hakan
Re: Mach4 positioning error
« Reply #51 on: February 21, 2020, 09:49:28 AM »
I had to dig deeper on that encoder. Let me revise my earlier comment. Based on this data sheet from Mitutoyo (https://www.mitutoyo.com/wp-content/uploads/2012/11/E4189-539_579NC_Scale.pdf), the encoder outputs EIA RS-422A which is compatible with FANUC controls using quadrature counting with serial backup and absolute positioning.

It seems you can use pins 1-7 on the connector to read the scale as a traditional differential quadrature encoder (compatible with ESS), however you will not be able to interface with the serial connections without some special effort and custom interfaces. Without the serial data, this encoder is no longer absolute, but remains fully functional as incremental.

The FANUC control that this encoder is designed for would read the serial data at startup to get the absolute position of the scale, and then use the quadrature signals afterwards to count pulses. Every so often it will query the serial channel to make sure that the position that it has counted to matches what the encoder thinks is right. Any error here would trigger an alarm.

I would still think that a more traditional encoder such as the Mitutoyo AT202 (identical in size to your selected AT332) or the AT211 (smaller in cross section and available in higher resolution) would be the best choice since you won't be able to use the serial channels of the AT332 anyways. I bet they are less expensive too.

You will need a differential to single ended receiver, but I would check to make sure the CNC4PC is going to be fast enough for your application (email them since it is not published). The resolution x travel speed of your scale will set the output frequency. This must be lower than the capacity of the chip they use on their converter.

With the information posted above, you will not require any boards from pico-systems as all the encoders we are looking at output quadrature signals. Those boards would be used if conversion from another type of feedback was required.

Lets make sure we are on the same page before you go buy stuff. I don't want to mislead you here.

Mike
Re: Mach4 positioning error
« Reply #52 on: February 21, 2020, 11:17:09 AM »
Hi Mike,

I think the same, it should work with cnc4pc diff. to single ended converter board, in some forums i read that people make these encoders work by just connecting the A and B phases to ESS(i am not sure that it works as it should be like that) but i will try it with cnc4pc board.

Again, that model would be better in my case, i will not pay the original amount to it i found it way more cheaper than that, and since i am going to use it as a ruler basically to check the positioning accuracy of each axis, i am not going to need the absolute option, incremental reading should be enough for me. I will write a lua script which will make the axis move to different positions, say 10-15 different locations in different speeds, check the commanded and actual movements(from the linear scale) and then calculate and output an average positional error value. I will also use this method to check/tune the positioning accuracy of the small machines i am going to manufacture and sell.

I will check with the Andy from Warp9 and CNC4PC guys before i order anything, i just wanted to get someone's opinion who knows more then me about the encoders and this technical stuff.

So thanks for your help and the document u attached.

Regards,

Hakan
Re: Mach4 positioning error
« Reply #53 on: February 21, 2020, 11:24:58 AM »
Perfect!

I bet you could use it without the converter to be honest, but it would be more susceptible to issues with noise.

Mach 4 also has screw mapping which could be useful for you using these scales. You can fix lead and cyclic error, but not backlash or mechanical inaccuracy.

Mike
Re: Mach4 positioning error
« Reply #54 on: February 21, 2020, 11:52:27 AM »
Yes,

in current machines i use(with ballscrews) i am gonna tune them more accurately with it and fix the lead error as much as possible via Mach4, i fixed the backlash issue for now with backlash compensation but its not an healthy way to solve it as u know, i am gonna fix it by changing the ballscrews/support units with more precise(preloaded double nut, C3 precision) ones.

In the machines i am gonna manufacture from now on i am gonna use linear motors so there wont be any backlash problem at all.  ;)

Regards,

Hakan