So, is Ethernet deterministic or not? The answer is a definite “maybe.” More realistically, that’s the wrong question. Ethernet by itself is not a complete communications system. You need a protocol on top of it. (See Ethernet is not a protocol.)
And what does it mean to be deterministic? I looked for a definition of “deterministic” as it applies to automation and did not find one. So, here’s mine: “a message arrives when I want it to.” For Ethernet, we can say “frame” instead of “message.”
Ethernet deterministic? Maybe. PROFINET deterministic? Definitely! Take a minute to see how this is accomplished:
But… There are always some “buts.” One that was raised at a recent PROFINET one-day training class was “But how can PROFINET be deterministic on a heavily loaded Ethernet network?” First, don’t design a heavily loaded network! There is never an exception to doing the engineering. We’ve tried to make that easy by providing a design guideline: PROFINET Design Guideline with Tool. The tool is there to help you with network load. There are some common sense topology recommendations, too. Don’t put too many devices in a linear topology; don’t put bandwidth hogs at the end of a linear run. Bandwidth hogs like printers or vision system. More tips are presented during our PROFINET one-day training classes. For a report that is scholarly, detailed, and based on experimentation, see “Technical Article: Performance metrics for Industrial Ethernet” in Industrial Ethernet Book.
If you can’t avoid a network of unknown load, PROFINET still has a solution: PROFINET IRT (Isochronous Real Time). PROFINET IRT reserves bandwidth on the network for the important traffic. So if network load inhibits delivery of frames, it won’t be the critical frames you’ve set. Other traffic may suffer so design carefully. There’s a MinutePROFINET for this technique also.
More on how PROFINET achieves determinism: