传感器-简介

介绍

物联网(IoT)是一种全球性的信息基础设施,通过在现有和不断发展的可互操作信息和通信技术的基础上互连物理和虚拟“物”,实现高级服务 [ITU-T] . 为了促进物联网设备之间的地理空间互操作性,OGC发布了OGC SensorThings API。

OGC SensorThings API是一个多部分标准,用于互连物联网(IoT)的设备、数据和应用程序的开放和地理空间支持方法。本标准的第一部分描述了传感接口。第二部分描述了任务分配的接口。传感部分标准化管理和检索来自异构物联网传感器系统的观测和元数据。任务分配部分将在未来开发,预计将为物联网设备的参数化(也称为任务分配)提供一种标准方法,可以指示物联网设备执行观测或执行其他功能。

背景

历史

SensorThings API第1部分:传感1.0版,2016年7月。

测试套件
测试套件可用于:
启动位置

在OGC网站上列出了实现<http://www.opengeospatial.org/resource/products/byspec>

使用

SensorThings API允许访问和传播传感器收集的有关物理世界(物理事物)或信息世界(虚拟事物)的任何对象的数据,这些对象能够被识别并集成到通信网络中。数据通过以资源为中心的接口访问,该接口基于表示状态传输(REST)原则。API返回的数据以JavaScript对象表示法(JSON)序列化。

将REST和JSON应用于SensorThings API的好处是,它们在尺寸、重量和功率(SWaP)受限的设备(如微型计算机、智能家居控制器、纳米无人机(uav)、智能手机、智能手表和平板电脑)中提供了更高的效率。REST的使用也使web开发人员及其实现的应用程序更容易通过以资源为中心的统一资源定位器(URL)模式访问数据。

与其他OGC标准的关系

  • 传感器观测服务接口标准(SOS):SensorThings API专门设计用于从资源受限的物联网设备和Web开发人员社区传播观测结果。与SOS不同,SensorThings API使用被认为更有效的方法,例如REST、JSON和消息队列遥测传输(MQTT)。

  • webfeatureserviceinterface标准(WFS):WFS标准的设计允许为任何类型的特性类型提供服务。除了要求数据在地理标记语言(Geography Markup Language,GML)中可序列化外,WFS没有设置任何其他重要的约束。相比之下,SensorThings API规范化了具体实体和概念应该如何表示和序列化。

提供的资源

与其说是操作,不如讨论SensorThings API通过它作为资源提供的实体提供了什么。以下是API支持的实体列表:

事情

OGC SensorThings API遵循ITU-T的定义,即对于物联网,事物是能够被识别并集成到通信网络中的物理世界(物理事物)或信息世界(虚拟事物)的对象 [ITU-T] .

位置

位置实体定位一个或多个与之关联的对象。一个物体的位置实体被定义为物体的最后一个已知位置。

HistoricalLocation

事物的HistoricalLocation实体集提供了该事物当前(即最后已知)和以前位置的时间。

数据流

数据流将测量同一观测属性并由同一传感器产生的观测值集合分组。

传感器

传感器是一种观察特性或现象的仪器,其目的是产生对特性值的估计值。

ObservedProperty

ObservedProperty指定观察现象。

观察

观察是测量或以其他方式确定财产价值的行为。

FeatureOfInterest

观察所针对的现象是兴趣特征的一种性质。

例子

这个 `SensorThings API server<http://toronto-bike-snapshot.sensorup.com/v1.0/>`_ 发布多伦多自行车共享站可用自行车和码头的样本数据。

通过API检索传感器的示例请求如下所示。

http://toronto-bike-snapshot.sensorup.com/v1.0/Sensors

下面给出的响应报告说,有两个传感器:一个用于跟踪自行车站有多少个停靠站,另一个传感器用于跟踪自行车站有多少辆自行车。

{"@iot.count":2,
        "value":[
                {"@iot.id":4,"@iot.selfLink":"http://toronto-bike-snapshot.sensorup.com/v1.0/Sensors(4)","description":"A sensor for tracking how many docks are available in a bike station","name":"available_docks","encodingType":"text/plan","metadata":"https://member.bikesharetoronto.com/stations","Datastreams@iot.navigationLink":"http://toronto-bike-snapshot.sensorup.com/v1.0/Sensors(4)/Datastreams"
                      },
                {"@iot.id":3,"@iot.selfLink":"http://toronto-bike-snapshot.sensorup.com/v1.0/Sensors(3)","description":"A sensor for tracking how many bikes are available in a bike station","name":"available_bikes","encodingType":"text/plan","metadata":"https://member.bikesharetoronto.com/stations","Datastreams@iot.navigationLink":"http://toronto-bike-snapshot.sensorup.com/v1.0/Sensors(3)/Datastreams"
                      }
           ]
}

服务返回的数据可以由桌面地理信息系统(GIS)或web应用程序呈现。或者,可以将其转发到ogcwps进行进一步处理。

客户端使用

客户端需要知道SensorThings API服务的位置才能与服务器交互。该位置通常称为服务的“端点”,由服务根URI表示。通过附加资源路径和可选的查询选项,可以访问通过服务提供的资源。

例如,以下URL的第一行是服务根URI。第二行是资源路径。第三行是查询选项。

http://toronto-bike-snapshot.sensorup.com/v1.0
/Datastreams(206051)/Observations(1593917)
?$select=result

The link to the request is