172
The following example uses the 1-second clock pulse bit (25502) so that the
execution condition produced by 00005 is shifted into a 3-word register between
IR 010 and IR 012 every second.
I
P
SFT(10)
010
012
R
00005
25502
00006
Address Instruction Operands
00000 LD 00005
00001 LD 25502
00002 LD 00006
00003 SFT(10)
010
012
The following program is used to control the status of the 17th bit of a shift regis-
ter running from AR 00 through AR 01. When the 17th bit is to be set, 00004 is
turned ON. This causes the jump for JMP(04) 00 not to be made for that one
cycle, and AR 0100 (the 17th bit) will be turned ON. When 12800 is OFF (i.e., at
all times except during the first cycle after 00004 has changed from OFF to ON),
the jump is executed and the status of AR 0100 will not be changed.
I
P
R
SFT(10)
AR 00
AR 01
JME(05) 00
JMP(04) 00
00200
AR 0100
DIFU(13) 12800
00201
00202
00203
00004
12800
12800
Address Instruction Operands
00000 LD 00200
00001 AND 00201
00002 LD 00202
00003 LD 00203
00004 SFT(10)
AR 00
AR 01
00005 LD 00004
00006 DIFU(13) 12800
00007 LD 12800
00008 JMP(04) 00
00009 LD 12800
00010 OUT AR 0100
00011 JME(05) 00
When a bit that is part of a shift register is used in OUT (or any other instruction
that controls bit status), a syntax error will be generated during the program
check, but the program will executed properly (i.e., as written).
The following program controls the conveyor line shown below so that faulty
products detected at the sensor are pushed down a shoot. To do this, the execu-
tion condition determined by inputs from the first sensor (00001) are stored in a
shift register: ON for good products; OFF for faulty ones. Conveyor speed has
been adjusted so that HR 0003 of the shift register can be used to activate a
pusher (00500) when a faulty product reaches it, i.e., when HR 0003 turns ON,
00500 is turned ON to activate the pusher.
Example 1:
Basic Application
Example 2:
Controlling Bits in Shift
Registers
Example 3:
Control Action
Data Shifting Section 5-15