Building Automation and Smart Cities: An Integration Approach Based on a Service-Oriented...

7
Building automation and smart cities: An integration approach based on a service-oriented architecture Markus Jung, J¨ urgen Weidinger, Wolfgang Kastner Institute of Computer Aided Automation Vienna University of Technology Vienna, Austria Email: {mjung,jweidinger,k}@auto.tuwien.ac.at Alex Olivieri L’Institut Informatique de Gestion Haute Ecole Sp´ ecialis´ ee de Suisse Occidentale Sierre, Switzerland Email: [email protected] Abstract—Building automation is a vital part of many use cases related to energy efficiency and smart living in the context of smart cities. State of the art building automation systems like KNX, BACnet or ZigBee are based on control networks mainly used for local control scenarios using non-IP communications. This paper presents an integration approach for building automa- tion systems using an IPv6 enabled service-oriented architecture allowing interconnecting heterogeneous technologies into a large- scale distributed control system. Details on the concept, a proof of concept implementation and performance evaluation results of a multi-protocol gateway are presented, offering a per-device IPv6 interface using a novel CoAP/EXI protocol binding for oBIX. The integration approach aims at providing a homogeneous integration layer that can be used to build advanced control scenarios that might arise in the context of smart cities. Index Terms—Internet of Things; IPv6; Home Automation; Web services I. I NTRODUCTION The continuous trend towards more urbanization puts an extraordinary stress on the infrastructures of cities. A smart city aims at increasing the effectiveness and efficiency of public transport, energy and water supply, healthcare, public safety to government services by integrating various systems out of these domains using information and communication technology (ICT) [1]. Without question, buildings and res- idential homes will be a vital part of such a smart city ”system of systems” as they are central energy consumers and living and working area of the city residents. State of the art building automation systems (BAS), such as BACnet, KNX, ZigBee or Wireless M-Bus, usually come with a custom protocol stack and use non-IP communication. The challenge of integrating a variety of sensing infrastructures and different technologies for smart cities is already stated in [2]. Within the domain of home and building automation, integration approaches like oBIX, OPC UA or BACnet/WS address this problem by providing a centralized Web service interface at the management tier of a typical BAS. They provide either a RESTful Web service interface based on HTTP or use the WS-* stack based on SOAP for interfacing the underlying technology. For message encoding, mainly XML is used which is a convenient representation of information for humans and provides interoperability for every type of system. However, these technologies based on TCP, HTTP and XML come at the cost of huge resource demands in the sense of computational power, memory and message size. Devices that implement such a stack are multiple times more expensive than equivalent devices using non-IP technologies. In order to reduce this efficiency gap, the IETF working group on Constrained RESTful Environments (CoRE) works on the standardization of the Constrained Application Pro- tocol (CoAP) [3] which is a UDP based protocol providing equivalent features to HTTP. Due to the usage of UDP, it provides non-confirmed messaging, group communication and asynchronous communication capabilities which together make CoAP more efficient and powerful compared to HTTP. CoAP can thus be used to realize RESTful Web services on constrained devices. In combination with 6LoWPAN [4], it is also possible to efficiently use IPv6 as network layer for wireless sensor networks. 6LoWPAN and CoAP support an efficient deployment of protocol stacks with a Web service interface directly accessible via IPv6 addresses of constrained devices. Finally, for the message encoding, efficient XML interchange (EXI) [5] provides a standardized binary represen- tation of XML data which completes the optimizations towards using Web services on embedded devices [6], [7]. Altogether, this allows to build an Internet of Things (IoT) based on the Internet as communication infrastructure. Where CoAP, EXI and IPv6 may be the technology stack for future sensors and actuators, within smart cities millions of existing sensors and actuators already deployed need to be integrated. Therefore, this paper presents how an IPv6 multi- protocol gateway [8], [9], [10] can be used to integrate existing BAS technologies into an IPv6 service-oriented architecture based on oBIX using a novel CoAP protocol binding. The approach allows integrating BAS into an IoT that can be used in the context of smart cities. The gateway provides an IPv6 per-device CoAP RESTful Web service for each technology that resides behind the gateway as illustrated in Figure 1. By means of this uniform interface, it is possible to deploy control logic that spans geographically large distributed control systems consisting of heterogeneous technologies. The paper is structured in the following way. Section II lists the relevant related work. Next, Section III provides an overview of the used protocol stack. A brief overview over the CoRE technologies is given and described how oBIX can be

