DirectLOGIC PLCs - the most practical PLCs in the industry......from AutomationDirect go back to Do-more home AutomationDirect online store

Spend Less; Do More

Do-more™ PLC: Video - CTRIO2 Motion Using Encoders

Video Transcript:

Before we can use the encoder we have to do a few things.

First, we have to wire the encoder to the CTRIO2. For this example we will be using the CTRIO2 Channel 1A and 1B inputs and the common is 1M. Now we have to configure the inputs on the CTRIO2 module. To do that we go back to System Configuration, Module Configuration, and we double click on our module. Click on Configure IO to setup all the individual IOs.

This one is setup from before where we had assigned channel 1's output 0 and 1 to be a Step and Direction for our stepper motor.

Now we want to add a single quad encoder to the inputs. Well, I just say I want a quad counter. That takes up channels A and B because we had two wires and I can even count those encoder pulses as one count per quadrature cycle, 2 counts or even 4 counts per quadrature cycle. We'll leave it at 1 right now to keep things simple. And that's all there is to configuring the CTRIO2 Module. We have our outputs and our inputs, so we hit OK, OK and OK.

So, we have wired the CTRIO for the encoder, and configured the CTRIO IO. Now we just use it!

To enable the encoder, you just go into the configuration block and tell it which CTRIO2 Channel to use. We wired ours to Channel 1, so we should probably use that one.

Here is the key point. It is rare that your Encoder PPR will match your stepper PPR. So right here you need to put the ratio of the two: Divide the Motor PPR by the Encoder PPR – just like it shows in the parenthesis here, and put that number here. In our example we have a 20,000 PPR motor divided b a 360 PPR encoder and so our ratio is going to be 55.56. Because of that mis-match, the CTRIO can't always get exactly the right number of pulses it needs and it will try to bounce back and forth between the count on either side of perfect. You can eliminate that jitter by specifying a dead band here. We're not going to fool with that in this demo, but just know you have it available.

Also know that these don't have to be constants. You could put registers here and change both of these on the fly as the program is running. Again, we don't need to mess with that right now.

So all we did was check our encoder channel - which looks like I missed – Channel 1 – and setup our ratio of the motor PPR to the encoder PPR.
Now that the config block has told the CTRIO how to handle the encoder we just use it.

For this demo we'll just use a Trapezoid Function, and nothing changes. We use the same CTRIO module, we're still going to do a relative move. And we are going to specify a target position to be put in D0. So no changes required there at all.

This is important, now that we have enabled the encoder in our config block – all positions you use with the CTAX commands need to be in encoder PPRs.

Using this Trapezoid Function, let's move the carriage 10 shaft rotations. Remember, in the previous video, that took 200,000 pulses. Now that we have encoders enabled, we only need 3600 pulses.

Notice that down here I added some more logic for our convenience. If X7 is on, we are going to put 3600 into D0. If X7 is off, we are going to put a -3600 in D0. That just gives me a convenient way to flip back and forth.

I'm going to turn on X7, which will write a +3600 to D0. And now when we set X0, we expect the carriage to move 10 shaft rotations. And sure enough it does. And since this was a relative move I can do it again.
Turn X7 off, which writes a -3600 to D0, now when I engage X0, the carriage moves back. But again, it moves back 3600 pulses, not 200,000 because we are using encoders.

Note that while we used the Trapezoid function in this example, these comments apply to all of the CTAX commands on the CTRIO2.

We'll, that's all there is to using encoders with the CTRIO2 and the Do-more processor. Do-more designer software makes it easy and it just works the way you would expect it to. Be sure to check out the other videos in this series for more on using motion. And as always, please send us any comments you may have, we appreciate the feedback.

Spend Less. Do-more. From AutomationDirect.


Check-out all the Do-more™ Videos

  The Do-more Way
  Do-more Designer Software
  Do-more Ethernet I/O
  Do-more Motion Control Videos
  Do-more with ViewMarq Message Display

User Application Stories
Encompassing all AutomationDirect PLCs

Helpful PLC guides



Copyright © All rights reserved.All prices are U.S. list prices.