QD145 Incremental Encoder Shaft Tolerance

I received a phone call the other day that caught me a bit off guard. A customer was asking what tolerance they need to have on their motor shaft for it to fit with one of our incremental encoders.   I reflexively told the customer that we machine our shaft I.D. to  a –0.0000” +.0005” tolerance. He told me he already knew that, but what did we recommend for his shaft, the motor shaft that the incremental encoder was to be mounted on?

Since I am an Electrical Engineer, I wanted to make sure I had all of my ducks in a row before I took my second shot at answering a mechanical related question. I let him know that I would look up the information he needed and call him back.  After I got off the phone I immediately knew what I should have told him.  This answer may surprise you, but we don’t specify tolerances for the fit of our customer’s motor shafts. – not in the way one would expect.  Instead of a fit tolerance, we have TIR and Endplay tolerances on total encoder movement after it is mounted.

The reason for this is because unlike modular incremental encoders, which rely on the mounting shaft to hold the disk and sensor air gap, the QD145 series of incremental encoders has an internal bearing set that maintains the air gap. This takes the need for an exacting precision shaft to shaft fit out of the list of problems motor manufacturers face when designing a new motor.

I called the customer back and let him know the good news; that instead of some tight machining numbers, he only needed to keep his QD145 Incremental encoder within .007” of radial shaft runout and within +/- .030” for axial shaft runout.

I also pointed him to our QD145 Incremental Encoder Mounting Instructions, which contain other incremental encoder mounting, and wiring suggestions.

Quantum Devices Interface Cable for the QDH20

QDH20 interface cable

Quantum Devices is now offering an interface cable to our QDH20 series of Industrial Incremental Encoders.

While we like to focus more on building encoders than “add on” products, we did find this to be something that made sense to offer with our QDH20 encoders.

At this time the ten pin Female MS connector to flying leads is the only interface cable for the QDH20 encoder that is option being offered.  Part numbers can be constructed  by using the prefeix 2100A and adding the length of the desired cable in inches as a part suffix.

Example:

If an eight foot cable is desired, 8 x12 = 96 so the part number would be 2100A096

Contact any of our distributors, or QDI sales for pricing and delivery

 

Jim

Help picking the resolution of an Incremental Encoder

I recently received an e-mail asking for some help picking the right resolution for an Optical Incremental Encoder.  I have removed the personal information and the drive/controller information, otherwise the e-mail is verbatim:

Hi,

I am using a  motor controller in dual loop velocity mode.

What resolution incremental encoder would I need if I wanted to achieve 1%
or better velocity regulation in the range of 0.1RPM to 230RPM on the output
shaft of the gearbox.

The velocity control loop on the controller runs at 1kHz.

I have used your online calculator and it says 600k lines is this correct?

Here was my response:

I think I see what you are after, but you are missing  some information.  The Encoder calculator on the web site is a bit too simple for what you are trying to do.  It is really meant to be a quick conversion tool to find out of your Incremental Encoder is going to violate controller input frequency limitations, and the like.

The ability of the system to regulate to a given speed will depend on more than just the line count of the encoder. The real question that needs to be answered before we can determine Incremental Encoder resolution is “How many pulses are needed per update?” this is a question that will need to be asked of the Drive manufacturer/supplier, but I am sure they will have further questions about the motor size  and loading as well. 

It is easy to see that a motor without a load is easier to regulate than one with a dynamic (changing) load.  Therefore the size of the motor (and it’s inertia)  and the size of the load (and it’s inertia) will need to be taken into account.

With all that being said, we can do some quick math to get a feel for what we do know about the application.

Before I get started, one major thing to note here is that it appears that you are asking for regulation to occur on the output of the gearbox.  I am guessing that the Incremental Encoder is on the motor side (input) of the gear box, so there will be a scaling factor of the input to output ratio that will need to be taken into account along with the following math:

We know that you want to regulate speed within a range of 0.1 RPM to 230 RPM.

Taking the maximum speed of 230 RPM:
230/60 = 3.83 RPS  (Revolutions per Second)

We also know that the drive does a loop update rate of 1000 times/sec  (1Khz)

1000/3.83 = 260.89   updates per Revolution

360 Mechanical Degrees in a revolution

260.89/360     .72469 loop Updates per Degree at full speed.   (Or  1.379 Degrees traveled for every update)

Taking the minimum speed of .1 RPM:
0.1/60 = 0.00167 RPS
1000/ 0.00167  =  600,000 updates per revolution
600000/360 = 1666.67 Loop Updates Per Degree at minimum speed.

After this we really need to ask is “What can the drive do?”  At the top speed we will travel over a degree before the drive can update the loop for any error component.  In the minimum speed example, the drive will not see a change in count over 1667 loop updates. How does the drive handle this? 

To see what this means in Incremental Encoder pulses vs Drive Loop Updates we can take the highest line count encoder we currently provide, a 20,000 LC QR12:

20,000 pulses/360 Mechanical Degrees = 55.5 pulses per mechanical degree

