The Design of Industrial Ethernet Adapter Based On Ethernet/IP
The Design of Industrial Ethernet Adapter Based On Ethernet/IP
The Design of Industrial Ethernet Adapter Based On Ethernet/IP
Abstract—Aiming at application of industrial network, this III. HARDWARE DESIGN OF INDUSTRIAL ETHERNET ADAPTER
paper adopted ARM9 microprocessor to construct the hardware
system of an industrial Ethernet adapter, developed I/O interface Ethernet/IP has worked out device profile specification to
driver under Windows CE.NET operating system and completed categorize the industrial devices completing the same function.
the application software of the industrial Ethernet adapter based Device profile favored different companies to go into a unified
on EADK software platform. In addition, with the help of action. Communication adapter is one kind of device class
EIPScan, EDITT, PCU-ETHIO Ethernet/IP scanner, etc, a defined by the device profile regulations. (Class number is
complete test was given to the communication adapter. Test 0Chex).
results demonstrate that the industrial Ethernet adapter has not
only good performance in stability, real-time property of data Aiming at the development of industrial Ethernet adapter,
transmission but also bright prospects in application. this paper adopted S3C2410 microprocessor to construct the
hardware system of industrial Ethernet adapter, and it
Index Terms—Industrial Ethernet, communication adapter, architecture is as shown in Fig.1.
Ethernet/IP
Authorized licensed use limited to: Universidad Tecnologica Metropolitana (UTEM). Downloaded on July 15,2021 at 02:21:42 UTC from IEEE Xplore. Restrictions apply.
Proceedings of 2009 4th International Conference on Computer Science & Education
A key step of this driver development was the implementation Ethernet/IP control network. Explicit message server and I/O
of interrupt processing. Interrupt processing was divided into server mainly undertook to connect with Ethernet/IP scanners
two stages, Interrupt Service Routine (ISR) and Interrupt and exchange real-time I/O data. The overall software
Service Thread (IST). When hardware happened to interrupt, architecture of this communication adapter is as shown in Fig.
OS kernel called OAL function OEMinterruptDisable to 2.
inform hardware of closing this specific interrupt until certain
necessary measures ended. Then, OS kernel called ISR to map Start
the physical interrupt into logical interrupt value, and triggered
an event to invoke the suspended IST. Structure of IST is as Start EADK protocol Stack
follows.
DIO_Initialize Address(); //virtual memory mapping
Dynamically register custom CIP type
DIO_EnableInterrupt(); //relevant register’s configuration
while(g_fRun) //circulate until informed to exit
{…… Start Start Start
dwStatus=WaitForSingleObject(g_hevInterrupt, UCMM UCMM explicit
INFINITE); //wait for synchronized event server client- message
if(dwStatus==WAIT_OBJECT_0) side server
{ // undertake interrupt handling at this time
……
// inform inner core that interrupt handling had been Configure combination object instance
// accomplished
InterruptDone(g_dwSysInt);
Start I/O connection server
}
}
When had been started, IST needed to accomplish Wait for message in callback function
initialization work, including virtual memory mapping and
relevant register’s configuration. Then IST entered the status
of circularly waiting for interrupt event until the triggering Establish Receive Receive
event returned from OS kernel. Once the interrupt happened, new and and
explicit respond forward
IST would communicate with I/O interfaces to read all message UCMM I/O data
necessary data. Last IST adopted relevant logical interrupt to and I/O message
call ‘InterruptDone’ function, and informed OS kernel that the connecti
interrupt handling had been accomplished.
Fig.2 Application software functional structure
Having finished programming of the driver, we also
needed to enclose the compiled driver file to operating system When program had begun to run, firstly, initialize EADK
image. So far, application program could achieve access and protocol stack and dynamically register custom CIP class.
control of the devices through visiting a particular file. Secondly, start server and client-side of UCMM as well as
explicit message server so as to send, receive UCMM message
V. APPLICATION SOFTWARE DEVELOPMENT OF INDUSTRIAL
and explicit message. Thirdly, according to I/O module
ETHERNET ADAPTER
connected to this communication adapter, configure matching
The communication adapter defined in CIP device profile combination object instance and start I/O server. Finally, make
should include identity object, message routing object, the execution thread of application program wait in the
connection object and the objects relevant to network callback function so as to receive the right connection request
connection. As for Ethernet/IP, the objects relevant to network to establish explicit-message connection and I/O connection
connection included TCP/IP interface object and Ethernet with remote Ethernet/IP scanner, Then exchange explicit
connection object [4-5]. According to the device object model
message and real-time I/O data.
defined by Ethernet/IP, this paper designed application
software to accomplish the various functions of Ethernet/IP B. Implementation of Application Program
Communication adapter on the basis of EADK (Ethernet/IP
adapter developers kit). EADK is a kind of software protocol CIP was a connection-oriented protocol, so connection
stack, and it can make the developers to add Ethernet/IP object played a fairly important role in Ethernet/IP.
adapter function to product quickly. Connection object was mainly responsible for recording every
connection’s information such as setting value, connection
A. Overall Software Architecture of Adapter status, etc. In each node, there were at least two connection
Ethernet/IP communication adapter should serve as the instances in order to separately process I/O connection and
client-side and server of UCMM (unconnected manager), explicit message connection. Each CIP connection can be
explicit message server and I/O server. Among them, UCMM expressed by a connection object instance. Connection
was responsible to process unconnected information and establishment could be achieved by using Create service of
establish connection for the unconnected devices in the connection object or Forward Open service of connection
Authorized licensed use limited to: Universidad Tecnologica Metropolitana (UTEM). Downloaded on July 15,2021 at 02:21:42 UTC from IEEE Xplore. Restrictions apply.
Proceedings of 2009 4th International Conference on Computer Science & Education
Authorized licensed use limited to: Universidad Tecnologica Metropolitana (UTEM). Downloaded on July 15,2021 at 02:21:42 UTC from IEEE Xplore. Restrictions apply.
Proceedings of 2009 4th International Conference on Computer Science & Education
[3] D.Y.Gu and F.H.He: Realization of Ethernet/IP protocol on Linux [5] Y.X.Wang and L.D.Wang: Design of multicast and switch gateway
(Chinese) [J].Chinese Journal of Scientific Instrument, 2005, 26 between CAN field bus and Ethernet (Chinese) [J]. Journal of Electronic
(Suppl.1), p.441-444. measurement and Instrument, 2007, 21(3). p.83-87.
[4] W.J.Huang and J.X.Jin: Developing a field controller based on the EPA [6] ODVA. Ethernet/IP specification [M]. Release 1.0, 2001.
industrial Ethernet (Chinese) [J]. Chinese Journal of Scientific
Instrument, 2006, 27(8), p.949-952.
Authorized licensed use limited to: Universidad Tecnologica Metropolitana (UTEM). Downloaded on July 15,2021 at 02:21:42 UTC from IEEE Xplore. Restrictions apply.