CPM2A_PROGRAMMING MANUAL (W353-E1-2) (986750), страница 53
Текст из файла (страница 53)
They are not necessary when inputting ladder diagrams directly becausethey are processed for you automatically. The above limitations on the numberof branching points requiring TR bits, and considerations on methods to reducethe number of programming instructions, still hold.InterlocksThe problem of storing execution conditions at branching points can also behandled by using the INTERLOCK (IL(02)) and INTERLOCK CLEAR (ILC(03))instructions to eliminate the branching point completely while allowing a specificexecution condition to control a group of instructions. The INTERLOCK and INTERLOCK CLEAR instructions are always used together.321SectionBasic Ladder Diagrams6-3When an INTERLOCK instruction is placed before a section of a ladder program, the execution condition for the INTERLOCK instruction will control theexecution of all instruction up to the next INTERLOCK CLEAR instruction.
If theexecution condition for the INTERLOCK instruction is OFF, all right-handinstructions through the next INTERLOCK CLEAR instruction will be executedwith OFF execution conditions to reset the entire section of the ladder diagram.The effect that this has on particular instructions is described in 7-11 INTERLOCK and INTERLOCK CLEAR – IL(02) and ILC(03).Diagram B can also be corrected with an interlock. Here, the conditions leadingup to the branching point are placed on an instruction line for the INTERLOCKinstruction, all of lines leading from the branching point are written as separateinstruction lines, and another instruction line is added for the INTERLOCKCLEAR instruction. No conditions are allowed on the instruction line for INTERLOCK CLEAR.
Note that neither INTERLOCK nor INTERLOCK CLEAR requires an operand.00000IL(02)Address0000000001000020000300004000050000600001Instruction 100002Instruction 2ILC(03)InstructionOperandsLDIL(02)LDInstruction 1LDInstruction 2ILC(03)00000--0000100002---If IR 00000 is ON in the revised version of diagram B, above, the status of IR00001 and that of IR 00002 would determine the execution conditions forinstructions 1 and 2, respectively. Because IR 00000 is ON, this would producethe same results as ANDing the status of each of these bits. If IR 00000 is OFF,the INTERLOCK instruction would produce an OFF execution condition forinstructions 1 and 2 and then execution would continue with the instruction linefollowing the INTERLOCK CLEAR instruction.As shown in the following diagram, more than one INTERLOCK instruction canbe used within one instruction block; each is effective through the next INTERLOCK CLEAR instruction.00000IL(02)00001Instruction 100002IL(02)0000300004Instruction 200005Instruction 300006Instruction 4ILC(03)322Address0000000001000020000300004000050000600007000080000900010000110001200013InstructionLDIL(02)LDInstruction 1LDIL(02)LDAND NOTInstruction 2LDInstruction 3LDInstruction 4ILC(03)Operands00000--0000100002--00003000040000500006---SectionBasic Ladder Diagrams6-3If IR 00000 in the above diagram is OFF (i.e., if the execution condition for thefirst INTERLOCK instruction is OFF), instructions 1 through 4 would beexecuted with OFF execution conditions and execution would move to theinstruction following the INTERLOCK CLEAR instruction.
If IR 00000 is ON, thestatus of IR 00001 would be loaded as the execution condition for instruction 1and then the status of IR 00002 would be loaded to form the execution conditionfor the second INTERLOCK instruction. If IR 00002 is OFF, instructions 2through 4 will be executed with OFF execution conditions. If IR 00002 is ON, IR00003, IR 00005, and IR 00006 will determine the first execution condition innew instruction lines.6-3-9JumpsA specific section of a program can be skipped according to a designated execution condition.
Although this is similar to what happens when the executioncondition for an INTERLOCK instruction is OFF, with jumps, the operands for allinstructions maintain status. Jumps can therefore be used to control devicesthat require a sustained output, e.g., pneumatics and hydraulics, whereas interlocks can be used to control devices that do not required a sustained output,e.g., electronic instruments.Jumps are created using the JUMP (JMP(04)) and JUMP END (JME(05))instructions. If the execution condition for a JUMP instruction is ON, the programis executed normally as if the jump did not exist. If the execution condition for theJUMP instruction is OFF, program execution moves immediately to a JUMPEND instruction without changing the status of anything between the JUMP andJUMP END instruction.All JUMP and JUMP END instructions are assigned jump numbers ranging between 00 and 99.
There are two types of jumps. The jump number used determines the type of jump.A jump can be defined using jump numbers 01 through 99 only once, i.e., each ofthese numbers can be used once in a JUMP instruction and once in a JUMPEND instruction. When a JUMP instruction assigned one of these numbers isexecuted, execution moves immediately to the JUMP END instruction that hasthe same number as if all of the instruction between them did not exist. DiagramB from the TR bit and interlock example could be redrawn as shown below usinga jump. Although 01 has been used as the jump number, any number between01 and 99 could be used as long as it has not already been used in a different partof the program.
JUMP and JUMP END require no other operand and JUMP ENDnever has conditions on the instruction line leading to it.00000JMP(04) 0100001Instruction 100002Instruction 2JME(05) 01Diagram B: Corrected with a JumpAddress00000000010000200003000040000500006InstructionLDJMP(04)LDInstruction 1LDInstruction 2JME(05)Operands0000001000010000201This version of diagram B would have a shorter execution time when IR 00000was OFF than any of the other versions.323SectionControlling Bit Status6-4The other type of jump is created with a jump number of 00.
As many jumps asdesired can be created using jump number 00 and JUMP instructions using 00can be used consecutively without a JUMP END using 00 between them. It iseven possible for all JUMP 00 instructions to move program execution to thesame JUMP END 00, i.e., only one JUMP END 00 instruction is required for allJUMP 00 instruction in the program. When 00 is used as the jump number for aJUMP instruction, program execution moves to the instruction following the nextJUMP END instruction with a jump number of 00. Although, as in all jumps, nostatus is changed and no instructions are executed between the JUMP 00 andJUMP END 00 instructions, the program must search for the next JUMP END 00instruction, producing a slightly longer execution time.Execution of programs containing multiple JUMP 00 instructions for one JUMPEND 00 instruction is similar to that of interlocked sections.
The following diagram is the same as that used for the interlock example above, except redrawnwith jumps. The execution of this diagram would differ from that of the diagramdescribed above (e.g., in the previous diagram interlocks would reset certainparts of the interlocked section, however, jumps do not affect the status of any bitbetween the JUMP and JUMP END instructions).00000JMP(04) 0000001Instruction 100002JMP(04) 000000300004Instruction 200005Instruction 300006Instruction 4JME(05) 006-4Address0000000001000020000300004000050000600007000080000900010000110001200013InstructionLDJMP(04)LDInstruction 1LDJMP(04)LDAND NOTInstruction 2LDInstruction 3LDInstruction 4JME(05)Operands00000000000100002000000300004000050000600Controlling Bit StatusThere are seven basic instructions that can be used generally to control individual bit status.
These are the OUTPUT, OUTPUT NOT, SET, RESET, DIFFERENTIATE UP, DIFFERENTIATE DOWN, and KEEP instructions. All of theseinstructions appear as the last instruction in an instruction line and take a bit address for an operand. Although details are provided in 7-8 Bit Control Instructions, these instructions (except for OUTPUT and OUTPUT NOT, which havealready been introduced) are described here because of their importance inmost programs. Although these instructions are used to turn ON and OFF outputbits in the IR area (i.e., to send or stop output signals to external devices), theyare also used to control the status of other bits in the IR area or in other dataareas.6-4-1SET and RESETThe SET and RESET instructions are very similar to the OUTPUT and OUTPUTNOT instructions except that they only change the status of their operand bits forON execution conditions.