Saturday, September 25, 2010

The Program Scan

Let's watch what happens in this program scan by scan.

Original program

Initially the tank is empty. Therefore, input 0000 is TRUE and input 0001 is also TRUE.

Scan 1
Scan 1
Scan 2-100
Scan 2-100

Gradually the tank fills because 500(fill motor) is on.
After 100 scans the oil level rises above the low level sensor and it becomes open. (i.e. FALSE)

Scan101-1000
Scan 101-1000

Notice that even when the low level sensor is false there is still a path of true logic from left to right. This is why we used an internal relay. Relay 1000 is latching the output (500) on. It will stay this way until there is no true logic path from left to right.(i.e. when 0001 becomes false)

After 1000 scans the oil level rises above the high level sensor at it also becomes open (i.e. false)


Scan 1001
Scan 1001
Scan 1002
Scan 1002

Since there is no more true logic path, output 500 is no longer energized (true) and therefore the motor turns off.
After 1050 scans the oil level falls below the high level sensor and it will become true again.


Scan 1050
Scan 1050

Notice that even though the high level sensor became true there still is NO continuous true logic path and therefore coil 1000 remains false!

After 2000 scans the oil level falls below the low level sensor and it will also become true again. At this point the logic will appear the same as SCAN 1 above and the logic will repeat as illustrated above.

view the animation!

scan animation

No comments:

Post a Comment