SlideShare ist ein Scribd-Unternehmen logo
1 von 36
Downloaden Sie, um offline zu lesen
The World is the Computer
                            and the programmer is You


Davide Carboni
Surfing the 3rd wave, Internet of
Things in Sardinia Workshop
Pula 14 04 2010




                                                        1
Time
•   1956:There's Plenty of Room at the Bottom -->MEMS
    (Feynman)
•   1974: TCP/IP (V.Cerf, R Kahn)
•   1990: Web (T.Berners Lee)
•   1993: Vision of Ubiquitous Computing (Weiser)
•   1998: Jini (Sun)
•   1999: Internet of things (AutoID labs)
•   2000: REST (Roy Fielding)
•   2001: Smart Dust (Pister)
•   2003: Project JXTA-C: Enabling a Web of Things
•   2004: Vision of Spime (B. Sterling)
•   2004: Web 2.0 (O'Reilly or DiNucci in 1999)
•   2008: (Restful) Web of Things Manifesto (Trifa et al.)
                                                             2
Models and tools

• to understand Ubiquitous
  Computing we must make more
  systematic use of models [...]
• how models can form a hierarchy,
  allowing them to be combined and
  higher models to explain lower
  ones
  – Robin Milner

                                     3
Top down Vs bottom up

• Bottom up
  – Few simple rules, many subjects,
    many objects
  – Integrative levels, emergent
    complexity,evolutionary approach
• Top Down
  – Many complex rules and logic, one
    subject, many objects
  – Creational approach
                                        4
Projects

• Languages, tools, and models for
  Web of Things and Wireless Sensor
  Computing
  – Hyperpipe (bottom up)
  – PySense (top down)




                                      5
Top Down




           6
wireless sensor
networking today




                   7
PySense

• Wireless Sensor Computing
  – not only simple sensors connected to
    a central computer, but rather
    elements capable of computation in a
    distributed system
• Computation Vs Communication
  – One byte sent demands 100 times the
    energy of an integer instruction


                                           8
Sensing, 
routing, 
computing




            9
• given an energy consumption
  model E and an application code C,
  there exists a partitioning of code
  C={c1,c2,...,cn} and a set Tx of
  transmissions Tx={tx1,tx2,...,txk}
  which is optimal for E



                                        10
• Node-level programming
  – program for each node type (error
    prone, difficult, only for geeks)
• Network as DB
  – Good but limited to queries (TinyDB)
• Macroprogramming
  – Program the net as a whole, the tool
    partition the code on the nodes
    automatically
                                           11
PySense

• PySense
  – Language (hosted on decorators) and
    API
  – Base Runtime Environment (based on
    Python 2.6)
  – Remote Runtime Environment (based
    on Python-on-a-chip)



                                          12
PySense Regions

Region((0,0,100,100)) | Region(“/foo/3/312”)




                                               13
@mote
class M:
  def getX(self):pass
  def setY(self,y):pass

       Finds a mote m with X,Y
m=M()
m.getX()        Read X from m


                                 14
@mote
class M:
   def getX(self):pass

   @onboard
   def f(self,args):<some code here>

   @onbase
   def g(self,args):<some code>

   @auto
   def h(self,args):<some code>


                                       15
Simple program

@mote
class CO2Sense:
  def getConc(self):
    return self.x

values=[c.getConc() for c in 
region.items(CO2Sense)]




                                16
A little better

@mote
class CO2Sense:
  def getConc(self):return self.conc


class CO2Cluster(Cluster)
  @onboard
  def average(self):
    return sum([m.getConc() for m in self.motes]) 
/ len(self.motes)


values=CO2Cluster(region.items(CO2Sense)).average
()
                                                     17
Bottom up




Picture released under (CC) attribution share­alike by alasis on Flickr    18
Only for geeks

ls ­l | less


curl 
"http://en.wikipedia.org/wiki/Pipeline_(Unix)" 
| 
sed 's/[^a­zA­Z ]/ /g' | 
tr 'A­Z ' 'a­zn' | 
grep '[a­z]' | 
sort ­u | 
comm ­23 ­ /usr/share/dict/words



                                                  19
Also for bloggers




                    20
Web 1.0            Pages linked
Web 2.0            People, content, social
Web 3.0            Structured data and 
                   services
Web of Things      Physical 
                   objects,sensors, 
                   effectors
Wiki of Things,    People bend the rules, 
Physical Mashups   new unexpected apps

                                             21
Hyperpipe

• Hyperpipes =architecture for the
  Web of Things
• Point-select-connect interaction
• Based on pi-calculus / SOA




                                     22
– Every thing is a process
– Things have public operations
  (channels)
– Things exchange data through
  channels
– Hyper pipes connect objects'
  channels
– Hyper pipes are processes


                                  23
sensor

src()­>data
                          effector
sink(data)
f(data)­>data'

                          processor




                                      24
src()­>data   sink(data)




                           25
src()­>data         sink(data')




              f(data)­>data'




                                  26
src()­>video   sink(video)




                             27
src()­>video            sink(video)

           Hyper pipe




                                      28
29
30
31
32
Selecting two different actions
from two different objects
(or even from the same object)
a pipe can be constructed.




Thanks to 
Alessandro Giordano
and Alberto Serra 
for the prototype




                                  33
stream()­>video           sink(video)

   snapshot()­>image

  faceRecognition()­>event




wsdl




                                           34
35
References

• Macroprogramming
  http://fiji.eecs.harvard.edu/Macroprogramming
• Enowireless - http://opensource.crs4.it/enowireless/
• Wireless Wires: Let the Users Build the Ubiquitous
  ComputerIn Proc. of MUM 2007 - 6th Int.
  Conference on Mobile and Ubiquitous Multimedia.
  ACM Press.
• http://en.wikipedia.org/wiki/Mark_Weiser




                                                         36

Weitere ähnliche Inhalte

Mehr von CRS4 Research Center in Sardinia

GIS partecipativo. Laura Muscas e Valentina Spanu (CRS4), Cagliari, 21 Ottobr...
GIS partecipativo. Laura Muscas e Valentina Spanu (CRS4), Cagliari, 21 Ottobr...GIS partecipativo. Laura Muscas e Valentina Spanu (CRS4), Cagliari, 21 Ottobr...
GIS partecipativo. Laura Muscas e Valentina Spanu (CRS4), Cagliari, 21 Ottobr...CRS4 Research Center in Sardinia
 
Alfonso Damiano (Università di Cagliari) ICT per Smart Grid
Alfonso Damiano (Università di Cagliari) ICT per Smart Grid Alfonso Damiano (Università di Cagliari) ICT per Smart Grid
Alfonso Damiano (Università di Cagliari) ICT per Smart Grid CRS4 Research Center in Sardinia
 
Dinamica Molecolare e Modellistica dell'interazione di lipidi col recettore P...
Dinamica Molecolare e Modellistica dell'interazione di lipidi col recettore P...Dinamica Molecolare e Modellistica dell'interazione di lipidi col recettore P...
Dinamica Molecolare e Modellistica dell'interazione di lipidi col recettore P...CRS4 Research Center in Sardinia
 
Innovazione e infrastrutture cloud per lo sviluppo di applicativi web e mobil...
Innovazione e infrastrutture cloud per lo sviluppo di applicativi web e mobil...Innovazione e infrastrutture cloud per lo sviluppo di applicativi web e mobil...
Innovazione e infrastrutture cloud per lo sviluppo di applicativi web e mobil...CRS4 Research Center in Sardinia
 
ORDBMS e NoSQL nel trattamento dei dati geografici parte seconda. 30 Sett. 2015
ORDBMS e NoSQL nel trattamento dei dati geografici parte seconda. 30 Sett. 2015ORDBMS e NoSQL nel trattamento dei dati geografici parte seconda. 30 Sett. 2015
ORDBMS e NoSQL nel trattamento dei dati geografici parte seconda. 30 Sett. 2015CRS4 Research Center in Sardinia
 
Sistemi No-Sql e Object-Relational nella gestione dei dati geografici 30 Sett...
Sistemi No-Sql e Object-Relational nella gestione dei dati geografici 30 Sett...Sistemi No-Sql e Object-Relational nella gestione dei dati geografici 30 Sett...
Sistemi No-Sql e Object-Relational nella gestione dei dati geografici 30 Sett...CRS4 Research Center in Sardinia
 
Elementi di sismica a riflessione e Georadar (Gian Piero Deidda, UNICA)
Elementi di sismica a riflessione e Georadar (Gian Piero Deidda, UNICA)Elementi di sismica a riflessione e Georadar (Gian Piero Deidda, UNICA)
Elementi di sismica a riflessione e Georadar (Gian Piero Deidda, UNICA)CRS4 Research Center in Sardinia
 
Near Surface Geoscience Conference 2014, Athens - Real-­time or full­‐precisi...
Near Surface Geoscience Conference 2014, Athens - Real-­time or full­‐precisi...Near Surface Geoscience Conference 2014, Athens - Real-­time or full­‐precisi...
Near Surface Geoscience Conference 2014, Athens - Real-­time or full­‐precisi...CRS4 Research Center in Sardinia
 
Luigi Atzori Metabolomica: Introduzione e review di alcune applicazioni in am...
Luigi Atzori Metabolomica: Introduzione e review di alcune applicazioni in am...Luigi Atzori Metabolomica: Introduzione e review di alcune applicazioni in am...
Luigi Atzori Metabolomica: Introduzione e review di alcune applicazioni in am...CRS4 Research Center in Sardinia
 
Scripting e DataWarehouse sui Big Data. Luca Pireddu (CRS4)
Scripting e DataWarehouse sui Big Data. Luca Pireddu (CRS4)Scripting e DataWarehouse sui Big Data. Luca Pireddu (CRS4)
Scripting e DataWarehouse sui Big Data. Luca Pireddu (CRS4)CRS4 Research Center in Sardinia
 
Modellistica molecolare e applicazioni alla sclerosi multipla
Modellistica molecolare e applicazioni alla sclerosi multiplaModellistica molecolare e applicazioni alla sclerosi multipla
Modellistica molecolare e applicazioni alla sclerosi multiplaCRS4 Research Center in Sardinia
 

Mehr von CRS4 Research Center in Sardinia (20)

GIS partecipativo. Laura Muscas e Valentina Spanu (CRS4), Cagliari, 21 Ottobr...
GIS partecipativo. Laura Muscas e Valentina Spanu (CRS4), Cagliari, 21 Ottobr...GIS partecipativo. Laura Muscas e Valentina Spanu (CRS4), Cagliari, 21 Ottobr...
GIS partecipativo. Laura Muscas e Valentina Spanu (CRS4), Cagliari, 21 Ottobr...
 
Alfonso Damiano (Università di Cagliari) ICT per Smart Grid
Alfonso Damiano (Università di Cagliari) ICT per Smart Grid Alfonso Damiano (Università di Cagliari) ICT per Smart Grid
Alfonso Damiano (Università di Cagliari) ICT per Smart Grid
 
Big Data Infrastructures - Hadoop ecosystem, M. E. Piras
Big Data Infrastructures - Hadoop ecosystem, M. E. PirasBig Data Infrastructures - Hadoop ecosystem, M. E. Piras
Big Data Infrastructures - Hadoop ecosystem, M. E. Piras
 
Big Data Analytics, Giovanni Delussu e Marco Enrico Piras
 Big Data Analytics, Giovanni Delussu e Marco Enrico Piras  Big Data Analytics, Giovanni Delussu e Marco Enrico Piras
Big Data Analytics, Giovanni Delussu e Marco Enrico Piras
 
Dinamica Molecolare e Modellistica dell'interazione di lipidi col recettore P...
Dinamica Molecolare e Modellistica dell'interazione di lipidi col recettore P...Dinamica Molecolare e Modellistica dell'interazione di lipidi col recettore P...
Dinamica Molecolare e Modellistica dell'interazione di lipidi col recettore P...
 
Innovazione e infrastrutture cloud per lo sviluppo di applicativi web e mobil...
Innovazione e infrastrutture cloud per lo sviluppo di applicativi web e mobil...Innovazione e infrastrutture cloud per lo sviluppo di applicativi web e mobil...
Innovazione e infrastrutture cloud per lo sviluppo di applicativi web e mobil...
 
ORDBMS e NoSQL nel trattamento dei dati geografici parte seconda. 30 Sett. 2015
ORDBMS e NoSQL nel trattamento dei dati geografici parte seconda. 30 Sett. 2015ORDBMS e NoSQL nel trattamento dei dati geografici parte seconda. 30 Sett. 2015
ORDBMS e NoSQL nel trattamento dei dati geografici parte seconda. 30 Sett. 2015
 
Sistemi No-Sql e Object-Relational nella gestione dei dati geografici 30 Sett...
Sistemi No-Sql e Object-Relational nella gestione dei dati geografici 30 Sett...Sistemi No-Sql e Object-Relational nella gestione dei dati geografici 30 Sett...
Sistemi No-Sql e Object-Relational nella gestione dei dati geografici 30 Sett...
 
Elementi di sismica a riflessione e Georadar (Gian Piero Deidda, UNICA)
Elementi di sismica a riflessione e Georadar (Gian Piero Deidda, UNICA)Elementi di sismica a riflessione e Georadar (Gian Piero Deidda, UNICA)
Elementi di sismica a riflessione e Georadar (Gian Piero Deidda, UNICA)
 
Near Surface Geoscience Conference 2014, Athens - Real-­time or full­‐precisi...
Near Surface Geoscience Conference 2014, Athens - Real-­time or full­‐precisi...Near Surface Geoscience Conference 2014, Athens - Real-­time or full­‐precisi...
Near Surface Geoscience Conference 2014, Athens - Real-­time or full­‐precisi...
 
SmartGeo/Eiagrid portal (Guido Satta, CRS4)
SmartGeo/Eiagrid portal (Guido Satta, CRS4)SmartGeo/Eiagrid portal (Guido Satta, CRS4)
SmartGeo/Eiagrid portal (Guido Satta, CRS4)
 
Luigi Atzori Metabolomica: Introduzione e review di alcune applicazioni in am...
Luigi Atzori Metabolomica: Introduzione e review di alcune applicazioni in am...Luigi Atzori Metabolomica: Introduzione e review di alcune applicazioni in am...
Luigi Atzori Metabolomica: Introduzione e review di alcune applicazioni in am...
 
Mobile Graphics (part2)
Mobile Graphics (part2)Mobile Graphics (part2)
Mobile Graphics (part2)
 
Mobile Graphics (part1)
Mobile Graphics (part1)Mobile Graphics (part1)
Mobile Graphics (part1)
 
2015 crs4-seminar-massive-models-full
2015 crs4-seminar-massive-models-full2015 crs4-seminar-massive-models-full
2015 crs4-seminar-massive-models-full
 
A Survey of Compressed GPU-based Direct Volume Rendering
A Survey of Compressed GPU-based Direct Volume RenderingA Survey of Compressed GPU-based Direct Volume Rendering
A Survey of Compressed GPU-based Direct Volume Rendering
 
Scripting e DataWarehouse sui Big Data. Luca Pireddu (CRS4)
Scripting e DataWarehouse sui Big Data. Luca Pireddu (CRS4)Scripting e DataWarehouse sui Big Data. Luca Pireddu (CRS4)
Scripting e DataWarehouse sui Big Data. Luca Pireddu (CRS4)
 
Big Data & Hadoop. Simone Leo (CRS4)
Big Data & Hadoop. Simone Leo (CRS4)Big Data & Hadoop. Simone Leo (CRS4)
Big Data & Hadoop. Simone Leo (CRS4)
 
Modellistica molecolare e applicazioni alla sclerosi multipla
Modellistica molecolare e applicazioni alla sclerosi multiplaModellistica molecolare e applicazioni alla sclerosi multipla
Modellistica molecolare e applicazioni alla sclerosi multipla
 
Amit Kumar (CRS4, Università di Cagliari)
Amit Kumar (CRS4, Università di Cagliari)Amit Kumar (CRS4, Università di Cagliari)
Amit Kumar (CRS4, Università di Cagliari)
 

Davide Carboni - The world is the computer and the programmer is You