Automated Pinecone Collection

Collecting pinecones in a garden is tedious and tiring. RoboGardener solves this by automating pinecone collection so that you spend less time working in your garden and more time enjoying your garden.

State of the Art Computer Vision

RoboGardener collects pinecones using a combination of the latest in computer vision technology and robotic hardware. A YOLOv5 machine learning model trained to detect pinecones is used during robot navigation to ensure maxiumum efficiency during pinecone collection.

Modern and User Friendly UI

No more playing the role of tech support for your less technologically proficient family relatives: our sleek UI is a breeze to use and makes robot control easy. Advanced features like scheduling capabilites are also available for an even more automated experience.

Value Proposition

[Closed captioning for accessibility] At RoboGardener, we have developed the world’s first autonomous, computer-vision based gardening assistant – that’s going to help you and all your family never pick up pinecones and other garden debris ever again.

Who does this product help? RoboGardener has the potential to help thousands of gardeners across the world deal with the problem of pinecones littering their greenspaces. Whether it is estates with large public gardens to be roamed and cleaned up, or whether it is your grandparents who have to pick up pinecones out of their garden and risk repetitive strain injury every time as they do so, RoboGardener allows people to interface with a simple and accessible app to schedule an autonomous robot to take care of picking up all of those annoying pinecones.

And that’s just the beginning, our platform, product and technology has the capability to be expanded to a full gardening caretaker – sweeping up all sorts of debris and automating all of the menial work everyone hates. Join us now and welcome to the future of gardening with RoboGardener.

RoboGardener Video Demo

Take a look at our final product demo, including Webots simulation footage and an explanation of our technology:

CAD Model and Webots Simulation Gallery

This gallery showcases the robot CAD model and garden model in the simulator, as well as simulation pictures of characteristic functions of RoboGardener in the simulation. Characteristic functions includes 'Charge at Base Station', 'Move Towards Pine Cone and Collect' as well as 'Dump Pine Cones'. Scroll the images below and click on them to see more details.

Hardware

We aimed to make RoboGardener reliable and adaptable to different types of garden envrionments. Three factors were crucial to achieve this goal in the hardware: the design of the robot body, the design of the collection mechanism, and the electronic parts

Rugged Body

The body consists of 6 off road wheels and a waterproof plastic storage to operate in rough environment. The storage uses 2 actuators to dispose collected pine cones in a mechanism similar to a dump truck.

Quiet and Efficient

Our spike-based rubberised passive collection mechanism is mounted on the back of the robot. The wheels collect pine cones where RoboGardener goes without using any additional power. This mechanism will be noiseless and will minimize the risk of the robot harming any garden life by reducing contacting surface with the ground. It can also pick up multiple pine cones at a time.

Fast and Stable

Raspberry Pi 4B 4GB RAM with 1300Mbps dual band wifi adaptor will let RoboGardener have seamless machine-learning based pinecone detection and long range connection between users and RoboGardener.

Clear Sight

Pinecone detection using our trained YOLOv5 machine learning model is one of the main features of RoboGardener; thus a high-quality, low-power camera for our project was critical. Sony IMX219 8-megapixel sensor and the Exmor R back-illuminated sensor architecture can satisfy the needs with high-definition 1080p video, all stored and processed onboard to protect your privacy.

Charge Ready

The base station with Raspberry Pi Zero and pinecone weight sensor will generate a wireless connection among RoboGardener, users, and the base station to provide useful information to users such as battery status and amount of pinecones at the base station. RoboGardener will come back to the base station when its battery goes low automatically.

Features Summary

RoboGardener has a wide range of unique features that set it apart from any other product in the gardening industry.

Scheduling

Easily schedule cleaning runs using the user interface. Your RoboGardener will automatically carry out a scheduled cleaning run when you are away at work or out of town.

User Interface

RoboGardener's bespoke user interface web app provides simple and intuitive control. It is compatible with any web-browser enabled device.

Auto Charging

You will never have to worry about remembering to charge your RoboGardener. It automatically mounts itself onto a built-in charging port on the base station.

Navigation

RoboGardener will find its way around your garden using smart custom-designed algorithms. It can return back to the base station automatically.

Connectivity

The base station connects to your home WiFi network to allow status updates and total control of the robot from the comfort of your home.

Live Updates

RoboGardener's user interface will provide you with live updates about the battery level of the robot and information about what it is currently doing.