Transcript of Building Automation and Smart Cities: An Integration Approach Based on a Service-Oriented...

Building automation and smart cities: An integrationapproach based on a service-oriented architecture

Markus Jung, Jurgen Weidinger, Wolfgang KastnerInstitute of Computer Aided Automation

Vienna University of TechnologyVienna, Austria

Email: {mjung,jweidinger,k}@auto.tuwien.ac.at

Alex OlivieriL’Institut Informatique de Gestion

Haute Ecole Specialisee de Suisse OccidentaleSierre, Switzerland

Email: [email protected]

Abstract—Building automation is a vital part of many usecases related to energy efficiency and smart living in the contextof smart cities. State of the art building automation systems likeKNX, BACnet or ZigBee are based on control networks mainlyused for local control scenarios using non-IP communications.This paper presents an integration approach for building automa-tion systems using an IPv6 enabled service-oriented architectureallowing interconnecting heterogeneous technologies into a large-scale distributed control system. Details on the concept, a proof ofconcept implementation and performance evaluation results of amulti-protocol gateway are presented, offering a per-device IPv6interface using a novel CoAP/EXI protocol binding for oBIX.The integration approach aims at providing a homogeneousintegration layer that can be used to build advanced controlscenarios that might arise in the context of smart cities.

Index Terms—Internet of Things; IPv6; Home Automation;Web services

I. INTRODUCTION

The continuous trend towards more urbanization puts anextraordinary stress on the infrastructures of cities. A smartcity aims at increasing the effectiveness and efficiency ofpublic transport, energy and water supply, healthcare, publicsafety to government services by integrating various systemsout of these domains using information and communicationtechnology (ICT) [1]. Without question, buildings and res-idential homes will be a vital part of such a smart city”system of systems” as they are central energy consumersand living and working area of the city residents. State ofthe art building automation systems (BAS), such as BACnet,KNX, ZigBee or Wireless M-Bus, usually come with a customprotocol stack and use non-IP communication. The challengeof integrating a variety of sensing infrastructures and differenttechnologies for smart cities is already stated in [2]. Withinthe domain of home and building automation, integrationapproaches like oBIX, OPC UA or BACnet/WS address thisproblem by providing a centralized Web service interface atthe management tier of a typical BAS. They provide eithera RESTful Web service interface based on HTTP or use theWS-* stack based on SOAP for interfacing the underlyingtechnology. For message encoding, mainly XML is used whichis a convenient representation of information for humans andprovides interoperability for every type of system.

However, these technologies based on TCP, HTTP and

XML come at the cost of huge resource demands in thesense of computational power, memory and message size.Devices that implement such a stack are multiple times moreexpensive than equivalent devices using non-IP technologies.In order to reduce this efficiency gap, the IETF workinggroup on Constrained RESTful Environments (CoRE) workson the standardization of the Constrained Application Pro-tocol (CoAP) [3] which is a UDP based protocol providingequivalent features to HTTP. Due to the usage of UDP,it provides non-confirmed messaging, group communicationand asynchronous communication capabilities which togethermake CoAP more efficient and powerful compared to HTTP.CoAP can thus be used to realize RESTful Web services onconstrained devices. In combination with 6LoWPAN [4], itis also possible to efficiently use IPv6 as network layer forwireless sensor networks. 6LoWPAN and CoAP support anefficient deployment of protocol stacks with a Web serviceinterface directly accessible via IPv6 addresses of constraineddevices. Finally, for the message encoding, efficient XMLinterchange (EXI) [5] provides a standardized binary represen-tation of XML data which completes the optimizations towardsusing Web services on embedded devices [6], [7]. Altogether,this allows to build an Internet of Things (IoT) based on theInternet as communication infrastructure.

