WR Home      Topic Home      Chapter:  1  2  3  4 
<Previous Next>

Chapter 04

Reachability Test

Page 1

(Part-II:   MATLAB® Programming Tutorials: Robot Control and Mathematics)

This Chapter covers the following topics:
  1. Reachability Test: Logical (Black and White Plotting)
  2. Reachability Test: Reason for Unreachability (Coloured Plotting)
  3. Reachability Test Colour Fast: Execution Time Optimization
  4. Image as a Figure Background
  5. Image as an Animation Background
Reachability: One end of Link-1 is pivoted (hinged) to the origin. The two link chain cannot reach any point which is away from L1 + L2. So, L1+L2 can be considered as a radius of a circle, any point outside is unreachable. Even inside this circle, there are places where the gripper tip can't reach. Just like its difficult for the right hand to touch the right hand biceps, even though they are not far away. Similarly it is difficult for the right hand to touch the right hand elbow due to angular movement restictions.

Unlike the previous program which helped in determining the work-envelope, a new function will be developed to test the reachablity.

A MATLAB® function isReachable is to be developed which tests that, whether a given point (dx, dy) is reachable for the robots gripper or not?

function [ reachabilityFlag ] = isReachable( dx, dy )

if the point (dx, dy) is in reach, the return value reachabilityFlag = 1 else reachabilityFlag = 0

In order to pass a reachablity test the following conditions must be met:

The reachable area is shown in White color and un-reachable area is shown in black:

Reachable area is shown in White
Try to figure out Why the points in the Black are are unreachable. Afew hints are given below:

Case 1: Arm's length is shorter: The area shown is Black color and nammed as Case 1 is unreachable because even if the arm is streached to its full length (L1+L2), the dsetination point is still far.
Case 2: Unrechable semi-circle in Q1 (and Q2 ): The area shown is Black color and nammed as Case 2 is unreachable because M1 cant go clockwise beyond zero-degrees and any point which is lesser than L2 cant be reached. Just like, its difficult for a human right hand to touch the right hand biceps. The biceps are at a distance lesser than the Ulna bone (Link-2)
Case 3: Unreachable semicircle below x-axis (Q3 & Q4)
Case 4: The point lies in Q4 but outside reachable area
Case 5: Inside Q3 but outside reachable area

Hint for case1 given below.
The distance of the point (dx, dy) from the robot base (0,0) must NOT be greater then L1+L2
Can be mathematically written as:
if sqrt(dx*dx + dy*dy) > SUM_L1_L2 then the point is unreachable

All the 5-cases are mathematically written in the function code
Click here to download the function
Click here to view the function and its output for a sample run.

WR Home      Topic Home      Chapter:  1  2  3  4 
<Previous Next>