SLC 5/04 communication over DH+

PLCNovel,

See if this meets your needs.

You have a PLC in the field (call it PLC B) with some data scattered around in various data files that another PLC (call it PLC A) needs to access. PLC A is the one that will be doing the reading and writing. PLC B just has to provide the data to PLC A and accept some data from PLC A. I think that is what you have described so far. The question is, what do you have to do in PLC B?

First make two lists. One of all the data addresses that you have to provide (read from PLC A) and one of all the data that PLC A is providing (write from PLC A). It would be a good idea to let us see that list. For the sake of simplicity, I will assume that none of the data is floating point (file type F). So all the data you need to deal with is of type B or N.

Pick an unused integer file (type N), say file N10. It would be nice if you can use the same file in both PLCs. Allocate a chunk of file N10 for data from PLC A and another chunk for data to PLC A. I generally allocate at least 10 words each way as a minimum. In reality you can allocate up to 100 words in each direction and the message performance is essentially the same.

Arrange all the data in a nice neat package in this file. Use Excel to layout where each bit and word of your data gets assigned in file N10. Once you have it all laid out, you can add a group of rungs to move the data into and out of file N10. For words of data, you use a MOV instruction. For bits of data, you use an XIC and OTE instruction for each bit (contact and coil). It's a bit tedious, but if you want to move scattered data in a single message, that's what it takes.

Give the person responsible for programming PLC A a copy of your Excel sheet and he will have all the info he needs to decode the N10 file on his end.

There is one thing you mentioned in your first message that causes me a little concern. You said some of the data is R/W. You can do this, but it will take extra logic in PLC A. Basically, each individual point can do one or the other at any given time, but it needs to decide which it is doing at the moment. That might be the responsibility of the person programming PLC A. For you it may be as simple as R/W data just goes in both chunks of data, but you should find out.

Show us the list of data, I'm sure there will be more suggestions once we see what you are actually dealing with.

Good luck,
 
Hi mellis:
Thank you very much for your such a basic level explanation which a person like me will glad to go through easily. Ok yes you have understood my problem correctly. Yes i do have a few R/W addresses from where you can read and write from. I do have a little concerns on what you explained:

Your quote "First make two lists. One of all the data addresses that you have to provide (read from PLC A) and one of all the data that PLC A is providing (write from PLC A). It would be a good idea to let us see that list. For the sake of simplicity, I will assume that none of the data is floating point (file type F). So all the data you need to deal with is of type B or N."
SO basically by creating two list you mean to say seperate the R only and R/W only addresses. Becasue client has given us a excell sheet full of addresses which they want to msg back and forth?

Your quote "Pick an unused integer file (type N), say file N10. It would be nice if you can use the same file in both PLCs. Allocate a chunk of file N10 for data from PLC A and another chunk for data to PLC A"

So You want me to pick an integer file for both "N" or "B" type data files, or seperate datafiles. I have addresses from 'B', N, C files.

Finally your quote "Arrange all the data in a nice neat package in this file. Use Excel to layout where each bit and word of your data gets assigned in file N10. Once you have it all laid out, you can add a group of rungs to move the data into and out of file N10. For words of data, you use a MOV instruction. For bits of data, you use an XIC and OTE instruction for each bit (contact and coil). It's a bit tedious, but if you want to move scattered data in a single message, that's what it takes."

This means i have to do some addition in the existing program for PLC B? right? if yes, then whereand what code i have to put in the existing logic.

Once again thank you very much for your kid help
 
plcnovel said:
SO basically by creating two list you mean to say seperate the R only and R/W only addresses. Becasue client has given us a excell sheet full of addresses which they want to msg back and forth?

Yes

plcnovel said:
So You want me to pick an integer file for both "N" or "B" type data files, or seperate datafiles. I have addresses from 'B', N, C files.

Correct again seperate N,C & B's for messaging and try and keep the same addresses in both master and slave processor.

Remember max MSG length is 103 so if you have more than 103 N's then youll have to split them up.

plcnovel said:
This means i have to do some addition in the existing program for PLC B? right? if yes, then whereand what code i have to put in the existing logic.

Correct, put the code in the clients plc i would use a subroutine to seperate it depending on how the ladder was written in the plc.


Can you post the excel cheet with all your N,C & B's ?
 
