leem2209
Lifetime Supporting Member
I have 3 PLC's as part of a group of machines.
A "Transport" section to "Machine 1" and "Machine 2".
Each has a CPU315-2 DP.
I want to transfer a 70 byte data block from "Machine 1" to "Transport" and same for "Machine 2".
There are DPP couplers to give handshake signals but they are set up for only 11 bytes Input and 11 bytes Output. Expanding this will affect the I/O addressing of other remote I/O units on the profibus.
All the PLC's are connected by MPI. There is one common connection point on the front of the "Transport" panel and I can connect with the PG to each of the PLC's through this.
MPI addresses are "MC1plc=2" "MC1touchscreen=1" "MC2plc=7" "MC2touchscreen=9" "TransPlc=3" "TransportCP=4" "TransportTouchscreen=5"
So I thought I'd be able to set up X_GET twice in the "Transport" PLC to retrieve the required data from "Machine1" and "Machine2"
Set up as follows:
REQ = M2.5 (1 sec clock)
CONT = M0.1 (Always Off)
DEST_ID = W#16#2 (For Machine 1, MPI 4) W#16#7 (For Machine 2, MPI 7)
VAR_ADDR = P#DB23.DBX0.0 Byte 70
RET_VAL = #mc1_retval
BUSY = #mc1_busy
RD = P#DB100.DBX30.0 Byte 70 (MC1) P#DB100.DBX100.0 Byte 70 (MC2)
My RET_VAL is showing 28674/28672
But data is not transferred into DB100 in my "Transport" PLC. I've tried writing each DB to separate datablocks too but same result.
I was hoping to try X_PUT in "Machine1" and "Machine2" but ran out of time.
I am also thinking of trying X_SEND and X_RCV but if X_GET doesn't work then I assume X_SEND, X_RCV and X_PUT won't work either.
Any suggestions?
A "Transport" section to "Machine 1" and "Machine 2".
Each has a CPU315-2 DP.
I want to transfer a 70 byte data block from "Machine 1" to "Transport" and same for "Machine 2".
There are DPP couplers to give handshake signals but they are set up for only 11 bytes Input and 11 bytes Output. Expanding this will affect the I/O addressing of other remote I/O units on the profibus.
All the PLC's are connected by MPI. There is one common connection point on the front of the "Transport" panel and I can connect with the PG to each of the PLC's through this.
MPI addresses are "MC1plc=2" "MC1touchscreen=1" "MC2plc=7" "MC2touchscreen=9" "TransPlc=3" "TransportCP=4" "TransportTouchscreen=5"
So I thought I'd be able to set up X_GET twice in the "Transport" PLC to retrieve the required data from "Machine1" and "Machine2"
Set up as follows:
REQ = M2.5 (1 sec clock)
CONT = M0.1 (Always Off)
DEST_ID = W#16#2 (For Machine 1, MPI 4) W#16#7 (For Machine 2, MPI 7)
VAR_ADDR = P#DB23.DBX0.0 Byte 70
RET_VAL = #mc1_retval
BUSY = #mc1_busy
RD = P#DB100.DBX30.0 Byte 70 (MC1) P#DB100.DBX100.0 Byte 70 (MC2)
My RET_VAL is showing 28674/28672
But data is not transferred into DB100 in my "Transport" PLC. I've tried writing each DB to separate datablocks too but same result.
I was hoping to try X_PUT in "Machine1" and "Machine2" but ran out of time.
I am also thinking of trying X_SEND and X_RCV but if X_GET doesn't work then I assume X_SEND, X_RCV and X_PUT won't work either.
Any suggestions?