Encoders vs. Tachometers ???

More
07 May 2012 02:24 #19892 by Zig
Replied by Zig on topic Re:Encoders vs. Tachometers ???
Personal experience:

I have had to drive both a rotating and a linear servo motor with linear encoders.

In case of the linear motor I picked up the encoder signals coming off the 7i33 card. I used a monostable arrangement on both A channel and B channel to generate a constant pulse width train A and train B.

This was then passed through suitable low pass filter on both channel and summed to generate a analogue tacho signal where the signal of +/- 10 V represented slightly higher than my max desired linear speed.


On my rotary motor I had to include a "tacho" signal to implement a solution based on Advanced motion control servo amplifier.

Fortunately his amplifier accepts encoder pulse train directly and converts it to analogue tacho signal.
Major problem is my linear scales are @0 micron resolution ( with quadrature processing down to 5 micron.
The on-board converter would provide too low a signal at my maximum velocity to be useful.
Fortunately I had purchased dual shaft servo motors so I git a few rotary shaft encoders ( AMT 102 from CUI Inc) ) which had a much higher effective resolution per unit travel than the linear encoders .
The output from rotary shaft encoders was fed directly into the servo amp pulse input providing an order of magnitude increase to tacho sensitivity circuit.

The loop settled down immediately and within a few minutes of tweaking the velocity loop was tuned and shortly thereafter the positional loop settled down and PID and feed forward elements got tuned.


Just a word of warning. When driving linear encoder positional system eliminate any and all flexibility in the mechanical structure between the encoder reader and motor shaft.
If you do not the loop will constantly buzz. I was using helical aluminium couplings between motor shaft and lead screw. The loop used to buzz and carry on like a two bob watch.

I removed decided to pour urethane compound into the shaft space of the couplings and extrude it through the grooves of the coupling. Naturally excess material was removed and the remainder cured.
This resulted in a flexible albeit stiffer coupling. I am pleased to say the stiffer coupling did the trick.

I hope this helps some.

Please Log in or Create an account to join the conversation.

More
07 May 2012 06:28 - 07 May 2012 06:30 #19896 by jCandlish
Zig wrote:

Just a word of warning. When driving linear encoder positional system eliminate any and all flexibility in the mechanical structure between the encoder reader and motor shaft.
If you do not the loop will constantly buzz. I was using helical aluminium couplings between motor shaft and lead screw. The loop used to buzz and carry on like a two bob watch.


Good point!

I suppose dealing with the slack and elasticity in the belting will be interesting.

I hope this helps some.


Something more to think about. Thanks.

edit: And thanks also for the reference to the AMT encoders.
Last edit: 07 May 2012 06:30 by jCandlish.

Please Log in or Create an account to join the conversation.

More
12 May 2018 13:44 - 12 May 2018 13:48 #110599 by jmr
Replied by jmr on topic Encoders vs. Tachometers ???
Hi,
I'm Marian, this is my first post. I believe this thread is not out-dated,but if You believe it is bad to reply please correct me.
I have been wondering for a while about this. I did a prototype of "elm chan dc servo", which uses avr and is codded in assembler. I will do more testing when I finally get the couplers. The stiffness advice may help too.
What I am wondering is that most of those "diy" drives use step/dir signals, and this approach origins from stepper drivers. It results in interchangable drivers, but this interface is a sure bottleneck.
I have some servos, smaller Toshiba-like ones have a simple rotating magnet, PCB coil and ic (pseudo?)tachometers, and gear reduction at the output. They generate a pulse train according to the speed. At zero or very small velocity there is no output. As I understand, with normal tachometers/generator there will be similar theoretical error, if not from the tacho itself then from the ADC noise floor.
I also have some bigger (400w?) servos with tacos. What I have read is the velocity loop is easier to tune, and should be tuned first.
Is it an industrial standard to have the servo drives work in velocity loop, driven by +/- 10V signal, and have the main controller controll the "overall" glass-scale (or other device) loop? This bigger control loop must be better, because it can correct all the backlash in the gearing. So is using this method, with encoder shafted to the ball-screw, and possibly using the screw correction table thing, the "good" approach?
Is DAC interfaced to HAL all I need, besides the feedback-encoder driven counter? If so, I can do some testing with 8255 and parallel input dac. There's even 16bit pcm54 waiting somwhere, but that could be an overkill. What resolutions are common in industrial systems?
Where to look in existing hal configs for a working example of such approach?
IF I use this approach with LinuxCNC, is the "servo thread" what controlls this loop? Does it elliminate the need for jittery base thread?
I'm asking, because I have some encoders, and I can go both ways. I can do some development and possibly create such open-source drive, I did not see any or maybe I missed something. I also have some machines partially complete working to complete each other... I am also trying to get a broken Hermle mill with Heidenhain. Theres something fuse-blowing dead in the controll box... I hope the heavy machinery is working, and maybe some servo drives/servos are not dead too. If the HH stuff is dead or "buy the eprom for 500 euro and try again" type of problem I will not hesitate to trash it and go for EMC2.
I hope this post will not end up in trash as I am looking forward to having a fruitful conversation. What has happened to LinuxCNC over the time is impressive. Just as Andy's hobbing setup which I hope to run "soon".
Thanks,
Marian
Last edit: 12 May 2018 13:48 by jmr.

Please Log in or Create an account to join the conversation.

More
12 May 2018 16:33 #110610 by andypugh

Is it an industrial standard to have the servo drives work in velocity loop, driven by +/- 10V signal, and have the main controller controll the "overall" glass-scale (or other device) loop?

That used to be the standard way to do it, and many retrofit-candidate machines will use that system.
Modern machines are much more likely to use a digital communications protocol to communicate with the drive, whether it be Modbus, EtherCAT or the Smart Serial protocol that the Mesa 8i20 and the STMBL drive use.



Is DAC interfaced to HAL all I need, besides the feedback-encoder driven counter?

That is largely the case, yes.


IF I use this approach with LinuxCNC, is the "servo thread" what controlls this loop? Does it elliminate the need for jittery base thread?

That depends on what DAC you use. Many configs use a PWM signal smoothed through an RC filter as the analogue voltage source. If you are generating the PWM in software then you still need a base-thread.
If you are using Pico PPMC, Mesa cards or one of the other more advanced output cards then the DAC will either use a PWM generated by an FPGA or a dedicated serial-controlled analogue output device.

I'm asking, because I have some encoders, and I can go both ways. I can do some development and possibly create such open-source drive, I did not see any or maybe I missed something.

There is at least one open-source servo drive: github.com/rene-dev/stmbl/blob/master/do...tting%20Started.adoc
The following user(s) said Thank You: jmr

Please Log in or Create an account to join the conversation.

Time to create page: 0.080 seconds
Powered by Kunena Forum