ISTSOS in support of ENORASIS for optimizing irrigation

33
ISTSOS in support of ENORASIS for optimizing irrigation Massimiliano Cannata Milan P. Antonović

description

ENORASIS is an FP7-ENV Project which is developing a server based system that gathers data from satellite observations and remote sensing field equipment and exploits meteorological forecasting models to provide high spatial accuracy estimations for irrigation water needs, by taking into account information on specific crops and other factors affecting the irrigation process. These estimations are transformed in optimal irrigation rules (using FAO56 model) that are communicated to ENORASIS system end users (farmers) via web or mobile. Identification information about each landzone is saved in the Land Management Subsystem. In the fields, sensors and water valves are deployed. The sensors collect raw data about various parameters affecting irrigation management (soil moisture, air temperature and humidity, solar radiation, wind speed, rain gage) and send their measurements to the ENORASIS server, where are managed through a istSOS 2.1 service. The water valves also send the valve activity for each landzone to the ENORASIS application server. Meteorological forecast data that derive from running meteorological forecasting models over satellite images come daily to the server and include a forecast for the next 72 hours. istSOS (http://istgeo.ist.supsi.ch/software/istsos) is an OGC SOS server implementation the SOS service entirely written in Python for exchanging XML requests and responses. istSOS 2.1 allows for managing and dispatching observations from monitoring sensors according to the Sensor Observation Service standard. The talk will present the latest software enhancements (version 2.1) that include the availability of a RESTful Web API written in Python for automating administration procedures and wrapping SOS functionalities and a Web graphical user Interface written in HTML/Javascript/CSS that allows for easing daily operations like service administration or data manipulation. The presentation will go through the details of the new features. istSOS is released under the GPL License, and should run on all major platforms (Windows, Linux, Mac OS X). Authors: Massimiliano Cannata, Milan P. Antonovic

Transcript of ISTSOS in support of ENORASIS for optimizing irrigation

Page 1: ISTSOS in support of ENORASIS for optimizing irrigation

DACD / IST / ISTSOS in support of ENORASIS for optimizing irrigation

ISTSOS in support of

ENORASIS for optimizing irrigation

Massimiliano Cannata

Milan P. Antonović

Page 2: ISTSOS in support of ENORASIS for optimizing irrigation

DACD / IST / ISTSOS in support of ENORASIS for optimizing irrigation

ENORASIS

The project

ENORASIS is a FP7-ENV project (Grant Agreement 282.949).

The project duration is three years (January 2012 – December 2014).

Objective

Develop an integrated decision support system for environmentally

optimized and thus sustainable irrigation management for farmers and

water management organizations based on advanced technologies and

models.

2 DACD / IST / ISTSOS in support of ENORASIS for optimizing irrigation

Page 3: ISTSOS in support of ENORASIS for optimizing irrigation

DACD / IST / ISTSOS in support of ENORASIS for optimizing irrigation

Partners

DACD / IST / ISTSOS in support of ENORASIS

Page 4: ISTSOS in support of ENORASIS for optimizing irrigation

DACD / IST / ISTSOS in support of ENORASIS for optimizing irrigation

The idea

• New EU policies in the field of water and agricultural

policies introduce the principle of “the user pays" in

irrigation water management

– WFD (Water Framework Directive)

– CSS (Cross Compliance Scheme) of the EU CAP

(Common Agricultural Policy).

• New tools and technologies allow the usages of

granular information on the present and future state of

the system:

– High resolution weather prediction models

– Low cost sensors

• New devices and spread of the Internet allow easy

access to information for decision-making

more conscious

4 DACD / IST / ISTSOS in support of ENORASIS for optimizing irrigation

Page 5: ISTSOS in support of ENORASIS for optimizing irrigation

DACD / IST / ISTSOS in support of ENORASIS for optimizing irrigation

Desktop and Mobile Application

16 July 2014

5

Users can access the ENORASIS system mainly by a web browser. The web

platform is used by all the system actors (e.g. farmers, watering authorities,

consultants and administrators) to perform their daily tasks. Most of the

functionalities offered by the web application are also provided by the mobile

application, developed for Android smartphones.

Page 6: ISTSOS in support of ENORASIS for optimizing irrigation

DACD / IST / ISTSOS in support of ENORASIS for optimizing irrigation

Project Status Today

16 July 2014

6

• Validation and assessment of ENORASIS solution against specified Key

Performance Indicators (KPIs).

• The pilots are Implemented to cover several (8) crops types, multiple (4)

geographical areas of different climate characteristics, and different (3)

operational settings.

Page 7: ISTSOS in support of ENORASIS for optimizing irrigation

DACD / IST / ISTSOS in support of ENORASIS for optimizing irrigation

ENORASIS System Architecture

7

Page 8: ISTSOS in support of ENORASIS for optimizing irrigation

DACD / IST / ISTSOS in support of ENORASIS for optimizing irrigation

Sensor data Subsystem: Data Fusion

8

FIELD 1

FIELD N

FIELD 2

Sensor

Gateway / Router

Coordinator / Seller

ENORASIS

SYSTEM

Page 9: ISTSOS in support of ENORASIS for optimizing irrigation

DACD / IST / ISTSOS in support of ENORASIS for optimizing irrigation 9

Page 10: ISTSOS in support of ENORASIS for optimizing irrigation

DACD / IST / ISTSOS in support of ENORASIS for optimizing irrigation

The Sensor Observation Service standard

From http://www.opengeospatial.org/standards/sos

“The SOS standard is applicable to use cases in which sensor data needs to be

managed in an interoperable way. This standard defines a Web service interface

which allows querying observations, sensor metadata, as well as representations of

observed features. Further, this standard defines means to register new sensors

and to remove existing ones. Also, it defines operations to insert new sensor

observations. This standard defines this functionality in a binding independent way;

two bindings are specified in this document: a KVP binding and a SOAP binding (in

version 2.0).”

1.0.0 OpenGIS Sensor Observation Service

2.0.0 OGC® Sensor Observation Service Interface Standard

10

Page 11: ISTSOS in support of ENORASIS for optimizing irrigation

DACD / IST / ISTSOS in support of ENORASIS for optimizing irrigation

Data consumer perspective

11

Page 12: ISTSOS in support of ENORASIS for optimizing irrigation

DACD / IST / ISTSOS in support of ENORASIS for optimizing irrigation

Data producer perspective

20th September 2013

12

Page 13: ISTSOS in support of ENORASIS for optimizing irrigation

DACD / IST / ISTSOS in support of ENORASIS for optimizing irrigation

The istSOS software

13

mod_wsgi

isodate psycopg2 pytz Database

Database

Page 14: ISTSOS in support of ENORASIS for optimizing irrigation

DACD / IST / ISTSOS in support of ENORASIS for optimizing irrigation

Simple Architecture

14

Page 15: ISTSOS in support of ENORASIS for optimizing irrigation

DACD / IST / ISTSOS in support of ENORASIS for optimizing irrigation

Easy installation

1. Install dependencies

2. Download, unpack istSOS & set permissions

3. Configure Apache

4. Restart Apache

15

> sudo apt-get install postgresql-9.1-postgis apache2 libapache2-mod-wsgi

python-psycopg2

> sudo tar -zxvf istSOS-2.x.tar.gz -C /usr/local/

> sudo chmod 755 -R /usr/local/istsos

> sudo chown -R www-data:www-data /usr/local/istsos/services

> sudo chown -R www-data:www-data /usr/local/istsos/logs

WSGIScriptAlias /istsos /usr/local/istsos/application.py

Alias /istsos/admin /usr/local/istsos/interface

> sudo /etc/init.d/apache2 restart

Page 16: ISTSOS in support of ENORASIS for optimizing irrigation

DACD / IST / ISTSOS in support of ENORASIS for optimizing irrigation

New SOS instance can be initialized from the Web Admin in one step…

… and configured in details

Easy initialization

16

Page 17: ISTSOS in support of ENORASIS for optimizing irrigation

DACD / IST / ISTSOS in support of ENORASIS for optimizing irrigation

Sensor Registration

Fill only 10 fields to register a new sensor (minimal setting)

Speed up registration using the “copy from existing sensor” option

17

Page 18: ISTSOS in support of ENORASIS for optimizing irrigation

DACD / IST / ISTSOS in support of ENORASIS for optimizing irrigation

Data Visualization and Editing

18

Page 19: ISTSOS in support of ENORASIS for optimizing irrigation

DACD / IST / ISTSOS in support of ENORASIS for optimizing irrigation

Various output format using GetObservation request

19

XML – CSV - JSON

Page 20: ISTSOS in support of ENORASIS for optimizing irrigation

DACD / IST / ISTSOS in support of ENORASIS for optimizing irrigation

Aggregation on-the-fly with GetObservation request

20

AVG, SUM, MAX, MIN

Extra parameters: aggregateInterval = PT1H & aggregateFunction = AVG

Page 21: ISTSOS in support of ENORASIS for optimizing irrigation

DACD / IST / ISTSOS in support of ENORASIS for optimizing irrigation

Real Time Quality Check

Configuration of quality index on the observed property level or sensor specific.

Automatically

data quality check

assigning quality

index on each

observation based

on specific constraints

21

Page 22: ISTSOS in support of ENORASIS for optimizing irrigation

DACD / IST / ISTSOS in support of ENORASIS for optimizing irrigation

Raw data

Assignment of quality indices during insertion:

Quality index example

22

Raw data

Meaningful data (Leve 1)

Statistically correct (Level 1 + 2)

Page 23: ISTSOS in support of ENORASIS for optimizing irrigation

DACD / IST / ISTSOS in support of ENORASIS for optimizing irrigation

Time-Zone support

eventTime

2013-01-01T01:00:00+01 / 2013-01-07T01:00:00+01

eventTime

2013-01-01T02:00:00+02 / 2013-01-07T02:00:00+02

20th September 2013

23

Page 24: ISTSOS in support of ENORASIS for optimizing irrigation

DACD / IST / ISTSOS in support of ENORASIS for optimizing irrigation

Acquisition Job Scheduler (New)

With Advanced Python Scheduler (APScheduler, embedded in istSOS) you

can schedule sensor data to be inserted at times of your choosing

16 July 2014

24

Sensor File Transfer of Raw Data Server

Scheduler Data acquisition istSOS

Page 25: ISTSOS in support of ENORASIS for optimizing irrigation

DACD / IST / ISTSOS in support of ENORASIS for optimizing irrigation

Virtual procedures (EVAPOTRANSPIRATION)

25

GRABOW

Real Sensor

Air Temperature

Relative humidity

Wind velocity

Solar radiation

V_GRABOW

Virtual procedure

Reference

evapotranspiration FAO56 Calculation

Page 26: ISTSOS in support of ENORASIS for optimizing irrigation

DACD / IST / ISTSOS in support of ENORASIS for optimizing irrigation

Virtual procedures (Unit Conversion)

20th September 2013

26

T_LUGANO

Real Sensor

Temperature

Celsius Degre

V_LUGANO

Virtual procedure

Temperature

Farenheit Degre F = ( (9 / 5) * C + 32)

Page 27: ISTSOS in support of ENORASIS for optimizing irrigation

DACD / IST / ISTSOS in support of ENORASIS for optimizing irrigation

Virtual procedures

Water Discharge transformation from River Height

27

H_MAGGIA

Real Sensor

River

height

RC_MAGGIA

Virtual procedure

Water

discharge istSOS embedded calculation

Rating curve

Rating curve built -in Virtual procedure Class

Page 28: ISTSOS in support of ENORASIS for optimizing irrigation

DACD / IST / ISTSOS in support of ENORASIS for optimizing irrigation

Status Page (New)

16 July 2014

28

Sensor status at a glance taking in account acquisition delay and inserting errors

Page 29: ISTSOS in support of ENORASIS for optimizing irrigation

DACD / IST / ISTSOS in support of ENORASIS for optimizing irrigation

istSOS Alert & Notification Service (New)

16 July 2014

29

Page 30: ISTSOS in support of ENORASIS for optimizing irrigation

DACD / IST / ISTSOS in support of ENORASIS for optimizing irrigation

JSON RESTful API

RESTful API for accessing and managing istSOS:

• Get service status, test database connection, initialize new servces

• Get, insert, update and delete:

– sensors,

– offerings,

– observed properties,

– quality indexes,

– unit of measures,

– service metadata,

– observations,

– fetaures of interest,

– supported epsg,

– etc…

30

Page 31: ISTSOS in support of ENORASIS for optimizing irrigation

DACD / IST / ISTSOS in support of ENORASIS for optimizing irrigation

WALib supporting Sensors Mapping and Charting

Observations

31

Page 32: ISTSOS in support of ENORASIS for optimizing irrigation

DACD / IST / ISTSOS in support of ENORASIS for optimizing irrigation

Roadmap

istSOS lib:

• Became an OSGeo project (incubation request pending)

• Profile data integration (GSOC 2013 contribution F.Massa)

• Support different data store (MS SQL Server, Oracle, XLS, Google Calc DOCS…)

Web Admin:

• Multiple observed properties on the same charts

• User authentication and autorization data access

• Raw data loading from the web interface (CSV, XLS…)

• Integrated map viewer

Others ideas:

• Android client API Library

• One click installer integrated with web server

• Extend support for SOS version 2.0 with INSPIRE requirements

20th September 2013

32

Page 33: ISTSOS in support of ENORASIS for optimizing irrigation

DACD / IST / ISTSOS in support of ENORASIS for optimizing irrigation

Thank you

Any questions?

Source Code & Download

https://code.google.com/p/istsos/

Mailing list:

http://groups.google.com/group/istsos

[email protected]

Home page

https://geoservice.ist.supsi.ch/projects/istsos

http://www.enorasis.eu