5580 PLC to VideoJet printer

"does not work" is not a really helping anyone.
You need to compare apples to apples: compare the actual "working" packet data on the wire with "not working" and find a difference. You can use a switch in port mirror mode or ETAP in Debug mode to trace that data and compare.

What I mean by doesn't work, is the printer ignores the message if sent by the PLC in TCP client mode, but responds fine to PuTTy. The eweb and all other server test apps all respond fine to both PLC and PuTTy.

If PuTTy is also using TCP even in RAW mode, then I'll try again to capture both packets and see what's different. BUT when I use PuTTy RAW mode, then wireshark does not see a single thing for that port number. I have no way to capture something it doesn't see. I know nothing else is using port 1024.

You said the previously captured packet from the PLC looked fine, that's all I'm doing with both devices but one of them is being ignored by the printer and the other isn't.

I need to find out somehow what is different with PuTTy RAW....but wireshark sees nothing when the filter is set to that IP address and port, or even just the port itself with no IP..
 
Ok, I have managed to capture a PuTTy RAW packet from one laptop to another: (data sent was 123456)

y4mLZHXdD-bpyerYwEUa8agZF3MHriFMlfKzMJvCsIT3Fqm377xjmb3ZRM4qEKDnxgTBtRZqQL5Gjj1j9tM3CRrX39HWkSgmQvXBgiFFKE5jxVB6RyJBpy6LUjYXcX94F-QhH10UmLNUqlz-UXwI0Z24asloZQaccfOtNhWXYrb_PpmaAwwvEyV-8gpCDXud5Wn
 
Now here for comparison is a message sent from the PLC in TCP mode, message is JDA|Field011=000000|CR

y4mP3jyFij_SwXQkIoQXqo2248tm4H6MIHQhHtP0KLWmJd0FukX6mvj0F8bxI0PJ9ARizIkX6rFXp773gw3DqtHPEsjhgUi2i2rwMsxaAHdm4A-BtzZ3CEvq7emnaEp1onEUrQqpUNbZeopLLipwm5TqdOcOrXvq3D43bKdpDL2jJf5vV7TYNx_zdlP-5jKFBuS
 
Not apples-to-apples, because we need to compare to a "working" frame from Putty.
This can be done using an ETAP and another PC.

What I see is that printer accepts TCP connection, PLC sends data correctly but printer never responds. This is why a "working" capture is necessary.
 
Here is RAW frame sent by PUTTY.
As you see this is a TCP and properly captured by Wireshark.
You need to run Wireshark in Administrator mode.

In Putty I used
JDA|Field011=000000|^M

tcp1.PNG
 
Last edited:
Allen Bradley ControLogix Socket Communication

@Subsea7 - Did you ever get this running? I am in the same spot trying to get a 9550 Videojet communicating through ControlLogix MSG. Any help would greatly be appreciated.
 
Hi there, I did get code together which sends messages to the printer over TCP msg format but the printer ignores it. I never got to the bottom of the difference when using PuTTy (which works) and TCP from an AB L83 which doesn't work. I ended up speaking to the OEM of the printer who said they have no idea and could supply an ethernet to rs232 gateway like AnyBus or Prosoft, so I went to them instead. Costs a few bucks but it works. I can't remember the exact model as I've moved onto several other projects since but speak to HMS Networks as the AnyBus adaptors are brilliant. They also have a native AOI so you can add the card to the PLC IO configuration and write directly to a tag which is converted by the gateway in both directions.
 
Answer

@subsea7
Got sockets working. Problem was with the Carriage Return.
Got to where you enter your text and look on the right side. You will see $r means carriage return. Then apply.
So it will be "your_text_here$r."

SocketReturn.png
 
Was this in Studio 5000 buddy? I have to take another look at this issue. It's come up again with management as a request.
 
I went back to my original code, and it was already using the $r carriage return at the end of the message, did you use UDP or TCP? I am going to try this again. From memory I was trying UDP as Videojet suggested using raw sockets - and I was getting an ACK returned from the printer but nothing changed on the screen. The string I was sending was

JDA|Field011=000000|$r

Is this the same as the string you send? (Format at least with the pipe symbols)
 
TCP Sockets. Need to make sure the ethernet card can handle sockets.
Also, make sure your ports are setup correctly.
Your string looks correct though I do no not use this command.
I write block of data using SLA|...|$r.

Placard 2 State
0 - Shut Down
1 - Starting Up
2 - Shutting Down
3 - Running
4 - Offline

To start the printer, write SST|1|$r then SST|3|$r.
To stop the printer, write SST|2|$r.
This is what i started testing with to get it working.

Regards!
 

Similar Topics

I have a question. I work in a very large plant and this one (of many hundreds of control cabinets) contains one 5580 (1756-L83E), two 1756-L73...
Replies
6
Views
205
Hello Everyone, I am looking for AB 1765-L84ES Guard Logix 5580 Safety Controller Online. For testing my program with PLC & HMI, Is there...
Replies
6
Views
744
Hi... I have what is so-called "Limit Values" placed in the Safety PLC. These values ​​were written in REAL safety tags format. It turns out...
Replies
3
Views
429
Can anyone confirm that using contrologix 5580 controller is not possible to work with powerflex 527? It's been a couple of days now that i am...
Replies
8
Views
1,188
Folks, Putting together a system utilizing a Control Logix Gen 8 (5580) PLC w/ the L83e CPU. I'll be connecting to 8 different FLEX-IO drops...
Replies
13
Views
4,089
Back
Top Bottom