Where CoAP, EXI and IPv6 may be the technology stackfor future sensors and actuators, within smart cities millionsof existing sensors and actuators already deployed need to beintegrated. Therefore, this paper presents how an IPv6 multi-protocol gateway [8], [9], [10] can be used to integrate existingBAS technologies into an IPv6 service-oriented architecturebased on oBIX using a novel CoAP protocol binding. Theapproach allows integrating BAS into an IoT that can be usedin the context of smart cities. The gateway provides an IPv6per-device CoAP RESTful Web service for each technologythat resides behind the gateway as illustrated in Figure 1.By means of this uniform interface, it is possible to deploycontrol logic that spans geographically large distributed controlsystems consisting of heterogeneous technologies.

The paper is structured in the following way. Section IIlists the relevant related work. Next, Section III provides anoverview of the used protocol stack. A brief overview over theCoRE technologies is given and described how oBIX can be

Server

Server

Node

Internet (IPv6)

HTTP

Proxy

Server

Constrained Environments

C

REST

HTTP

CoAP

C

C

C

CoAP

CoAP

CoAP

IPv6 multi-protocol gateway IPv6 multi-protocol gateway

KNX network BACnet network

KNX

KNX KNX

KNX

KNX

PLC

C C C C C

BACnet

BACnet

BACnet

C C C

CoAPCoAP

HTTP

ZigBee network

ZigBee

wM-Bus

ZigBee

C C C

Fig. 1. Extending the CoRE architecture [11] transparently with BAS

combined with CoRE at the application layer. Furthermore,a CoAP and EXI protocol binding for oBIX are presentedmaking the centralized state of the art oBIX Web servicesmore efficient. The architecture and design of the gatewayare discussed in Section IV where also details on the usedsoftware packages for the implementation are given. Differentinteraction scenarios between legacy devices are presentedin Section VI. Finally, evaluation results are outlined andcompared to state of the art oBIX interfaces regarding messagesize and necessary costs for additional CPU demands.

II. RELATED WORK

The feasibility using service-oriented architectures ap-proaches in ubiquitous computing, especially in the domain ofhome automation, is explored in [12]. There, SOAP based Webservices and a communication stack using HTTP, SOAP, WS-Agreement, WS-QoS, WS-Security, WSDL, WS-Policy, UDDIand WS-Notification are discussed. The authors propose toequip all devices with sufficient computational power in orderto host an implementation of such a complex communicationstack. Although hardware resources are getting cheaper it isstill a question to use such devices in automation systems.Constrained RESTful environments provide a simpler commu-nication stack that comes with fewer features but is feasible tobe deployed on the most constrained devices. Therefore, thispaper targets the seamless integration of existing devices intoCoRE instead of heavy-weight WS-* based communicationstacks.

In [13], the heterogeneity of devices is addressed througha generic communication interface for DPWS-based Web ser-vices. We identify this approach as too heavy-weight and theproposed communication interface as too generic compared tothe semantic abstraction of common oBIX objects proposedin our paper.

A thin server architecture based on RESTful Web service in-terfaces and a reference implementation of CoAP are presentedin [14]. There, the authors describe how application logic canbe moved to the cloud through the usage of RESTful Webservices on constrained devices using 6LoWPAN as efficientadaption layer between the network and data link layer ofwireless networks in order to provide IPv6 connectivity for enddevices. Based on this concept, the authors present in [15] acontainer for scriptable control and monitoring logic using anenvironment for JavaScript. In this paper, we use Java applica-tions for deploying control and monitoring logic. Furthermore,the standard IoT oBIX contracts presented in our work allowclient applications to take advantage of the enriched semanticsand offer the possibility for specific monitoring and controllogic interfaces for the device types.

The challenge of heterogeneous sensor infrastructures andthe requirement for a homogeneous interface are presentedin [2]. The authors depict an architecture based on an ab-straction layer using a distributed database scheme, a RESTAPI and XML models aligned to the Sensor Web Enablement(SWE) standard defined by the Open Geospatial Consortium.Although a distributed database scheme is used, the RESTAPI provides a central interface for applications. In our work,we follow a more decentralized approach with an interface forsensors and actuators based on a per-device IPv6 address anda CoAP based Web service interface in mind.

