Project Description: Compost is the primary fertilizer of choice for multiple farmers in developing countries, like India, because it is cheap and can be made from waste material. However, compost takes a variable time to mature, and immature compost can lead to the immobilization of nutrients in soil. The scale of this problem is enormous. It is estimated that around 130 million farmers in India might be at risk of immobilizing their soil due to immature compost.
Our device, ComFORCE, is an Arduino-based solution. We have used 3 sensors - a DHT11 temperature and humidity sensor, a capacitive soil moisture sensor, and a pH sensor. The DHT11 sensor provides a digital reading, so it can directly be connected to a digital pin. Furthermore, the DHT11 sensor provides a reading directly in degrees celsius, therefore, we don’t need to calibrate the readings. The moisture and pH sensors, on the other hand, provide analog readings between 0 and 1023, and therefore, they need to be calibrated.
Hence, the readings were collected from extreme, known values. For example, the pH sensor readings were taken from distilled water, pH 7, and lemon water, pH 4. Similarly, for the moisture sensor, we took readings from dry air, with approximately 10% moisture, and distilled water, with 100% moisture. Using the readings that we collected, we used a mapping function to convert the analog readings to more widely accepted, understandable values.
When the Arduino starts up, first, we collect 10 readings from each sensor and average them. By collecting multiple readings, we are able to reduce the chances of including an outlier in our calculations, which would lead to erroneous readings. Then, with the temperature readings, we determine the maturity of the compost and output the maturity stage of the compost sample to the user.
Then, the readings from all sensors, including the temperature sensor, are compared to the ideal parameter ranges. That way, a quality score, between 0 and 100, is generated for each parameter. Finally, to determine the overall quality score, the quality scores from each parameter are aggregated and averaged out. The quality score is then output to the user.