Ethernet and S7

Join Date
Jan 2007
Location
Vancouver, WA
Posts
17
Hi,

Some questions about Siemens PLCs and implementing Ethernet protocols. First some background:
We make motion controllers that communicate with various PLCs, and we provide example programs for various PLCs to help our customers get up and running quickly. Our latest controller does not have good support for communication with S7 PLCs via Ethernet. Our controller supports CSP, EtherNet/IP, Modbus/TCP, FINS/UDP, and the Mitsubishi Procedure Exist (for the Q-series).
I have been tasked with learning the S7 and making FBs for communicating to our controller via Ethernet, so our customers can use these FBs. I know Modbus/TCP FBs are available from Siemens, but they cost as much as the Step7 software and have a 3-4 week lead time, and most of our customers won't like that. Therefore,I will probably implement some protocol myself, probably one our controller already supports, such as Mitsubishi's Procedure Exist, or a subset of the Omron FINS/UDP, or a subset of Modbus/TCP.

My questions:

Which S7 modules should I use? We have an old CPU315-2DP with an old CP343-1 Ethernet module. Would I be better off just buying a new CPU with built-in Ethernet? If you were our customer and wanted an example S7 project, which PLC would you prefer the example was made on? In the long term, we hope to implement PROFINET, so I will probably need a module that supports that also.

How about implementing protocols in Step7? Any tips?


Thank you,

Jacob Paso
 
Can you give us an idea what your data looks like and at what update rates you expect? Would your controller accept a simple TCP connection? Would you want to define your own "driver" to ensure some kind of determinism (checksums, message indexes, handshaking, etc)?

I wouldn't make it processor specific, since there are a ton of existing S7 users out there. I would start testing with whatever you have, unless your cp card is over ten years old or so.
 
S7Guy,

The data is 32-bit words. Typically, our controller handles the time-critical stuff, so updates rates are usually not too critical.
Most of our customers continuously read a few data items, such as actual position and status bits from each axis, and occasionally send commands, which consists of sending block of 6 or so words. Some users write hundreds or thousands of words for cams, or read thousands of words to get plots. With most PLCs, reading ten words can be done at 10 to 30 ms cycles, which is plenty fine.

Yes, our controller can accept a simple TCP conneciton, which is basically what the Mitsubishi Procedure Exist protocol is. It does have handshaking, but no checksums.
We can also accept raw UDP packets using the FINS/UDP format. This is even simpler than the Procedure Exist.

And I think my CP card is a decade or more old, so I should probably get a new one. The CPU319-PN/DP may indeed be nice to have, with all my comm needs right on the CPU.
 
Ok, you can do this with most any CP card then, and you definitely won't have to buy a driver or special blocks from Siemens. You could easily send 240 bytes every 10 ms or so, and blobs up to 8192 bytes are also possible.

Before you buy the 319, make sure it is pretty much compatible with the more common cards that your users will have. You aren't doing anything too crazy, so I'm guessing it will be ok.
 
S7Guy,

Thanks for the info! I've looked at your other UDP posts, and it has been interesting reading. If I have time I'll implement both TCP and UDP. First I have to learn the S7, though.
 
All I can say is Great and how can I help.

I am using Siemens "soft PLC" called WinAC RTX. Using Profibus currently with CP5613 card. As I have been looking for the solution you are working on I think I can help some. A few weeks back my local Siemens tech guy was in and we were talking about connecting a Siemens panel directly to the RMC70.(you may remember this) We have a Siemens guy in Dallas that has helped me out before. This guy was telling me that this Dallas Siemens guy has made blocks to talk TCP/IP with Siemens PLC. This was something he wrote himself not the purchased blocks from Siemens.

First thing in the morning I will get some information and send it to you.
 
Delta Motion Control said:
S7Guy,

Thanks for the info! I've looked at your other UDP posts, and it has been interesting reading. If I have time I'll implement both TCP and UDP. First I have to learn the S7, though.

Note that I just happened to use UDP, but I could have done the same thing with TCP with a few minor adjustments to the code. But is was fine just to "fire and forget", so I went with UDP.

I also forgot to mention that you don't even need the Siemens standard com blocks. They are kind of limited, and you can do the same thing by using system FCs.
 

Similar Topics

So I have a sort of unique situation where I'm wanting to run a PF755 from the IO and over ethernet. Of course, this comes with it's own set of...
Replies
9
Views
167
Hi all, My ethernet port on my laptop recently broke and I was hoping to just use a usb-c dongle in the mean time to go live on my PLC until I...
Replies
14
Views
445
Hi; In a cabinet of a machine, a Fatek PLC with an Ethernet communication card is working. In the same cabinet, there is a 1 kW inverter. When...
Replies
16
Views
489
I have a strange Kepware issue I have been dealing with for a few weeks. I have Kepware setup with the Omron NJ Ethernet driver and reading in...
Replies
0
Views
92
Can anyone recommend a flexible 600-volt shielded ethernet patch cable? I have used them from Allen Bradley / Panduit before and they are too...
Replies
0
Views
98
Back
Top Bottom