35
Come controllare gli ele.rodomes1ci "Smart" (e perché) con la soluzione aperta JEMMA R. Tomasi, I. Grimaldi Energy@home Ref. Impl. WG Mini Maker Faire Torino, June 6 2015

Come controllareglielerodomesci Smart (e%perché ...€¦ · independent silos solutions! Energy@home vision: Smart Home Eco-system . Energy@home Approach towards international standards

  • Upload
    others

  • View
    0

  • Download
    0

Embed Size (px)

Citation preview

Page 1: Come controllareglielerodomesci Smart (e%perché ...€¦ · independent silos solutions! Energy@home vision: Smart Home Eco-system . Energy@home Approach towards international standards

Come  controllare  gli  ele.rodomes1ci  "Smart"    (e  perché)  con  la  soluzione  aperta  JEMMA  

 

R.  Tomasi,  I.  Grimaldi    Energy@home  Ref.  Impl.  WG  

Mini  Maker  Faire  Torino,  June  6  2015  

Page 2: Come controllareglielerodomesci Smart (e%perché ...€¦ · independent silos solutions! Energy@home vision: Smart Home Eco-system . Energy@home Approach towards international standards

1.  Introduction to Energy@home!

2.  What: The JEMMA Framework!– Architecture & main components!– Key Technologies!

3.  How: Hands-on Demo!–  How to make a configurable Arduino-based wifi switch to control

your appliance!–  How to interact with JEMMA API using Python, Javascript, …!

4.  Why: 5 different ideas developed from projects adopting JEMMA!

Today’s outline

h1p://www.energy-­‐home.it  

Main speakers:!

Danny  Noferi  Joint  Open  Lab  S-­‐Cube  

Lorenzo  Di  Berardino  APIO  

Guest speakers:!

Ivan  Grimaldi  Core  JEMMA  Developer  

     

Riccardo  Tomasi  Energy@home  Ref.  Impl.  

WG  Chair          

Page 3: Come controllareglielerodomesci Smart (e%perché ...€¦ · independent silos solutions! Energy@home vision: Smart Home Eco-system . Energy@home Approach towards international standards

Energy@home Association

3  www.energy-­‐home.it  

Non-­‐profit  Associa1on  Networking  &  pre-­‐compe11ve  tool  

Scope:  smart  home  &  demand  side  management,  not  limited  to  the  italian  market  

Goal:  create  a  market  for  new  Value  Added  Services  based  upon  device-­‐to-­‐device  communica1on  and  demand  side  management  

Approach:    Interna1onal  Standards,    trials,  regula1ons,    scope  synergies  

   

   

     

 

       

 

 

 

 

       

 

     

 

     

 

Page 4: Come controllareglielerodomesci Smart (e%perché ...€¦ · independent silos solutions! Energy@home vision: Smart Home Eco-system . Energy@home Approach towards international standards

4  

Eco-system:!– Adds new value into the overall system!– Provides a homogenous user

experience !– Exploit scope synergies!– Bases for a unifying service !

provisioning architecture!!!!A cross-services partnership-oriented horizontal solution versus vertical independent silos solutions!

Energy@home vision: Smart Home Eco-system

www.energy-­‐home.it  

Page 5: Come controllareglielerodomesci Smart (e%perché ...€¦ · independent silos solutions! Energy@home vision: Smart Home Eco-system . Energy@home Approach towards international standards

Energy@home Approach towards international standards

WG Standards

Data Model IEEE P2030.5 IEC CIM ZigBee SEP 2.x

ETSI, Hgi, OSGi, BBF, EEBus, Agora

Application Layer

ZigBee HA 1.2

Protocols

ZigBee Pro (in progress)

Trials

Use Cases

TR 62746-2

WG Use Cases

Policies & Regulations

WG Policies

Reference Implementation

Demo WG Ref Impl

•  OSGi  •  Implements  RFC  196  

Device  AbstracNon  Layer  •  Complies  with  ZigBee  

Gateway  Device  specs  

For  more  insight  on  the  Energy@home  vision  come  to:    

Area  Talk  at  14:30    

«Smart  Home  ed  efficienza  energe1ca:  Energy@Home  a  Casa  Jasmina»    

 Fabio  Belifemine  (Energy@home  Director)  

 

Page 6: Come controllareglielerodomesci Smart (e%perché ...€¦ · independent silos solutions! Energy@home vision: Smart Home Eco-system . Energy@home Approach towards international standards

6  

•  JEMMA: Java Energy ManageMent Application is the CEMS reference implementation delivered by Energy@home!

•  It can be used to rapidly prototype and deploy smart energy applications at home!

•  First Released (v0.0.1) in October 2013!•  Based on an a CEMS solution developed and validated in the

Energy@home trials!•  Initial code contribution by Telecom Italia!•  Current version: v0.9.2!•  Hosted on GitHub!

JEMMA: the Energy@home CEMS

h1p://www.energy-­‐home.it  

h.p://jemma.energy-­‐home.org  

Page 7: Come controllareglielerodomesci Smart (e%perché ...€¦ · independent silos solutions! Energy@home vision: Smart Home Eco-system . Energy@home Approach towards international standards

7  

•  Most of JEMMA has been released under the LGPL (Lesser General Public License v3) !

•  LGPLv3 is a permissive “copyleft” license:!– it allows bundling and re-distributing the software for any

purpose including commercial, also integrating 3rd party components released under other licenses !

•  It is thus allowed:!– To freely share JEMMA and its source code!– To extend and integrate JEMMA with other (free and non-

free) products or services !

JEMMA: License

h1p://www.energy-­‐home.it  

Page 8: Come controllareglielerodomesci Smart (e%perché ...€¦ · independent silos solutions! Energy@home vision: Smart Home Eco-system . Energy@home Approach towards international standards

8  

DAL - Device Abstraction Layer

h1p://www.energy-­‐home.it  

l  Device Abstraction Layer is a draft OSGi standard (RFC 196) expected for release within 2015!

l  It provides unified, self-descriptive API to access devices !

l  It supports the inter-connection of heterogeneous protocol connectors!

l  It expose devices functionalities in granular fashion e.g. in terms of Functions, each exposing a set of Properties and Operations!

l  Reference implementations already available or under development for other Smart Home Standards beyond ZigBee!l  e.g. enOcean, z-Wave, KNX, etc.!

*  hLps://github.com/osgi/design/raw/master/rfcs/rfc0196/rfc-­‐0196-­‐DeviceAbstracTonLayer.pdf  

Page 9: Come controllareglielerodomesci Smart (e%perché ...€¦ · independent silos solutions! Energy@home vision: Smart Home Eco-system . Energy@home Approach towards international standards

9  

DAL Philosophy

h1p://www.energy-­‐home.it  

OSGi    Context  

Device  

Device  

Device  

Device  

Device  

Device  

FuncNon  

FuncNon  

FuncNon  

FuncNon  

Property  

Property  

Property  

OperaNon  

OperaNon  

OperaNon  

SmartPlug  

Washing  Machine  

Metering  

OnOff  

Reverse  

Status  

(Examples  in  red)  

Page 10: Come controllareglielerodomesci Smart (e%perché ...€¦ · independent silos solutions! Energy@home vision: Smart Home Eco-system . Energy@home Approach towards international standards

10  

Device Abstraction Layer APIs

h1p://www.energy-­‐home.it  

•  In JEMMA, the DAL is the recommended interface to interact with devices for both Control operations and eventing.!

!!!!!Accessible through!REST APIs!•  Get devices, devices functionalities and invoke them (e.g. switch

on a lamp)!WebSocket APIs!•  Obtain events from devices (e.g. power consumption changed)!

Device  REST  

WebSocket  

Control  

EvenNng  

3rd  parNes  App  

Page 11: Come controllareglielerodomesci Smart (e%perché ...€¦ · independent silos solutions! Energy@home vision: Smart Home Eco-system . Energy@home Approach towards international standards

11  

Jemma stack

h1p://www.energy-­‐home.it  

JEMMA  Home  AutomaNon  pla\orm  (JavaGAL,  ZigBee  network  manage,  Home  AuthomaNon  Core)  

JEMMA  DAL  adapter  

OSGi  DAL  Device  service  OSGi  DAL  Device  service  OSGi  DAL  Device  

service  OSGi  DAL  

FuncNon  service  

DAL  web  APIs  (HTTP  REST  and  WebSocket)  

Gateway  environment  

3rd  parNes  apps  

LAN/Internet  

Page 12: Come controllareglielerodomesci Smart (e%perché ...€¦ · independent silos solutions! Energy@home vision: Smart Home Eco-system . Energy@home Approach towards international standards

12  

1 - Download test environment: https://goo.gl/TJFgqY!!2 - Exec start.bat (Windows) or start.sh (Linux)!!3 - Open your web Browser: http://localhost:8080/virtualhome/index.html!(HINT: right click -> view source)!!

Rapid development 3rd parties javascript apps

h1p://www.energy-­‐home.it  

Page 13: Come controllareglielerodomesci Smart (e%perché ...€¦ · independent silos solutions! Energy@home vision: Smart Home Eco-system . Energy@home Approach towards international standards

13  

GET /devices/

h1p://www.energy-­‐home.it  

$.getJSON(‘http://localhost:8080/api/devices’,    function(data){      //process  data.result    }  

);  

{          "code":  200,          "result":          [                  {                          "dal.device.status":  2,                          "dal.device.UID":  "ZigBee:12345",                          "dal.device.name":«Door  Lock",                          "dal.device.driver":  "ZigBee",                  },  ….          ]  }  

Page 14: Come controllareglielerodomesci Smart (e%perché ...€¦ · independent silos solutions! Energy@home vision: Smart Home Eco-system . Energy@home Approach towards international standards

14  

GET devices/${device_uid}/functions "

h1p://www.energy-­‐home.it  

$.getJSON(  ‘http://localhost:8080/api/devices/ZigBee:12345/functions’,  

 function(data){      //process  data.result    }  

);  

{          "code":  200,          "result":          [                  {                              dal.funcNon.UID:  "ZigBee:12345:DoorLock",                              dal.funcNon.device.UID:  "ZigBee:12345",                                dal.funcNon.operaNon.names:  ["open",  "close"]                              dal.funcNon.property.names:  ["status"]                                                },  ….          ]  }  

Page 15: Come controllareglielerodomesci Smart (e%perché ...€¦ · independent silos solutions! Energy@home vision: Smart Home Eco-system . Energy@home Approach towards international standards

15  

POST /functions/${function_uid}

h1p://www.energy-­‐home.it  

$.ajax({      type:  'POST',  

               url:  "http://localhost:8080/functions/ZigBee:12345:DoorLock,      data:  JSON.stringify({operation:"getStatus"}),  

               success:  function(data)  {                                        //process  data                                          }                });      

{        "code":200,  "result":        {          status:  "OPEN",            Nmestamp:  1433410604989      }  }  

Page 16: Come controllareglielerodomesci Smart (e%perché ...€¦ · independent silos solutions! Energy@home vision: Smart Home Eco-system . Energy@home Approach towards international standards

16  

WebSocket events"

h1p://www.energy-­‐home.it  

websocket  =  new  WebSocket("ws://localhost:8080/ws");  websocket.send('{"dal.funcNon.UID":"ZigBee:12345:DoorLock","dal.funcNon.property.name":"*"}');  websocket.onmessage  =  function(evt)  {  

 //parse  evt  };  

{      "topic":"org/osgi/service/dal/FuncNonEvent/PROPERTY_CHANGED",      "properNes":  

{  "dal.funcNon.UID":"ZigBee:ah.app.12345:DoorLock",  "dal.funcNon.property.name":"status"  "dal.funcNon.property.value":            {                            "status":"CLOSED",                            "Nmestamp":1433413157458            }  }  

}  

Page 17: Come controllareglielerodomesci Smart (e%perché ...€¦ · independent silos solutions! Energy@home vision: Smart Home Eco-system . Energy@home Approach towards international standards

17  

•  JEMMA can interact with any device which can be registered through the DAL Specifications!

•  It is compatible with all ZigBee HA 1.2 devices and a few WiFi native devices!

•  It has currently been verified with a large number of different devices and appliances e.g.:!– environmental sensors, smart plugs, switches, shutter

controls, door locks, webcams, ovens, washing machines, fridges, etc. !– Full list available on the JEMMA Website !

•  The hands-on session will now show how devices can be accessed from any REST-capable application or device using JEMMA!

Verified Devices / Smart Appliances

h1p://www.energy-­‐home.it  

Page 18: Come controllareglielerodomesci Smart (e%perché ...€¦ · independent silos solutions! Energy@home vision: Smart Home Eco-system . Energy@home Approach towards international standards

18  

Hands-on Session Setup

h1p://www.energy-­‐home.it  

ATmega32u4   Atheros  AR9331   JEMMA  HAG  

WiFi  

A  (very!)  simple  HW  Bu.on  

I/O  

Any  Device  …    

DAL  

Bu1on    Example  

JEMMA  DAL  Python  Client  

Bridge  Lib  

Page 19: Come controllareglielerodomesci Smart (e%perché ...€¦ · independent silos solutions! Energy@home vision: Smart Home Eco-system . Energy@home Approach towards international standards

19  

•  For simplicity, let’s use http://www.arduino.cc/en/Tutorial/Button!

Yun Hardware Sketch

h1p://www.energy-­‐home.it  

Page 20: Come controllareglielerodomesci Smart (e%perché ...€¦ · independent silos solutions! Energy@home vision: Smart Home Eco-system . Energy@home Approach towards international standards

20  

•  A combination of:!–  http://www.arduino.cc/en/Tutorial/Button and!–  http://www.arduino.cc/en/Tutorial/ShellCommands!

•  Check out the commented example on GitHub!

Yun Software Sketch

h1p://www.energy-­‐home.it  

Page 21: Come controllareglielerodomesci Smart (e%perché ...€¦ · independent silos solutions! Energy@home vision: Smart Home Eco-system . Energy@home Approach towards international standards

21  

•  Simple Python bindings to interact with the JEMMA DAL API via REST are available on GitHub.!–  ismb/py-jemma-dal-rest-client!

•  A simple wrapper script is available to use bindings from any Linux-like shell. Supported operations:!– DAL Device discovery!– DAL Functions discovery!– Access to DAL property get/set and DAL operations!

•  Examples (from the README):!–  ./py-jemma-dal-rest-client.py -a 192.168.10.103 -c listd!–  ./py-jemma-dal-rest-client.py -a 192.168.10.103 -c listf -d

"ZigBee:EletricHeater:ah.app.3521399293210526015-8"!–  ./py-jemma-dal-rest-client.py -a 192.168.10.103 -c operate -d

"ZigBee:EletricHeater:ah.app.3521399293210526015-8" -f "OnOff" -o "reverse"!

The JEMMA Python Bindings

h1p://www.energy-­‐home.it  

Page 22: Come controllareglielerodomesci Smart (e%perché ...€¦ · independent silos solutions! Energy@home vision: Smart Home Eco-system . Energy@home Approach towards international standards

22  

The Yun AR9331 already comes with Python 2.7 pre-installed. You just need to!•  Copy ismb/py-jemma-dal-rest-client (e.g. via SFTP) to

Yun!•  Test it from console (e.g. from SSH)!•  Hook the right shell command in the

p.runShellCommand(…) clause in the Arduino Sketch.!•  … cross fingers!!

To call the JEMMA DAL from Yun

h1p://www.energy-­‐home.it  

Page 23: Come controllareglielerodomesci Smart (e%perché ...€¦ · independent silos solutions! Energy@home vision: Smart Home Eco-system . Energy@home Approach towards international standards

23  

•  The following slides show some explanatory use cases from projects/initiatives adopting JEMMA or some of its components !

•  The list is not exhaustive – but it is just meant to provide some ideas about current and future potentials of the JEMMA approach.!

And now …. the «why» !

h1p://www.energy-­‐home.it  

Page 24: Come controllareglielerodomesci Smart (e%perché ...€¦ · independent silos solutions! Energy@home vision: Smart Home Eco-system . Energy@home Approach towards international standards

24  

•  A number of use cases specified by Energy@home are implemented in the default JEMMA distribution!–  Visualization of Energy/Power information from meter

and appliances!– Visualization of costs (cumulative cost, before cycle

starts, etc. …)!– Visualization of historic consumption!– Energy production forecast !– Overload warning & management!– Scheduling devices based on production/cost

forecast!– …!

Some Energy@home use cases * …

h1p://www.energy-­‐home.it  

*  Full  «Energy@home  Use  Case»  document  freely  available  at  hLp://www.energy-­‐home.it  

Page 25: Come controllareglielerodomesci Smart (e%perché ...€¦ · independent silos solutions! Energy@home vision: Smart Home Eco-system . Energy@home Approach towards international standards

25  

l  EU-project with 7 partners – expected to be completed in 2016!l  Piloted in the island of Fur in the municipality of Skive , in the area

served by GreenCom Partner EnergiMidt!l  21 Real Households instrumented with GreenCom solutions

featuring a combination of home automation systems, PV installations, Heat Pumps, Energy Storage!

l  Pilot Co-funded by EC (providing ICT components) and Danish National programmes (co-funding appliances) – but with a significant financial investment by prosumers!

Case 1: The GreenCom project

h1p://www.energy-­‐home.it  

Page 26: Come controllareglielerodomesci Smart (e%perché ...€¦ · independent silos solutions! Energy@home vision: Smart Home Eco-system . Energy@home Approach towards international standards

26  

Case 1: GreenCom - Devices

h1p://www.energy-­‐home.it  

Source:  Fronius  

•  Storage:  5  kW  hybrid  Inverter    with  4,5  kWh  ba1ery.  

•  Air  to  water  Heat  Pumps  

Source:  Nibe  (VVM310)  

•  PV  installa1ons:  various  sizes  

•  Sub-­‐meters,  Smart  Plugs  

Source:  Develco,  ABB  

•  Indoor  and  outdoor  Temperature,  Humidity,  Occupancy  Sensors  

Page 27: Come controllareglielerodomesci Smart (e%perché ...€¦ · independent silos solutions! Energy@home vision: Smart Home Eco-system . Energy@home Approach towards international standards

27  

Case 1: GreenCom - sharing flexibility with the (micro) grid

h1p://www.energy-­‐home.it  

•  Each of the 21 Houses is provided with the OSGi-based GreenCom Gateway, feeding data into a dedicated cloud-based MicroGrid Manager !

l  Depending  on  contractual  agreements,  data  and  control  capabili1es  are  shared  among  stakeholders  i.e.,  Prosumer,  DSO,  Aggregator,  Service  Provider  which  access  to  different  “views”  on  the  GreenCom  systems  

Source:  GreenCom  Aggregator  Dashboard  

Source:  GreenCom  User  GUI  

Users  have  signed  a  contract  which  secures  cheaper  hea1ng  cost    in  exchange  for  their  flexibility  

Page 28: Come controllareglielerodomesci Smart (e%perché ...€¦ · independent silos solutions! Energy@home vision: Smart Home Eco-system . Energy@home Approach towards international standards

28  

•  SORRISO is a regional-funded project («Internet of Data» call) to be completed in 2015!

•  Expected outcomes:!–  Integration with the «Smart Data

Platform» realized by CSI for the Piedmont region!–  Full Integration of an existing «made in

Piedmont» home storage solution developed by a local company!–  Validation in 2 residential and 2 public

buildings !•  Istituto Vallauri (Fossano)!•  Istituto Comprensivo Bruino!

–  Engagement of professors and students (training activities, etc.)!

Case 2: The SORRISO Living Lab

h1p://www.energy-­‐home.it  

Page 29: Come controllareglielerodomesci Smart (e%perché ...€¦ · independent silos solutions! Energy@home vision: Smart Home Eco-system . Energy@home Approach towards international standards

29  

•  EU project with 9 partners!•  Multi-agent systems attached to !

Jemma gateways!•  Jemma is being extended to provide !

support of Mains Meters from !UK, Belgium and France!

•  Multi-agent systems exploited to take right decision in each point of the grid, taking into account a range of different conditions, constraints and end-user preferences!!

Case 3: MAS2TERING

h1p://www.energy-­‐home.it  

Page 30: Come controllareglielerodomesci Smart (e%perché ...€¦ · independent silos solutions! Energy@home vision: Smart Home Eco-system . Energy@home Approach towards international standards

30  

UC1: Secure and effective connection of commercial home energy boxes with public DSO smart meter and consumption profile optimization - exploit the in-home monitoring and control systems on Telecom’s infrastructure deployable for the HAN management!

Case 3: MAS2TERING - Use Cases

h1p://www.energy-­‐home.it  

UC2: District energy management - how the multi-agent technology can be effectively applied to a decentralized energy management system at a district scale for local dispatching!  

UC3: Enhancing grid reliability, performance and resilience - demonstrate that local or district-level energy management, combined with effective grid monitoring and enhanced DSO / ESCO connections, can significantly improve the flexibility and global balancing of the grid!  

Page 31: Come controllareglielerodomesci Smart (e%perché ...€¦ · independent silos solutions! Energy@home vision: Smart Home Eco-system . Energy@home Approach towards international standards

31  

Case 4: APIO, easy and open Platform for “Internet of Things”"

h1p://www.energy-­‐home.it  

Page 32: Come controllareglielerodomesci Smart (e%perché ...€¦ · independent silos solutions! Energy@home vision: Smart Home Eco-system . Energy@home Approach towards international standards

Case 5: co-existance with other frameworks

h1p://www.energy-­‐home.it  

Freedomotic*

Northbound  API  

Southbound  API  

Jemma OffTheShelf DIY

Icon  Credits:  Felipe  Camara,  Kari  Gainor,  Juan  Garces,  Leonardo  Guerra,  Joao  Miranda,  Alex  Auda  Samora  from  the  Noun  Project  

*  Note:  this  is  just  an  example  –  but  several  integraTon  acTviTes  are  being  performed  around  the  world   using   JEMMA  with   other  open   source   projects   such   as  O p enHAB / E c l i p s e ,   DOG ,  OpenADR,   LinkSmart,   VIRTUS,    etc.  

Page 33: Come controllareglielerodomesci Smart (e%perché ...€¦ · independent silos solutions! Energy@home vision: Smart Home Eco-system . Energy@home Approach towards international standards

33  

Case 5: interaction through augmented reality

h1p://www.energy-­‐home.it  

Freedomotic Jemma

Page 34: Come controllareglielerodomesci Smart (e%perché ...€¦ · independent silos solutions! Energy@home vision: Smart Home Eco-system . Energy@home Approach towards international standards

34  

Case 5: Voice control

h1p://www.energy-­‐home.it  

Freedomotic Jemma Voice recog! NLP!

Page 35: Come controllareglielerodomesci Smart (e%perché ...€¦ · independent silos solutions! Energy@home vision: Smart Home Eco-system . Energy@home Approach towards international standards

35  

•  To know more:!–  Stay in touch with latest news from Energy@home on

http://www.energy-home.it !–  check tutorials on http://jemma.energy-home.org!–  contact us on the JEMMA Mailing list!•  (see website, «contacts» section)!

•  Information about projects available at:!–  http://www.greencom-project.eu/!–  http://www.progetto-sorriso.it/ !–  http://www.mas2tering.eu/ !–  http://jol.telecomitalia.com/jolscube/ !–  http://www.apio.cc/ !

Thanks for your attention !

h1p://www.energy-­‐home.it