Logix5000 AOI input/output "module" placeholder

bigLee

Member
Join Date
Jun 2018
Location
Florida
Posts
77
Hello,
I am trying to streamline an AOI that will get module/controller statuses from ethernet IO tree. Everythings fine, however, does anyone have an idea on a value or placeholder data type that could be put in the module in/out parameter?
I made 60 in/outs of module data type. This receives the io module type to execute the gsv logic. In/out is required, so it needs to have a value in the AOI call function. I can get it to work by just duplicating an existing module name in the spare/unused module in/out entries, but I'd like this to be a bit more universal, and not have to do that everytime.

Any ideas are appreciated!!

Thanks,
Ben
 
You can:
- export the AOI as an L5X
- add the attribute CanBeNull="true" to that InOut parameter
- import and overwrite
- the parameter field will now accept '0' values as placeholders

Caution on it: this will permanently source-protect the block, so you may want to back up the original.
 
Last edited:
Thanks so much. I'm assuming I edit in a notpad file? Something like this?

<Parameter Name="Moudle2Source" TagType="Base" DataType="Module" Usage= "InOut" Required="true" Visible="true" CanBeNull="true"/>
 
One more thing...

You'll need to condition using that InOut parameter within the AOI with XRP/XRN instructions, otherwise an attempt to use a null reference will generate a major fault.

XRP (Examine if Reference Present)
XRN (Examine if Reference Null)

On a rung:
Code:
XRP Ref_Module // your GSV code here
 
I don't see xrp/xrn instructions in Logix5000. Do you mean just compare for the value of module to permit GSV execution?
 
Currently I have an enable/disable xic bit that as someone is adding modules to the AOI, they toggle that bit. So if the instance name is null "placeholdered", but the rung isn't executing, it shouldn't throw a fault? I'm assuming.
 
It won’t because code that operates on the Module reference within the AOI doesn’t execute. If you XRP/XRN within, you can safely not guardrail anything outside the block call.
 
Hmm. I'll have to play around with it. So I have to create my own XRN instruction? I can't find it anywhere.

Thanks for all the insight on this!!
 
That doesn't work. Not a big deal. When importing the modified AOI I got warnings that the CanBeNull attribute would be ignored.

Ex:
<Parameter Name ="Module000Source "TagType="Base" DataType="MODULE" Usage="InOut" Required="true" Visible="true" CanBeNull="true" />
 
Try this.

Sys_Module_LD_src is the original AOI without the CanBeNull attribute.
Sys_Module_LD is the one you want to use, but it is source-protected.
Dev_Module_Program is a demo program.
 
Last edited:

Similar Topics

How do I call an AOI from an ST routine? I have tags made for the AOIs in my Controller Tags group, but how do I call the AOI in a Structured...
Replies
1
Views
1,837
Hi all, I've been trying to get Modbus TCP to communicate (read only) with the Modbus TCP AOI that Rockwell provides, but I'm having issues and...
Replies
2
Views
2,154
I am trying to create a simple AOI that takes in a standard compound data type and a number (as either an INT or STRING, whichever is more...
Replies
9
Views
2,959
I've got a question for those of you with Ignition experience: I've been interested in Ignition for a few years now, have not had a chance to use...
Replies
3
Views
1,873
Hi All - Looking to see if anyone has created or successfully ran an ATV320 VFD from ControlLogix using an .eds file and their AOI.?. Thx!
Replies
0
Views
1,311
Back
Top Bottom