if we use the encoder “post quad”, we can look at the edges of channels A and B pulses to 4x our resolution to 80,000 edges
80000 edges/360 Mechanical Degrees = 222.22 Edges per mechanical degree

For 260 RPM:
55.5 Pulses per degree/.72469 updates per degree = 76.58 pulses per loop update
using edges:
222.22/ .72469 = 306.33 edges per update

For 0.1 RPM:
55.5 Pulses per degree/1666.7 updates per degree = .0333 pulses per loop update (or 30.03 loop updates per Edge)
using edges:
222.22/1666.7 = 0.1333 edges per update  =  0.1333 Edges per update (or 7.5 loop updates per Edge)

Just taking a very rough look at it, a 20,000 line count incremental Encoder appears to have more than enough data per update to give the drive a good idea of how fast the motor is turning at the high speed, while at the slow speed the drive has to wait for several loop updates to pass until it sees even one edge of the Incremental Encoder Signals.

Will the drive be able to regulate at this lower speed without falling out of the 1% tolerance? My guess is probably not, but only the drive manufacturer can answer that for sure.  I am also wondering if 1% regulation is really needed at these slow speeds.

Keep in mind that these numbers would also need to be scaled by the input to output shaft ratio if the encoder is on the input side to the gearbox and the RPM’s above are actually referring to the output shaft speed.

Can the application tolerate being out of the 1% specification momentarily while the drive recovers?  If so, your focus should likely be on loop response time.

At the very least I am guessing tuning the loop to accommodate for both full speed and slow speed may be difficult.

I hope this helps,

Jim

Why do my optical encoder signals look this way?

I received an email from a customer who was seeing “not symmetrical” data channels on some optical encoders we shipped to them

Hi Jim,

The data channels are not symmetrical and there appears to be something superimposed on the index. Attached are pictures. Can I return these for your evaluation?

Regards,

Al

Below are the screen shots that he sent:

Read more of this post

Why can’t I see my Optical Encoder Output Signals?

