Figure 1 shows the full architecture of the Irriman Platform. As with any system based on the Client/Server model, there are software components acting in the backend, running, in this case, as a part of the Google Cloud Platform. Such components have been developed using tools delivered by the Platform as a Service (PaaS) cloud layer that Google provides. The frontend consists of software modules that interact with the backend through an API (Application Programming Interface) REST (Representational State Transfer), by using the HTTPS (HyperText Transfer Protocol Secure), communication protocol for sharing information coded as JSON (JavaScript Object Notation), messages. Data loggers connect all the agricultural sensors that gather data at the crop level. The program running in the data logger acts as a client. It processes the acquired information, codes it as JSON messages, and sends it to the Cloud through the mobile network, by using the same API REST as the WEB application that allows users to remotely interact with the platform. This WEB application also works as a client; the frontend includes software modules in both the PLOT level and USER level. The whole system could be considered as a distributed application, where different software modules and interfaces request services to the backend and provide suitable responses to different clients. Thus, users use services related to agronomic data visualization, together with aggregated information useful to know the behaviors of soil; and plant and data loggers installed at crop level use the backend services for uploading data measured by agronomic sensors of different kind. These devices send readings at a specific rate (now, most of the installed ones send data every 10 min, which could be considered as an appropriate rate to obtain time series that reflect the behavior of the soil, according to the water content received by the irrigation system installed in each crop or because of rainfall).
Global architecture of the Irriman Platform. The frontend consists of two levels: PLOT and USER. The backend is implemented as a set of modules running on the Google Cloud Platform. Data loggers acquire information from agricultural sensors and send them to the backend by using the HTTPS protocol and JSON messages as payload. Users could interact with the backend through a WEB application that sends and receives JSON messages by also using the HTTPS protocol.
Environmental information is obtained from the IMIDA (Instituto Murciano de Investigación y Desarrollo Agrario y Medioambiental), SIAM (Sistema de Información Agrícola de Murcia). SIAM is a net of 47 automatic stations (32 from IMIDA and 15 from other Spanish official institutions), mostly installed in private agricultural exploitations, whose geographical location accomplish a specific set of requirements. A wide set of variables are measured by these stations. The Irriman Platform downloads all the information and it currently uses ET0, average daily temperature and rainfall as essential parameters to be combined with the rest of the data measured by sensors installed at crop level. All the information is properly processed and aggregated, if needed, and displayed by the WEB application designed as one of the mentioned frontends. The other frontend is the low-level software running in each data logger, which simply reads sensors’ measurements and sends the raw data to the Cloud by calling certain backend services.
Do you have any questions about this protocol?
Post your question to gather feedback from the community. We will also invite the authors of this article to respond.