Privacy

We respect your privacy. The state-of-the-art computer vision system is run entirely offline. We guarantee that the camera feed never leaves the robot itself.

Accessibility

We believe in including everyone. Our user interface is verified to meet the highest accessibility standards to ensure everyone is included.

Environmentally Friendly

We use fully recyclable packaging to deliver your RoboGardener. We also designed the robot with repairability in mind, reducing e-waste.

User Guide

We created a user guide to help customers get an overview of their RoboGardener system and to set it up.

Budget

Overall price was estimated as we assumed to produce more than 100 units. Research has been done into publicly available robotic components, by comparing prices across popular electronics and robotics retailers. Links to retailers provided on product names.

Budget Table

Name Description Price (£)
Raspberry Pi 4B 4GB model. Main CPU. 51.01
Raspberry Pi Zero With WiFi module. For the base station. 14
Arduino Mega2560. Motor control. 29.75
Camera module Object detection. 20.10
Wheels 6 off-road wheels. 200mm diameter. 75.36
Motor DC gearbox 6 for wheels. 2 for actuators. 24V 800rpm 45.68
Power bank For the robot. 12V 22000mAh. 29.01
Robot body Container to store pine cones. 8.99
Electronics case ip68 plastic 5.92
Actuators To dispose collectied pine cones. 12V 300N. 300mm stroke. 31.74
Magnetic charger To charge RoboGardener at the base station 1.46
Base station materials PVC plastic 5.17
Boundary Wire 100 meters long copper conductor. 21.99
NE555 Boundary wire signal generator. 0.24
LM324 Boundary wire signal sensor. 0.19
Weight sensor To measure how much the base station is filled up with pine cones. 1.2
WiFi adapter For the robot to communicate with the base station and users 3.3
Miscellaneous 2.1 mm barrel jack, breadboard, resistors, power supply, etc. 15
361.12

User Interface

An accessible and easy to use user interface was a crucial component of making a successful design. Our system can be controlled through a responsive web application. This way, users can access the application from any device - a smartphone, tablet or desktop computer.

The interface can also be used with assistive technologies, such as screen readers, and doesn't require a mouse to navigate. This is especially important for customers with vision defects or Parkinson’s disease.

Through the app customers can:

  • Commence RoboGardener runs
  • Pause or cancel runs
  • Monitor status of a run and battery level
  • Schedule future runs
  • Manage their account

Commencing a run

The Status page is the first thing users see after logging in. This is the main control centre.

The green Clean now button tells the robot to start cleaning the garden.

Live information will be updated, e.g. status of the robot or battery level.

Controlling a run

If a cleaning run is in progress, users will see two control options.

The yellow Pause button will tell the robot to stop moving.

Click on the red Stop button and the robot will to return back to base station.

Scheduling a run

The Schedule page is easily navigated to by pressing the button on the left side of the display.

The Edit schedule form allows the user to select days and times for the robot to run.

The Cancel button makes it really clear that it will cancel a scheduled run as it is bright red.




Algorithms

This section will provide a very basic overview of the flow of control algorithms to give an idea of how it operates.
Collecting Pinecones
  • Leave the base station
  • Move forwards. If at any point the CV system detects a pinecone, change course to head towards it.
  • Collect any pinecone that the robot drives over using our collection mechanism.
  • If no pinecones are detected, move forwards until the robot finds the boundary wire.
  • When the robot hits the boundary wire, randomly rotate then move forwards and continue collection.
Returning to base station
The automatic return to base station algorithm is triggered by either a low battery level or the user pressing Stop on the user interface.
  • The robot searches for a boundary wire. When it hits the boundary wire:
  • Instead of bouncing away from it as before, turn right and move along it like a handrail in a clockwise direction.
  • Eventually, it will reach the base station. Here, automatic docking occurs, aided by computer vision.
Automatic docking
  • When the guide post has been recognized, the robot stops in front of it.
  • Turn left until computer vision recognizes charger in the correct position.
  • Drive forwards to move up the ramp onto the charger.
  • Stop on the charger and automatically operate dumping mechanism.

Evaluation

Both over the course of development and after creating our initial prototype, we conducted in-depth testing to quantify the performance, capabilities, and reliability of RoboGardener.

Pinecones Collected Per Minute

