Thread: Encoder pulse rate too low

1. Encoder pulse rate too low

I have a requirement for a higher pulse rate from existing and immatable encoder.

I have seen some gear on the web where the vendor offers a rate multiplier box which accepts quadrature signals from an encoder and outputs the signal at a higher rate.
The phase is maintained through the multiplier process.

To be more precise consider a 10 Khz output signal form a quadature encoder where signal a leads signal b.
This signal is fed into the multiplier and utcomes say 100 KHz signal where signala is still in quadrature with respect to signal b and it is still leading it.

I was wondering if there were any open source solutions to this problem out there in the wild?

2. to increase resolution you need to start with a sin/cos quadrature encoder; you cannot increase the resolution of a 5v TTL square wave unit - no info there to do so. 'so before you put a lot of time into this search for the divider circuit, do you have 5v square wave output encoder or 1v sinewave output?

if u have sine encoder, then try googling "encoder divider" to find simple available chips/circuits to do it.

3. What kind of application is this and what rpm of the encoder does this represent?
Al.

4. If this were a rotary shaft encoder then there would be no problem; it would be readily replaceable.

This is a linear encoder.
The output from the encoder is used in side two loops: a velocity loopa nd a positional loop.

Positional loop has no problems.

Encoder pulses are fed into a tacho circuit which generates a voltage to be further used in the velocity loop.

Tacho circuit calls for a higher pulse rate to gennerate "meaningfull" feedback signal.

A sine resolver is not much more different to a quadrature logic level signal.
Both convey same informatio that is direction of travel and distance.

• so again, what is the output signal format of your scale? ttl 5v square waves? 1Vpp sine waves? 11uA sine waves? absolute something like SSI? Endat? Other?

• Encoder output is logic level ( 5 V TTL) quadrature signal.

• Originally Posted by Zig
Encoder output is logic level ( 5 V TTL) quadrature signal.
zig, that means there is NO extra data to multiply with. what u got is what u got. period.

• Is this some kind of proprietary controller or what is the purpose of a position loop, which you say is adequate and a velocity loop?
The information so far is rather vague.
"Meaningful" feedback is usually obtained from the positional feedback which you say is adequate?
For a more qualified answer, more info on the present set up is required.
Al.

• Mike,

Normally I would agree with You however in this instance the velocity loop is not going to protest if a single pulse from the encoder is "lost" due to some signal processing to obtain a higher frequency quadrature signal.

Most servo amps ( of the analogue kind ) explicitly call for a tacho feedback.
Servo amps I intend to use generate tacho signal from the encoder quadrature signal.
With the linear encoder I have no way of mechanically gearing the encoder to achieve higher pulse rate. No gearox, no leadscrew pitch.

The tacho circuit in the servo amp generates 1 volt per 22KHz of encoder signal.

In setting up the servo the inner velocity loop is tuned and then the positional loop is adjusted.

This means that while the velocity profile may have some error the positional error is zero.
If I wanted velocity error to be zero i would need to nest the acceleration feedback loop within the velocity loop.

So for intents and purposes I need to synhesise a velocity only pulse train which only needs to be direction correct and step "good enough".

There are some commercial products which divide the pulse train in the correct fashion but none that I have come across which multiply it.

In summary no special problem other than the fact we are talikng linear scales on top of a linear motor.

• Originally Posted by Zig
Mike,

Most servo amps ( of the analogue kind ) explicitly call for a tacho feedback.
Servo amps I intend to use generate tacho signal from the encoder quadrature signal.
.
I predominantly use analogue Servo amps and do not use any feedback to the drive of any kind, tach or encoder?
Both DC brushed and BLDC type drives.
The drives are configured for the Torque mode of operation.
Al.

• Al,

I had tried current drive ( torque ) and voltage configurations.
My requirement is complicated by the fact that I am using linear motors with iron core and subsequent nonlinear thrust ( torque ) issues.
Veklocity feedback seems to minimise cogging nature of thrust.
Ploe distance is in the order of 30 mm whereas the scale resolves down to 5micron.

In any case you do use an encoder which provides positional feedback to the control loop.

• Originally Posted by Zig
Mike,

Normally I would agree with You however in this instance the velocity loop is not going to protest if a single pulse from the encoder is "lost" due to some signal processing to obtain a higher frequency quadrature signal.

In summary no special problem other than the fact we are talikng linear scales on top of a linear motor.

Zig, you miss that THERE IS NOTHING TO MULTIPLY here..... yes, you can divide so that you make a new output string of pulse that say consist of 1 pulse every 10 of the original, but there is no physical way in the world to take 1 pulse and make a meaningful 10 out of it. none. period. physics. think of it more...... you have a pulse that is 1 pulse width wide...... how do you mutiply it to make it 10? I suppose if you really wanted to you make a circuit to say every time 1 pulse comes by make it into 10 at 10x skinnier width and then do it again for next pulse etc.... but think of it: there is no new data there so it is useless info. so how does this help you at slow speed or stop? if stopped you still need to wait for the next real pulse before you can make 10 more fake ones... what of slow speed? so say you have 1 pulsesec but you make it into 10 pulses..... so now you have 1pulse/sec of meaningful info but you spit out 10 at a frequency 10x higher until the next one..... that req has to be at the highest speed freq you will run, so now you get batches of say 10 pulses at 10khz, once every sec when a real pulse comes by - see what that will do to your velocity controller? blow its mind! it will try to run at 1okhz speed for short bursts every 1 sec. 9 of the 10 fake are just that - fake and carry no value or no new informatiojn for your velocity loop to use to allow more precise responce. the pulses have to have MEANING or they are of no value to alllow you to tune higher bandwidth. no one does what you ask because it physically gains no additionjal informationj so is useless.

• Page 1 of 2 12 Last