../_images/logo_istsos.png ../_images/OSGeo_community.png

istSOS Quickstart

ISTSOS是一个OGC Sensor Observation Service (SOS) 写入的服务器实现 Python . ISTSOS允许根据传感器观测服务标准管理和调度来自监测传感器的观测。

该项目还提供了一个图形用户界面,允许简化日常操作,以及一个用于自动化管理过程的restfull Web API。

ISTSOS是根据gplv2许可证发布的,在所有主要平台(Windows、Linux、Mac OS X)上运行,尽管它仅在Linux环境中用于生产。

创建PostGIS数据库

打开终端并执行以下命令:

sudo -u postgres createdb -E UTF8 istsos
sudo -u postgres psql -d istsos -c 'CREATE EXTENSION postgis'

设置istSOS服务实例

使用ISTSOS,您可以在不同的情况下组织传感器数据。每个实例都有自己的数据库模式,独立于其他实例。甚至可以根据需要在网络上部署其他数据库。

ISTSOS设置的第一步是配置默认配置选项。然后,为了您的方便,每个新创建的ISTSOS实例都将自动使用这些选项。

  1. 点击 Geospatial ‣ Webservices ‣ istSOS 打开Web管理界面。或者,打开浏览器并转到 http://localhost/istsos/admin

  2. 单击 Enter 按钮。

  3. 配置数据库连接。从工具栏按钮菜单中,按“数据库”按钮并填写数据库配置选项:

    user: postgres
    password: postgres
    host: localhost
    port: 5432
    DB name: istsos
    
  4. 按“服务提供商”按钮并使用您的机构信息填写。

  5. 按“服务标识”按钮,填写描述服务使用情况的自定义元数据。

  6. 按“坐标系”按钮管理坐标参考系(CRS)。

    • 默认EPSG代码: 这将是数据库中几何图形的本机坐标参考系统。
    • 允许EPSG: 在这里,您可以配置您的系统将支持的其他坐标参考系统,并在需要时重新投影。
  7. 从工具栏按钮菜单中,按“GetObservation Configuration”按钮设置每个GetObservation请求的最大时间间隔(零表示无限制)和聚合无数据值。

  8. 配置服务代理地址。Proxy URL字段是反向代理之外的基URL。

创建新服务

既然已经配置了ISTSOS,现在是创建新服务实例的时候了。

  1. 从工具栏按钮菜单按“新建服务”按钮并单击 Next .
  2. 类型 demo 服务名称。
  3. 在EPSG字段中,可以设置数据库本机投影。将其留空以使用默认值。点击 Next .
  4. 单击“自定义数据库”框,可以更改此新ISTSOS实例的默认数据库配置。
  5. 出版社 Next . 将显示服务器状态面板。如果在创作过程中出了问题,你会在这里看到一个警告。

注解

ISTSOS“demo”实例从默认配置继承了所有配置选项。如果出于任何原因决定修改它们,那么这些更改将仅影响此实例。

添加新过程

  1. 从管理界面的“服务”下拉按钮(http://localhost/istsos/admin)中选择所需的实例。
  2. 从工具栏按钮菜单按 New procedure 按钮。
  3. 使用适当的信息填写表格。

警告

一旦创建了一个过程,就不能更改输出(观察到的属性)。

注解

*可选参数:*根据自己的需要和意愿填写

Example (最小配置)

名称:T-卢加诺
说明:卢加诺温度气象站
关键词:天气、气象、IST
系统类型:就地定点
传感器类型:“开关”型PTC热敏电阻
姓名:卢加诺
EPSG:4326
坐标:X:8.96127 Y:46.02723 Z:344.1

输出(按“添加”按钮确认输出):。

观察属性:urn:ogc:def:parameter:x-istsos:1.0:meteo:air:temperature
计量单位:°C
说明(可选):从电阻到温度的转换
质量指标检查(可选):介于-40和+60之间

注解

按“提交”按钮注册新传感器(程序)。

添加新的观察结果

首先,我们将创建一个包含传感器数据的文本文件,格式根据“text/csv,subtype=istsos”。该文件使用逗号分隔值(csv)格式。第一行包含头信息,包括观察到的属性的URI名称。以下行包含数据。

  1. 通过选择打开文本编辑器 Accessories ‣ FeatherPad .

  2. 将以下文本复制并粘贴到文本编辑器窗口中:

    urn:ogc:def:parameter:x-istsos:1.0:time:iso8601,urn:ogc:def:parameter:x-istsos:1.0:meteo:air:temperature
    2014-06-03T14:30:00.00Z,22.20
    2014-06-03T14:40:00.00Z,22.00
    2014-06-03T14:50:00.00Z,21.70
    2014-06-03T15:00:00.00Z,21.20
    2014-06-03T15:10:00.00Z,20.70
    2014-06-03T15:20:00.00Z,20.20
    2014-06-03T15:30:00.00Z,19.60
    2014-06-03T15:40:00.00Z,19.20
    2014-06-03T15:50:00.00Z,18.20
    2014-06-03T16:00:00.00Z,18.00
    2014-06-03T16:10:00.00Z,17.20
    
  3. 将文件另存为桌面上的“t_lugano_20140636161000000.dat”。正在使用的文件名约定是:procedurename_yyyymmddhhmmssff.dat

  4. 通过选择打开终端 System Tools ‣ LXTerminal .

  5. 在终端中,输入:“cd/usr/share/istsos/”并按enter键。

  6. 编写“python scripts/csv2istsos.py-p t ou lugano-u http://localhost/istsos-s demo-w~/desktop”,然后按Enter键

  7. 您应该看到一条消息“insert observation success:true”

  8. 点击 Geospatial ‣ Webservices ‣ istSOS .

  9. 单击 Enter “管理”页中的按钮

  10. 点击 Data Management ‣ Data Viewer .

  11. 选择以下选项:
    • 服务=演示
    • 提供=临时
    • 程序T畹Lugano
  12. 单击 Add 按钮

  13. 单击 Plot 按钮并检查数据是否已添加(注意时区!)

../_images/istsos_viewer.png

接下来呢?

要了解有关ISTSOS的更多信息,起点是 istSOS Documentation 以及 istSOS Tutorial .