Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.

Dog2 0


Published on

Dog is a Domotic OSGi Gateway, i.e., a software-based gateway used for controlling domotic environments in a vendor-independent way, thanks to its high-level semantic device modeling strategy and its driver architecture that allows to support different domotic plant technologies.

Published in: Education
  • Be the first to comment

Dog2 0

  1. 1. Dog2.0<br />DomoticOSGi Gateway<br />Emiliano Castellina<br />Politecnicodi Torino, e-Lite research group<br /> <br />
  2. 2. Introduction<br />4-05-2010<br />Dog2.0 Overview<br />2<br /><ul><li>Softwaregateway for controlling domotic environments
  3. 3. Based on the OSGiframework
  4. 4. High-level semantic device modeling
  5. 5. Supports different domotic plant technologies. </li></li></ul><li>OSGiAlliance<br />Open Services Gateway Initiative<br />defines open specifications for <br />Creating and delivering distributed and concurrent applications, called bundles<br />Bundle deployment and installation (core specification)<br />Communication among bundles (core specification)<br />Devices and drivers management (service compendium specification)<br />4-05-2010<br />Dog2.0 Overview<br />3<br />
  6. 6. OSGi definitions<br />OSGi frameworks<br />Implementation in JAVA of the OSGi specifications (equinox, oscar, ..)<br />Manage the life cycle of the bundles<br />Resolve the dependences among bundles<br />Manage Service Registry<br />Bundles<br />Jar file<br />contain java classes and resources<br />Provide and use services<br />Services<br />java objects registered in the framework<br />Defined by java interfaces<br />4-05-2010<br />Dog2.0 Overview<br />4<br />
  7. 7. OSGi Device Access Specification<br />4-05-2010<br />Dog2.0 Overview<br />5<br />DEVICE MANAGER<br />ATTACH<br />DEVICE<br />DRIVER<br />DEVICE CATEGORY<br />
  8. 8. DEVICE MODELING <br />For every type of device you need:<br />the definition of a Device Category interface<br />the implementation of a Device class that implements the Device Category interface<br />the implementation of the Drivers<br />ONLY the 3rd point is really necessary!!<br />In fact, there is a better way than hand-coding device categories and device classes <br />4-05-2010<br />Dog2.0 Overview<br />6<br />
  9. 9. Dog Bundles<br />Dog is composed of 12 core bundles<br />4-05-2010<br />Dog2.0 Overview<br />7<br />
  10. 10. Applications<br />Dog Logical Architecture<br />4-05-2010<br />Dog2.0 Overview<br />8<br />DogDevice Manager<br />DogStateMonitor<br />DogDevice Factory<br />DogStateScheduler<br />DogXmlRPc<br />DogApi<br />Devices<br />DogExecutor<br />Drivers<br />Driver<br />HouseModel<br />Device<br />HouseModel<br />
  11. 11. Command Execution<br />4-05-2010<br />Dog2.0 Overview<br />9<br />
  12. 12. Future<br />Where is semantic?<br />4-05-2010<br />Dog2.0 Overview<br />10<br />Now<br />DogDeviceModel<br />DogDevice Category<br />Configuration<br />Complex Queries<br />HouseModel<br />
  13. 13. Applications<br />Based on DogLeash Libraries<br />C# and Java version<br />Communication through DogXmlRpc bundle <br />4-05-2010<br />Dog2.0 Overview<br />11<br />DogLeash<br />Applications<br />
  14. 14. Temperature Widget<br />4-05-2010<br />Dog2.0 Overview<br />12<br />
  15. 15. Temperature Widget and DogLeash<br />4-05-2010<br />Dog2.0 Overview<br />13<br />Application<br />DogLeash<br />Connect to Dog<br />Give me all temperature sensors<br />List of temperature sensors<br />Monitor TemperatureSensor1 every minute<br />Temperature Measurement<br />Temperature Measurement<br />
  16. 16. Dog Eye<br />4-05-2010<br />Dog2.0 Overview<br />14<br />
  17. 17. Testing Dog in a Real Home<br />4-05-2010<br />Dog2.0 Overview<br />15<br />
  18. 18. Questions?<br />Emiliano Castellina<br /><br />Try it!!<br /><br />