Sign in to follow this  
Followers 0
Gavster

Ethernet Peer 2 Peer Issue (SLC 5/05)

4 posts in this topic

Hi Folks, I'm new to this forum and have an issue for which I would like to pick your collective brains! I have 4 x SLC5/05 CPUs which are connected together using ethernet. The 4 CPUs and my laptop are all connected to a switch which is operating at 10M. All CPUs can be communicated with via RS Linx with no probs. These PLC control turbo blowers which are in a group and they designate their Master Blower based on the lowest hours run etc. This means that they all run the same code and read from each other's registers to ensure that if another blower was to assume Master then it's code would be up to date. The CPUs all read from each other via a MSG command. Before downloading the code to each CPU I have entered the IP address into the relevant box in the MSG config screen. Once downloaded and running all MSG commands return a comms error "Connection refused by host". The IP address is only shown as either 19x or 19 on the MSG config screen which I assume must be causing the comms error as this is invalid. If I then save the code online I have to re-enter all 4 IP addresses before RS Logix 500 will permit it to be downloaded once again. Could anyone shed any light on this as I am at loss and have never seen this before. The IP addresses are as follows: Laptop 192.168.1.1 CPU 1 192.168.1.2 CPU 2 192.168.1.3 CPU 3 192.168.1.4 CPU 4 192.168.1.5 All subnet masks are set 255.255.255.0 I've attached an example of how I am enabling the MSG instruction and also the config screen. Sorry for the War & Peace but I am at a loss - HELP!!!!!!!!! Gavin Edited by Gavster

Share this post


Link to post
Share on other sites
The destination IP address is stored in the 51-word Message Control Block, in your case N80:0 through N80:50. Did you accidentally enter N80:0 for all four of the MSG instructions ? Could any other logic in the program be writing to the elements of N80:0-50 that contain the IP address ?

Share this post


Link to post
Share on other sites
I think I see the problem on Rung 2. That rung copies the first byte of the MSG control block (N80:0) into the sixteenth word of the MSG control block (N80:15). This logic was probably copied from a program that uses a non-Ethernet channel for messaging, because the control block for a non-Ethernet message is only 14 words long. It would be valid in such a program to make a copy of some of the status bits of the MSG control block into another register. A message that uses the Ethernet port has more configuration information than a message that uses DF1 or DH485 or DH+, so the MSG control block is 51 words long. By coincidence, word 15 of that control block is the first word of the IP address, and Rung 2 is writing over it. Cross-reference to see if N80:15 or any subelements of it are used in the program. If not, you can delete Rung 2 (and the similar rungs for the other messages) and the program might work as desired. I noticed another unusual construct on Rung 3, where the logic is controlling the /DN bit directly. You should never directly set or un-set the /DN bit. The messaging logic might need an overhaul on this program. The Forum includes quite a few users who are very experienced with SLC messaging.

Share this post


Link to post
Share on other sites
Other thing that bothers me is your selection of IP address 192.168.x.x If you ever have taken a switch out of the box it always defaults to this address range. If anyone puts a default IP device on this network, my guess is that you would have problems.

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!


Register a new account

Sign in

Already have an account? Sign in here.


Sign In Now
Sign in to follow this  
Followers 0