PLCS.net - Interactive Q & A

PLCS.net - Interactive Q & A (http://www.plctalk.net/qanda/index.php)
-   LIVE PLC Questions And Answers (http://www.plctalk.net/qanda/forumdisplay.php?f=2)
-   -   Point IO Module for incremental encoder (http://www.plctalk.net/qanda/showthread.php?t=114180)

taylor1982 February 9th, 2018 01:11 PM

Point IO Module for incremental encoder
 
Hello!

I have a application where I need to connect a incremental encoder 24V with 4000 pulses to a Point IO Module.
This encoder delivers the speed of a drum. So I need to get back the drum speed in 1/min. The drum rotates with max 1250 1/min.

I had a look on the 1734-IK or the 1734-VHSC24 Module. But I donīt know how to configure the modules to get the speed back.
Can anyone help?

Thankīs a lot!

Ken Roach February 9th, 2018 02:02 PM

You've correctly selected the 24V models; there are similar modules that work with 5V encoder inputs (1734-VHSC5 and 1734-IJ).

The 1734-VHSC24 module has onboard outputs that can be triggered very accurately by the accumulated count.

The 1734-IK module is more appropriate for measuring the speed of an encoder input.

It's not a motion control module; the encoder signal cannot be used as part of a motion axis. Even the position value is only updated as fast as the Requested Packet Interval (RPI), which is typically in the 10's of milliseconds.

1250 revolutions/minute x 4000 pulses/revolution / 60 Seconds/Minute = 83.3 kHz, which is well within the range of the 1734-IK.

The module's default configuration is as a counter, where it puts the number of pulses counted into the .PresentData element.

But when you configure the module for Period/Rate mode or Rate Measurement mode, you get a speed value.

The User Manual explains the different modes fairly well:

http://literature.rockwellautomation...m006_-en-p.pdf

taylor1982 February 9th, 2018 03:50 PM

Thank you very much for this expaination. I have also a Kinetix6500 rack in this machine and I think there is another option to connect a incremental encoder via auxiliary feedback at the IAM module of the Kinetix6500.

Any suggestions what is the best / easiest way to get the speed of the encoder?

Thanks

Ken Roach February 9th, 2018 05:40 PM

If you need the encoder to function like a feedback-only motion axis, then definitely pursue connecting it to the universal feedback connector on a Kinetix 6500 and configuring a Feedback-Only Axis.

My understanding of the Kinetix 6500 feedback connector is that it provides 5V or 9V power to encoders, but can only handle encoder voltages up to 12 V DC. A 24V encoder would not be appropriate for connection to the drive.

My understanding is that the Kinetix 6500 can be configured as a "1.5 axis" device if you set up the Auxiliary Feedback as a Feedback-Only Axis.

From the User Manual:

Quote:

It is possible to configure the Auxiliary Axis feedback port as a Feedback Only axis.
With this feature, you can configure each drive module to appear as two axes/nodes on the sercos ring. The base node is the servo axis using the motor feedback, and the base node (plus 128) is a feedback-only axis that uses the auxiliary feedback port.
If you need this encoder to be part of the motion control system, then get a 5V encoder and connect it to one of your Kinetix 6500 drives, presuming your ControlLogix or CompactLogix supports enough axes.

If you just need to monitor speed for display every second or so, get a 1734-IK and configure it for Rate Measurement mode.

taylor1982 February 15th, 2018 02:43 PM

1 Attachment(s)
Thanks a lot! Itīs enough when I get back every period of time an updated speed value of the encoder.

I got the information that my hardware department ordered a 1734-VHSC24 Module. I couldnīt test yet because module is not here right now. But I had a look on the IO configuration in Studio 5000.
Are these settings OK for getting back a speed in the MyModule.PresentData - Tag?
What I donīt understand is where can I configure my pulses/rev value so that I get back the correct speed?

Thanks a lot!

taylor1982 February 18th, 2018 04:20 PM

Are there any ideas?

Quote:

Originally Posted by taylor1982 (Post 768833)
Thanks a lot! Itīs enough when I get back every period of time an updated speed value of the encoder.

I got the information that my hardware department ordered a 1734-VHSC24 Module. I couldnīt test yet because module is not here right now. But I had a look on the IO configuration in Studio 5000.
Are these settings OK for getting back a speed in the MyModule.PresentData - Tag?
What I donīt understand is where can I configure my pulses/rev value so that I get back the correct speed?

Thanks a lot!


Ken Roach February 18th, 2018 09:47 PM

The 1734-VHSC module doesn't know about revolutions or distance, only about pulses and time.

In Rate Measurement mode, the value in the PresentData value is the frequency of the incoming signal, in cycles/second (Hertz).

So let's run the nominal math backwards for your 4000 pulse/rev encoder when the measured frequency is 83.3 kHz:

83333 Hz = [83333 1/Sec] x [60 sec/min] / [4000 pulse/rev] = 1250 rev/min

Because the Present Data is a 32-bit unsigned integer, you should be able to use it in any ordinary DIV or MUL or CPT instruction or series of instructions to do this math.

I would recommend setting the measurement period to something more lik 100 ms or 500 ms if all you're doing is showing the speed on a screen; that will give you the best resolution.

taylor1982 February 19th, 2018 01:21 AM

Thankīs a lot Ken. I will try this out when the module will arrive. :-)


Quote:

Originally Posted by Ken Roach (Post 769157)
The 1734-VHSC module doesn't know about revolutions or distance, only about pulses and time.

In Rate Measurement mode, the value in the PresentData value is the frequency of the incoming signal, in cycles/second (Hertz).

So let's run the nominal math backwards for your 4000 pulse/rev encoder when the measured frequency is 83.3 kHz:

83333 Hz = [83333 1/Sec] x [60 sec/min] / [4000 pulse/rev] = 1250 rev/min

Because the Present Data is a 32-bit unsigned integer, you should be able to use it in any ordinary DIV or MUL or CPT instruction or series of instructions to do this math.

I would recommend setting the measurement period to something more lik 100 ms or 500 ms if all you're doing is showing the speed on a screen; that will give you the best resolution.


taylor1982 February 21st, 2018 10:03 AM

So the module arrived today and I could do some tests.

In the MyModule.PresentData-Tag I can see the actual frequency.

One question is still left. The encoder can turn in clockwise or counterclockwise direction.
But the value in the MyModule.PresentData-Tag is always positive.

Is it possible to get the direction of the encoder? I still use the card in rate measurement mode.

Thanks a lot!

Ken Roach February 21st, 2018 01:43 PM

That's a great question.

My understanding is that only Channel A is used in Rate Measurement Mode, so you cannot tell the direction, only the speed.

Do you not have another way to tell which direction the machine element is moving ?

At very low speeds you might be able to compare the leading edge phase of the Input A Status and the Input B Status, but not when it's running fast.


All times are GMT -5. The time now is 02:41 PM.

.