Pick And Place

Dorna For Picking Mushrooms

Sadegh Tabatabaei

Sadegh Tabatabaei

April 28, 2023 23 MINS

Mushroom picking problem

Strict immigration laws, low wages, and a harsh working environment make it very difficult for mushroom farm owners to find the required workforce to pick up mushrooms from their farms and fulfill the market demand. In many farms across North America, farm owners are forced to kill off entire corps, due to a lack of workforce for harvesting the mushrooms. Mushroom picking is all year round, full-time job which involves finding mushrooms of the right size, picking them, cutting their stem, and placing them in boxes. 

A typical mushroom picker can pick 10 boxes an hour, where each box includes 220 mushrooms. As the demand for mushrooms increases, farm owners are looking for technology, to fill in the required workforce for picking their mushrooms.

In 2018, we were contacted by one of the largest mushroom farms in Canada, to design a robot that can pick mushrooms and deposit them in baskets on the sides of the mushroom growing beds. The farm had already an engineering team in place, responsible for introducing automation to different processes of their operation including, harvesting, packaging, transportation, and quality check of the mushrooms. Our job was to cooperate with the team and design a robotic solution that meets the requirements of the mushroom farm.

Major challenges and our approach

There are some major challenges that are involved with the design of a robotic system that can work as a mushroom picker.

The first challenge is that mushrooms are delicate and very sensitive to excessive force that is applied during picking. Therefore a gripper mechanism needs to be designed that has a delicacy similar to a human picker’s finger to avoid bruising or damaging the mushroom. 

Our solution to the gripping problem was an innovative combination of two jaw-motorized grippers along with suction cups. The cups are made out of food-grade material which does not leave any bruises on the mushrooms. The opening of the motorized gripper was adjusted based on the size of the mushrooms. With little air pressure applied to the suction cups and along with the movement of the tool head during picking, the robot can pick mushrooms effortlessly.

For the mechanical body of the robot, we have a few constraints. Since mushrooms do not need natural light for growth, to save space, growers usually stack multiple levels of beds on top of each other in multiple rows in a room. There is only a small amount of clearance between beds. Human pickers can easily access this space by extending their arms. However, most industrial robotic arms have form factors and other control elements that far exceed the available space between two beds. Therefore the robot should be designed in a way that fits into the space between beds. Furthermore, the robot should be able to sit on the rail alongside the beds, which are standard parts of mushroom growing beds, and move along the bed, so it can cover the total area of the bed. Also, it is desired to have a compact robot size, such that it could be easily moved from one bed to another with the help of an operator and the lifters at the beginning of the bed. Finally, as mushrooms can grow in any orientation out of their growing compost, the robot should have at least six degrees of freedom, so it can approach the mushroom from any direction in the space.

To address these mechanical design challenges, our team decided to design a robot from scratch.

Multiple levels of mushroom beds stacked on top of each other in multiple rows in a room at one of the largest mushroom farms in Canada.

One of the advantages of Dorna Robotics compared to other integrators is that we own all the IP for the mechanical design and the robot firmware, as well as the controller. We can quickly redesign the mechanical body by changing the joint’s configuration, changing the motor sizes, and changing the gearboxes to accommodate a wide range of payloads, speeds, and reach for the robot. Furthermore, our standard controller box can support up to eight joints simultaneously. Therefore, a new robot with more number of axes can be supported with the same controller box by some small changes in the controller firmware to account for the inverse kinematics and geometry of the new robot.

Dorna mushroom-picking robot

Our design idea for the new robot was a combination of a three-axis Scara-type robot with two extra axes at the tool head to approach mushrooms from different angels, a z-axis for moving the robot up and down, a y-axis slider for moving the robot along bed width and finally two wheels on the sides that sit on the bed and act as 7th axis of the robot.

The design has enough degrees of freedom to reach mushrooms from any arbitrary angle. Also, the Scara-type design allowed the robot to quickly reach different points on the bed using only one joint and considerably reduced the cycle time for picking mushrooms.

In order to scan mushrooms, and detect their size, quality, location, and orientation in space, we decided to equip the robot with 3D vision and used an Intel real sense camera attached to one of the arms of the Scara part of the robot. The Python API of the Real sense camera can easily communicate with Dorna Python API. 

The current state of the project

We provided a template Python code to the engineering team at the farm which was used for robot and camera coordination and could be easily integrated with other machine-learning APIs for training the vision.

So far our team has designed and reiterated three revisions of the mushroom-picking robot for the farm and has been working closely with the engineering team at the farm to test, modify and improve the robot. The robot can now achieve picking cycles similar to human pickers and an accuracy of picking over 80%. We are working on new revisions that will improve the duty cycle and accuracy even further. You can see the latest revision of the robot picking mushrooms on the farm:

If your business has unique challenges in adding automation to its workflow, do not hesitate to contact us. Our team has a wide range of expertise in mechanical design, machine learning and robot vision, firmware and electronics design, and system manufacturing and integration for challenging environments and can help you with your project. Our existing IP of the robot and its control software, helps us to offer efficient and cost-effective solutions for your problem in a short amount of time.