AB Logix5000 Partial Indirect Addressing?

jmveerkamp

Member
Join Date
May 2012
Location
OH
Posts
23
I know you can do indirect addressing using 5000, but is it possible to do partial indirect addressing?

Meaning... I pass any number, say, 1000.
And then I can concat this # with a prefix, say "tagprefix_" to get: tagprefix_[#]

where tagprefix_# is a PLC tag.

(I know it would be easy if I had these values in an array already, but sadly I don't and it can't be changed...)

Thanks.
 
Last edited:
In answer to your question - I don't think you can do what your talking about, although I could be wrong.

Could you create a new array tag[n] then pass the required value into a member and use your logic on the new array and just pass info over and back? - That's a complete shot in the dark - no idea what you might be doing with the values...
 
OK. I'm not getting what you mean by partial. Indirect tags in ControlLogix are really arrays, i.e. tag[50]. Which is a tag of 50 elements, 0-49, such as tag[23]. So an indirect reference would be something like tag[tag2].
 
I want to reference part of a tag to determine the tag I need. I couldn't think of another thing to call it besides partial.

I have numerous tags that are similarly named, Tag_1, Tag_2, Tag_3 etc.
And from the HMI I want to pass #=1 and then use logic to determine that Tag_1 is what I want and execute logic based on that. (Maybe I can do this with parameters??)

I was just trying to make it simpler than having 100 different macros all doing essentially the same thing.

OK. I'm not getting what you mean by partial. Indirect tags in ControlLogix are really arrays, i.e. tag[50]. Which is a tag of 50 elements, 0-49, such as tag[23]. So an indirect reference would be something like tag[tag2].
 
OK. So now there's an HMI involved? To give you a complete answer, we must know as much about your system as possible. So what is the HMI doing? Which HMI? I've written VBA code in FTView SE that could do something like that with parameters.
 
There is a PV+ 1500 talking to a Control Logix.
I'm using FTV ME so I don't think I can utilize VBA.
The HMI is just pointing to the data inside of the tag.


OK. So now there's an HMI involved? To give you a complete answer, we must know as much about your system as possible. So what is the HMI doing? Which HMI? I've written VBA code in FTView SE that could do something like that with parameters.
 
No VBA is out. Are you trying to use one button, for example to work on multiple tags?
 
I think what you are attempting with ME is not possible....

Why can't you change the existing tags, and make them elements of an array? - is it not possible to stop the machine for a minute to do a download after the modifications are done off-line?

Off-line Search/Replace the existing tags for the new array tags is easily done.
 
Last edited:
No VBA is out. Are you trying to use one button, for example to work on multiple tags?

I am using several macro buttons to accomplish the following: set two DINT tags in the PLC and auto-navigate by setting the remote display. I recall this being relatively simple using SE due to the use of VBA and on click events.

is it not possible to stop the machine for a minute to do a download after the modifications are doen off-line?
This is the reason... 24/7 production.

Okay, well, thanks all, I didn't think it would be possible with ME, but I figured I'd query everyone and see! Since it works it works, although I'm not thrilled with the implementation...
 
I have a suggestion that might work for you. I recently did this with an application where I didn't want to reconfigure a whole bunch of HMI tags but needed the functionality of an array.

Go ahead and create a new array of the needed tag type, say,
MyTagArray[100]

To deal with all of the Tag_1, Tag_2, Tag_3, etc. named tags you then redefine all of those tags as aliases, so that Tag_1 aliases MyTagArray[1], Tag_2 aliases MyTagArray[2], etc.
 
To change a tag from a base tag to an alias tag will require a download, and that idea has already been discounted by the OP as the process is 24/7 - although at a future time I'm sure a 1-minute "downtime" could be planned for....

This situation could of course be handled by multiple rung edits while the 24/7 process is running... depends on how brave the programmer is. I've done some hefty rung editing in the past (several hundred rungs), and the controllers handled the Test/Assemble Edits happily.
 
Last edited:
I've done some hefty rung editing in the past (several hundred rungs), and the controllers handled the Test/Assemble Edits happily.

That is some hefty rung editing! I am brave but I think the most I've ever done has been 25 or so at a time. And it's more a concern since I'm not on-site, I'm remotely programming this. Maybe for a future scheduled downtime.
 

Similar Topics

I'm a Siemens person, and this is one of my first AB programs. The customer wants everything programmed in Ladder. I have a lot of data (3...
Replies
14
Views
159
Good day everyone. if you have a logic for 3 pumps (lead/lag/off), would you please email it to me? I really appreciate it!
Replies
7
Views
157
Maybe this is just not possible, or maybe I am doing something wrong. Background; I have a data array of over 1500 products. For sorting I...
Replies
6
Views
727
Hello everyone, I'm currently using RS Logix5000 software for machine programming with this Rockwell PLC using the Structured Text method. The...
Replies
19
Views
1,951
I am sure this has been asked/done but couldn't find anything. I need to count how many times a motor has started in the last 24 hours at any...
Replies
13
Views
1,320
Back
Top Bottom