ControlLogix ST for IO Buffers

KristienP

Member
Join Date
Jan 2015
Location
Nova Scotia
Posts
44
I am programming a pumping facility and am testing all code in the emulator as best I can before going to site.

Instead of Aliasing my Inputs and Outputs to tags, I am using a Structured Text routine to map the IO. It makes transitioning from my regular project to the emulated project much easier! I just delete the code in the ST Routine and then delete all modules and change controller type. Before I had to go into Controller Tags and individually delete the Tag Aliasing.

The code looks like this:

CS_P320_Run_DI := Rack_2:2:I.Data.0;
CS_PIT_3014_AI := Local:7:I.Ch3Data;
Rack_2:6:O.Data.0 := CS_P320_Run_DO;
Local:11:O.Ch5Data := CS_FV_3037_AO;
/* Local:11:O.Ch6Data := SPARE */

I also add all Inputs and Output and comment out any spares. It's an easy way to keep track of available spares within the program.

My question is.. Will mapping IO to tags via this ST Routine have any disadvantages over Aliasing the tags to the IO points?
 
I always buffer as well, primarily because on large projects electrical design and software design are occurring in parallel. Once electrical is finalized I'll put it into Excel and have VBA code automatically generate all the buffering logic for me.

Much easier, especially as change orders occur!

Functionality wise, I would assume aliasing your IO and using the alias directly in your program means you need to be aware of the asynchronous update of the IO, where as buffering you'll avoid it.
 
That is my concern. Will having the Analog IO update only once per processor scan adversely effect my PID loops or other control? The Digital IO I'm not really concerned about.
 
That is my concern. Will having the Analog IO update only once per processor scan adversely effect my PID loops or other control? The Digital IO I'm not really concerned about.

No, chances are your PID loops are triggered at a much slower rate than your scan will be.
 
I was just checking the program and the PID Loops and IO Buffers are in separate Periodic Tasks. But they are all setup as default, with a Period of 10ms and Prioity of 10.
 
I was just checking the program and the PID Loops and IO Buffers are in separate Periodic Tasks. But they are all setup as default, with a Period of 10ms and Prioity of 10.

Which negates any reason to have separate periodic tasks.

For my programming, I usually run PID loops at 1 second. My logic periodic tasks range from 100ms to 250ms typically. 10mS task just swamp the processor which very few processes actually require. Not to mention if your RPI settings are slower than the scan (default 20ms?), what's the point?
 

Similar Topics

Why does the controllogix redundancy modules use a single mode fiber vs multimode fiber?
Replies
1
Views
78
Hello, I have two 16 point input cards and 1 16 point output card showing module faulted on my IO tree in Logix Designer. The fault code is...
Replies
7
Views
214
Hello, My associate and I are trying to sync up two ControlLogix racks (7-slot chassis) with identical modules. We are able to see the secondary...
Replies
4
Views
193
Trying to setup a message read via Ethernet. I have the path setup as 1, 1, 2, 192.168.66.10 I get an error code 1, ext err 315. I am beating...
Replies
9
Views
231
I have a redundant ControlLogix being set up. This program reads a value from a remote site which happens to be SLC PLC. Rockwell mentions SLC...
Replies
2
Views
95
Back
Top Bottom