OMRON CP1E help

Join Date
Dec 2013
Location
Melbourne
Posts
8
Hi Guys

I'm a mechanical engineer who has been tasked with the job of modifying an existing PLC program. Now, while my knowledge is limited I have had a play around with the software and understand the basics of ladder logic. Where I am stuck is the PLC talks to a PC via RS232 using a predefined ASCII set of strings and with that came a few extra steps that got me a bit confused. If you guys can help me understand my existing program I'm sure I can modify it to meet my needs.

https://www.google.com.au/search?q=...w.ni.com%2Fwhite-paper%2F6534%2Fen%2F;368;364

Basically the PLC is used together with the PC to re-program some PCBA's (printed circuit boards) with new software. They are loaded in a test fixture (see link above) and the lid is closed which activates a lid sensor and part present sensors. Then a start button is pressed to start the programming. When programming is over the operator removes the PCB and loads a new PCB.

To start with, can someone please explain to me what D100,H10, &10 means? They are circled in the attached PDF (PLC Program v0.4)

What I think is D100 is the destination that stores the current step, &10 is step 10 maybe? I really don't know what H10 means.

Any help would be most appreciated.

Cheers
 
D100 is data memory 100 - or register if you will - generally used as a storage area and for maths. The data memories are retentive and if you wish to overwrite them you will have to MOV &0000 D100 on a rising edge.
H10 is normally used at bit level - H10 is a channel number. This area is also memory retentive and is really useful if power fails and you wish to restart where you were. At bit level bit 11 in H10 would be addressed as H10.11.
&10 is binary number 10 and is commonly used to set values in timers and counters or to set values in data memories for calculations.
Data memories can just be used as a storage area for anything from steps to values to ASCII characters (I normally use them with ASCII characters to send messages to a GSM modem and hence mobile phone) or for just about anything. Until the latest PLCs came along data memories could not be accessed at bit level but the latest ones even allow this.
How does the PLC talk to the PC? Does it send messages or, more likely, does the PC extract data from the PLC?
 
Thank you so much, that makes much more sense now.

So I'm guessing the previous programmer used increments of &10 on purpose to make calling them easier. Saying that he has &1, &2 and I can't seem to find what he has stored in them. I'll read through the program further.

The PLC talks via RS-232 comm port to the PC. It follows a protocol using ASCII characters such as SP<CR> for Start Program, RD<CR> for ready etc. I have attached a pdf which shows in which sequence the commands are sent from the PC to the PLC and vice-versa.

For example, the pic SM Msg, attached, is the part of the sequence where the Characters SM<CR> is sent to the PC. What is exactly happening here would anyone be able to say? o_O

Sorry if I'm asking simple questions. I'm just trying to figure this out and thanks to the replies, I think I'm getting there.

Cheers guys

SM Msg.jpg
 

Attachments

  • Flow Chart v0.4 Edit.pdf
    181.8 KB · Views: 22
I commonly increment by 10 or even more with analog outputs. It depends how quickly you want to obtain change. I increment sometimes every 30 seconds or 1 or 2 seconds - depends on the process.
I cannot help you with the PC process I believe as I have only ever done that sort of stuff with a SCADA system.
 
PM me if you want additional Local support I live in Narre
I will have a look at the PC info later today
 
Wow thanks guys :)

Honestly, the PC side of the programming is being handled by someone else. This current program works, the only thing is I want to understand the "logic" behind its working. Therefore, I don't know if the PC side matters. I just want to figure the PLC side of the puzzle.

Reason being, this was for a prototype - based on customer feedback we might need to add a few bits and pieces. I want to make sure I have this understood so that I can make the changes without getting stuck too much.

Would one of you guys just be able to explain what is happening in the attachment below? I just want to know the technical side of it. What is being stored where and being used by what for instance. Why is there an OR command in this step? What if the OR was not there?

I just copied a very small section. Is this enough info to explain this step?

Cheers guys

SM Msg.jpg
 
Why is there an OR command in this step? What if the OR was not there?
The Boolean OR (or parallel branch) simply means that when the "Sequencer" D100 is = Step 300 AND H10.00 is ON (SM Message from PC), then do or perform both MOVs in each OR rung branch.

Basically, for PLC ladder rungs, instructions in series perform the AND function, and instructions in parallel perform the OR function.
 
Wow thanks guys :)

Why is there an OR command in this step? What if the OR was not there?

Basically the original programmer needed to overwrite the contents of D100 and D0 when D100 equaled 1 and H10.0 is on.
When these two conditions are met then D100 has 10 written to it and D0 has 2 written to it.
The =(300) Function is a "compare for equals"

1.jpg
 
All the time I thought he wanted to know about the Boolean OR branches! I should have answered the question that he did not ask.
 
Basically the original programmer needed to overwrite the contents of D100 and D0 when D100 equaled 1 and H10.0 is on.
When these two conditions are met then D100 has 10 written to it and D0 has 2 written to it.
The =(300) Function is a "compare for equals"

Thanks Moggie.

I'm sorry if I do not ask the questions the right way but I am not well versed in this subject and I plead ignorance in terminology.

When you say 10 written to it, what you are saying is in the sequence, it writes that the step (given number 10 to identify it) is the current step being performed right?

Thanks heaps guys this is very helpful.

Cheers
 

Similar Topics

Hi there, i am new here. need some help on above. It's been years since i've done plc programming. lost track. now my new boss wanted to make a...
Replies
3
Views
2,179
Hello. I have a problem with omron sysmac cp1e controller delayed start. The controller has been working on the punch press since 2016. Recently...
Replies
1
Views
754
Hi, I need to communicate omron CP1E PLC with SCADA to get the status of the machine. There is no etherent port available but an empty expansion...
Replies
2
Views
1,587
Hello... I remove one CP1E from old useless machine and I would like to use it with something else....but it is locked/have no pass/....How can I...
Replies
0
Views
1,433
hi all i have used a real time clock to turn on a bit after 1 month. the plc was off for this whole month and when i turned on the plc after a...
Replies
2
Views
1,413
Back
Top Bottom