# Obstacle Avoidance for Large, Non-Point Mobile Robots

The objective of this project is to safely and reliably navigate with non-point vehicles. Traveling in the close proximity of obstacles and in confined space, while using inaccurate sensors for real-time obstacle detection, is a unique challenge for larger , non-point robots.

## Principle of Operation

Most research in mobile robot obstacle avoidance is done with small platforms that can be modeled as a point in the plane (e.g., CARMEL). A large, non-point mobile robot is likely to collide with obstacles as it "cuts corners" (e.g., collision path 1 in Fig. 1.4b) or as the robot's rear end swings out during a turn (e.g., collision path 2).
Combining our virtual force field (VFF) and vector field histogram (VFH) methods we have developed a new method, called the combined vector field (CVF). With this method, the principal steering direction is determined by the VFH algorithm, while the VFF algorithm applies virtual forces as a corrective measure (to account for the vehicle's rectangular dimensions). This way, steep force profiles with short-range effects can be used, thus avoiding the disadvantages of force field navigation.

## Applications

- Large mobile robots

- Oddly shaped robots (disproportionally long or wide robots)

- Multi-link robot manipulator arms

## Fig. 1: The Combined Vector Field (CVF) method:

**(a)** Multiple repulsive force fields are applied to multiple act-on points A_n on the periphery of the robot. All individual forces** F_i,j** are added at their act-on points and result in n repulsive forces **F_k**.

**(b)** Applying the principle of free-body diagrams, the moment** M**, caused by the repulsive forces** F_k** about the center point CP, can be computed. Using the VFH algorithm at CP, the principal steering direction is computed and a constant-magnitude vector** F_VFH** is applied in that direction.

**(c)** **M** is replaced by a force couple** F_1** and **F_2**, acting on CP_1 and CP_2, respectively. While **F_2** is discarded,** F_VFH** is shifted to CP_1 and added to F_1, yielding the new steering vector** F_s**.

**(d)** The Instantaneous Center of Rotation (ICR) can now be found and the velocities V_1 and V_2 of the two drive wheels are set accordingly.

For more details on obstacle avoidance for large, non-point robots see paper #30/31

This file last updated on 7/4/96 by Johann Borenstein
johannb@umich.edu