CAN or Ethernet – A Design Aspect
When it comes to the design of a system with distributed intelligence, i.e. a networked multi-processor system, the first question that a design engineer faces is the choice of an appropriate networking technology that best meets the design specific requirements. CAN (Controller Area Network) and Ethernet are both very popular choices, especially when a certain level of vendor-independence, i.e. the avoidance of manufacturer-specific technologies, is an important aspect.
The main questions, however, are: What is the main difference between both technologies? Are there really applications where either technology will do the job? Is there a certain type of application for either technology? Can both technologies co-exist in one design and combine their specific strengths? The answers to these questions can not be articulated in a firm black and white manner; there are multiple shades of grey.
Without going into all technical details of CAN and Ethernet (there is good literature available on both topics) let’s have a somewhat closer look:
The CAN bus is primarily used in embedded systems, and as its name implies, is a network technology that provides fast communication among microcontrollers up to real-time requirements. CAN is far superior to conventional serial technologies such as RS232 in regards to functionality and reliability and yet CAN implementations are more cost effective. While TCP/IP is designed for the transport of large data amounts, CAN is designed for real-time requirements and with its 1 MBit/sec baud rate can easily beat a 100 MBit/sec TCP/IP connection when it comes to short reaction times, timely error detection, quick error recovery and error repair.
However, due to a limited data length of 8 bytes per message, the use of CAN is restricted to small-sized embedded multi-processor applications, where the transfer of raw process data such as digital/analog I/O information is sufficient. Higher layer protocols based on CAN, such as CANopen or DeviceNet, are available in order to allow data transfer of unlimited length and to use CAN for industrial machinery (including motion control).
Another restriction of CAN, with or without the use of higher layer protocols, is the limited physical network length. The maximum bus length depends on the chosen baud rate, i.e. roughly 2000 feet at 125 kBit/sec down to 120 feet at 1 MBit/sec.
The greatest benefit of Ethernet comes with the use of the TCP/IP protocol stack and the possible connection to a company-intern LAN/WAN or even world-wide through the Internet. Ethernet plus TCP/IP allow physically larger networks with far greater information carrying capacity than CAN. Compared to CAN, Ethernet does not support a non-destructive priority arbitration and message latency or deterministic behavior cannot be guaranteed. Ethernet is still suitable for field-bus applications where real-time responses through the network are not important.
Due to the extensive use in PCs, Ethernet network cards are a low-cost items, where CAN-PC interface cards are more expensive. While TCP/IP sockets are provided within the most popular operating systems such as Windows or Linux, the price for a CANopen or DeviceNet protocol stack can range between a few hundred Dollars for an API, up to several thousand Dollars for source code. However, when it comes to implement either CAN/CANopen/DeviceNet or Ethernet-TCP/IP, the CAN technologies still have a considerable edge in terms of implementation into embedded devices.
The advantages of both technologies can be combined, for instance, in a system that requires real-time responses within the network plus the means to provide service and maintainability over long distances.

As shown in the above picture, an Ethernet-CAN gateway connects a local CAN network to a company LAN/WAN or even the Internet. The gateway can function either as a network node with a dynamic or static IP address within a company’s LAN or even as an E-Mail-Server or Web Server through means of the Internet. Such a configuration allows send/receive process data, to monitor the CAN network’s performance for data analysis, error detection, etc. and even upload program updates.

The EtherCAN device by esd electronics is an Ethernet-CAN gateway with a NET +50 ARM processor that controls the data transfer between CAN and Ethernet. The Ethernet interface is designed for 10/100 MBit/sec networks. The module supports the Ethernet communications protocols TCP/IP, Modbus/TCP and ProfiNet. The CAN interface is based on a SJA1000 CAN controller. The interface is designed according to ISO11898 with electrical isolation. It allows a data transfer of up to 1 MBit/sec.
For more information log on to:
http://www.esd-electronics-usa.com/store/p/34-EtherCAN.html

