Is there a command for a Ring Counter in ControlLogix?

Snide, can you please describe your definition of a 'ring counter' and what you think you need one for?

I think everyone here is working on a different assumption than you are.
 
I guess this might sound better. a shift regiser, it is a group of registers set up in a linear fashion which have their inputs and outputs connected together in such a way that the data is shifted down the line when the circuit is activated...i got this from http://en.wikipedia.org/wiki/Shift_register the serial-in. serial-out would be my application, but i have no ideal how to do this in controllogixs processor. is this a better descripiton of what i'm trying to do?
 
The stack sounds like that is what I'm trying to do (Maybe), i search help and it only gave me a short term of a stack...where sould i read about how to use one etc.?
 
I'm not that familiar with the CLX processors, so what I am about to suggest may not be applicable.

I would suggest you use some sort of cascading logic, I do something similar with the PLC-5 message instructions.

Currently if you aske for one piece of data, do you have anyway of knowing when it was received? If you do, you can use the first "done" condition to enable the next one, and keep doing this until the last one is done, which enables the first one again.

Or
You can use a holding register, and have each done condition index the register value by one, then use compares to enable each request.
 
"a shift regiser, it is a group of registers set up in a linear fashion which have their inputs and outputs connected together in such a way that the data is shifted down the line when the circuit is activated...i got this from http://en.wikipedia.org/wiki/Shift_register the serial-in. serial-out would be my application, but i have no ideal how to do this in controllogixs processor.

I don't know 'controllogixs' either, in fact I only know Modicon Ladder Logic, but every PLC has a way to do what you want.
It looks like you want to collect data regularily (based on a timer timing out perhaps?)
You want to store a certain number of these hunks of data. (how many?)
You want to shift the data through the registers so that the first hunk of data in, is the first to fall out the botttom, never to be seen again (FIFO)

You may want this series of contiguous(sp?) hunks of data to provide a trend? or perhaps an average?

Modicon has the R->T instruction to copy the value in a register into a specific register located in a table (stack)

There is also the FIN instruction which copies data into the first register in a queue(table,stack) of holding registers. It automatically bumps the previous data down until the queue is full.

This is used with the FOUT instruction to create FIFO logic.

I bet you are still confused. Don't worry! Someone here knows your PLC.

Brian.
 
Last edited:
Ken Moore said:
This is what I think is wanted:
1. Ask for Data 1
2. When Data 1 recv'd, ask for Data2
3. When Data 2 recv'd ask for Data 3

If this is what you want, then there are other applicable questions. First, once you have data 1, what are you going to do with it? Second, is there a limit as to how many data points you're going to request? This question meaning, after you have data 5, are you going to request data 1 again?

Or, perhaps you are totally trying to do something else, something like, ask for data 1. When data 1 recieved, record and ask for data 1 again. I'm just trying to get a feel for exactly what it is you would like to accomplish.
 
It sounds like what Snide is looking for is a simple state machine. Actually, two or more are probably needed.

One will monitor the send/acknowledge sequence for the read/write requests and another will determine the value being queried/sent.

For the purposes of this discussion a 'ring counter' is basically a self-resetting counter that increments to a specific value and then resets. This can be done in any number of ways. A counter reset by it's own done bit, a shift register, a constructed integer based state machine. Then important thing is that you can effectively define your transition conditions. If you can't do that then a state machine implementation will be pretty hard to do.

Snide, if this is the same application with the Prosoft card and you have well-defined queries you need to make, you may want to look into some of the internal features of the card. As I remember you can set up a table of queries and transmissions andd let the card babysit the management of the transmissions. You then just pick up the data in a specific location of the Prosoft card to CLX data array.

Keith
 
Snide said:
I'm sure you remember me from before, I'm the one who is bringing in and sending info. from a MicroLoad.net. I figured out how to get the data. Now I need to get the data everytime i send or ask for a response. for example, i ask the MicroLoad.net device to send me the current flow rate then i will recieve a respose from the Microload.net device and I need to get that info. before i get the next question/answer. Does this make any since? Maybe i didn't describe it well.
Dear Snide.
You program Microload.net Batch controller connect with Controllogix?. You can send me example to use( command list) Microload. I need example for programming connect with Microload.net, I don't have any example.
Thank you!
 
Doug Hylton said:
You can buld your own ring counter with bits.

search for the thread:

How to build your own ring counter with bits.

Doug Hylton

1. You did not do it with bits, you used instructions explicit to a specific brand.
2. This is a year old thread.
3. It was requested you offer specific instructions for any plc, you did not.

I am not sure but I think a ring counter is a form of shift register that works in a circle i.e when the last bit is shifted OUT of the register it goes to the first bit.

Actually there are 2 forms, search for Overbeck and Johnson counters.
 
Building a shift register withe

rsdoran said:
1. You did not do it with bits, you used instructions explicit to a specific brand.
2. This is a year old thread.
3. It was requested you offer specific instructions for any plc, you did not.

I am not sure but I think a ring counter is a form of shift register that works in a circle i.e when the last bit is shifted OUT of the register it goes to the first bit.

Actually there are 2 forms, search for Overbeck and Johnson counters.

Please read my post you can build a shift register with bits for any PLC except maybe Modicon. I have done it with Control logic.
 
That's fine that you can do it with control logic, but Snide needed to do it with the ControlLogix:D

Like Ron said. This thread is a year old. Snide has long finished her project
 

Similar Topics

Hi; I have Weintek HMIs connected with an Ethernet network. Usually I do upload the data log files by using “ftp” command. By using my...
Replies
4
Views
2,136
Does anyone have an example of a successful string transaction between a PC or HMI and a Cognex DM302 barcode scanner using ModbusTCP? I have...
Replies
1
Views
1,811
Hi I am using an ML1200 to send and display data to an Matrix Orbital LCD (VK204-25) through the serial port. They are comm. fine except for one...
Replies
7
Views
2,751
Hi folks, I am using Vijeo Designer V6.0 to send ASCII string commands to printer. The printer is an inkjet printer that prints on boxes. I have...
Replies
0
Views
4,188
Hi everyone, I'm working on a third-party Allen-Bradley driver in C, and I'm trying to use the Typed Write command (0x0F 0x67) to write to the ST...
Replies
10
Views
8,451
Back
Top Bottom