This 3-page technical manual provides an introductory guide to programming Omron PLCs. It discusses Omron addressing schemes for inputs, outputs, memory, timers, counters, and more. It also describes common ladder programming blocks like timers, counters, jumps, and subroutines. Finally, it explains how to interface an Omron PLC with SCADA software by setting up I/O drivers and defining tags for monitoring inputs/outputs and controlling the PLC. The document was prepared in March 2012 by Sanjay AJ for educational purposes.
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365
Technical Manual: Omron PLC Programming Guide
1. Technical Manual
Omron
An introductory guide
Note: A lot of effort went in to preparing this guide
So use it as you deem fit but remember to credit the author.
Date : March 2012
Prepared by : Sanjay AJ
Dept of Electrical and Electronics Engineering
Class of 2012 - Velammal Engineering College
2. Contents
Omron Addressing............................................................................... 3
OMRON PLC’s ...................................................................................... 4
CP1E ................................................................................................. 5
SIMULATION:................................................................................. 5
Common ladder programming blocks ................................................. 6
Interfacing PLC with SCADA............................................................... 10
Monitoring PLC with SCADA ........................................................ 10
Control of PLC by SCADA ............................................................. 10
3. Omron Addressing
Input
0.0 , 0.01, ...... 0.11
1.0 , 1.01, ...... 1.05
Output
100.00, 100.01,............ 100.07
101.00, 101.01,.... 101.03
Memory
2.00, 2.01, ..... 2.11
3.00, 3.01, ......3.11
.
.
.
.
.
.
99.0, 99.1 ,......... 99.11
Timer
Addresses available from 0 to 255
-Syntax:
TIM<space> ADDRESS<space> #TIMEDELAY
Counter
Addresses available from 0 to 255
-Syntax:
CNT<space> ADDRESS<space> #NO.OFCOUNTS
UDCounter
Addresses available from 0 to 255
-Syntax:
CNTR<space> ADDRESS<space> #NO.OFCOUNTS
4. Jump
Addresses available from 0 to 78
-Syntax:
JMP<space># ADDRESS
JME<space># ADDRESS
Subroutine
Addresses available from 0 to 124
-Syntax:
SBS<space># ADDRESS
SBN<space># ADDRESS
RET
OMRON PLC’s
Let us consider the models– CP1E and CPM2A.
Model no. CP1E
18 I/P’s 12 O/P’s
Programming software: CX programmer for CP1E (ver 1.0)
Communication cable: USB Communication cable
Model no. CPM2A [No simulation available only Online
mode]
24 I/P’s 16 O/P’s
Programming software: CX programmer (ver 6.0)
Communication cable: RS-232
5. CP1E
File New
-Ladder programming is done between Phase rail and Neutral Rail
-Device name and comments are arbitrary
-Rung no. and element no. are displayed on the phase rail side
The addressing is done as 0.00 for input where 0 is the channel and 00 refers to
output address
And for output 100.00 , 100 is the channel and 00 refers to output address
SIMULATION:
Simulation Simulation Start (or use Ctrl+Shift+W)
6. Common ladder programming blocks
Timer:
-Use New Instruction block to include the timer syntax and create timer block
- Timer switch must be denoted as switch for example as ‘T1’ during programming.
This example illustrates that the load switches off after a certain delay after the switch s1 turns off.
Timer syntax: TIM 1 #50 where #50 denotes 5 seconds (hence always in multiples of 10)
Counter:
The following counter is an UpCounter i.e it counts from max count to min(0) and
enables the switch
To use it as a DOWN COUNTER replace the counter contact N.O with an N.C
1. Create New Instruction block
2. Input syntax: CNT 000 #5 (where 5 is the count; 000-255 is the list of available addresses)
3. Give RESET contact
4. Then proceed to next rung for placing counter contact (switch). Use C<followed by counter address>
to denote it.
7. -Reversible Counter/ Up-Down Counter:
Has both Up counter and down counter.
Similar to counter except syntax begins with CNTR
Exercise:
Start, with push button ON
After 10 Count, LOAD ON
Same sensor after another 10 count LOAD OFF
Here, C000 switch is also used as reset so same sensor used for counting/switching Load ON can be
used for counting again and switching Load OFF.
8. Jump:
-for skipping problems in process loop
- In above example, if JMP is not ON, then L3 and L4 will not work like as it was meant to.
9. Using Subroutines:
-for skipping processes/branching to different set of processes
Syntax: SBS #0
Here, SBS is instruction and 0 is address
Insert New section (for creating new subpages i.e. other routines)
Place SBN instruction in section 2 then end the subprogram with RET
Subroutine:
For L_sub to function properly, the SBS in section1 must be ON.
10. Interfacing PLC with SCADA
In Omron,
PLC work Online
PLC Transfer PC to PLC
- I/O drivers are required for interfacing SCADA to PLC
Eg: In this case, it is OMRON HL (Host Link)
Monitoring PLC with SCADA
Tag Type: I/O discrete
Application Name (I/O Driver name): Omron Host Link
In Tag name dictionary,
1. Type: I/O discrete
2. Click Access
Type name: New (as entered in OMRON HL)
Select DDE
3. Enter Item (Channel name and address):
5 digits are required in item so add ‘o’ s before channel name.
For example: for 2.00, input item as 00200
Control of PLC by SCADA
Tag Type: I/O discrete
Application Name (I/O Driver name): Omron Host Link
- OR memory with switches to be indicated in SCADA and used for controlling
- Then define in Intouch under type: I/O Discrete with item number for eg: 00200
11. Document provided for educational purposes only. Author allows free distribution and
non-profit use of this document in educational settings.
Cite your sources.
Sanjay AJ
Digitally signed by Sanjay AJ
DN: cn=Sanjay AJ, o, ou,
email=sanjayaj@ieee.org, c=IN
Date: 2012.09.25 11:00:49 +05'30'