Garden maintenance has been evolving over the years. It’s gone from being a manual-based operation to an almost completely automated operation. I’d like to discuss the objects that work in an integrated environment, which could take automation to the next level. Internet of Things (IoT) will be my main focus and will be referred to as "the solution", henceforth. I won’t touch on the architecture here; I’ll leave that for another post.
Every garden has life cycle stages such as soil cultivation, planting, fertilizing and pest control, irrigation, and harvesting. I will not identify all the automation opportunities at every life cycle stage, but will present, at a conceptual level, how various entities can work together in the context of IoT.
The solution comprises of the following entities:
Devices: IoT is all about IP enabled devices. The equipment used in soil cultivation, planting and other operations may not be internet ready, yet. They need to be prepared for getting connected to the internet.
Information models: For each device, we need to decide on the data to be exchanged between them. An information model is to be developed with attributes and functions for each device.
Device orchestration: Since the solution is an integrated one, devices need to be managed in such a way that they can either be plugged in and out, the configurations managed, their availability tracked, and so on.
Data collection: Each device is programmed to send the necessary data to a central unit. For example, a weather sensor (probably multiple sensors) can send information like air and soil temperature, humidity, pressure, wind, rainfall, solar, dew point temperature, and so on.
Central processing: This unit is the heart of the solution that collects data from the various connected devices. The central unit collects data and is 'intelligent' enough to act on the data based on the pre-configured rules. The actions can be in terms of commands and notifications back to connected devices.
A sample scenario
In the soil cultivation stage, the quality of soil is tested using some automated soil tester. This is a portable device that can look for ionic elements in the soil along with other attributes such as temperature, pressure, etc. Signals received from sensors are conditioned and using an Analog to Digital Converter, they are converted to digital signals. These signals are again transformed into meaningful data that can be sent to the main unit. The final stage is to IP-enable the entire device. Prototypes have been built using RaspberryPi and Arduino kits to simulate such connections.
The central unit should also be able to send commands to the devices that are to be controlled. For example, if the inference from the data collected from the soil testing unit is that the soil needs more water, then, the central unit will exchange data - basically invoke services on another connected device. This time the target device could be a drip irrigation motor. Controlling such motors using software is pretty straightforward. The functions could be as simple as on/off or could get a little complex with additional functions that test the water levels, different motors, status of the motor units, and so on. The irrigation can also be monitored by the central unit through the data received from another sensor.
Similarly, more connected devices can be added to the solution. Some of the sample devices could be manure spreader, seed driller, mower, conveyor belts, and so on. The trick is to ensure coordinated automation using preconfigured rules and IP-enabling the devices. As the entire unit can be controlled through the central unit, building a dashboard application for monitoring is quite straightforward.
IoT gives us the opportunity to add more power to automation systems. Internet-enabling the equipment may be the initial stage. Next generation equipment may not require this additional step as they may already be IP enabled. Mash-up ideas will drive IoT further to draw more benefits.