III. PROTOCOL STACK

The multi-protocol gateway provides a uniform interfacefor all technologies behind the gateway based on the protocolstack illustrated in Figure 2. This stack may also be directlydeployed on embedded devices.

oBIX

Existing Binding

IoT contracts

New Binding

New/Modified

IEEE 802.15.4IEEE 802.3 Ethernet

Other links6LoWPAN

IPv6

UDP TCP

HTTP ExistingCoAP

IPv6 multi-protocol gateway stack

JSON, EXI

SOAP

JSON, EXI

New Binding

XML oBIX binary

Fig. 2. IPv6 multi-protocol gateway stack

On top of the protocol stack, oBIX is used as applicationlayer protocol since CoAP does not provide the requiredfeatures to map all the application layer functionalities ofexisting BAS.

With oBIX, an information model is delivered representingdevices and entities out of the domain of building automation

as oBIX objects. Further a simple protocol aligned to RESTfulinteraction is offered. The functionality includes interaction toquery and modify objects and to invoke oBIX operations. Tothis end, three protocol services are offered (read, writeand invoke) that are mapped to the HTTP and CoAPverbs get, put and post. The oBIX object model (seeFigure 3) follows the typical approach of representing alldevices as objects holding collections and references to otherobjects and collections of data points with a specified datatype. oBIX uses the concept of contracts to define certainobject types. Currently, 17 standard object types are defined,ranging from basic data items like bool, int, real andstr over to more complex object types. oBIX contracts alsoprovide semantics for standard device types. Special contractsfor observing resources, alarms and histories based on theobject contracts for watches, alarms and histories aresupported.

The semantic description of oBIX contracts is only intendedfor human beings but not usable for machine based semanticprocessing. In this regard, it can be compared to functionblocks of BAS that describe standardized behaviors of sensors,actuators and control devices and define the semantics of inputand output data points of devices that implement the functionblocks.

obj

name: str href: uri is: contract null: bool icon: url displayName: str display: str writable: bool status: status

val

val: <type>

list

of: contract min: int max: int

op

in: contract out: contract

feed

in: contract out: contract

ref err

bool

range: uri

int

min: int max: int uint: int

real

min: real max: real uint: uri precision: int

str

min: int max: int

enum

range: uri

uri

abstime

min: abstime max: abstime uint: str

reltime

min: reltime max: reltime

date

min: date max: date tz: str

time

min: time max: time tz: str

Fig. 3. oBIX object model [16]

oBIX defines a protocol binding to HTTP for messageencoding (XML or custom binary representation). For messageexchange, the gateway offers either HTTP or CoAP. Both arein general quite similar, but HTTP uses TCP as underlyingtransport layer protocol. This provides reliability but limitsthe communication to a connection oriented point-to-point

communication and can be considered as heavy-weight com-munication protocol for sensor networks regarding bandwidthand computational resources of nodes.

Furthermore, HTTP only allows a request/response interac-tion using a client/server communication model. In contrastto that, CoAP uses UDP as transport layer. This providesunreliable packet-oriented communication with group commu-nication and asynchronous interaction within the client/servercommunication model. Due to these differences, CoAP addsfacilities for non-confirmed and confirmed message exchangeand furthermore extends the regular HTTP protocol with anobserve verb [17]. The enhancement supports observing aresource and avoids frequent polling of resources such as eventstreams or alarms.

To improve the message encoding of XML based commu-nication interfaces, EXI provides a standardized method tomap XML data to a binary representation. The encoding ismost efficient if an XML schema is offered. In this case,all communication partners need to be aware of the schema.However, even if no schema is used reasonable results regard-ing message size can be achieved and the problem of a tightcoupling between service consumer and service provider isavoided.

The data link layer used to interact with the gateway is moreor less out of scope since IPv6 is the common network layerprotocol. For native wireless IoT devices, basically any linkis possible, but IEEE 802.15.4 and the 6LoWPAN adaptionlayer to IPv6 are desirable.

