Sub-routines run equal any PLCs

dandrade

Member
Join Date
Jan 2004
Posts
374
I read it post http://www.plcs.net/dcforum/DCForumID1/1983.html.

NOTE: Some PLC's allow for IMMEDIATE OUPUT UPDATE . In that case, the state of the output, according to the current rung, is updated to the Image Table AND updated to the actual Output.

Question: What brand PLC, sub-routine update outputs before image table ?

Coments:I know, is possible IMMEDIATE OUTPUT UPDATE in use special instrutions make is Instrutions: UPDATE BIT or BYTEs

Please, reply small words, short phases.
 
Hmm, I'm thinking ControlLogix (CLX).

A PLC program written in CLX is (or can be) split up in seperate periodic tasks that are executed every x msec. Doesn't the CLX update outputs imitiately?
 
I may be reading his question wrong but RSLogix allows immediate inputs using the IIM instruction and immediate outputs using the IOM instruction. Both of these instructions act similar to a sub since they interrupt the scan while update data is transfered to the specific input or output card (these instructions require a mask).

Wonder how that's gonna translate?
 
It doesn't really matter whether you're talking about a traditional PLC with defined memory partitions or something more flexible. The 'image table' refers to the memory location within within the PLC that represents the ON/OFF state of a discrete point or the value of an analog point. It is the memory location that gets updated when the PLC executes its logic and the value sent to an output module when the I/O are serviced. It would defeat the purpose of immediate I/O update if you sent the old value from the image table to the output module, then updated the image table.
 
The CLX doesn't update the I/O immediately as standard. It updates the I/O based on the RPI entered for each module in the module configuration. That is something you need to keep in mind, by the way. The module updates happen completely asynchronously to the program scan, which is a significant departure from previous AB products.
However, the base question was 'is there a plc that updates the physical outputs before updating the I/O image table' (paraphrased). The answer to this is no. The processor still uses the image table information to update the I/O so the image table needs to be written to first. The immediate portion of it just doesn't wait for the housekeeping portion of the scan to send the image table info out to the I/O cards.

Keith

P.S. Man, Steve, you are ON it.
 
I remembered something about the asynchronous I/O update of the CLX, but couldn't put it together just right, but you did, kamenges. Thanks.

Anyway, reading kamenges' and Steve bailey's input, the initial question really doesn't make sense. What is dandrade's question all about? Where is he/she heading with the question?
 
I gonna write some logic that will pull my head out of.....

I read the question too fast initially. Upon rereading it, Steve and Keith have the right answer.

I assumed he meant which PLCs could immediately update the I/O cards (and of course this requires updating the image table) without waiting to the end of the scan.

Let's see, XIC B3/0 ("Head is in...") OTL O:2/0 ("Head removal Device").
 
Image table

At least one exception to the rule...

Attached is a snip from a pdf doc regarding the PLC brand SAIA PCD.

SAIA PCD doesn't use image table. It address the I/O element directly

saiapcd.jpg
 
Kallie-
That's pretty cool. Effectively everything is an immediate output, which is an interesting way to go.
This is a special case outside of the original question (I think). The original question asked about updating the physical I/O before updating the image table. Since this plc doesn't have an image table it doesn't directly apply to the question. It is a neat idea, though. If nothing else it provides some product differentiation if no real tangible value.

Keith
 
I think we're dealing with a difference in terminology here. The data sheet claims 8K I/O capacity. If the program were to directly write to an output point, then there would have to be 8192 wires from the CPU to the I/O devices. If not, then there must be some buffering between the CPU and the I/O bus. SAIA may choose not to call that buffer an image table, but it performs that function.
 
I think what they are trying to say is they don't do the whole 'write-to-the-image-table-update-at-housekeeping' thing. They just treat all the I/O as a logical extension of internal memory. Instead of writing the bit value to I:4/2 (which is an abstracted physical address anyway) they just go directly to the I/O address point.
They must do something pretty special to make sure their I/O access time is just as quick as internal RAM access or they will take a beating accessing the I/O memory space each time an input or output is needed. That's whay AB tells you to do it only if you absolutely need to.

Keith
 
I reread the question again and I agree. The question seems to be about the behaviour of the image table.
I also read the old 2001 thread: http://www.plcs.net/dcforum/DCForumID1/1983.html (there was a "." too much in Dandrade's link) and don't see why Dandrade made his question, since Terry wrote: is updated to the Image Table AND updated to the actual Output.

Some PLCs have differente fast-task and events, that can update the I/O image and the I/O, but the update is still throug the image table. Asyncron to the main task.
 
Last edited:
Yes. Kalle, good reply is valid. Is add know and remenber words, in execute programming SAIA PLC.

Tranks the replys and attention to warn for small confusion, now is transparent.

ADD others exception PLC, is free

Edited: Add before read complete replys.

Post 12: No problem, near about. Question add any PLC

I like, detail its have important.
Not consider questions specific, sometime request replys, for easy reading. (hum, add observe in my assinature)

Congratulations all.
 
Last edited:
Steve

The address-range is up to 8K I/O, but if the I/O adress isn't there, the I/O status is false/zero.
The PLC tries to address the element and the physical output can change state several times in a PLC scan if you want it to.

A normal mistake for a first time user is:

start
bla
bla
SET OUTPUT

stopp
bla
bla
RESET OUTPUT

The output may have reached 10-15 VDC.....

Phone: "Why is the LED so dim..???"


Keith

Yes, the I/O access time isn't just as quick as the internal RAM access. Se the attached pdf cut for a PCD2.M480.

Reading internal bit: STH F 0 -> 0.1 micro-sec
Writing output: SET O 0 -> 0.71 micro-sec.

But have in mind that there is no time consumption updating image table at start/end of the prog scan!!!
And that only addressed I/O in the PLC program is read/written to. The programmer can decide when, what and where he/she would read/write digital and analog I/O.

And of course, if somebody wants a I/O image, it is possible to make it with internal bits...

Karl

saiapcd2.jpg
 

Similar Topics

Hi guys, I am creating a sub routine and was wondering how i can trigger Bit when the sub routine first runs is it just a Open Line ? or is the...
Replies
5
Views
793
Good Morning , I'm working on a project along with a manufacturer. We are both working on a project , and I'm integrating an existing portion...
Replies
8
Views
2,239
Hello: I am new to PLC's as far as writing the programs and have never written a sub routine. I know in a regular ladder you are limited to...
Replies
4
Views
2,507
Anyone help me please to add subroutines to a program that runs a baler.I want to delay the return stroke after a ram has extended.I've been doing...
Replies
1
Views
1,561
  • Poll
On another thread, the subject of subroutines came up. I do not use them myself. I spoke with everal others that do not either. Perhaps it...
Replies
26
Views
5,168
Back
Top Bottom