Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.

Open Sensor Networks

120 views

Published on

Presentation on Open Sensor Networks, Smart Emission, SensorThings API, TheThingsNetwork,
@pycomIOT
etc. Presented at SenseMakersAms Meetup: https://meetup.com/sensemakersams/events/pwflgryzmbxb/

Published in: Software
  • Be the first to comment

Open Sensor Networks

  1. 1. Open Sensor 
 Networks Just van den Broecke Just Objects B.V. https://justobjects.nl https://twitter.com/justb4 IoT SenseMakers Ams Meetup Amsterdam - 18 sept, 2019 Met dank aan
  2. 2. ABOUT Independent Open Source Geospatial Professional justobjects.nl Member of the OpenGeoGroep (NL) www.opengeogroep.nl Chair 
 OSGeo.nl 1. Intro
  3. 3. Air Quality Sensor Projects • 2014/2015 - SOSPilot - Geonovum en RIVM
 RIVM LML Data via OGC Sensor Observation Service (SOS)
 http://sensors.geonovum.nl 
 • 2015-2017 - Smart Emission Nijmegen - Consortium
 Burgers meten zelf luchtkwaliteit en geluid, building the SE Platform
 http://smartemission.ruhosting.nl 
 • 2017-2018 - Smart Emission - Consolidation en Scaling
 Smart City Living Lab (multiple cities),
 Green Challenge Nijmegen, AirSensEUR (EU JRC)
 Luftdaten.info Integration
 SE Platform Migration to PDOK - Kadaster
 https://data.smartemission.nl 
 • 2018- AirSensEUR - Open HW Sensor Box - European Commission JRC
 deploy 5 AirSensEUR Boxes, connect to Smart Emission Platform
 https://justobjects.nl/emit-5
  4. 4. Smart Emission Nijmegen Project Participants http://smartemission.ruhosting.nl/
  5. 5. Inclusive Citizen Sensing ▪ Citizen-sensor-networks for fine-grained measurements, with new low-cost sensing devices ▪ Transparency and democracy of pollution monitoring, ‘making the externalities (e.g. noise, air pollution) visible’ ▪ Cost-effective environmental monitoring with 
 Open Source, Open Data, Open Standards (APIs) Smart Emission Nijmegen
  6. 6. Which type of low cost sensors to deploy? Quality and Price Number of sensors applied in a city Smart Emission “Jose” Aireas “Airbox” “Smart Citizen Kit” RIVM National AQ Stations Smart Emission Nijmegen
  7. 7. Smart Emission Nijmegen
  8. 8. Smart Emission Platform Resulting from the
 Smart Emission Nijmegen project and subsequent integration into the Dutch Kadaster PDOK Kubernetes Cloud
  9. 9. Smart Emission Platform WMS WFS SOS STA Client Apps/Viewers web-APIs sensors Collector APIs SE Platform - The Big Picture Dataflow luftdaten.info
  10. 10. luftdaten.info Smart 
 Emission Platform WMS WFS SOS STA Intemo Data Collector InfluxDB Data Collector RIVM LML SOSInfluxDB HTTP Luftdaten API Harvesters ETL LML Influx HTTP Sensors API API Outbound Inbound Dataflow SE Platform - Dataflow and APIs Whale API Decoupling
 Push/Pull:
 Data Collectors +Harvesters MQTT
  11. 11. Viewers talk to (OGC) APIs https://data.smartemission.nl (data platform) Heron Viewer Smart App 52North SOS Viewer Grafana Extern
  12. 12. Viewers https://data.smartemission.nl/waalkade/ Example Viewer
  13. 13. Thoughts
  14. 14. All Data 
 is 
 Spatio-Temporal Spatial Temporal Geo IoT
  15. 15. http://cameronshorter.blogspot.com/2019/08/
  16. 16. All Data 
 is 
 Spatio-Temporal Spatial Temporal Geo IoT
  17. 17. Internet of Silos Convenience over 
 Freedom
  18. 18. Open APIs & Tech for Spatio-temporal to the Rescue?
  19. 19. Spatio-temporal DB: PostgreSQL with
 PostGIS+TimescaleDB OGC SensorThings API Other Talk
  20. 20. OGC SensorThings API Showcase Modern Standard (REST) API-based: HTTP Verbs Data Model is First Class Citizen Multiple FOSS Implementations Linked Data, Paging, OData Pub/Sub via MQTT GOST SOS-Killer? (Geo)JSON Encoding
  21. 21. SensorThings API - Model
  22. 22. http://ogc-iot.github.io/ogc-iot-api/datamodel.html
  23. 23. STA Entity Real World Entity Instance Thing Thermostaat Honeywell Lyric T6 #234 Location Locatie Thermostaat Building 9, Kamer 14 Sensor Temperatuur Sensor DHT11 #12 ObservedProperty Temperatuur Graden Celsius Observation Waarde + Tijd 21C op 2018-12-11T18:09:05 Datastream (Verbindt T, S, OP en O) FeatureOfInterest Kamer Building 9, Kamer 14 SensorThings API - Not just Sensor Devices
  24. 24. SensorThings API - Example SE Entity Mapping
  25. 25. STA Entity Real World Entity Instance Thing Vogelhut Natuurmon. Vogelhut #234 Location Plaats Vogelhut Mosselseweg 64, 1245AF Otterlo Sensor Verrekijker Swarovski Swarovision 1900 10x40 ObservedProperty Diersoort Vogels Observation Aantal + Tijd 1 op 2018-12-11T18:09:05 Datastream (Verbindt T, S, OP en O) FeatureOfInterest Soort en Locatie Vogel Merel op 4.9344, 52.567 SensorThings API - Example Mapping
  26. 26. Geodan GOST - Open Source STA in GoLang https://github.com/gost
  27. 27. https://data.smartemission.nl/data
  28. 28. https://api-samenmeten.rivm.nl/v1.0/ RIVM SensorThings API
  29. 29. IoT Platform met STA SensorThings API Server API Dataflow MQTT STA Dashboards/ Viewers Sensors
  30. 30. Fun PoC 
 Bridging IoT with Geo: TheThingsNetwork to SensorThings API
  31. 31. Demo Setup GOST API Dataflow GOST Dashboard Node-Red ThingsNode MQTT MQTT STA Process MQTTBridge ttn2sta PySense + LoPy Docker 
 Postman ProvisioningAny LoRa/TTN Device Docker Containers
  32. 32. Steps • Install ThingsNode as TTN App and Device as usual • Test MQTT uplink: 
 $ mosquitto_sub -h eu.thethings.network -t ‘+/devices/+/ up'-u 'mythingsnode1' -P ‘ttn-account-v2.*****’ -v • Install SensorThings Geodan GOST Stack
 $ wget https://raw.githubusercontent.com/gost/
 docker-compose/master/docker-compose.yml
 $ docker-compose up • Postman: provision STA Entities, Examples: 
 https://github.com/gost/workshops/tree/master/ 2017_foss4g_boston • Node-Red (or regular Python): develop MQTT Bridge
 MQTT from TTN: 
 https://www.thethingsnetwork.org/docs/applications/mqtt/
 MQTT to STA: see “GOST FOSS4G Boston” workshop above
 ttn2sta: copy TTN Payload data to STA result and 
 result- and/or phenomenonTime

  33. 33. TTN to STA Mapping
  34. 34. All the Code needed!
  35. 35. STA Observations
  36. 36. ▪ All Entities (root)
 http://localhost:8080/v1.0 ▪ All Observations from all Things (paged)
 http://localhost:8080/v1.0/Observations ▪ All Observations Thing with id=3
 http://localhost:8080/v1.0/Things(3)?$expand=Datastreams/Observations ▪ Last Observation Thing(3)
 http://localhost:8080/v1.0/Things(3)?$expand=Datastreams/Observations($top=1) ▪ All Observations after Dec 11, 2018 20:57 UTC
 http://localhost:8080/v1.0/Observations?$filter=resultTime%20gt %20%272018-12-11T20:57:00.000Z%27 ▪ Etc, more examples:
 https://smartplatform.readthedocs.io/en/latest/cookbook.html STA REST/OData Queries
  37. 37. Links https://data.smartemission.nl (data platform) https://github.com/smartemission (source code) https://smartplatform.readthedocs.io (documentation) https://smartplatform.readthedocs.io/en/latest/evolution.html (SensorSDI) https://geoforum.nl/c/datasets/sensordata (support and comms) https://en.wikipedia.org/wiki/SensorThings_API (SensorThings API, STA) https://www.gostserver.xyz/ (Geodan STA Open Source Implementation) https://justobjects.nl/category/smartemission/ (Just’s Blog on sensor stuff) https://airsenseur.org/ (EU AirSensEUR) https://www.geonovum.nl/over-geonovum/actueel/doe-mee-met-de- hackaton-sensorthings-api-eind-oktober (STA Hackathon) 
 We would like to acknowledge for their valuable input: All partners of the Smart Emission Consortium Thank You! https://www.slideshare.net/justb4/open-sensor-networks This Presentation:

×