The presented protocol stack provides several new messageencodings and new protocol bindings to CoAP for oBIX.Asynchronous communication features of CoAP provide amore efficient subscription to oBIX objects than using thewatch mechanism that is based on polling using HTTP.

A. IoT Contracts

For the integration of the various BAS technologies, weuse a generic set of oBIX contracts (Figure 4). The design ofthe contracts aims at representing functional blocks found innowadays BAS (cf. KNX functional blocks [18]).

Fig. 4. Excerpt of IoT contracts

The IoT contracts define the data points offered by thedevices. Two examples of such contracts are shown in List-ings 1 and 2. The contracts are quite similar since both offer asingle boolean data point, but in case of the actuator, the datapoint is also writable. For more sophisticated devices, moredata points can be defined, e.g. a dimming push button or adimming actuator would additionally have an integer propertyrepresenting the current setting.

Listing 1. Light switching actuator contract<obj href="iot:LightSwitchActuator" is="iot:Actuator">

<bool name="value" href="value" val="false" writable="true"/>

</obj>

Listing 2. Push button contract<obj href="iot:PushButton" is="iot:Sensor">

<bool name="value" href="value" val="false"/></obj>

IV. GATEWAY ARCHITECTURE AND IMPLEMENTATION

The architecture of the gateway is outlined in Figure 5.Each device is represented by an oBIX object either boundto a unique IPv6 address or to a context path within thecentralized interface. It makes no difference which protocolbinding is used by the client application that may reside onsite or remote. Regardless whether the HTTP or CoAP handlerreceives the incoming request, it is then processed by themessage encoder. In case of SOAP, the processing of the SOAPenvelope resides in between. Currently, only XML is supportedas message encoding for the SOAP interface. For the messageencoding, (schema informed) EXI, JSON or oBIX binary canbe freely chosen, also separately defined for the request andthe response.

For the EXI encoding an XML schema for oBIX is definedcovering the basic oBIX data model. This schema is also usedfor specifying the types within the WSDL document for theSOAP Web service allowing a client to automatically generatethe SOAP client API. By using the generic oBIX data model,the XML schema does not need to be aligned with the customdefined contracts.

Finally, all requests are processed by the oBIX server thatkeeps track of the current state of the oBIX object. Therefore,it is possible to use different protocol bindings at the same timeoperating on the same oBIX object. The oBIX server executesthe read, write and invoke requests. For the supportof the oBIX watch mechanism and the CoAP observemechanism, it also implements the observer pattern. The oBIXobject represents a device of a BAS that resides behind thegateway. The protocol adapters take care of the BAS specificcommunication protocols, e.g. group communication in KNX,and map the oBIX updates accordingly. At the same time theprotocol adapters observe changes inside the BAS and updatethe oBIX objects consequently. The oBIX objects based onthe presented IoT oBIX contracts provide a generic object-oriented representation for same device types out of differentBAS.

Fig. 5. Multi-protocol gateway architecture

A. Implementation

For the implementation, the Java 6 platform and several ex-isting open source libraries are used in order to realize the pro-tocol adapters [19], [20], the message encoder/decoder [21],the oBIX server [22], [23] and the protocol bindings [24]. Stilla lot of custom implementations were necessary to provide theIPv6 mapping to oBIX objects and the novel protocol bindings.For some technologies (e.g. wireless M-bus) custom protocolstacks had to be prepared since no proper open source libraryexisted. By using Java as platform, it is possible to deploy thegateway either on strong server infrastructures or embeddedplatforms like the Raspberry Pi.

V. EVALUATION

For the evaluation of the presented concept, a distributedtest bed based KNX, BACnet, wireless M-Bus and ZigBeeis used. Several devices are interconnected using the IPv6multi-protocol gateway including light switching actuators,dimming actuators, push buttons, temperature sensors, fans,valves, pump actuators, air conditioning devices and boilers.Figure 6 shows a picture of the devices used for the proof ofconcept implementation and the concept evaluation.

A. Control logic use cases

By means of the unified interface based on RESTful Webservices, it is possible to create control logic that operateson remote servers. This way, heterogeneous non-IP basedbuilding automation systems are seamlessly integrated withconstrained RESTful environments. Control applications usea unique interface, regardless if it is a native IoT devicethat operates an IPv6 based Web service stack or a non-IP

