# Autonomous Robots: Theoretical Calculations Only Take You So Far

0
947

## Q. What has been the most challenging area when it comes to designing autonomous robots?

A. For the floor-cleaning robot, while we can design for a generalised area (of say, 92.9sqm, or 1000sqft), for targeting dust we cannot predict the customer’s home layout within that area. This leads to an incalculable number of possible permutations and combinations that we need to design around.

## Q. What technology did you use to get around this challenge?

A. In our case we have built a Z-programming algorithm that uses orthogonal movement, combined with a few more sub-routines (dependent on data processing from multiple sensors) to ensure that not only does the robot function on all areas of the room and around each obstacle it detects, in some cases it also goes into edge-to-edge mode if certain conditions are met in the algorithm.

## Q. How are algorithms like these typically solved?

A. Theoretical calculations only take you so far since every mathematical model attempts to approximate the real world. In the real world, the engineering team has to go through a lot of iterations and empirical testing. The best way to improve on that part of the algorithm is to test the robot in the real world, create different obstacle courses, see how the algorithm behaves in that scenario, and tweak it accordingly.

## Q. How have robots been improved on from a design perspective?

A. We have upgraded the tyre treads to tackle harsher surfaces such as thicker carpets and cords. In addition to this, a lot of models have a switch that detects when the suspension bottoms out. This switch, in combination with the tyre treads and the wheel encoders, enables us to write what we internally refer to as escape sub-routines, which allows the robot to bring itself out of situations that would normally cause it to get stuck. The maximum force the device experiences is in the case of a collision or fall.

## Q. How do you prevent collisions?

A. To avoid collisions, we equip the robot with two sets of sensors. One is the infrared to detect objects that are at a certain distance, and the other is the bumper sensor. If the infrared sensor is out of range, the bumper sensor actuation triggers the obstacle-detection sub-routines in a similar manner to the infrared sensor.

The bumper sensor is a series of switches along the length at front of the robot. This is done so that the robot knows where it has been bumped and can move out of the situation accordingly.

## Q. What about outright falls?

A. Optical fall sensors are present at the bottom of the device. These continuously send signals to the robot to let it know that it is present on a surface. Locations of these sensors are based on how long it takes the robot to move at its maximum speed (0.28 metres/second for most models) and how long it takes to stop.

Once the robot detects a ‘0’ (floor not detected) from the front sensors, it stops and backs out, and continues with its Z-programming, treating that area as an obstacle. This ensures that the robot can both avoid stairs and continue with its orthogonal movement without one affecting the other.

## Q. How does the dirt-detection feature work?

A. We have different ways of solving this problem. In some cases, the problem is solved by two piezoelectric plates present on the inside of the robot that come into contact with the main brush. When unwanted particles like dust or dirt come into contact with the sensors, these trigger a specific sub-routine that causes the robot to reduce its speed slightly and also increase suction power to tackle the area.

The alternative is to use an optical sensor present in the inlet before air enters the dust filter. There is a transmitter and receiver on either side of the hole. If dirt or dust is detected, optical signal from the transmitter and receiver is lost, triggering similar behaviours as mentioned earlier.