CompactLogix EII

intradave

Member
Join Date
Nov 2010
Location
Pasadena
Posts
34
One of our products depends on the MicroLogix1100 EII (Event Input interrupt) function to catch pulses from a single-channel incremental encoder; typically the pulses occur at 10msec period. Each pulse triggers an interrupt into a routine that does what we need it to (object tracking).
Since Logix500 is older, more customers want Logix5000, and the logical/financial step up would be CompactLogix. However, CompactLogix doesn't have anything like the EII; you have to go to ControlLogix to get a "Module Input State Change" event task. CompactLogix DOES have EVENT interrupts, but they are only triggered by tags, NOT input modules (at least not by an IQ16 module).

I'm thinking about how the MicroLogix1100 provides the EII function; I don't think there is a co-processor, so I think ultimately the PLC must "share" its time with this function.

So I'm wondering how it might be possible to create an EII function with the CompactLogix PLC; create a quick periodic task that examines the input. When the input is seen ON, set a tag that triggers an tag-based EVENT task.

The challenge seems to be how quick the periodic task can be without consuming too much overhead. I would imagine the period of the task to be less than 1msec, which is pretty quick, but it only has to set/reset one tag....

Anyone have any expert insight on something like this?.....
 
So I'm wondering how it might be possible to create an EII function with the CompactLogix PLC; create a quick periodic task that examines the input. When the input is seen ON, set a tag that triggers an tag-based EVENT task.

this might turn out to be a lot trickier than you think ... you'll probably be able to get something to "work" – but the big question is whether or not the operation will be RELIABLE enough to use in an industrial process ...

big ticket item: besides how OFTEN those pulses occur – you need to carefully consider the DURATION of those pulses ...

suggested reading:

http://www.plctalk.net/qanda/showthread.php?p=447080&postcount=13

good luck with your project ...
 
Encoder input = square wave, 50% duty....

We use a periodic task now with a priority on 1 and an RPI of 4msec (sometimes quicker).
This task has a routine that performs all the logic (object tracking), so even if the input is off we are scanning instructions.

The idea is to only scan the logic when the input transitions.

I'll give it a go on the next project and we will see.....

Thanks!
 
Last edited:
This is one of the weak spots of the CompactLogix architecture.

MicroLogix does it by adopting the dedicated hardware on the first handful of Inputs, which can run EII's or HSC functions. Those circuits not only have faster response times but also have their direct interrupt hooks into the operating system.

CompactLogix doesn't have that dedicated hardware, and the 1769 bus was always built to be a polling backplane, not an interrupt-based one.

Jumping between Tasks takes some time; I've heard 1 ms per task switch tossed about, which makes running a very fast Periodic Task a big consumer of processor power.

This is one of the reasons there's an L23 with a built-in HSC module.

It's possible that some of the upcoming CompactLogix will use the backplane or their onboard hardware differently, but with today's CompactLogix you're pretty much stuck with using a Periodic task.
 

Similar Topics

Hi All, I'm just trying to understand the reason behind something I recently experienced. Background: The system contains 4 CompactLogix...
Replies
2
Views
144
So basically i have 2 queries : 1. I have a program file of S7-300 PLC which i want to migrate in RSLogix500.In short i want to convert my simatic...
Replies
15
Views
285
Hi everyone, i have a compact logic 1769-L18 PLC and I'm using FTalk View ME for the display. I wanted to do some visualization on Grafana. At...
Replies
2
Views
179
Does anyone know what the data transfer rate for this series of CompactLogix PLC's? 1769-L24ER-QB1B to be exact. Cheers.
Replies
1
Views
127
Does this instruction calculate values during a single scan, or does it require number of scans based on element count in the array? For Example...
Replies
3
Views
131
Back
Top Bottom