Every PLC has a set of special instructions which can be used for programming. Different types of PLC have different abilities and this is reflected in the instructions available. Some instructions are common across all PLCs. PLCs can be split into 3 families - the instruction sets for each are described below: CP1E-Series PLC Instructions Instruction List NOTATION AND LAYOUT OF INSTRUCTION DESCRIPTIONS
SEQUENCE INPUT SEQUENCE OUTPUTS SEQUENCE CONTROL TIMER & COUNTER COMPARISON DATA MOVEMENT DATA SHIFT INCREMENT/DECREMENT SYMBOL MATHS CONVERSION LOGIC SPECIAL MATHS FLOATING-POINT MATHS TABLE DATA PROCESSING DATA CONTROL SUBROUTINE INTERRUPT CONTROL STEP BASIC I/O UNIT SERIAL COMMS. CLOCK FAILURE DIAGNOSIS PULSE INSTRUCTIONS OTHER For help on any instruction, click on the name in the lists below: Sequence Input Instructions COMMON DESCRIPTION
AND And AND LD And Load AND NOT And Not DOWN (522) Condition Off LD Load LD NOT Load Not NOT (520) Not OR Or OR LD Or Load OR NOT Or Not UP (521) Condition On Sequence Output Instructions DIFD (014) Differentiate Down DIFU (013) Differentiate Up KEEP (011) Keep OUT Output OUT NOT Output Not RSET Reset RSTA (531) Multiple Bit Reset RSTB (533) Bit Reset SET Set SETA (530) Multiple Bit Set SETB (532) Bit Set TR TR Bits Sequence Control Instructions COMMON DESCRIPTION
BREAK (514) Break Loop CJP (510) Conditional Jump END (001) End FOR (512) For-Next Loops IL (002) Interlock ILC (003) Interlock Clear JME (005) Jump End JMP (004) Jump MILC (519) Multiple Interlock Clear MILH (517) Multiple Interlock (Holds Differential Flags) MILR (518) Multiple Interlock (Updates Differential Flags) NEXT (513) For-Next Loops NOP (000) No Operation Timer and Counter Instructions COMMON DESCRIPTION
CNR (545) Reset Timer/Counter CNRX (547) Reset Timer/Counter (BIN Type) CNT Counter CNTR (012) Reversible Counter CNTRX (548) Reversible Counter (BIN Type) CNTX (546) Counter (BIN Type) TIM 100ms Timer (Timer) [BCD Type] TIMH (015) 10ms Timer (High Speed Timer) [BCD Type] TIMHX (551) 10ms Timer (High Speed Timer) [BIN Type] TIML (542) Long Timer TIMLX (553) Long Timer (BIN Type) TIMX (550) 100ms Timer (Timer) [BIN Type] TMHH (540) 1ms Timer (Ultra-High-Speed Timer) [BCD Type] TMHHX (552) 1ms Timer (Ultra-high-speed Timer) [BIN Type] TTIM (087) Totalising Timer TTIMX (555) Totalising Timer (BIN Type) Comparison Instructions = (300) Equal <> (305) Not Equal < (310) Less Than <= (315) Less Than Or Equal > (320) Greater Than >= (325) Greater Than Or Equal =L (301) Double Equal <>L (306) Double Not Equal <L (311) Double Less Than <=L (316) Double Less Than Or Equal >L (321) Double Greater Than >=L (326) Double Greater Than Or Equal =S (302) Signed Equal <>S (307) Signed Not Equal <S (312) Signed Less Than <=S (317) Signed Less Than Or Equal >S (322) Signed Greater Than >=S (327) Signed Greater Than Or Equal =SL (303) Double Signed Equal <>SL (308) Double Signed Not Equal <SL (313) Double Signed Less Than <=SL (318) Double Signed Less Than Or Equal >SL (323) Double Signed Greater Than >=SL (328) Double Signed Greater Than Or Equal BCMP (068) Block Compare CMP (020) Compare CMPL (060) Double Compare CPS (114) Signed Binary Compare CPSL (115) Double Signed Binary Compare TCMP (085) Table Compare ZCP (845) Area Range Compare ZCPL (116) Area Range Compare Long Date Comparison Instructions (341~346: =DT, <>DT, <DT, <=DT, >DT, >=DT) Data Movement Instructions BSET (071) Block Set COLL (081) Data Collect DIST (080) Single Word Distribute MOV (021) Move MOVB (082) Move Bit MOVD (083) Move Digit MOVL (498) Double Move MVN (022) Move Not XCHG (073) Data Exchange XFER (070) Block Transfer XFRB (062) Transfer Bits Data Shift Instructions ASL (025) Arithmetic Shift Left ASR (026) Arithmetic Shift Right NASL (580) Shift N-Bits Left NASR (581) Shift N-Bits Right NSLL (582) Double Shift N-Bits Left NSRL (583) Double Shift N-Bits Right ROL (027) Rotate Left ROR (028) Rotate Right SFT (010) Shift Register SFTR (084) Reversible Shift Register SLD (074) One Digit Shift Left SRD (075) One Digit Shift Right WSFT (016) Word Shift Increment/Decrement Instructions ++ (590) Increment Binary ++L (591) Double Increment Binary -- (592) Decrement Binary --L (593) Double Decrement Binary ++B (594) Increment BCD ++BL (595) Double Increment BCD --B (596) Decrement BCD --BL (597) Double Decrement BCD Symbol Maths Instructions + (400) Signed Binary Add Without Carry +L (401) Double Signed Binary Add Without Carry +C (402) Signed Binary Add With Carry +CL (403) Double Signed Binary Add With Carry +B (404) BCD Add Without Carry +BL (405) Double BCD Add Without Carry +BC (406) BCD Add With Carry +BCL (407) Double BCD Add With Carry - (410) Signed Binary Subtract Without Carry -L (411) Double Signed Binary Subtract Without Carry -C (412) Signed Binary Subtract With Carry -CL (413) Double Signed Binary Subtract With Carry -B (414) BCD Subtract Without Carry -BL (415) Double BCD Subtract Without Carry -BC (416) BCD Subtract With Carry -BCL (417) Double BCD Subtract With Carry * (420) Signed Binary Multiply *L (421) Double Signed Binary Multiply *B (424) BCD Multiply *BL (425) Double BCD Multiply / (430) Signed Binary Divide /L (431) Double Signed Binary Divide /B (434) BCD Divide /BL (435) Double BCD Divide Conversion Instructions ASC (086) ASCII Convert BCD (024) Binary to BCD BCDL (059) Double Binary to Double BCD BIN (023) BCD to Binary BINL (058) Double BCD to Double Binary DMPX (077) 16-to-4 Encoder HEX (162) ASCII to Hexadecimal MLPX (076) 4-to-16 Decoder NEG (160) 2's Complement Logic Instructions ANDL (610) Double Logical AND ANDW (034) Logical AND COM (029) Complement COML (614) Double Complement ORW (035) Logical OR ORWL (611) Double Logical OR XORL (612) Double Exclusive OR XORW (036) Exclusive OR Special Maths Instructions APR (069) Arithmetic Process BCNT (067) Bit Counter Floating-Point Maths Instructions COMMON DESCRIPTION
+F (454) Floating-Point Add -F (455) Floating-Point Subtract *F (456) Floating-Point Multiply /F (457) Floating-Point Divide Single Precision Floating Point Data Compare (329~334:=F,<>F,>F,<=F,<F,>=F) FIX (450) Floating to 16-bit FIXL (451) Floating to 32-bit FLT (452) 16-bit to Floating FLTL (453) 32-bit to Floating FSTR (448) Floating Point to String FVAL (449) String to Floating Point Table Data Processing Instructions FCS (180) FCS Calculate SWAP (637) Swap Bytes Data Control Instructions AVG (195) Average Value PIDAT (191) PID Control With Auto-Tuning SCL (194) Scaling SCL2 (486) Signed Binary to BCD Scaling SCL3 (487) BCD to Signed Binary Scaling TPO (685) Time-Proportioning Output Subroutine Instructions RET (093) Return SBN (092) Subroutine Define SBS (091) Subroutine Entry Interrupt Control Instructions COMMON DESCRIPTION
CLI (691) Clear Interrupt DI (693) Disable Interrupts EI (694) Enable Interrupts MSKS (690) Set Interrupt Mask Step Instructions COMMON DESCRIPTION