DL06 Micro PLC User Manual, 3rd Edition, Rev. E
3-14
Chapter 3: CPU Specifications and Operation
1
2
3
4
5
6
7
8
9
10
11
12
13
14
A
B
C
D
Read Inputs
The CPU reads the status of all inputs, then stores it in the image register. Input image register
locations are designated with an X followed by a memory location. Image register data is used
by the CPU when it solves the application program.
Of course, an input may change after the CPU has just read the inputs. Generally, the CPU
scan time is measured in milliseconds. If you have an application that cannot wait until the
next I/O update, you can use Immediate Instructions. These do not use the status of the input
image register to solve the application program. The Immediate instructions immediately read
the input status directly from the I/O modules. However, this lengthens the program scan since
the CPU has to read the I/O point status again. A complete list of the Immediate instructions
is included in Chapter 5.
Service Peripherals and Force I/O
After the CPU reads the inputs from the input modules, it reads any attached peripheral
devices. This is primarily a communications service for any attached devices. For example,
it would read a programming device to see if any input, output, or other memory type status
needs to be modified. There are two basic types of forcing available with the DL06 CPUs:
• Forcing from a peripheral – not a permanent force, good only for one scan
• Bit Override – holds the I/O point (or other bit) in the current state. Valid bits are X, Y, C, T, CT,
and S. (These memory types are discussed in more detail later in this chapter).
Regular Forcing — This type of forcing can temporarily change the status of a discrete bit. For
example, you may want to force an input on, even though it is really off. This allows you to
change the point status that was stored in the image register. This value will be valid until the
image register location is written to during the next scan. This is primarily useful during testing
situations when you need to force a bit on to trigger another event.
Bit Override — Bit override can be enabled on a point-by-point basis by using AUX 59 from
the Handheld Programmer or, by a menu option from within DirectSOFT. Bit override
basically disables any changes to the discrete point by the CPU. For example, if you enable bit
override for X1, and X1 is off at the time, then the CPU will not change the state of X1. This
means that even if X1 comes on, the CPU will not acknowledge the change. So, if you used X1
in the program, it would always be evaluated as Off in this case. Of course, if X1 was on when
the bit override was enabled, then X1 would always be evaluated as On.
There is an advantage available when you use the bit override feature. The regular forcing is not
disabled because the bit override is enabled. For example, if you enabled the Bit Override for Y0
and it was off at the time, then the CPU would not change the state of Y0. However, you can
still use a programming device to change the status. Now, if you use the programming device
to force Y0 on, it will remain on and the CPU will not change the state of Y0. If you then force
Y0 off, the CPU will maintain Y0 as off. The CPU will never update the point with the results
from the application program or from the I/O update until the bit override is removed. The
following diagram shows a brief overview of the bit override feature. Notice the CPU does not
update the Image Register when bit override is enabled.