We consider the most important metric to the end consumer of RoboGardener being the number of pinecones it is capable of collecting per minute. This metric was chosen as it represents a good summary of how all of RoboGardener's individual components cooperate together to achieve a single end goal: collecting as many pinecones as quickly as possible.

Graph of pinecones collected

We conducted testing to measure the average pinecones collected per minute (PPM) at varying garden pinecone densities. In the Webots simulator, we ran RoboGardener on a variety of gardens with various levels of pinecone densities: the results are shown in the graph above. We can see that performance scales roughly linearly with the density of pinecones. At these rates, in a typical garden of 100m^2 with 400 pinecones, RoboGardener will complete in just over 11 minutes. Initial pinecone clustering and distribution can certainly make a difference, this is an area that we really would have liked to have explored in further testing had we more time.

The key component in achieving these PPM figures is the CV aspect of RoboGardener. In earlier iterations of RoboGardener, the navigation was based on a pure random walk algorithm found in robots such as entry level vacuum cleaners (e.g. Roomba). An issue we encountered was that since RoboGardener would travel in straight lines until it hit an object, at which it randomly picked a new direction to travel in, it would frequently miss pinecones that were right to the sides of the path it was travelling on, particularly in environments with low pinecone densities. The addition of CV allows RoboGardener to essentially enlarge it's field of vision and specifically hunt out pinecones that it can detect using its camera.


Effect of YOLOv5 CV Accuracy on Performance

We also performed testing to see the effect of adjusting our YOLOv5 computer vision (CV) accuracy within Webots, and seeing what effect it had on robot performance. The idea behind this test was to try and find the range of acceptable CV accuracies where the robot would still perform in a satisfactory manner.

Graph of CV accuracy

The CV accuracy was manually adjusted in Webots at varying levels: an accuracy of 100% means that the robot has a perfect recall rate of 100%. The average number of pinecones collected per minute (PPM) was measured at these varying accuracy levels, in two garden environments of different pinecone densities. The results are shown in the graph above; degradation of PPM compared to perfect CV accuracy is displayed on the vertical axis. The measure of degradation compared to perfect CV, instead of the raw PPM values, was used to normalize the data (it is difficult to see the difference between the two density gardens when comparing raw PPM values).

Robot performance barely suffers in the high density environment: this is because with a high pinecone density, even with poor CV accuracy, it is likely that the robot will bump into a pinecone purely by chance anyway. This is not the case with the low density environment: with few pinecones, the reliance on CV is much stronger, so the performance of the robot correspondingly suffers much greater with poor CV accuracy. However, we only expect poor CV performance in the absolute worst conditions (e.g. when a majority of the camera is obscured), so are happy that in most cases the PPM degradation hit will only be relatively minor.

We also performed real world testing of our trained YOLOv5 computer vision algorithm. This is the machine learning model that we hand trained on over 100 images of pinecones, and filmed videos around the Meadows to test with! To see how robust our vision system was, team members simulated dirt on the camera lens as may happen during normal operation of the RoboGardener, and were delighted to see that pinecones were still accurately detected to an impressive, albeit lower, degree. This shows the resilience of our machine learning against dirt and demonstrates our work as a viable real product:

In addition, since the performance of the CV is largely based on the internal pinecone ML model, the performance of the CV can continually be improved via software updates even after the user has purchased their RoboGardener. By adjusting simulator settings to reflect real world conditions, we are more confident in the transfer of RoboGardener from Webots to the real world.

Market Research

We believe there is a strong market need for RoboGardener.

In recent years, there has been a huge resurgence in robotic lawn mowers across the world. The global robotic lawn mower market is expected to grow from $530 million in 2018 to over $1.2 billion in 2025. But despite this resurgence, our research suggests that not many robotic solutions are present for gardening problems other than mowing.

One gardening problem that comes to mind is the removal of debris and something that is more than likely to be a part of that debris are pinecones. Removing these requires bending down for long periods of time, picking them up one by one and a lot of the time, they are present in very large numbers. This can prove to be a monotonous, repetitive task that not only takes up a large amount of time but can also increase the risk of Repetitive Strain Injury (RSI) which is a condition caused by constant repeated motion. This is of particular concern amongst the elderly who are more likely to garden in higher numbers.



According to 88 percent of Canadian chiropractors , gardening is the number one source of back and neck pain.

And this is where RoboGardener comes in. Our product traverses your garden, gathering any pinecones it encounters, allowing you to circumvent these long, menial tasks and focus on the aspects of gardening that you enjoy without having to worry about the cleanliness of your lawn.

