Robot mower system architecture

The robot mower system architecture consists of various mechanical, electronic and software components. They as shown on figure below and shortly described in the following paragraphs.

Robot mower system architecture
Robot mower system architecture

Element description

As shown above, the robot mower system architecture is made of several modules. Each one has a dedicated function shortly described in the following chapters. Modules communicates together therefore we are using CAN Bus.

On board computer

The on-board computer is the heart of the robot mower system architecture. It contain the software that manage the robot operation. The on-board computer is a Raspberry Pi. However, in order to not re-invent the wheel, the software used to operate the robot is ROS.

Communication bus

We are using CANBus and CANOpen for the communication between the different systems whenever possible. CANBus is a well known robust and real-time protocol used in different areas such as robotic or automation.

CANOpen is implemented on the top of CANBus. CANOpen implements a list of standard profiles that ease real-time communication between CANBus devices. There is also a CANOpen implementatin in ROS, that work on the top of SocketCAN.

Propulsionotor and BLDC controller


We have choosen Nema 23 motors with gearbox reductor for our prototype.

Nema 23 bloc motor
Nema 23 bloc motor

BLDC controller

We decided to use 4 brushless motors and a dedicated controller per motor. After several tests, we decided to use KYDBL 2430-1E brushless controller.

KYDBL 2430-1E brushless controller
KYDBL 2430-1E brushless controller

Cutting motor

The cutting motors drive the knives. We are also using brushless moter as the need les maintenance as DC motors.

Navigation system

The navigation system is made of three elements:

  • The GPS
  • The Lidar
  • The accelerometer and compass


We are using a RTK GPS for calculating the position of the robot. This is very accurate. Therefore, it allows to get rid of the traditional wire that limit the operational zone of the robot.


The Lidar continuously scans the environment. Hence, it helps the SLAM (simultaneous localization and mapping) software module of the robot to upgrade its environment knowledge. This is essential to calculate the optimal path.

Accelerometer and compass

The compass is there to help the robot to follow a path. It might not be absolutely necessary, but this has to be tested with the prototype.

The accelerometer have several goals such as measuring the slope, or detecting if the robot overturns.


Telemetry is in charge of communication with a central system. During the development phase, it allows to develop algorithms in a central system without having to deploy then in the robot. This feature is in the core of ROS.

Local contacts

We would like to cut grass very close to threes trunk, but without hurting them. The Lidar is not accurate enough: therefore, we are using local contact to detect when te robot is touching an obstacle.

Battery monitor

We continuously monitor the battery charge status as well as the consumption of the whole system. Consequently, this allows to detect when the robot has to go back to its charging station.

Leave a Reply

Your email address will not be published. Required fields are marked *

This site uses Akismet to reduce spam. Learn how your comment data is processed.