El Servicio de Observación de Sensores ( SOS ) es un servicio web para consultar datos de sensores en tiempo real y series temporales de datos de sensores, y forma parte de la Web de Sensores . Los datos de sensores ofrecidos consisten en datos directos de los sensores, codificados en el Lenguaje de Modelo de Sensores ( SensorML ), y los valores medidos en el formato de codificación de Observaciones y Mediciones (O&M). Tanto el servicio web como ambos formatos de archivo son estándares abiertos y especificaciones del mismo nombre definidas por el Consorcio Geoespacial Abierto (OGC).
Si el sistema SOS admite el perfil transaccional (SOS-T), se pueden registrar nuevos sensores en la interfaz de servicio e insertar valores de medición. Una implementación de SOS puede utilizarse tanto para datos de sensores in situ como de sensores de teledetección. Además, los sensores pueden ser móviles o fijos.
Desde 2007, [ 1 ] el SOS es un estándar oficial de OGC . La ventaja del SOS es que los datos de los sensores —de cualquier tipo— están disponibles en un formato estandarizado mediante operaciones estandarizadas. De este modo, se simplifica el acceso web a los datos de los sensores. También permite una fácil integración en las infraestructuras de datos espaciales o sistemas de información geográfica existentes .
En 2016, OGC aprobó la especificación estándar de la API de SensorThings , un nuevo estándar basado en RESTful y JSON que proporciona funciones similares a SOS. Dado que tanto la API de SensorThings como SOS se basan en la norma OGC/ISO 19156:2011 , se ha demostrado en un proyecto piloto de IoT de OGC que ambas especificaciones pueden interoperar entre sí. [ 2 ]
Operaciones
El SOS cuenta con tres operaciones básicas que debe proporcionar cada implementación. La operación GetCapabilities permite consultar un servicio para obtener una descripción de su interfaz y los datos de los sensores disponibles. Para utilizar el SOS, la función GetObservation es probablemente la más importante. Se puede utilizar para recuperar datos de sensores específicos. La función DescribeSensor devuelve información detallada sobre un sensor o un sistema de sensores y los procesos que lo generan.
Operaciones principales (perfil principal)
- GetCapabilities devuelve una descripción de servicio XML con información sobre la interfaz (operaciones y puntos finales ofrecidos), así como los datos de los sensores disponibles, como el período durante el cual están disponibles los datos de los sensores, los sensores que producen los valores medidos o los fenómenos que se observan (por ejemplo, la temperatura del aire).
- GetObservation permite realizar consultas basadas en la extracción de valores observados, incluidos sus metadatos. Los valores medidos y sus metadatos se devuelven en el formato de Observaciones y Mediciones (O y M).
- DescribeSensor proporciona metadatos del sensor en SensorML . La descripción del sensor puede contener información general sobre el sensor, su identificador y clasificación, posición y fenómenos observados, así como detalles como datos de calibración.
Operaciones transaccionales (perfil transaccional)
- RegisterSensor permite registrar un nuevo sensor en un sistema SOS desplegado.
- La función InsertObservation se puede utilizar para insertar datos de sensores ya registrados en el SOS.
Operaciones ampliadas (perfil mejorado)
- GetResult permite consultar las lecturas de los sensores sin los metadatos, siempre que se disponga de metadatos consistentes (por ejemplo, sensor, objeto observado).
- GetFeatureOfInterest devuelve el geoobjeto cuyas propiedades son monitoreadas por sensores en codificación Geography Markup Language .
- GetFeatureOfInterestTime proporciona los períodos de tiempo en los que se dispone de mediciones de un objeto observado en el SOS.
- DescribeFeatureType devuelve el tipo de los geoobjetos observados ( esquema XML ).
- DescribeObservationType devuelve el tipo de observación ( esquema XML ), como por ejemplo om: Measurement).
- GetObservationById permite consultar una observación específica utilizando un identificador devuelto por el servicio como respuesta a una operación InsertObservation .
- DescribeResultModel proporciona el esquema XML del valor medido, lo cual es particularmente importante para mediciones complejas, como los datos multiespectrales.
Terminología
La OGC tiene, no solo para el SOS, su propia terminología bien definida. Para una mejor comprensión, aquí hay algunos términos importantes:
Software
El SOS es un estándar de la OGC y, en última instancia, solo define una interfaz de servicio, pero no una implementación. Actualmente existen varias implementaciones de código abierto del servicio:
- Implementación de Java SOS por 52°North [ 3 ]
- Implementación de Java SOS dentro del marco deegree por la empresa lat/lon [ 4 ]
- Implementación en C de SOS en MapServer
- Implementaciones en Java , Perl y Python del proyecto OOSTethys [ 5 ]
- Una implementación en Python como istSOS [ 6 ]
Además, existen implementaciones propietarias. [ 7 ]
Referencias
- ↑ "Servicio de Observación de Sensores" . portal.opengeospatial.org .
- ↑ "IMIS IoT Pilot | OGC" .
- ↑ "Detección geoespacial - Campo de investigación de 52° Norte" .
- ↑ "Inicio" . deegree.org .
- ↑ "Descargas disponibles de OOSTethys — OOSTethys" . www.oostethys.org . Archivado del original el 21 de junio de 2007.
- ↑ "Inicio" . istsos.org .
- ↑ "Implementaciones por especificación | OGC" .
Enlaces externos
- Servicio de observación de sensores OpenGIS en el sitio web de OGC
- Red de sensores inalámbricos
- sistemas de información geográfica
- Consorcio Geoespacial Abierto
- Servicios web
- Estándares abiertos