Gradual Development of an IoT Architecture for Real-World Things
Gaitan Nicoleta Cristina, Gaitan Vasile Gheorghita, Ungurean Ioan
Faculty of Electrical Engineering and Computer Science
Ştefan cel Mare University of Suceava, Romania
cristinag@eed.usv.ro, gaitan@eed.usv.ro, ioanu@eed.usv.ro
Abstract—The Internet of Things (IoT) is a great challenge of
our time that will lead, as many scientists argue, to the fourth
industrial revolution with major benefits for people’s everyday
life. As the IoT is still a new field of research, there are various
viewpoints regarding it. In this paper we propose an IoT
architecture relied on the middleware. The basic principles,
and also the strengths of the proposed architecture are the
following: it uses mature standards with open source
implementations; it ensures increased flexibility and scalability
that allow the integration of a large number of current and
future technologies; it includes facilities for unitary description
of data exposed by THINGS; it decouples the address space of
the local objects from the global address space seen in IoT; it is
modular and hierarchic, with clear interfaces between
hierarchical levels; it ensures data security.
Keywords- Internet of Thing; fieldbus; middleware
I. INTRODUCTION
Several current technologies revolutionized everyday
life. One of them is the Internet that had led to a new era of
information, available for everyone. Other technologies, such
as Radio-Frequency Identification (RFID), or Wireless
Sensors Network increased the ability to communicate
among things. Internet Protocol Version 6 (IPv6) removed
the address depletion problem existing in Internet Protocol
(IP). In this context, it is only natural that the next wave in
the development of Internet does not refer to people, but to
interconnected smart devices. The mobile revolution, with
more than 5 billion smart phones connected to various
mobile networks, provides the population with the possibility
to access the Internet. In [1], it is stated that there are already
50 billion smart devices, and, therefore, the opportunities and
challenges for the Internet of Things (IoT) will be related to
connecting these devices in a manner that would make
possible the complete distribution of applications among
things. IoT will enable the connection of real-world objects
to the Internet. Due to its potential, the IoT technology is
approached from three fields of activity: scientific theory,
engineering design, and user experience. This article will
address the IoT in terms of engineering design and it will
propose a practical IoT architecture.
Starting from several questions, the paper presents
gradually an IoT architecture (shown in Figure 1) in a
bottom-up way. The architecture is organized on four levels.
The first level, called THINGS, contains the set of all things
that can communicate. We propose two types of things,
namely: those with direct access to the Internet, and those
which need an intermediary device to reach an Internet
Access Point (IAP). Furthermore, at this level, the
connection of THINGS to an IAP is ensured by wired or
wireless protocols and devices (adapters, converters,
gateways). The next level is the data provider (Data Provider
- DP). For flexibility and scalability reasons, we divide this
level into two sublevels. The first sublevel is represented by
the communication modules (CM) that contain protocol
drivers and a wrapper that exports a standard set of functions
(Application Programming Interface - API) to the upper
level. Therefore, we can easily add new protocols by
developing only the wrapper for this API. The next sublevel
is Data and Fieldbuses Manager (DFM). At this sublevel, we
use the concept of the Electronic Data Sheet (EDS) files
defined by the CANOpen, in order to describe THINGS.
Based on these files and an EDS interpreter, DFM creates a
dictionary of objects (DO), which exposes all possible data
to the server. We can also add other interpreters with their
own dictionaries of objects. Furthermore, at this sublevel
there is the software module, called by the server to
configure and manage the fieldbuses. Since DP is not
designed for a specific server, we defined a second standard
API for the upper level.
The middleware level must provide data transport
to/from DO using the servers and/or peers. By implementing
the second interface, the server gains full access to the data
of the DO and THINGS exposed through EDS. For a
practical implementation, and in order to define
communication between clients and server, we chose the
TAO implementation of CORBA, and we used the Interface
Description Language (IDL). Furthermore, other middleware
can be used. The last level is the application level. At this
level, we define two address spaces for IoT, one locally and
one globally. The application is based on a set of objects of
the following types: graphical, mathematical, historical,
alarms and event, middleware and IoT objects. We defined
the third standard interface which allows these objects to
communicate with each other. Therefore, the addition of new
objects is made simply by implementing the functions of this
interface. To define the global space, we added a middleware
object based on the Distributed Data Service (DDS)
specification from the Object Management Group (OMG).
We can also use other protocols specific to the IoT.
Based on several questions, the rest of the present paper
presents the following, gradually, from a bottom up
perspective: the reason for the way in which the architecture
was built, the proposed solutions, and their motivation.
Therefore, we defined the general characteristics of IoT:
what is THINGS and how data is exposed to the Internet.
2015 IEEE European Modelling Symposium
978-1-5090-0206-1/15 $31.00 © 2015 IEEE
DOI 10.1109/EMS.2015.57
344
2015 IEEE European Modelling Symposium
978-1-5090-0206-1/15 $31.00 © 2015 IEEE
DOI 10.1109/EMS.2015.57
344