bmw_apprentice
Member
Hi,
We have recently been putting in an economy mode onto our equipment and this has involved a lot of cross messaging between our PLCs. Specifically from PLC5s to SLC500. We have had no real issues up to this point but yesterday we had one that seemed very very strange.
The message block was setup to be sent when a NEQ function was true. The message block was enabling, sending and returning the done bit. All looked well. We went to the destination PLC and looked in the register where we were expecting the data and found no data was present. After 30 minutes of tearing our hair out we found that the message was actually arriving at the destination but instead of being in the 50th word of the register where we were requesting it be sent it was appearing in the 1st word. Luckily this word was not used or we could have had some serious bells ringing.
Even when we changed register completely to an unused spare the data was still sent to word 0 of the original register.
Effectively we were triggering the message for one scan only, having looked into this further it seems that 'power' should be held onto the message block until sending is complete (and how we have got working now) but why does it send to that particular register and not return an error of some sort? This seems very dangerous and potentially lethal.
The setup is in the attached photos as well as the rung controlling it.
We are communicating over ethernet.
To throw something else in the mix, we have another message setup in exactly the same configuration talking to a different SLC500 that works just fine in this setup (we have however changed it to hold on until the message is done as per the other one)
Would the fact that the message is only active for a single scan affect this?
Is it the setup of the message block?
What the hell is going on????
Sorry for the war and peace description, trying to get every piece of information we have to you guys.
We have recently been putting in an economy mode onto our equipment and this has involved a lot of cross messaging between our PLCs. Specifically from PLC5s to SLC500. We have had no real issues up to this point but yesterday we had one that seemed very very strange.
The message block was setup to be sent when a NEQ function was true. The message block was enabling, sending and returning the done bit. All looked well. We went to the destination PLC and looked in the register where we were expecting the data and found no data was present. After 30 minutes of tearing our hair out we found that the message was actually arriving at the destination but instead of being in the 50th word of the register where we were requesting it be sent it was appearing in the 1st word. Luckily this word was not used or we could have had some serious bells ringing.
Even when we changed register completely to an unused spare the data was still sent to word 0 of the original register.
Effectively we were triggering the message for one scan only, having looked into this further it seems that 'power' should be held onto the message block until sending is complete (and how we have got working now) but why does it send to that particular register and not return an error of some sort? This seems very dangerous and potentially lethal.
The setup is in the attached photos as well as the rung controlling it.
We are communicating over ethernet.
To throw something else in the mix, we have another message setup in exactly the same configuration talking to a different SLC500 that works just fine in this setup (we have however changed it to hold on until the message is done as per the other one)
Would the fact that the message is only active for a single scan affect this?
Is it the setup of the message block?
What the hell is going on????
Sorry for the war and peace description, trying to get every piece of information we have to you guys.