SLC 5/03 IIM & STI

grover1

Member
Join Date
Nov 2003
Location
Walnut Creek, CA
Posts
54
I have a lightly populated SLC 5/03 (1747-L531) single rack with a 1746-FIO4V fast analog installed. The machine is measuring the voltage output of a strain gauge amplifier. We are interested in increasing machine speed by 25%, which drops the cycle time from 52msec down to 38msec. Scan rate variation of course becomes more pronounced as cycle time decreases. S:23 is 4msec with an occasional S:22 12msec that won't clear, which confirms variations I see in data returned by the process.

The ladder currently uses an IIM instruction on an unconditional rung to initiate the subroutine which stores and processes the analog input.

My question: Will an STI instruction, when set to interrupt once every 1msec, offer any significant improvement? I just want to measure at the exact same point within the cycle, every cycle (well, closer than we do now). If so, will the presence of the STI instruction adversely affect the existing scan rate?

I searched some of the IIM and STI threads, but was unable to draw a conclusion for this application. Any help is greatly appreciated.

Grover
 
First, the STI is not an instruction. It is an interrupting subroutine.

The STI can be configured to interrupt your program to run code at a regular repeatable rate. Use it if you have a function that needs to happen at a specific rate regardless of what else is happening in the processor. This will allow that code to execute at a repeatable rate regardless of the fluctuating scan rate the PLC normally experiences. So yes, this can be much more effective than the IIM on its own. The IIM as you have discovered was still at the mercy of the fluctuating scan cycle.

What you will need to do is take the logic recording your value and place that logic in a new subroutine. Then go into the processor status screen and click on the STI tab. Change the Resolution Select bit to a 1 to allow 1ms increments of the setpoint. Enter in the (program/ladder) file number and the interrupt rate.

You will still require the IIM instruction within the STI subroutine so that each time the STI runs it rereads the analog module.

But of course making this logic run at this regular repeatable rate can result in a longer scan time for the rest of the logic. However with the scan times you are currently seeing I don't think it would be much of an effect.

OG
 
I would think that if you only want to check your value at a certain step in the process that the IIM would be more efficient for keeping scan time down. Make sure it's only triggered when you need it.

The STI should be used if you need updates throughout the scan. Be careful not to set the STI rate to high or it will have a major effect on the overall scan.

Wally
 
Operaghost & n521554,


Thank you both for the replies. Some unplanned and urgent matters consumed my time this past week and are still preventing my return to this issue.

One point of clarification, I only need to store the analog value once per 38msec cycle. An encoder precisely delivers a postive transition to the digital input referrenced by the IIM instruction. The PLC does two things when this signal transitions high- it reads in the analog value and it changes the state of a digital output.

I've already demonstrated that the time delay between the encoder-generated digital input and the PLC digital output can vary by up to 2.5msec. This doesn't cause any known problems with the digital output function, but is expected to adversely affect the repeatability the analog input measurement.

What I want is to store the real-time value present at the analog input at the precise moment when the digital signal transitions high. I realize this may not be possible with the SLC5/04 we are currently using.

Operaghost, thanks for the clarification and eleboration of STI.

Grover
 
You might want to look into modules that can generate an interrupt, such as the 1746-ITB16. Use this to trigger an interrupt routine and read the analog value there. That way you don't thake the scan time hit looking for something that may not be there.


Keith
 

Similar Topics

Hello, I have a machine that is counting plates and stacking them. I've found that when the gap is too small, the PLC gets the wrong count. Each...
Replies
2
Views
1,859
I am converting an older SLC program to a CompactLogix and I have run into a few instructions that aren't supported in CLX. INT (I/O Interupt)...
Replies
6
Views
2,765
I’m attempting to send a temperature from a SLC-5/02 to an EZiMarquee display. The vendor said to use a MSG instruction to send the data to the...
Replies
1
Views
96
Hello all. I have a few SLCs in my plant and of late we've seen a weird issue: The system will be running normally and then randomly the outputs...
Replies
2
Views
104
I am working on setting up a Prosoft Datalogger model PLX51-DLplus-232. This unit will be collecting data from a SLC 5/05 on the DB9 port set to...
Replies
3
Views
114
Back
Top Bottom