When it comes to the industrial protocols that we support here at Robotiq, one of the most frequent questions that gets asked is certainly: what is the difference between Ethernet/IP and TCP/IP? Indeed, for a person unfamiliar with this subject, this can be quite confusing. In our daily lives, when we connect a PC to a network, we need to plug a cable into an ethernet card. However, to access the web, we have to configure our TCP/IP settings. And what does IP stands for again? Well, good question because the answer is: it depends! Let's take a few minutes to demystify all of this.
Know more @ administrator definition
521px Ethernet RJ45 connector p1160054
An ethernet RJ/45 connector (picture from Wikipedia, Copyright © 2007 David Monniaux)
Some definitions
First, what do all these terms/acronyms mean?
Ethernet is a set of network related technologies (covering the physical layer, data frames, network topology, etc.) defined by the IEEE 802.3 standards.
TCP is an acronym which stands for Transmission Control Protocol. This protocol is responsible for managing the connection between a client and a server, making sure that the data which needs to be transfered is split into several packets which will all eventually reach their destination. If they don't, or if one of them is corrupt, TCP defines how the missing data will be retransmitted.
IP has two different meanings depending on how it is used: Industrial Protocol for Ethernet/IP and Internet Protocol for TCP/IP. Quite confusing! Let's take a closer look at these two protocols.
Ethernet/IP
Ethernet/IP uses the Ethernet infrastructure (who would have guessed?) to manage the connection between various automation devices such as robots, PLCs, sensors, CNCs and other industrial machines. It is managed by the Open DeviceNet Vendors Association (ODVA) and is based on the Common Industrial Protocol (CIP). It is very robust, but it is also complex and the learning curve is very steep (trust me on that one!).
TCP/IP
The real name of the industrial protocol which we support is Modbus TCP/IP. TCP/IP is responsible for the transmission of the packets, which are composed of Modbus frames containing commands to read/write into the shared memory of a device. It is quite easy to learn, as TCP/IP is standard in most programming langages (C/C++, Matlab, Python, etc.) and Modbus is very simple. Also, Modbus TCP/IP is standard with most PCs, which makes it an interesting communication protocol for research laboratories.