Fig. 6. Test bed

based legacy device. As validation for heterogeneous deviceinteraction, a KNX push button is linked to a BACnet lightswitch actuator. A simple two-point temperature controllerwith a small hysteresis is implemented as Java application thatdirectly operates on the per-device CoAP Web services. For thetemperature control scenario a temperature sensor is directlymounted next to a light bulb that acts as heat source. TheUML sequence diagrams in Figure 7 and Figure 8 illustratethe implemented control logic use cases.

Fig. 7. Two point temperature control logic

For the temperature control scenario the delay addedthrough this integration layer is not crucial, since the controlledsystem comes with a high response time. However, if aninteractive scenario is chosen, the added delay can significantlyinfluence the user experience and usability. Therefore, the nextsubsection presents a performance evaluation of the presentedconcept.

VI. PERFORMANCE EVALUATION

Measurements have been carried out aiming at quantitativemetrics regarding message size, CPU utilization and the addeddelay if control logic is based on the RESTful Web serviceinterfaces. For the message size and the CPU utilization, abenchmark based on the defined IoT contracts was chosen.For the message size evaluation, each object and data pointwas accessed by a read and write request. Using an automatedclient based on a network packet capturing library, the traffic

Fig. 8. Heterogeneous device interaction

was analyzed and different message sizes of the used protocolsabove IP were subsequently recorded. The results of themeasured message sizes are given in Figure 9. As illustrated,the CoAP protocol binding with schema-informed EXI is themost efficient protocol binding. The schema-informed EXImessage encoding is slightly more efficient than the customoBIX binary encoding but comes with the big advantages ofa generic and standardized encoding mechanism that solelyrequires the XML schema at the client and at the server side.The JSON encoding is unexpected higher than the plain XMLencoding. This can be explained by the necessary encodingthat keeps all relevant information to encode XML to JSONwithout any loss of information. A dedicated JSON bindingwould be slightly more efficient than the XML encoding.

150

250

500

1000

2000

2500

GET full object GET data point PUT full object PUT data point

Con

vers

atio

n S

ize

in B

ytes

oBIX Protocol Binding

Protocol Evaluation

HTTP/XMLHTTP/JSON

HTTP/EXIHTTP/EXI SCHEMA INF.

HTTP/OBIX BINARY

CoAP/XMLCoAP/JSON

CoAP/EXICoAP/EXI SCHEMA INF.

CoAP/OBIX BINARY

Fig. 9. Protocol binding evaluation

For the performance evaluation, the IPv6 multi-protocolgateway is deployed on a Raspberry Pi board (700 MhzARM CPU, 512 MB memory). By means of this hardwareplatform, it is possible to conduct an operational performanceanalysis based on the service demands with their differentprotocol bindings. To calculate upper asymptotic bounds on

the maximum throughput, the service demands Di, where irepresents the protocol binding, have been calculated usingthe methodology presented in [25]. According to the servicedemand rule (Equation 1), it is possible to calculate theutilization U for a given throughput X . Figure 10 illustratesa comparison of the maximum throughput depending on theprotocol binding. The results show that the best throughputis provided by using an HTTP protocol binding with XMLfor message encoding. The lowest throughput results by usingCoAP for message exchange and schema-informed EXI formessage encoding. The difference between HTTP and CoAPcan be explained by a more mature HTTP server implemen-tation in use. The EXI encoding is clearly an overhead sincethe used oBIX server operates on XML requiring an XMLrepresentation before the message is encoded using EXI. Thisoverhead could be avoided if the oBIX server will operate onEXI encoded data directly.

Di =Ui ∗ τC

=Ui

Xi(1)

0

0.2

0.4

0.6

0.8

1

0 1 2 3 4 5 6 7 8 9 10 11

Util

izat

ion

CP

U (

%)

Throughput (req./s)

HTTP XMLHTTP EXI

HTTP EXI (SCH. INF.)HTTP oBIX Binary

HTTP JSONCoAP XML

