AdaCore Blog

Make with Ada 2020: ADArrose

by Juliana Silva

Charles Villard, Cyril Etourneau, Thomas Delecroix, Louise Flick worked together in the ADArrose project. It won the student prize in the Make with Ada 2019/20 competition. This project was originally posted on Hackster.io here. For those interested in participating in the 2020/21 competition, registration is now open and project submissions will be accepted until Jan 31st 2021, register here.


Story

ADArrose

About

This project intends to make an automated sprinkler based on a STM32F429 board. This project will use ADA language and SPARK verification system. We all know the trouble to keep a plant. Especially in Paris, where the light is low and where our lives goes to 100km/h. We don’t have time to water plants. On the eventuality that we manage to find the necessary time, we will most likely give it too much water or not enough and by the time we find out the plant will be dead. Using the secure ADA language and contract verification, we will be able to create an automatic sprinkler to keep our plants alive and have a beautiful green environment without worrying about it.

Features

Our automatic sprinkler comes with numerous features. First of all it can be set in different activity modes to best respond to your needs.

• Continuous mode:
The automatic sprinkler is always active. Once every hour, the soil humidity around the plant is checked with a sensor. If the humidity percentage isn’t high enough, the sprinkler will water the plant with the right amount of water to keep it well hydrated. Perfect for fragile plants.

• Economic mode:
The automatic sprinkler is always active. When the luminosity is low, the soil humidity around the plant is checked once every hour with a sensor. If the humidity percentage isn’t high enough, the sprinkler will water the plant with the right amount of water to keep it well hydrated. This is done to avoid losing water due to evaporation. Perfect to minimize the water consumption. Use on plants without special needs.

• Planned mode:
The automatic sprinkler always active, but can only water the plant during the periods specified by the user. The humidity of the soil is checked at the start of the period and then once every hour. If the humidity percentage isn’t high enough, the sprinkler will water the plant with the right amount of water to keep it well hydrated. A last check is done at the end of the period to ensure the well being of the plant. Useful for a tailored experience.

• Punctual mode:
The automatic sprinkler does one humidity check when starting. If the humidity percentage isn’t high enough, the sprinkler will water the plant with the right amount of water to keep it well hydrated. When the process is finished, the system signals to the user that it can be shut down. For those who want to keep some contact with their green friends. Use to reduce the electricity bill.

Numerous data sets about the plant are collected when the sprinkler is in the first 3 modes. The soil humidity and surrounding luminosity are recorded once every hour and the user can have access to these data over the last 24 hours. Whenever something abnormal is detected in the plant consumption or in the environment, messages will warn him about the peculiar situation. If a problem arises in the system, the user will also be notified.

Full view of the system
Current light and humidity values
Graph over the last hours
Pump activating
  • Access the project schematics here.
  • Access the project code here.

Posted in