Hi Dave
Here is the list attached for the addresses i want to read and write. If you can also help me out about the code, that i need to add for the movement of data it will be really a favor. Thanks in advance
 
Is there an HMI

Is there some sort of HMI for the "Plant" PLC? If so why not just add your plc to the HMI? It sounds like you are reading your plc with a plant plc, and then there must be some type of interface between the plant plc and the operators.
 
Hi Ken
Well my plc has a operator interface (PV1000), but the client wants to read and write specific data addresses(included excel sheet) from a plant plc (remote plc) directly from my plc. I hope it clears you the situation. Thanks very much for your reply though.
 
OK, lets say i create a data file N30 for all read msges for the remote plc. My question is, if the remote plc wants to read data N7:0, how would i map the value of N7:0 to N30:0 in the data table so that the remote plc can read this value from N30:0? my question may sound pretty basic, but i am still in the learning curver? any ideas will be appreciated
 
I'm still a little unclear on what you are asking, but I think you are talking about a MOV, open your help file in rslogix and look at the MOV instruction, you would need to move the all the other files to this file N:30
 
You have some really good advice here in the above posts, including one post from mellis

You have your Excel spreadsheet and all the variables you talk of are pretty much in a continuous list which makes it real easy.

Do you basically want someone here to write the logic for you ?

Or will you take a stab at it yourself and post some code here so we can guide you ?
 
Hi Dave
Thanks for your reply. As per Mellis guidance, i am trying to divide the attached spreedsheet in to R and R/W addresses. Once i do that, then i get lost (due to lack of programming experience and newer to this field) where to go from there. If you can guide me with the logic and creating and assigning data files based on Mellis approach i would really appreciate your efforts. I know i am asking too much but i am stuck right now as the deadline is coming tomorrow, so please try to help me as much as you can. Thanks in advance
 
Are you sure you aren't doing this for a college project ?

Well heres a bit of code to get you underway,

The sample reads data B10:0 through to B10:12 (ALL BITS) from the SLAVE processor

The program is stored in the MASTER Processor

I havent moved the bits in the slave processor to another data register as i saw little point and you are unclear in the problem. So my program takes all of

B10:0/0 - B10:0/15 through to B10:12/0 - B10:12/15 from the SLAVE processor

and reads these bits directly into the same B10 registers in the MASTER Processor.

There may or may not be mistakes within the program.

THIS IS UNTESTED!

You said you had logix 500 so i have posted the .rss files in a zip file

Basically its just a modified version of the AB link i made in an earlier post.
 
Hi Dave
Thank you very much for helping me out. No i am not doing this project for college. I am working in the industry and just got a new job, thats why i am not that experienced. I will definitely take a look at your project file. The reason of moving the data to another data register was to use less msg instructions as per Mellis said. Another thing, For testing of this program, i have two processors (SLC L541) but i have only one rack and one pwer supply (1746-P3), i was just wondering is that a possibility if i put both processors in the same rack (slot 0 or 1) and use one sinle power supply? Will it work? if yes, do i have to do some configuration to make it work? thank you very much for your help
 
plcnovel said:
For testing of this program, i have two processors (SLC L541) but i have only one rack and one pwer supply (1746-P3), i was just wondering is that a possibility if i put both processors in the same rack (slot 0 or 1) and use one sinle power supply? Will it work? if yes, do i have to do some configuration to make it work? thank you very much for your help

NOPE, you need

TWO PROCESSORS
TWO RACKS
TWO PSU's
 

Similar Topics

Hello, I need to connect with a SLC 5/01 (1747-L511) in order to see what is the current program that it has, since I don't have a lot of...
Replies
5
Views
708
After I tried wiring, I used computer program communication to read the PLC N value, but received a NAK signal. And the DL3500 CHA light keeps...
Replies
0
Views
427
Hi all--figured I'd knock the rust off minds here; Situation--We're resurrecting an old Alvey Palletizer from the grave. It came w/o a controller...
Replies
2
Views
946
Hey everyone, I am trying to communicate with a Slc 5/04 plc using the 1747-cp3 cable, RS232-DF1 driver and a laptop. I tried using a serial to...
Replies
13
Views
3,099
Hey everyone. This is my first post here. I am newer to the automation world and have had an issue while trying to communicate with an SLC 5/02. I...
Replies
13
Views
5,439
Back
Top Bottom