CoAP EXICoAP EXI (SCH. INF.)

CoAP oBIX BinaryCoAP JSON

SOAP over HTTPSOAP over CoAP

Fig. 10. Maximum throughput

For evaluating the introduced delay by using control logicbased on the IPv6 RESTful Web services, a Java controlapplication was deployed in the first case locally on the sameplatform (Raspberry Pi) at which the multi-protocol gatewayresides. In the second case, the application was deployedremotely on a server representing a possible cloud basedsolution. As BAS components, a simple push button andswitching actuator of a KNX test bed were used. Instead oflinking both devices using KNX group communication, eachdevice uses a separate group communication address that wascoupled by the control logic based on the IPv6 oBIX interfacewith the CoAP protocol binding using XML encoding in orderto support asynchronous subscriptions to the events of the

KNX push button. The KNX test bed and the Raspberry Piboard equipped with the IPv6 multi-protocol gateway werehosted in Vienna, Austria. For the remote control scenario, thecontrol logic was deployed at a server in Sierre, Switzerlandconnected through public IPv6 connectivity with the test bedin Vienna.

Server

Internet (IPv6)

IPv6 multi-protocol gateway

KNX network

KNX

KNX KNX

KNX

KNX

PLC

C C

CoAP

Remotecontrol and monitoring

Local control and monitoring

CoAP

Fig. 11. Delay evaluation

The delay was measured on the KNX bus using the dif-ference between two consecutive write requests on the twoseparate used group communication addresses assigned to theKNX devices. As shown in Figure 12, the introduced latencystays below one second, which is a crucial limit for theinteraction flow of a human user according to [26] and [27].

200

300

400

500

Local Control Remote Control

Del

ay in

ms

Control Strategy

Delay

Fig. 12. Delay evaluation

VII. CONCLUSION

This paper presented a concept of an IPv6 multi-protocolgateway used for seamless integration of building automationsystems in the Internet of Things. Details on the concept ofan IPv6 multi-protocol gateway are discussed. The approach

taken combines IPv6 and oBIX with current research activitiesin constrained RESTful environments and provides severalnovel protocol bindings which are evaluated regarding mes-sage size and performance. Furthermore, control use cases arebriefly discussed that handle interconnecting heterogeneousBAS locally or remotely based on IPv6 connectivity. Suchan integration of heterogeneous technologies taking care ofinterconnecting large-scale distributed control networks mightprovide several benefits in the context of smart cities. Asfurther work we consider to focus on more specific use casesdedicated to smart cities and to address security and scalabilityissues.

ACKNOWLEDGMENT

Authors express their acknowledgement to the consortiumof the project IoT6 (www.iot6.eu). The IoT6 project is sup-ported by funding under the Seventh Research FrameworkProgram of the European Union, with the grant agreementFP7-ICT-2011-7-288445.

REFERENCES

[1] M. Naphade, G. Banavar, C. Harrison, J. Paraszczak, and R. Morris,“Smarter cities and their innovation challenges,” Computer, vol. 44,no. 6, pp. 32–39, 2011.

[2] M. Fazio, M. Paone, A. Puliafito, and M. Villari, “Heterogeneous sensorsbecome homogeneous things in smart cities,” in Innovative Mobileand Internet Services in Ubiquitous Computing (IMIS), 2012 SixthInternational Conference on. IEEE, 2012, pp. 775–780.

[3] “Constrained Application Protocol (CoAP) draft-ietf-core-coap-11,”IETF Internet Draft, Mar. 2012.

[4] “IPv6 over Low-Power Wireless Personal Area Networks (6LoWPANs):Overview, Assumptions, Problem Statement, and Goals,” RFC4919, Jul.2007.

[5] “Efficient XML Interchange (EXI) Format 1.0,” W3C Recommendation,Mar. 2011.

[6] Z. Shelby and C. Bormann, 6LoWPAN: The Wireless Embedded Internet.Wiley, 2011.

[7] A. Castellani, M. Gheda, N. Bui, M. Rossi, and M. Zorzi, “Web Servicesfor the Internet of Things through CoAP and EXI,” in Proceedings of theIEEE International Conference on Communications (ICC 2011), 2011.