Previous Demos and Video Gallery

In this section, please take a look at the lifecycle of our SDP project throughout our previous 3 deliverable demos (in reverse chronological order, with the most recent first):

Collection Mechanism Showcase

As discussed in length in our demo videos, we have spent a large amount of time working with the technician team in Appleton Tower to 3D print and design a passive collection mechanism that can pick-up pinecones without any extra power or motorisation. Our mechanism is mounted to the back of the product and gets jammed into the teeth of the pinecones using its flexible rubber 3D-printed spikes

RoboGardener Team

At RoboGardener, we pride ourselves on our greatly diverse and international team. A team made up of 6 nationalities and working collaboratively across 5 time zones (from Canada to Japan), our work and therefore people's responsibilities were grouped in Project Management, CAD design, computer vision, collection mechanism design, simulation, control programming and UI development. Let's learn about what each person was responsible for in the project.

Matt Timmons-Brown

  • Team Leader & Project Manager
  • Robot CAD Model Designer
  • Collection Mechanism Designer
  • Computer Vision Engineer
  • Controller Algorithm Engineer

Neil Weidinger

  • Project Manager
  • Controller Integration Engineer
  • Quantitative Test Engineer
  • Controller Algorithm Engineer

Minsung Kim

  • Computer Vision Engineer
  • Controller Algorithm Engineer
  • Quantitative Test Engineer
  • Robot Market Researcher

Zhenling Yang

  • Robot Simulation Engineer
  • Garden Simulation Designer
  • Controller Integration Engineer
  • Controller Algorithm Engineer

Michal Sadowski

  • UI Frontend Designer Engineer
  • UI Backend Integration Engineer
  • Graphic Designer

Matt Dorling

  • UI Backend Engineer
  • Controller Integration Engineer
  • Controller Stucture Engineer
  • Quality Control Testing Engineer

Sumair Rehman Paracha

  • Computer Vision Engineer
  • Controller Algorithm Engineer
  • Robot Market Researcher

Group Organization

How efficient organization gave rise to efficient workmanship.

Trello

Due to the time-constrained 10-week window we were allotted in the SDP course, we had be to prompt with not only the completion of tasks but also their distribution amongst the team members. For this purpose, we utilized Trello which is list-based, work-management tool where we could track all the tasks that needed to be completed in time for the next demo and the team members assigned to each task. Each task was assigned to group members based on the required skills. Once a task was completed, it was marked as such.

A screenshot of our group's Trello page.

GitHub

At the start of the course, we set up a repository on GitHub where all updates to the simulation world, controller or any other part of this project were pushed. A separate branch was created for each aspect of the robot design, for example path planning, UI design, computer vision setup etc. All commits to these branches were code-reviewed before they were pushed into the main branch.

Our group's Github page can be accessed here.


Weekly Meetings

There were two meetings that were held every week on Microsoft Teams that all members of the team would attend. The first of these meetings were the weekly updates where each member of the team would discuss the progress they had made on their assigned tasks and brainstorm new ideas. These proved to extremely useful since they allowed us to tackle potential problems early on rather than a few days before a deadline.

The second meeting was with our group mentor where we could ask them any course-related question and clear up any misunderstandings or confusions. Our mentor would also provide us with useful advice with respect to our project.


Messenger

At the start of the course, each group member was added to a Facebook Messenger group where any and every query or idea related to the project could be posted. Since we were such an internationally spread-out group, it was almost certain someone would be awake to respond at any time of day.

Future Development

How we believe that the project could be further developed in the future, for example by another group of students. Perhaps some of these could have been achieved if we the ability to work in-person or more team members.

Expand to other menial gardening chores

RoboGardener is great at traversing gardens to collect fallen pinecones. We could rapidly develop solutions to expand RoboGardener's capabilities to other gardening chores. This may include:

  • collecting other garden debris like apples, acorns, conkers and pine needles
  • cutting grass
  • raking leaves
  • scattering grass seed or fertiliser
We could easily retrain the vision system and develop detachable and interchangable tools to accommodate these.

A range of robot sizes

RoboGardener is currently a fairly small machine, making it the perfect size to fit in most gardens without colliding into objects. We could provide a larger version with a larger body, battery and collection area that would suit larger areas of land, which could include commercial land.