Geospatial Sensor Web Conference – Tutorials

Sensor Web Introduction

Simon Jirka ([email protected]) - 52°North GmbH

28th August 2017 – Münster (Germany) Motivation

• More and more sensors are deployed • Human observations • Lots of different phenomena – Weather – Pollution – Biodiversity – Hydrological Data – Traffic – ...

2 3 Motivation

• Different structures and elements of observations • Sensor interfaces are very heterogeneous • Need for harmonisation  interoperability • Provide a layer on top of observation databases and low level sensor network technology  integration into web applications

4 Motivation

• Traditional services allow to – request maps (images) • Web Mapping Service – request (binary) raster data • – request vector data • • Lack of a generic framework for integration observation data into spatial data infrastructures

5 Motivation

6 Motivation

7 SWE Building Blocks

8 Observations & Measurements

• Conceptual model for – Representing observations – Exchanging observations • Implementation as application schema – XML schemata extending the Geography Markup Language (GML) • Primary use: Encode SOS GetObservation response documents • O&M 2.0 is now available (OGC and ISO standard)

9 O&M Basic Observation Model

• Observation – Act of observing a phenomenon – Producing an estimate for a property of a feature of interest – Specialized event with result • Inherits temporal attributes – Observation properties support result interpretation (e.g. quality)

10 O&M Observation Model

Source: OGC

11 O&M Basic Observation Model

• Procedure – Determines the value of a phenomenon – A procedure can be an instrument, a sensor, a human observer, a computation, a simulation … – O&M contains only a short description of the process – More detailed information is provided via SensorML / TML

12 O&M Basic Observation Model

• FeatureOfInterest – A Feature represents the observed real-world object – The feature of interest is the target of the observation – Examples: River, road, person, scene, specimen, …

13 O&M Basic Observation Model

• ObservedProperty – Identifies or describes the observed phenomenon – Examples: Air temperature, water level, wind speed, air pollution concentration – Description of the observed properties are often accessible through dictionaries

14 O&M Observation Example (XML)

15 O&M Observation Example (JSON)

16 SensorML

• General sensor information  discovery • Facilitate processing and analysis of sensor measurements • Geolocation of observed values • Description of the process by which an observation was obtained • Current version: SensorML 2.0

17 SensorML Overview

18 Process

• Base for all processes in SensorML  physical and non-physical processes • Elements – Inputs & Outputs – Parameter – Processing method – Reference systems – Any further metadata

19 Aggregate process

• Process chains are modelled as aggregate processes • An aggregate process describes – Processes of the chain – Data sources – Connections between processes

20 (Physical) System

• Extension of process chain • Defines relative positions of all components (processes and data sources) within the system • Spatial and temporal position • Describes interfaces of the system to the external world

21 Process Metadata

• Allows discovery and interpretation of results • Possible content – Common metadata (ID, classification, textual Description, Contact information) – Constraints (e.g. temporal validity of document) – Capabilities and characteristics of the sensor – References – History

22 SensorML – Example (i)

23 SensorML – Example (ii)

24 SWE - Interfaces

25 SMS Email Fax Phone Call

Response Request (O&M, SensorML) Subscribe Request Response Alerts SOS Event Notification SPS Processing Service

Observations Observations

Commands

26 Sensor Observation Service (SOS)

• Pull-based access to observations • Mediator between: – client  data archive / simulation / real- time sensor system • Hides the heterogeneous structure of proprietary sensor data formats and protocols • Data formats: O&M and SensorML • Versions: 1.0 and 2.0

27 Sensor Observation Service (SOS)

Response Request (O&M, SensorML) SOS

Observations NetCDF NetCDF NetCDF

28 SOS – Requirements Classes

Core: -GetCapabilities -DescribeSensor -GetObservation

Transactional ResultHandling -InsertSensor -InsertResultTemplate -DeleteSensor -InsertResult -InsertObservation Enhanced -GetResultTemplate -GetFeatureOfInterest -GetResult -GetObservationById

29 SWE Eventing

• Sensor Alert Service • Sensor Event Service • Web Notification Service • Pub-Sub Extension  recently adopted as OGC standard

30 OGC Publish/Subscribe Standard

31 Sensor Planning Service (SPS)

• Standardized interface for tasking sensors and sensor systems • Task management – Defining tasks – Checking tasks – Updating/modifying tasks – Cancelling tasks • Does not archive the data itself  points to access points for the data

32 Introduction

• Usage: – Parameterization of: • Sensors, Simulations – Planning and executing of: • UAVs, Robots, Satellites, … • Asynchronous communication with clients that submit tasks via WNS (e.g. notification if a task is completed)

33 Operations

• Mandatory in SPS 1.0 and 2.0 – GetCapabilities: Request a self description of a SPS instance – DescribeTasking: Request which information is needed for submitting a task – Submit: Submitting tasks – DescribeResultAccess: Request information where the data resulting of a task can be retrieved

34 SPS workflow

35 Summary

• Data Models/Encodings: – Sensor Descriptions: SensorML – Observation Data: Observations & Measurements • Web Services: – Pull-based access: Sensor Observation Service – Eventing – Tasking sensors: Sensor Planning Service

36 Further Information: https://52north.github.io/sensor-web-tutorial/

Questions?

Simon Jirka ([email protected])

37 Geospatial Sensor Web Conference – Tutorials

Practical Exercise: Helgoland - A Sensor Web Viewer

Simon Jirka ([email protected]) - 52°North GmbH

28th August 2017 – Münster (Germany) Helgoland

• Based on JavaScript • Web application to – Discovery data offered by SOS servers – Explore sensor networks – Visualise observation data • Diagrams • Tables • Tracks (in development) • Uses 52°North Sensor Web REST-API to connect to SOS servers

39 Helgoland

40 Helgoland

41 Helgoland

• Open source: https://github.com/52North/helgoland • Test it: http://sensorweb.demo.52north.org/client/ – Select a data provider – Use the map view to discover a sensor/station – Visualise the data as a diagram – Open the table view • Advanced version: http://sensorweb.demo.52north.org/client/

42

Questions?

Simon Jirka ([email protected])

43 Geospatial Sensor Web Conference – Tutorials

Deployment Strategies for the 52°North SOS

Simon Jirka ([email protected]) - 52°North GmbH

28th August 2017 – Münster (Germany) Agenda

1. How to integrate the 52°North SOS into your existing IT infrastructure?

45 Existing DB via new SOS Data Access Layer

SOS Client

GetObservation O&M

SOS Server

Database (e.g. PostgreSQL, MySQL, Oracle)

46 Existing DB via Hibernate

SOS Client

GetObservation O&M

SOS Server Hibernate

Database (e.g. PostgreSQL, MySQL, Oracle)

47 Existing DB via Views

SOS Client

GetObservation O&M

SOS Server

Database Views

Database (e.g. PostgreSQL, MySQL, Oracle)

48 Default SOS DB with Transactional Feeding

SOS Client Data Feeder

GetObservation O&M InsertObserva- tion (O&M)

SOS Server

Default DB

49 Default SPS DB with SQL Feeding

SOS Client

GetObservation O&M

SOS Server

SQL Data Feeder Default DB

50 SOS as Proxy

SOS Client

GetObservation O&M

SOS Server (Translator)

Proprietary Service

51

Questions?

Simon Jirka ([email protected])

52