Using the path planning functionalitySeveral objects (or entities) have to be specified to the path planning module in order to define a path planning task: Following figure illustrates a typical path planning task: [Path planning task example] In above example, the path planning task is performed in a 3-dimensional configuration space (two perpendicular translations and one rotation). The start dummy initial configuration represents the path planning task's configuration space reference frame. Following 9 holonomic path planning task configuration spaces are supported: [Holonomic path planning configuration spaces (1) X, Y, (2) Z, Delta, (3) X, Y, Z] [Holonomic path planning configuration spaces (1) X, Y, Delta (2) Alpha, Beta, Gamma, (3) X, Y, Z, Delta] [Holonomic path planning configuration spaces (1) X, Alpha, Beta, Gamma (2) X, Y, Alpha, Beta, Gamma, (3) X, Y, Z, Alpha, Beta, Gamma] In addition to being able to specify the configuration space for a path planning task, the user is also able to specify the area and direction in which the search has to be performed: [Illustration of search area and direction for an (X, Y, Delta) configuration space] It is important to appropriately limit the search area in order to: (1) reduce calculation times, and (2) make the path planning task realizable. Following figure illustrates the effect of the search direction: [Illustration of search direction] The path planning algorithm operates by searching collision-free configurations (taking into account the search area) and then trying to link adjacent collision-free configurations by moving no more than a given linear and angular step size. Choosing large step sizes reduces calculation time, however the robot might jump through obstacles. The user is in charge of correctly selecting those step sizes as illustrated by following figures: [Effect of step sizes. (1) too large step size, (2) correct step size] Non-holonomic path planning tasks are handled in a similar way as for holonomic path planning tasks. Following figure illustrates the direction of movement of a non-holonomic vehicle: [Non holonomic path planning task] The vehicle can only move forward with a certain maximum turning circle diameter. There is no lateral movement possible (i.e. along the Y-axis), nor can the vehicle move backward. Path planning tasks in V-REP make sure that each searched configuration is collision-free (i.e. the robot and the obstacle don't collide). However, since a searched configuration is a discreet position/orientation in space, it can happen that the robot still collides with the obstacle when its position along the path is interpolated between two collision-free configurations. This usually happens rarely, but the occurrence can even be reduced by using smaller linear/angular step sizes. Another, better way of handling those situations, is to use a minimum distance threshold test instead of a collision test. Indeed, using a minimum allowed distance between the robot and the obstacle can not only guarantee no collisions at all, but can also provide the robot with a safety buffer during motion along the path. The only drawback to this is that the minimum distance checking takes more computation time that the collision checking. Recommended topics |