We tried building a modular open-source robot targeted towards small and mid-scale farming to perform different agriculture processes such as plowing, sowing, removal of weeds, and harvesting.

Abstract
Agriculture is a very strenuous process that requires a lot of time and dedication, the harvest reaped also can be uncertain due to various environmental factors. Current technology in the agriculture space consists of machines that are optimized for a single agriculture process which are expensive and targeted for people in large-scale agriculture. We are building a modular open-source robot targeted towards small and mid-scale farming to perform different agriculture processes such as plowing, sowing, removal of weeds, and harvesting. We hope to build a platform for engineers and farmers to gain insights for the development of the project.
Introduction
Agriculture plays an important role in sustaining life. But there are a number of problems faced by the farmers in the process of agriculture. The problems may be in the sector of irrigation, lack of good seeds while sowing, lack of knowledge regarding soil testing and its applications, providing manure/fertilizer to the crops, the removal of the weeds, the spoiled fruits during harvesting. We hope to address these problems with a modular tool changing robot, each tool is targeted towards a specific operation. This robot undertakes agricultural activities i.e. from plowing to harvesting. It is designed to withstand all the weather conditions. The data regarding the entire farm and where exactly the seeds are to be sowed can be provided as inputs.
Firstly, the robot undertakes soil testing and provides information about which crop can be harvested in that particular soil. According to the information given by the robot, the farmer decides the crop. The robot moves around the field and sows the seeds at a given point. In this process, it checks the moisture content of the soil and then provides only the required amount of water to the crops. It also supplies the required manure/fertilizer to the crops. It differentiates between a crop and a weed using computer vision and the weed is removed mechanically. It separates a good fruit from a bad one thereby carrying out the harvesting process in an efficient way. The robot is recharged by solar making it more efficient in terms of power consumption. This robot would be a boon to farmers and potentially provide farmers with free time to be involved in other vocations to diversify their source of income.
Methodology
As we were trying to build an agriculture robot that is required to perform several different operations, we realized the need for a system that needs to change according to the terrain and use different tools to perform various different agricultural operations. Our initial design consisted of a three-degree-of freedom manipulator operating in two dimensions mounted on a four-wheeled rover platform.

The end effectors/ tools are attached to the manipulator via four 3.5 mm audio jacks, the audio jacks allow transmission of control signals to the end effector. A camera along with a distance sensor is mounted close to the end of the manipulator, and computer vision is used to guide the manipulator
toward the tool.

jacks are used to connect and send signals to the tools. The above image shows the bucket shoveling
tool attached to the end of the manipulator

The robot uses a Raspberry Pi single-board computer and an Arduino Mega 2560 Microcontroller development board in conjunction to control the operations of the robot. The Arduino Mega controls the locomotion of the robot along with the manipulator The Raspberry Pi is used for computer vision, positioning, and communication.
The navigation of the robot involves the usage of an array of cameras (low resolution, sub 720p resolution, due to performance constraints of Pi). The cameras are used to detect and sense nearby objects, computer vision algorithms are used to calculate the distances of surrounding objects. The robot uses GPS for positioning, users of the robot can specify the location to sow seeds. The robot uses DC Motors with encoders to determine distances travelled. The GPS and encoders are used in conjunction to determine the position of the robot.
With the initial design, we have considered various possible wireless protocols such as 2g, LTE, WiFi and LoRa. The robot charges when parked at a base station, the base station connects to the grid and also Solar panels to charge the robot. We hope to create a modular design that can use either lithium ion or lead acid battery types.
Results and discussions
The initial prototype was built based on the initial design, but we did not implement the tool
changing mechanism.



The video demonstrations for the project can be found here:

The initial prototype of the robot used plywood for the body and the four legs of the robot were made from mild steel. The prototype used the manipulator along with the bucket tool to plow the soil. An open source seed dropping mechanism1 was used for the initial prototype, the mechanism uses a servo motor to restrict the movement of seeds from the seed storage container, the servo controls the flow of seeds by varying the passage which is available for the seeds to pass through. Thus seeds of different sizes can be dispensed by using this mechanism. An android application was developed to control the robot manually. The application allowed us to move the robot, control the manipulator and also dispense the seed.
The prototype allowed us to test the robustness and flaws in our design, one of the issues we faced was that the manipulator required the use of servo motors of higher torque. Over the next iterations we hope to improve the manipulator design, the seed dropping mechanism and some aspects involving slipping of the wheels. As specified in the methodology, we are working on adding the other features such as the tool-changing mechanism, computer vision and navigation.
Conclusion
As fresh engineers starting our bachelors in mechatronics we very were passionate about using technology to solve problems. In hindsight any solution to a problem requires a thorough understanding of the problem and pain points faced by the stakeholders, in our case the primary stakeholders being farmers. A lot of research needs to go into understanding the problems faced in the agriculture domain before crafting a solution. The hexa agri robot was our first robotics project for a real world application, it involved several subsystems that needed to work together. The process of building the robot was a great learning experience, the robot was presented at several project exhibitions amongst which we were the winners in a few. A key personal takeaway for me would be to try to start solving specific problems first and then broaden the scope from there.
Recognition
Secured 2nd place for “Hexa-Agri Robot” in the Science Exhibition held at The Oxford College of
Engineering, Bangalore.
References
Open source seed-dropping mechanism: https://www.thingiverse.com/thing:1337559
Open source CNC farming: https://farm.bot/
Contributors
- Josh Elias Joy
- Arnold Sachit Hans
- Mohammed Mansoor