[8] M. Jung, J. Weidinger, C. Reinisch, W. Kastner, C. Crettaz, Y. Bocchi,and O. Crettol, “A transparent IPv6 multi-protocol gateway to integrateBuilding Automation Systems in the Internet of Things,” in Proceedingsof the IEEE International Conference on Internet of Things (iThings2012), Besancon, France, Nov. 2012.

[9] M. Jung, J. Weidinger, D. Bunyai, C. Reinisch, W. Kastner, andA. Olivieri, “Demonstration of an IPv6 multi-protocol gateway forseamless integration of Building Automation Systems into ConstrainedRESTful Environments,” in Proceedings of the IEEE InternationalConference on Internet of Things (IoT 2012), Wuxi, China, Oct. 2012.

[10] M. Jung, J. Weidinger, W. Kastner, and A. Olivieri, “Heterogeneousdevice interaction using an IPv6 enabled service-oriented architecturefor building automation systems,” in Proceedings of the 28th ACMSymposium on Applied Computing, Coimbra, Portugal, Mar. 2013.

[11] Z. Shelby, “Embedded Web Services,” Wireless Communications, IEEE,vol. 17, no. 6, pp. 52–57, 2010.

[12] M. Aiello and S. Dustdar, “Are our homes ready for services? A domoticinfrastructure based on the Web service stack,” Pervasive and MobileComputing, vol. 4, no. 4, pp. 506–525, 2008.

[13] L. Ribeiro, J. Barata, A. Colombo, and F. Jammes, “A generic com-munication interface for DPWS-based web services,” in Proceedings ofthe 6th IEEE International Conference on Industrial Informatics (INDIN2008). IEEE, 2008, pp. 762–767.

[14] M. Kovatsch, S. Mayer, and B. Ostermaier, “Moving Application Logicfrom the Firmware to the Cloud: Towards the Thin Server Architecturefor the Internet of Things,” in Proceedings of the 6th InternationalConference on Innovative Mobile and Internet Services in UbiquitousComputing (IMIS 2012), Palermo, Italy, Jul. 2012.

[15] M. Kovatsch, M. Lanter, and S. Duquennoy, “Actinium: A RESTfulRuntime Container for Scriptable Internet of Things Applications,” inProceedings of the 3rd International Conference on the Internet ofThings (IoT 2012), Wuxi, China, Oct. 2012.

[16] “oBIX 1.1 draft committe specification,” OASIS, 2011.[17] “Observing Resources in CoAP draft-ietf-core-observe-05,” IETF Inter-

net Draft, Mar. 2012.[18] “KNX System Specifications,” KNX Association, 2009.[19] “Calimero - KNXnet/IP (and more) for Java,” http://calimero.

sourceforge.net/, 2012, [Online; accessed 22.09.2012].[20] “BACnet I/P for Java,” http://sourceforge.net/projects/bacnet4j/, 2012,

[Online; accessed 22.09.2012].[21] “OpenEXI,” http://openexi.sourceforge.net/, 2012, [Online; accessed

22.09.2012].[22] M. Neugschwandtner, G. Neugschwandtner, and W. Kastner, “Web Ser-

vices in Building Automation: Mapping KNX to oBIX,” in Proceedingsof the 5th IEEE International Conference on Industrial Informatics(INDIN 2007), 2007.

[23] “oBIX Java Toolkit,” http://sourceforge.net/projects/obix/, 2010, [On-line; accessed 22.09.2012].

[24] J. Elonen and K. Togias, “NanoHTTPD,” http://elonen.iki.fi/code/nanohttpd/, 2012, [Online; accessed 22.09.2012].

[25] P. J. Denning and J. P. Buzen, “The Operational analysis of queuingnetwork models,” ACM Computing Surveys, vol. 10, no. 3, 1978.

[26] R. Miller, “Response time in man-computer conversational transactions,”in Proceedings AFIPS Fall Joint Computer Conference. ACM, Dec.1968, pp. 267–277.

[27] J. Nielsen, Usability engineering. San Francisco, California: MorganKaufmann, 1994.