Strawberry Stacker is one of the themes in 10th edition of E-Yantra Robotics Competition 2021-2022 , an international robotics outreach program funded by the Ministry of Education and hosted at the Indian Institute of Technology, Bombay
This repository provides solutions to the tasks for the Strawberry Stacker theme.
Our team consisting of 3 interdisciplinary members ( Mukil Saravanan*, Sanjay Kumar M*, HariRaj Anandarajan ) from the Government College of Technology, Coimbatore has secured an overall 11th position among 152 international teams in the theme.
*main contributors
Commercial strawberry harvesting necessitates expert labour. The picker must swiftly identify any ripe strawberries on a plant, select them, and pack the berries into boxes all at the same time. This is labour for the employees as well as bad for the farm's overall efficiency.
The aim is to build a multi-drone system for picking strawberry boxes from a field and stacking them onto a transport trailer. A total of 6 incremental tasks starting from the installation to the final solution to the problem are detailed here.
We will use Gazebo simulator, a robotics simulator, where the simulated farm and UAVs will dwell, the PX4 Autopilot ecosystem for controlling the UAV, and ROS for integrating the many parts of autonomy required in the solution.
- Ubuntu 20.04, a Linux environment is used for running all the packages and programmes such as Gazebo 11 etc.
2. ROS Noetic
- The Robot Operating System (ROS) is a set of software libraries and tools that help one build robot applications. Note: ROS is strongly version specific middleware. Thus, Ubuntu 20.04 (Focal) is used with ROS Noetic.
3. Gazebo
- Gazebo 11, a physical engine (used for simulation) is tightly integrated with ROS Noetic and so it comes pre-installed when
ros-noetic-desktop-full
is installed.
- PX4 is an open source flight control software for drones and other unmanned vehicles.
- It provides a standard to deliver drone hardware support and software stack, allowing an ecosystem to build and maintain hardware and software in a scalable way.
- QGroundControl provides full flight control and mission planning for any MAVLink enabled drone.
- It acts as a Ground Control Station (GCS) of the drone.
6. Python3
- All the programs interfacing with ROS Noetic framework are written in Python3.
- It comes preinstalled with ROS Noetic.
- Install ROS Noetic and set up PX4 as given in Task 0 README
- Clone the repository in your workspace src folder.
cd ~/catkin_ws/src git clone https://github.com/MukilSaravanan/StrawberryStacker.git
- Build the package.
cd .. catkin build
For each task package, README files are provided which give details about the problem statement and the task specifications. The video/image solutions are also added in the README files.
- Task 0 - Software Setup
- Task 1 - Getting Started with ArUco and ROS
- Task 2 - Getting Started with PX4
- Task 3 - Pick and Place
- Task 4 - Pick and Place Using Multiple Drones
- Task 5 - Theme Implementation
- Task 6 - Final Theme Implementation
- Premnath
- Venkat Raman
- Hyden A
- Sabarish R
- Anitha K