Pacific Island Countries GIS/RS User Conference 2010, Suva, 23-26 November 2010
Sensor Web Enablement for the Pacific
Vulnerability and adaptation of coastal fisheries to climate change
Scientific support for the management of Coastal and Oceanic Fisheries in the Pacific Islands region (SciCOFish)
Funded by European Union(10th EDF)
Pacific Island Countries GIS/RS User Conference 2010, Suva, 23-26 November 2010
Climate change monitoring
• Climate change monitoring involves long-term datasets from numerous partners and observation data must be made available
Þ Need for a system to share sensor observations
• Climate change trends are slow compared to interannual or interdecadal climate variability.
The trends can be biased by sensors & process:• Sensor accuracy• Change in methodology/sensor/location
Þ Need for rigorous metadata about sensors, processes and observations
Pacific Island Countries GIS/RS User Conference 2010, Suva, 23-26 November 2010
Open Geospatial Consortium Standards
Web Map Service (WMS)• Requests for geo-referenced map images• 1999: WMS 1.0.0• 2004: WMS 1.3.0
Web Feature Service (WFS)• Requests for geographical features (vector data in GML)• 2002: WFS 1.0.0• 2009: WFS 2.0.0
Web Coverage Service (WCS)• Requests for geographical coverages (raster data in GeoTIFF)• 2003: WCS 1.0.0• 2009: WCS 2.0.0
Some implementations of these services• ArcGIS Server, Geomedia WebMap, MapXtreme, Geoserver, MapServer,…
(see http://www.opengeospatial.org/resource/products/compliant for full list)
Pacific Island Countries GIS/RS User Conference 2010, Suva, 23-26 November 2010
Open Geospatial Consortium Standards
OGC Sensor Web Enablement (SWE) StandardsStandards to exploit web connected sensors and sensor data. 1.0.0 version released in 2006-2007.
Information models• Observation & Measurement Schema (O&M)
Encoding of observations and measurements
• Sensor Model Language (SensorML)Describes sensor systems and processes
• Transducer Markup Language (TransducerML)Describes transducers (response model)
Web services
• Sensor Observation Service (SOS)Provides access to observations
• Sensor Planning Service (SPS)Tasks acquisition from sensors
• Sensor Alert Service (SAS)Subscribe to specific alert type
• Web Notification Service (WNS)Asynchronous communication for long requests
Pacific Island Countries GIS/RS User Conference 2010, Suva, 23-26 November 2010
Observation & Measurement Schema
“An observation is an event that estimates an observed property of a feature of interest using a procedure and generating result.”
Feature of interestDomain specific feature, which is a representation of the observation target for which the observation is made.• Earth realm (ocean, river, sea surface,...)• Named region, location (Micronesia, Kimbe Bay)• Event (cyclone Erica)• System (sensor)
Observed propertyPhenomenon for which the observation result provides an estimate of its value.• Temperature• Humidity
ProcedureDescription of a process used to generate the result (sensor, model, observer)
ResultValue generated by the procedure
Additional propertiesSampling Time, Result Time, Parameter, Metadata, Result Quality
Pacific Island Countries GIS/RS User Conference 2010, Suva, 23-26 November 2010
Observation & Measurement Schema
“An observation is an event that estimates an observed property of a feature of interest using a procedure and generating result.”
<om:Measurement> <om:samplingTime><gml:TimeInstant>
<gml:timePosition>2010-10-14T00:22:12+11:00</gml:timePosition> </gml:TimeInstant> </om:samplingTime> <om:featureOfInterest>
<sa:SamplingPoint> <gml:name>Weather station of Zsyxx</gml:name>
<sa:sampledFeature xlink:href="myFeatureReference"/> <sa:position> <gml:Point srsName="EPSG:4326"> <gml:pos>160.124 -22.14</gml:pos> </gml:Point> </sa:position> </sa:SamplingPoint>
</om:featureOfInterest> <om:observedProperty xlink:href="property:OGC:RelativeHumidity"/>
<om:procedure xlink:href="mySensorReference"/>
<om:result xlink:href="percent" >41</om:result>
</om:Measurement>
When
How
What
Where
Value
Pacific Island Countries GIS/RS User Conference 2010, Suva, 23-26 November 2010
SensorML/TransducerML
There are many ways of measuring a single physical value !
°C°F
K
Pacific Island Countries GIS/RS User Conference 2010, Suva, 23-26 November 2010
SensorML/TransducerML
SensorML is used to define physical (detectors,...) and non-physical (classification, image processing, spatial transforms,...) processes
• Description• Parameters
• Metadata • General information (identifier and classifier)• Constraints (valid time, legal constraints)• Properties (capabilities and characteristics)• References (contacts and documentation)• History
• Inputs (observed phenomena or incoming data for a non-physical process) • Outputs (data created by the process)
Pacific Island Countries GIS/RS User Conference 2010, Suva, 23-26 November 2010
SensorML examples
Example: Garmin GPS 17 HVS <?<sml:SensorML <!-- Derived from Garmin Spec sheet --> <sml:member> <sml:System gml:id="GPS_17HVS"> <gml:description>SensorML instance for a Garmin GPS</gml:description> <gml:name>Garmin GPS 17HVS</gml:name> <sml:identification> <sml:IdentifierList<><sml:identifier> <sml:Term definition="urn:x-ogc:def:identifier:OGC:shortName“>
<sml:value>Garmin 17HVS</sml:value></sml:Term></sml:identifier></sml:IdentifierList> </sml:identification> <sml:classification> <sml:ClassifierList><sml:classifier name="Sensor Type"> <sml:Term definition="urn:x-ogc:def:classifier:OGC:sensorType"> <sml:value>GPS</sml:value> </sml:Term> </sml:classifier></sml:ClassifierList> </sml:classification> <sml:characteristics> <swe:Record> <swe:field name="channels"> <swe:Count> <swe:value>12</swe:value> </swe:Count> </swe:field> </swe:Record> </sml:characteristics>
Identifier
Classification
Characteristics
Description
Pacific Island Countries GIS/RS User Conference 2010, Suva, 23-26 November 2010
SensorML examples
Some outputs of the GPS sensor
<sml:outputs> <sml:OutputList> <sml:output name="Record1_output"> <swe:Record id="record_type_1"> <swe:field name="position“><swe:Position id="GPS_POSITION"> <swe:location><swe:Vector referenceFrame="urn:x-ogc:def:crs:EPSG:6.1:4329"> <swe:coordinate name="latitude“> <swe:Quantity><swe:uom code="deg"/></swe:Quantity> </swe:coordinate > <swe:coordinate name="longitude"> <swe:Quantity><swe:uom code="deg"/></swe:Quantity> </swe:coordinate > </swe:Vector> </swe:location> </swe:Position> </swe:field> <swe:field name="samples">
<swe:Count definition="urn:ogc:def:data:numOfSamples"/> </swe:field> <swe:field name="operationTime"> <swe:Quantity definition="urn:ogc:def:sensor:MMI:timeSinceStartup"> <swe:uom code="s"/></swe:Quantity> </swe:field> </swe:Record> </sml:output> </sml:OutputList></sml:outputs></sml:System></sml:member></sml:SensorML>
Position
Number of samples
Operation time
Pacific Island Countries GIS/RS User Conference 2010, Suva, 23-26 November 2010
SensorML examples
System capabilities of a Conductivity, Temperature, Depth (CTD) Sensor
<sml:capabilities> <swe:Record> <swe:field name="Depth Capability"> <swe:Quantity definition="urn:x-ogc:def:classifier:SBE:depthCapability"> <swe:uom code="m"/> <swe:value>7000</swe:value> </swe:Quantity> </swe:field> <swe:field name="Storage Type"> <swe:Category definition="urn:x-ogc:def:classifier:SBE:storageType"> <swe:value>EEPROM</swe:value> </swe:Category> </swe:field> <swe:field name="Memory Capacity"> <swe:Count definition="urn:x-ogc:def:classifier:SBE:memoryCapacity"> <swe:uom code="By"/> <swe:value>2960000</swe:value> </swe:Count> </swe:field> </swe:Record> </sml:capabilities>
Pacific Island Countries GIS/RS User Conference 2010, Suva, 23-26 November 2010
SensorML examples
System inputs of a Conductivity, Temperature, Depth (CTD) Sensor
<sml:inputs> <sml:InputList> <sml:input name="temperature"> <swe:Quantity definition="urn:x-ogc:def:phenomenon:OGC:temperature"> <swe:description>Sea Water Temperature</swe:description> </swe:Quantity> </sml:input> <sml:input name="conductivity"> <swe:Quantity definition="urn:x-ogc:def:phenomenon:OGC:conductivity"> <swe:description>Sea Water Conductivity</swe:description> </swe:Quantity> </sml:input> <sml:input name="pressure"> <swe:Quantity definition="urn:x-ogc:def:phenomenon:OGC:pressure"> <swe:description>Sea Water Pressure</swe:description> </swe:Quantity> </sml:input> </sml:InputList> </sml:inputs>
Pacific Island Countries GIS/RS User Conference 2010, Suva, 23-26 November 2010
SensorML examples
System outputs of a Conductivity, Temperature, Depth (CTD) Sensor
<sml:output name="output data"> <swe:Record id="CDT_DATA"> <swe:field name="temperature"> <swe:Quantity definition="urn:x-ogc:def:phenomenon:OGC:temperature"> <swe:description>Sea Water Temperature</swe:description> <swe:uom code="Cel"/> <!-- UCUM code for degC --> <swe:constraint><swe:AllowedValues><swe:interval>-10.0 100.0</swe:interval></swe:AllowedValues> </swe:constraint> <swe:quality><swe:Accuracy><swe:uom code="Cel"/><swe:value>0.002</swe:value></swe:Accuracy> </swe:quality> </swe:Quantity> </swe:field> <swe:field name="conductivity"> <swe:Quantity definition="urn:x-ogc:def:phenomenon:OGC:conductivity"> <swe:description>Sea Water Conductivity</swe:description> <swe:uom code="S/m"/> <swe:constraint><swe:AllowedValues><swe:interval>0 10.0</swe:interval></swe:AllowedValues> </swe:constraint> <swe:quality><swe:Accuracy><swe:uom code="S/m"/><swe:value>0.0003</swe:value></swe:Accuracy> </swe:quality> </swe:Quantity> </swe:field>
Pacific Island Countries GIS/RS User Conference 2010, Suva, 23-26 November 2010
Sensor Observation Service 1.0
GetCapabilities()
Capabilities Response
DescribeSensor()
SensorML/TML
GetObservation()
O&M Data
SOS ServerSOS Client
Obtention of sensor description and observations through SOS
Pacific Island Countries GIS/RS User Conference 2010, Suva, 23-26 November 2010
Sensor Observation Service 2.0
GetObservationByIDGetFeatureOfInterest
InsertSensorDeleteSensorInsertObservation
InsertResultInsertResultTemplateGetResultTemplateGetResult
SOS 2.0 (RFC at the moment) extends SOS 1.0
SOS ServerSOS Client
Pacific Island Countries GIS/RS User Conference 2010, Suva, 23-26 November 2010
Sensor Web Enablement for climate change data
Climate change monitoring constraints:
• Need for a system to share sensor observations• Need for rigorous metadata about sensors, processes and observations
Þ O&M schema provides a standard for observations
Þ SensorML provides a standard for sensors and processes metadata
Þ SOS provides a mechanism to access that information
SWE
Pacific Island Countries GIS/RS User Conference 2010, Suva, 23-26 November 2010
Vulnerability and adaptation of coastal fisheries to climate change
SPC is deploying temperature scientific-grade sensors in some pilot sites for long term monitoring of sea surface temperature in reef areas.
The data will be made freely available on SPC web site through Sensor Observation Service in 2011.
Pacific Island Countries GIS/RS User Conference 2010, Suva, 23-26 November 2010
Some existing Sensor Observation Service servers
NOAA Integrated Ocean Observing System (IOOS) http://sdf.ndbc.noaa.gov/sos/http://opendap.co-ops.nos.noaa.gov/ioos-dif-sos/
Institute for Geoinformatics University of Münster weather datahttp://v-swe.uni-muenster.de/
Renaissance Computing Institute (RENCI) Sensor Data Bushttp://www.sensordatabus.org/default.aspx
Pacific Island Countries GIS/RS User Conference 2010, Suva, 23-26 November 2010
Sensor Web Enablement resources
OGC Sensor Web Enablement working grouphttp://www.opengeospatial.org/projects/groups/sensorweb
OGC SWE Standardshttp://www.opengeospatial.org/standards/omhttp://www.opengeospatial.org/standards/sensormlhttp://www.opengeospatial.org/standards/sos
Implementing Sensor Observation Servicehttp://mapserver.org/ogc/sos_server.htmlhttp://www.oostethys.org/downloadshttp://52north.org/http://wiki.deegree.org/deegreeWiki/deegree3/SensorObservationServicehttp://ogc.codeplex.com/