This document provides an overview of instruction sets for different families of PLCs, specifically the CP1H/CP1L-Series PLCs. It lists various categories of instructions including sequence input/output, timers/counters, comparisons, data movement, floating-point math, and more. For each category, it provides lists of the specific instruction names and a brief description. The document serves as a reference for the instructions available to program the CP1H/CP1L-Series PLCs.
Original Description:
OMRON
Original Title
CX Programer-Help-Instruction Sets _ CP1H-CP1L Series
This document provides an overview of instruction sets for different families of PLCs, specifically the CP1H/CP1L-Series PLCs. It lists various categories of instructions including sequence input/output, timers/counters, comparisons, data movement, floating-point math, and more. For each category, it provides lists of the specific instruction names and a brief description. The document serves as a reference for the instructions available to program the CP1H/CP1L-Series PLCs.
This document provides an overview of instruction sets for different families of PLCs, specifically the CP1H/CP1L-Series PLCs. It lists various categories of instructions including sequence input/output, timers/counters, comparisons, data movement, floating-point math, and more. For each category, it provides lists of the specific instruction names and a brief description. The document serves as a reference for the instructions available to program the CP1H/CP1L-Series PLCs.
CX Programer-Help-Instruction Sets _ CP1H-CP1L Series
PLC Instruction Sets
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: CP1H/CP1L-Series PLC Instructions Contents NOTATION AND LAYOUT OF INSTRUCTION DESCRIPTION SEQUENCE INPUT SEQUENCE OUTPUT SEQUENCE CONTROL TIMER & COUNTER COMPARISON DATA MOVEMENT DATA SHIFT INCREMENT/DECREMENT SYMBOL MATH CONVERSION LOGIC SPECIAL MATH FLOATING-POINT MATH DOUBLE-PRECISION FLOATING-POINT MATH TABLE DATA PROCESSING DATA CONTROL SUBROUTINE INTERRUPT CONTROL HIGH-SPEED COUNTER/ PULSE OUTPUT STEP BASIC I/O UNIT SERIAL COMMS. NETWORK DISPLAY CLOCK DEBUGGING FAILURE DIAGNOSIS OTHER BLOCK PROGRAMMING TEXT STRING PROCESSING TASK CONTROL MODEL CONVERSION SPECIAL FUNCTION BLOCK For help on any instruction, click on the name in the lists below: Sequence Input Instructions General Description AND And AND LD And Load AND NOT And Not AND TST (350) And Bit Test AND TSTN (351) And Bit Test Not DOWN (522) Condition Off LD Load LD NOT Load Not NOT (520) Not LD TST (350) Load Bit Test LD TSTN (351) Load Bit Test Not OR Or OR LD Or Load OR NOT Or Not OR TST (350) Or Bit Test OR TSTN (351) Or Bit Test Not UP (521) Condition On Sequence Output Instructions DIFD (014) Differentiate Down DIFU (013) Differentiate Up KEEP (011) Keep OUT Output OUTB (534) Bit Out 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 General Description BREAK (514) Break Loop CJP (510) Conditional Jump CJPN (511) Conditional Jump END (001) End FOR (512) For-Next Loops IL (002) Interlock ILC (003) Interlock Clear JME (005) Jump End JME0 (516) Multiple Jump End JMP (004) Jump JMP0 (515) Multiple 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 General 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) MTIM (543) Multi-Output Timer MTIMX (554) Multi-Output Timer (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 =DT, <>DT, <DT, <=DT, >DT, >=DT) (341 to 346) Date Comparison Instructions BCMP (068) Block Compare BCMP2 (502) Enhanced Block Compare CMP (020) Compare CMPL (060) Double Compare CPS (114) Signed Binary Compare CPSL (115) Double Signed Binary Compare MCMP (019) Multi-Word Compare TCMP (085) Table Compare ZCP (845) Area Range Compare ZCPL (116) Area Range Compare Long 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 MOVR (560) Move To Register MOVRW (561) Move Timer/Counter PV To Register MVN (022) Move Not MVNL (499) Double Move Not XCGL (562) Double Data Exchange XCHG (073) Data Exchange XFER (070) Block Transfer XFRB (062) Transfer Bits Data Shift Instructions ASFT (017) Asynchronous Shift Register ASL (025) Arithmetic Shift Left ASLL (570) Double Shift Left ASR (026) Arithmetic Shift Right ASRL (571) Double Shift Right NASL (580) Shift N-Bits Left NASR (581) Shift N-Bits Right NSFL (578) Shift N-Bit data Left NSFR (579) Shift N-Bit data Right NSLL (582) Double Shift N-Bits Left NSRL (583) Double Shift N-Bits Right RLNC (574) Rotate Left Without Carry RLNL (576) Double Rotate Left Without Carry ROL (027) Rotate Left ROLL (572) Double Rotate Left ROR (028) Rotate Right RORL (573) Double Rotate Right RRNC (575) Rotate Right Without Carry RRNL (577) Double Rotate Right Without Carry 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 Math 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 *U (422) Unsigned Binary Multiply *UL (423) Double Unsigned Binary Multiply *B (424) BCD Multiply *BL (425) Double BCD Multiply / (430) Signed Binary Divide /L (431) Double Signed Binary Divide /U (432) Unsigned Binary Divide /UL (433) Double Unsigned 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 BCDS (471) Signed Binary-To-BCD BDSL (473) Double Signed Binary-To-BCD BIN (023) BCD to Binary BINL (058) Double BCD to Double Binary BINS (470) Signed BCD-To-Binary BISL (472) Double Signed BCD-To-Binary COLM (064) Line to Column DMPX (077) 16-to-4 Encoder GRY (474) Graycode Convert HEX (162) ASCII to Hexadecimal LINE (063) Line MLPX (076) 4-to-16 Decoder NEG (160) 2's Complement NEGL (161) Double 2's Complement SIGN (600) 16-Bit To 32-Bit Signed Binary 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 XNRL (613) Double Exclusive NOR XNRW (037) Exclusive NOR XORL (612) Double Exclusive OR XORW (036) Exclusive OR Special Math Instructions APR (069) Arithmetic Process BCNT (067) Bit Counter FDIV (079) Floating Point Divide ROOT (072) Square Root ROTB (620) Binary Root Floating-Point Math Instructions General Description +F (454) Floating-Point Add -F (455) Floating-Point Subtract *F (456) Floating-Point Multiply /F (457) Floating-Point Divide F,<>F,>F, (329 to 334) Single Precision Floating Point Data Compare <=F,<F,>=F ACOS (464) Cosine to Angle ASIN (463) Sine to Angle ATAN (465) Tangent to Angle COS (461) Cosine DEG (459) Radians to Degrees EXP (467) Exponent 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 LOG (468) Logarithm PWR (840) Exponential Power RAD (458) Degrees to Radians SIN (460) Sine SQRT (466) Square Root TAN (462) Tangent Double-precision Floating-point Instructions General Description +D (845) Double Floating Point Add -D (846) Double Floating Point Subtract *D (847) Double Floating Point Multiply /D (848) Double Floating Point Divide =D,<>D,>D, <=D,<D,>=D (335 to 340) Double Precision Floating Point Data Compare ACOSD (855) Arc Cosine (Double Floating Point) ASIND (854) Arc Sine (Double Floating Point) ATAND (856) Arc Tangent (Double Floating Point) COSD (852) Cosine (Double Floating Point) DBL (843) 16-bit To Double Floating Point DBLL (844) 32-bit To Double Floating Point DEGD (850) Radians To Degrees (Double Floating Point) EXPD (858) Exponent (Double Floating Point) FIXD (841) Double Floating Point To 16-bit FIXLD (842) Double Floating Point To 32-bit LOGD (859) Logarithm (Double Floating Point) PWRD (860) Exponential Power (Double Floating Point) RADD (849) Degrees To Radians (Double Floating Point) SIND (851) Sine (Double Floating Point) SQRTD (857) Square Root (Double Floating Point) TAND (853) Tangent (Double Floating Point) Table Data Processing Instructions DIM (631) Dimension Record Table FCS (180) FCS Calculate FIFO (633) First In First Out GETR (636) Get Record Number LIFO (634) Last In First Out MAX (182) Find Maximum MIN (183) Find Minimum PUSH (632) Push Onto Stack SDEL (642) Delete Stack SETR (635) Set Record Location SINS (641) Insert Stack SNUM (638) Read Stack Size SRCH (181) Data Search SREAD (639) Read Stack SSET (630) Set Stack SUM (184) Sum SWAP (637) Swap Bytes SWRIT (640) Write Stack Data Control Instructions AVG (195) Average Value BAND (681) Dead Band Control LMT (680) Limit Control PID (190) PID Control 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 ZONE (682) Dead Zone Control Subroutine Instructions GSBN (751) Global Subroutine Entry GSBS (750) Global Subroutine Call GRET (752) Global Subroutine Return MCRO (099) Macro RET (093) Return SBN (092) Subroutine Define SBS (091) Subroutine Entry Interrupt Control Instructions CLI (691) Clear Interrupt DI (693) Disable Interrupts EI (694) Enable Interrupts MSKR (692) Read Interrupt Mask MSKS (690) Set Interrupt Mask High-Speed Counter/ Pulse Output Instructions ACC (888) Acceleration Control CTBL (882) Register Comparison Table INI (880) Mode Control ORG (889) Origin Search Operation PLS2 (887) Pulse Output PRV (881) High-Speed Counter PV Read PRV2 (882) Pulse Frequency Conversion PULS (886) Pulse PWM (891) Pulse With Variable Duty Ratio SPED (885) Speed Output Step Instructions General Description SNXT (009) Step Start STEP (008) Step Define Basic I/O Unit Instructions 7SEG (214) 7-Segment Display Output DLNK (226) CPU Special I/O Unit Immediate Refresh DSW (210) Digital Switch Input HKY (212) Hexadecimal Key Input IORD (222) I/O Read IORF (097) I/O Refresh IOWR (223) I/O Write MTR (213) Matrix Input SDEC (078) 7-Segment Decoder TKY (211) Ten Key Input Serial Communications Instructions General Description PMCR (260) Protocol Macro RXD (235) Receive RXDU (255) CPU Bus Unit Receive STUP (237) Setup TXD (236) Transmit TXDU (256) CPU BUS Unit Transmit Network Instructions General Description CMND (490) Deliver Command ECHRD (723) PLC Word Read ECHWR (724) PLC Word Write EGATR (721) Get Attribute Single ESATR (722) Set Attribute Single EXPLT (720) General Explicit Message Communication RECV (098) Network Receive SEND (090) Network Send Display Instructions MSG (046) Message Display SCH (047) SEVEN-SEGMENT LED WORD DATA DISPLAY SCTRL (048) SEVEN-SEGMENT LED CONTROL Clock Instructions CADD (730) Calendar Add CSUB (731) Calendar Subtract DATE (735) Clock Adjustment HMS (066) Seconds to Hours SEC (065) Hours to Seconds Debugging Instructions TRSM (045) Data Tracing Failure Diagnosis Instructions FAL (006) Failure Alarm FALS (007) Severe Failure Alarm FPD (269) Failure Point Detect Other Instructions CCL (283) Condition Code Load CCS (282) Condition Code Save CLC (041) Clear Carry FRMCV (284) CS address from CV address STC (040) Set Carry TOCV (285) CS address to CV address WDT (094) Watchdog Timer Refresh Block Programming Instructions General Description BEND (801) Block Program End BPPS (811) Block Program Pause BPRG (096) Block Program Begin BPRS (812) Block Program Restart CNTW (814) Counter Wait CNTWX (818) Counter Wait (BIN Type) ELSE (803) Else EXIT/EXIT NOT (806) Conditional Block Exit IEND (804) Block Branching End IF/IF NOT (802) Block Branching If LEND/LEND NOT (810) Block Loop Control End LOOP (809) Block Loop Control TIMW (813) 100ms Timer Wait (Timer Wait) [BCD Type] TIMWX (816) 100ms Timer Wait (Timer Wait) [BIN Type] TMHW (815) 10ms Timer Wait (High Speed Timer Wait) [BCD Type] TMHWX (817) 10ms Timer Wait (High Speed Timer Wait) [BIN Type] WAIT/WAIT NOT (805) One Scan and Wait Text String Processing Instructions General Description =$ (670) String Equals <>$ (671) String Not Equal <$ (672) String Less Than <=$ (673) String Less Than Or Equals >$ (674) String Greater Than >=$ (675) String Greater Than Or Equals +$ (656) Concatenate String CLR$ (666) Clear String DEL$ (658) Delete String FIND$ (660) Find In String INS$ (657) Insert String LEFT$ (652) Get String Left LEN$ (650) String Length MID$ (654) Get String Middle MOV$ (664) Move String RGHT$ (653) Get String Right RPLC$ (661) Replace In String XCHG$ (665) Exchange String Task Control Instructions TKOF (821) Task Off TKON (820) Task On Model Conversion General Description BCNTC (621) Move Bit (model conversion) COLLC (576) Data Collect (model conversion) DISTC (566) Single Word Distribute (model conversion) MOVBC (568) Move Bit (model conversion) XFERC (565) Block Transfer (model conversion) Special Function Block Instructions GETID (286) Get Variable ID