A simplified schematic of the externalized (op...

Image via Wikipedia

Why do my incremental encoder signals disappear?

Today I was called to the production floor after one of the test Technicians noticed that the encoder signals disappeared from the oscilloscope when they ran the encoders “unloaded”.

I asked one of the techs if the encoders being tested were of the open collector variety. The answer was  “No, they’re line drivers”

I immediately pictured our standard 26C31 line drivers, which are push-pull devices.

When I checked the label on the line driver IC on the encoder. I saw that it was an ET7273. This meant that the right answer was that they were both a line driver and an open collector device. The ET7273 is used in our optical encoder when a customer wants complementary open collector outputs, or incremental side open collector outputs

The problem was that I, as well as the Tech I talked to, am guilty of using the term “line driver” to synonymously mean “push pull” outputs.

Open collector style outputs are used when you want to be able to pull up to a different voltage level from the rest of the system. For example most of the optical encoders we sell are 5V devices, but the open collector output can be pulled up to many times that level. The ET7273 has a max spec of 30Vdc.

So why was she not seeing any outputs when the encoder wasn’t loaded?

Read more of this post

Finding the Index on an Incremental Encoder with a DMM

Sometimes you don’t have the right tools to do the job.

Lets say you needed to identify where the index pulse was firing on your incremental encoder, but you left your oscilloscope in your other jacket pocket, and now all you have on hand is a DMM.

Well fear not, finding the index with a multimeter is possible although a bit tedious.

The index fires once per revolution and at higher line counts this makes it VERY easy to miss.  Since there is some delay in a multimeter’s display time, you will need to rotate the encoder very slowly to catch a change in voltage level.

The Blue box has a nine-volt battery inside that I regulated down to 5Vdc for the encoder power.  I have pulled out connections to ground (Black wire) and the index channel (Orange wire). When the index fires, the voltage will go from zero to five volts.

Jim is an Applications Engineer with Quantum Devices Inc. A leading manufacturer of Optical Encoders.

Quantum Devices Optical Encoder Black/White Wire

What’s with this black-white wire?

Quantum devices QD145 and QD200 Optical Encoders feature an extra black & white-stripped wire that serves as an alternate grounding connection for the encoder.

This wire is intended to be used in situations where the encoder flex mount is not case grounded.  The Black/white wire is at the same potential as the Optical Encoder’s conductive polymer housing and  flex mount.

Internally the electrical path of the black-white wire is tied to the optical encoder housing and flex mount through the circuit board.  Our optical encoders tend to live on the back of hardware like Brushless DC motors, where the motor housing is at ground potential.  In cases like this it is usually best to leave the black-white wire tied off and floating.

Arrow showing flex mount grounding Optical Encoder to Motor.

Jim is an application engineer for Quantum Devices INC, a leading manufacturer of optical encoders.

Jim reached at jmiller@quantumdev.com.

Build an Incremental Encoder Quick Tester

How to build a portable incremental encoder tester.

Every once in while it’s nice to have a hand-held device that can be used to see quickly if encoder signals are present.  I designed and built a quick-tester that allows for fast interface to an encoder without having to drag out a power supply and oscilloscope.

The Quick-tester is an optical encoder tester that is powered by a 9V battery. An internal 5V regulator drops the voltage to 5V, as two of the connections are power connections for the optical encoder.

Current limiting resistors are wired in to red LEDs.   The LED’s illuminate when the optical encoder signals are High.  By rotating the base by hand we can see if a channel is dead or even improperly phased.

Here is the schematic for the Optical Encoder Quick-Tester

Things the Quick Tester can tell you:

Which channels are working.

The LED’s should rapidly blink on and off while the optical encoder hub is slowly rotated. Keep in mind that turning the hub too fast will make the LED’s switch on and off quickly and cause them to appear to be continuously illuminated.

Proper phasing

When channel A is illuminated, channel A- should be dark and vice versa. If both lights are on or off at the same time, there is a problem with the encoder.

If A leads B, or B leads A

Rotate the encoder shaft slowly until both A and B are low (off), then look for the next high channel, that channel is the leading channel for that direction of rotation.

Location of the index pulse

It can be easy to fly right past an index pulse, particularly on higher line count encoders, but the Quick tester can tell you precisely when the index pulse occurs. This can be handy for mechanically timing the optical encoder to a real world position.

Other things to note:

If you have an optical encoder with  open collector outputs, the Quick-tester’s LED’s will not illuminate unless you use pull up resistors between each channel and the positive supply of the Quick Tester.

If all lights are on, you have probably lost the signal ground connection to the Quick tester.

The Quick tester is set up to look at six channels at a time, so it is likely you will be looking at only incremental channel or only commutation channels.

For more information on encoders, go to http://www.quantumdev.com.

Jim can be reached at jmiller@quantumdev.com

Using an optical encoder to measure angles

I have interfaced a 200 LC QD145 to a DL06 PLC to show how to convert from a line count to mechanical degrees. This type of conversion may be useful for any application needing to know an angular measurement.

To calculate a degree measurement we divide 360 by the line count to get the number of degrees per pulse.

(360 Degrees /200 Pulses per revolution) = 1.8 Degrees per pulse.

The High Speed counter we have set up will automatically add one to it’s running total any time the encoder is rotated counter-clockwise, and subtract one from the running total any time the optical encoder is rotated clockwise.


This value is loaded into the PLC’s accumulator and multiplied by 1.8  (K18) to convert to degrees. The number is then outputted to an address(V2500)that we can display on the screen.

When the index (Z) pulse occurs, we reset the counter to let it know we are back at zero.

Below is the PLC code for the pulses to degree conversion.

It is good to note that the PLC is set up to retain the count value when powered off, but if the optical encoder is rotated during this time, the count will not change and the value at power up will be different than the encoders real world position.

It is good practice to rotate an incremental encoder/optical encoder on power up until an index pulse is seen and start counting from there. This is technique is known as “homing”.

By default the quadrature counting mode within the PLC keeps track of negative numbers, so we are able to accumulate a negative degree value depending on the direction of rotation after zero. While this may seem a bit confusing, it is really just a matter of your point of reference. –90 Degrees is the same exact point as a positive 270 Degrees.  If we wanted to convert to where we stayed within a positive degree range, you could change the PLC code to add 360 to the measured value any time it went negative.

For more information on encoders go to  http://www.quantumdev.com

For technical questions Jim can be reached at:  jmiller@quantumdev.com

Optical Encoder Pulse Counting with a PLC

I have interfaced a QD145 200 Line Count Optical Encoder to a DL06 PLC and set up the PLC for mode 20 ‘High speed Up/Down counter’.

Here is a video of Optical Encoder Counting:

Optical Encoder Counting with PLC

Below is the ladder logic code for programming the PLC to count pulses from the QD145 optical encoder using high speed counting mode.  Note that “high speed” for the DL06 standard inputs is still limited to 7kHz. Where the encoder can go as high as 500 kHz by specification.

Setting up the ladder logic code for the DL06 is fairly straightforward in that the UDC (up down counter) seems to be built to take optical encoder inputs.

When in high speed mode, inputs X0 and X1 are inputs to the counter (CT174) by default.  Input X2 is a reset input and could be wired to the index channel on the optical encoder if we were looking to translate the count into a 360 Position, but is left unwired for this up down count application.

Optical Encoder Ladder Logic for Counting with a PLC

The first rung on the counter (CT174) is the ENABLE. I latched C11 off of the first scan bit (SP0) to enable the counter.  Note that CT174 was not picked arbitrarily, it is the specified counter location for high speed counting

The use of X0 and X1 on the second rung of the counter may seem a bit odd if you thought they were feeding counts the counter; instead those inputs are being used to updated the count from the input buffer to the counter memory location.  To ensure that we always have the most accurate information. I place the two inputs parallel to trigger the update whenever we see a pulse from A OR B.  This rung could also be held on for constant updating.

I am using bit 2501.0 (the F1 Key from the panel) to force a reset on the counter when ever the button is pressed.

Bit 1175.15 is the MSB from counter CT174 and indicates when the count has gone negative.

For more information on Optical Encoders check out the Quantum Devices Inc web page.

Follow

Get every new post delivered to your Inbox.