[IEEE 2011 IEEE International Conference on Pervasive Computing and Communications Workshops (PerCom Workshops) - Seattle, WA, USA (2011.03.21-2011.03.25)] 2011 IEEE International Conference on Pervasive Computing and Communications Workshops (PERCOM Workshops) - Towards the future smart products systems design

Download [IEEE 2011 IEEE International Conference on Pervasive Computing and Communications Workshops (PerCom Workshops) - Seattle, WA, USA (2011.03.21-2011.03.25)] 2011 IEEE International Conference on Pervasive Computing and Communications Workshops (PERCOM Workshops) - Towards the future smart products systems design

Post on 22-Mar-2017




0 download


Towards the future smart products systems design Ilkka Niskanen Software Architectures and Platforms VTT Technical Research Centre of Finland Oulu, Finland Ilkka.Niskanen@vtt.fi Julia Kantorovitch Software Architectures and Platforms VTT Technical Research Centre of Finland Espoo, Finland Julia.Kantorovitch@vtt.fi AbstractPervasive computing refers to a seamless and invisible computing environment in which ubiquitous and connected computing devices gather information about the environment. Such computer-enabled artefacts represent a new category of smart products where objects are aware of their surroundings and cable of supporting users in various tasks. However, the complex and dynamic domain of smart products is demanding for the developers, who have to deal with the requirements of context awareness. In this demonstration, we present Simulation Environment, a simulation approach that facilitates the developing of contextual applications relied on future smart product systems. Simulation Environment supports semantic modeling of context information and provides means to generate context change events and simulate sensor values. The integration with different middleware solutions provides well defined interfaces for client applications to register as listeners for the context events. Keywords-pervasive computing; smart products; context awareness; simulation, semantics I. INTRODUCTION Pervasive computing is the trend towards increasingly ubiquitous, connected computing every day artifacts in the environment. By using sensors, computer-enabled artefacts can gather information about the environment and learn something about users. They become aware of their surroundings and are cable of supporting users in various tasks. Such everyday objects represent an entirely new smart product category. It might be a pot which is aware about its content, if the water is boiling or if there is a time to put a salt inside. It might be a wrench which is able to advise right torque value guiding the user in the assembly of aircraft. It might be a car or petrol station, which are aware about weather conditions and are cable to provide the user with the appropriate instructions. Toward user experience and new innovative functionalities, the developers of context aware applications have to enter into a complex and dynamic domain of smart products. For example, to fulfill the requirements of context awareness a context model is needed. The value of semantic technologies has been recognized as a means to automate sensor data interpretation and support context awareness [4, 5]. However, the modeling of context information using semantic technologies may feel complex at first. The complexity of developing context aware applications can be decreased with an appropriate infrastructure that facilitates a variety of common tasks related to context awareness, such as modeling and management of context information [3]. Moreover, during the design and development process it is often not easy to set up an environment with real products and sensors due to time or resource constraints. In these situations it can be useful to simulate some parts of the scenario or some features and functions of future products. Simulation has many benefits. It is useful to justify early design decision and to evaluate alternative design concepts early in the cycle, to test and verify initial ideas without expensive real system tests or simply then real systems elements are not yet available saving significant time and effort. In this demonstration, we present a semantic context modelling and simulation approach to facilitate the developing of contextual applications relied on future smart products systems. II. OUR APPROACH The Simulation Environment supports the semantic modeling of context information by providing means to build and visualize contextual models of different environments without requiring any particular knowledge of semantic technologies such as ontologies. The semantic context models created with the simulator are saved as OWL [2] files that can be published as context sources for more dynamic use. The Simulation environment allows also generating context change events with simple graphical operations. For example, a user may change the location of a person or generate a new set of sensor values emulating every day artifacts augmented by sensing technology, thus allowing client applications to test their behavior against different contextual changes. The integration with different middleware solutions such as MundoCore [1] or OSGi [6] provides well defined interfaces for remote or local client applications to register as listener for the Simulator Environment context events. Fig. 1 presents the different components necessary for simulating contextual changes with the simulator tool. PerCom 2011 Demos978-1-4244-9529-0/11/$26.00 2011 IEEE 313 Figure 1. The Main components of the demo scenario III. DEMONSTRATION To demonstrate the abilities of the Simulation Environment we present here two practical demo scenarios. The both scenarios are inherited from the EU-funded research project Smart Products1, which aims to develop the scientific and technological basis for building new generation of products with embedded proactive knowledge. Smart products help customers, designers and workers to deal with the ever increasing complexity and variety of modern products. A Mundocore communication middleware serves as an integration platform that mediates interactions between different applications and entities. Mundocore is designed for the requirements of pervasive computing and it provides a common set of APIs for different programming languages and supports dynamic reconfiguration. It also addresses the need for different communication abstractions such as Publish/Subscribe. The context aware client application in the first scenario is a prototype under development called Cooking Guide. The Cooking Guide may run in a touch-screen device, for example, and it helps the user during meal preparation by providing detailed, step-by-step explanations. Cooking Guide adapts its behavior according to the context information (e.g. available smart appliances augmented by various sensors, output devices, and user's cooking experience) thus each step can be potentially performed in a different way. Fig. 2 presents the graphical appearance of the Cooking Guide. Figure 2. The Cooking Guide application 1 http://www.smartproducts-project.eu In the second scenario a family is going to their holiday house in the mountains during the winter period. A context aware in-vehicle driver information application guides the driver and controls the audio system during the journey. This scenario illustrates how the Simulation Environment can support the development of contextual applications outside the domain of smart kitchen environments. A. Demo scenario 1 The first demo scenario contains three phases: creating a context model that simulates the kitchen, publishing the context model over Mundocore communication middleware and producing simulated context change events for the Cooking Guide. The Simulation Environment provides graphical interaction methods to build semantic context models. For example, different area instances that represent rooms or any kind of spaces can be created by drawing them with a mouse. Items that represent smart products such as pot, coffee machine, food augmented with sensors (accelerometer, tilt, temperature, etc), or any kind of other objects are instantiated by drag-n dropping them inside areas. Only unique ID values for the added instances has to be given by the user all the other property values such as coordinates and parent areas are calculated automatically. Whenever graphical editing operations are carried out, a textual OWL description of the context model is updated accordingly. The Simulation Environment provides three distinct views to the model: the edit view, the isometric view and the text view. The edit view is a ground plan like view and it enables to add items and areas accurately. Also reassigning the instances locations is easier in this view. The isometric view visualizes models in a more impressive way. The areas and items are drawn with more details than in the edit view and the user should get a better general view of the contextual environment. The text view shows the visualized context model in a textual form, as it is described in an OWL file. This view enables also to examine how the changes made in the visualization have affected the model. Once the context model is created it can be published over a communication middleware, which is the Muncocore in this demonstration. Fig. 3 shows the context model of a kitchen visualized with the isometric view. Figure 3. The isometric visualization of the context model 314The Simulation Environment hides the complexity of a middleware API behind simple graphical user interactions. For example, context sources can be published over Mundocore with a single button - the user only has to specify the name of the Mundocore channel that he wishes to use. Once the context model is published, the Simulation Environment is ready to start sending context events. The Cooking Guide application may utilize context information in several ways. For example, it can adapt its interaction mechanisms if it detects that the radio is on or show more detailed cooking instructions if it discovers that the cooker is inexperienced. Additionally, the cooking step transitions and application logic can be verified based on received sensor measurement data from the simulator. In the first context data simulation example a new person arrives in the kitchen. The Simulation Environment forms an event matrix that describes the context event and sends it to the Mundocore channel from where it is transmitted to the Cooking Guide. Fig. 4 presents the content of the event message. Figure 4. An example context event received by the Cooking Guide Besides of event messages, the Cooking Guide can also acquire context information from the Simulation Environment leveraging SPARQL queries. In this example, the Cooking Guide queries about the user profile of the person that just arrived into the kitchen. The answer reveals that the person is defined as inexperienced in cooking and the Cooking Guide adapts its behavior accordingly. To enhance the ability to simulate different kind of context changes, the Simulation Environment have been extended with SensorSimulator [7] simulation approach. The SensorSimulator allows simulating sensor data from accelerometer, compass, and orientation sensors and in this demo scenario a pot embedded temperature sensor is simulated with it. The temperature value of the sensor is set to be increased 10 degrees in every second and once the temperature reaches 100 degrees of Celsius, a context event is sent. With this kind of sensor data simulations a developer of the Cooking Guide can test the automatic transitions from one cooking step to the next one. B. Demo Scenario 2 In the second scenario we demonstrate the ability of the Simulation Environment to support the development of contextual applications in the domain of motor vehicles. The simulation is started similarly as in the previous scenario modeling the context. In this case the concept of an area represents a road whereas items represent cars, passengers and other entities such as smart petrol station that are essential for the scenario. In Fig. 5 isometric visualizations of the context models that simulate different parts of the car trip scenario are shown. Figure 5. Visualization of the context model simulating the car trip The context aware client application in this scenario is an in-vehicle driver information application that provides instructions for the driver and manages the radio. The application utilizes context information by selecting suitable radio channel according to the user profiles of the passengers, for example. It can also warn the driver if the temperature drops below zero and indicate if the snow chains are mounted appropriately. In this demonstration example different context changes are simulated by changing the driver and the passengers of the car (different user profiles) and simulating various in-vehicle sensors such as orientation or outside/inside temperature sensors. IV. TECHNICAL CONSTRAINTS The demonstration does not have special requirements other than a demo booth or table. The conference attendees will be able to interact with the demonstrator. REFERENCES [1] E. Aitenbichler, J. Kangasharju, and M. Mhlhuser, MundoCore: A Light-weight Infrastructure for Pervasive Computing, Pervasive and Mobile Computing, 2007. [2] G. Antoniou and F. van Harmelen. Web Ontology Language: OWL. In Handbook on Ontologies in Information Systems,, Springer-Verlag, 2003, pp. 6792 [3] K. Henricksen, J. Indulska, and A. Rakotonirainy, Modeling Context Information in Pervasive Computing Systems, in Proc. 1st International Conf. Pervasive Computing (Pervasive 2002), LNCS 2414, Springer-Verlag, 2002, pp. 167180. [4] V. Huang and M. Kashif Javed, Semantic Sensor Information Description and Processing, in Proc. of the 2nd International Conference on Sensor Technologies and Applications, 2008. [5] M. Imai, Y. Hirota, S. Satake, and H. Kawashima, Semantic Sensor Network for Physically Grounded Applications, in Proc. of the 9th International Conference on Control, Automation, Robotics and Vision, 2006. [6] The OSGi alliance; http://www.osgi.org [7] Sensor simulator; http://www.openintents.org/en/node/23 315 /ColorImageDict > /JPEG2000ColorACSImageDict > /JPEG2000ColorImageDict > /AntiAliasGrayImages false /CropGrayImages true /GrayImageMinResolution 200 /GrayImageMinResolutionPolicy /OK /DownsampleGrayImages true /GrayImageDownsampleType /Bicubic /GrayImageResolution 300 /GrayImageDepth -1 /GrayImageMinDownsampleDepth 2 /GrayImageDownsampleThreshold 2.00333 /EncodeGrayImages true /GrayImageFilter /DCTEncode /AutoFilterGrayImages true /GrayImageAutoFilterStrategy /JPEG /GrayACSImageDict > /GrayImageDict > /JPEG2000GrayACSImageDict > /JPEG2000GrayImageDict > /AntiAliasMonoImages false /CropMonoImages true /MonoImageMinResolution 400 /MonoImageMinResolutionPolicy /OK /DownsampleMonoImages true /MonoImageDownsampleType /Bicubic /MonoImageResolution 600 /MonoImageDepth -1 /MonoImageDownsampleThreshold 1.00167 /EncodeMonoImages true /MonoImageFilter /CCITTFaxEncode /MonoImageDict > /AllowPSXObjects false /CheckCompliance [ /None ] /PDFX1aCheck false /PDFX3Check false /PDFXCompliantPDFOnly false /PDFXNoTrimBoxError true /PDFXTrimBoxToMediaBoxOffset [ 0.00000 0.00000 0.00000 0.00000 ] /PDFXSetBleedBoxToMediaBox true /PDFXBleedBoxToTrimBoxOffset [ 0.00000 0.00000 0.00000 0.00000 ] /PDFXOutputIntentProfile (None) /PDFXOutputConditionIdentifier () /PDFXOutputCondition () /PDFXRegistryName () /PDFXTrapped /False /CreateJDFFile false /Description > /Namespace [ (Adobe) (Common) (1.0) ] /OtherNamespaces [ > /FormElements false /GenerateStructure false /IncludeBookmarks false /IncludeHyperlinks false /IncludeInteractive false /IncludeLayers false /IncludeProfiles true /MultimediaHandling /UseObjectSettings /Namespace [ (Adobe) (CreativeSuite) (2.0) ] /PDFXOutputIntentProfileSelector /NA /PreserveEditing false /UntaggedCMYKHandling /UseDocumentProfile /UntaggedRGBHandling /UseDocumentProfile /UseDocumentBleed false >> ]>> setdistillerparams> setpagedevice


View more >