Top Banner
Joint Advanced Student Joint Advanced Student School 2006 School 2006 Binary Manipulator Motion Planning by Vasiliy Chernonozhkin CSRI RTC, SPbSPU Saint-Petersburg 2006
42

Joint Advanced Student School 2006

Jan 03, 2016

Download

Documents

teagan-powers

Joint Advanced Student School 2006. Binary Manipulator Motion Planning. by Vasiliy Chernonozhkin CSRI RTC, SPbSPU Saint-Petersburg 200 6. Most robots available today are powered by continuous actuators such as DC motors or hydraulic cylinders. - PowerPoint PPT Presentation
Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Page 1: Joint Advanced Student School 2006

Joint Advanced Student Joint Advanced Student School 2006School 2006

Binary Manipulator Motion Planningby Vasiliy Chernonozhkin

CSRI RTC, SPbSPU

Saint-Petersburg

2006

Page 2: Joint Advanced Student School 2006

Introduction

Most robots available today are powered by continuous actuators such as DC motors or hydraulic cylinders.

Continuously actuated robots can be built to be precise and to carry large pay loads, but they usually have high price/performance ratios, as evidenced by the high cost of industrial robots available today.

Thus, there is a need for a new paradigm in robotics which will lead to lower cost and higher reliability.

Page 3: Joint Advanced Student School 2006

Binary manipulator concept

The binary manipulator concept is influenced by several successive concepts:

discrete actuation;

sensorless systems.

hyper-redundant structure;

Page 4: Joint Advanced Student School 2006

Related literatureDiscrete actuation [1] Pieper D.L. The Kinematics of Manipulators under Computer Control, 1968. [2] Roth B., Rastegar J., Scheinman V. On the Design of Computer Controlled

Manipulators, 1973. [3] Koliskor A. The 1-Coordinate Approach to the Industrial Robots Design, 1986. [4] Kumar A., Waldron K.J. Numerical Plotting of Surfaces of Positioning Accuracy of

manipulators, 1980. [5] Sen D., Mruthyunjaya T.S. A Discrete State Perspective of Manipulator

Workspaces, 1994.

Hyper-redundancy [6] Chirikjian G.S. Theory and Applications of Hyper-Redundant Robotic

Manipulators, 1992. [7] Chirikjian G.S., Burdick J.W. An Obstacle Avoidance Algorithm for Hyper-

Redundant Manipulators, 1990. [8] Anderson V.V., Horn R.C. Tensor-Arm Manipulator Design, 1967. [9] Hirose S., Umetani Y. Kinematic Control of Active Cord Mechanism with Tactile

Sensors, 1976. [10] Hirose S., Yokoshima K., Ma S. 2 DOF Moray Drive for Hyper-Redundant

Manipulator, 1992.

Page 5: Joint Advanced Student School 2006

Related literature: Hyper-redundancy

Fig. 1. Three major types of hyper-redundant manipulators:(a) continuous, (b) serial, and (c) cascaded platforms

Page 6: Joint Advanced Student School 2006

Related literatureSensorless systems [14] Canny J., Goldberg K. A Rise Paradigm for Industrial Robotics, 1993. [15] Mason M.T. Kicking the Sensing Habit, 1993. [16] Goldberg K. Orienting Polygonal Parts Without Sensors, 1992. [17] Erdmann M.A., Mason M.T. Exploration of Sensorless Manipulation, 1988.

Binary manipulators [18] Bergstrom P.L., Tamagawa T., Polla D.L. Design and Fabrication of

Micromechanical Logic Elements, 1990. [19] Ebert-Uphoff I., Chirikjian G.S. Efficient Workspace Generation for Binary

Manipulators with Many Actuators, 1995. [20] Chirikjian G.S. Kinematic Synthesis of Mechanisms and Robotic Manipulators

with Binary Actuators, 1995. [21] Chirikjian G.S., Lees D. Inverse Kinematics of Binary Manipulators with

Applications to Service Robotics, 1995.

Page 7: Joint Advanced Student School 2006

Binary manipulator concept

Binary manipulators are a particular kind of discrete device in which actuators have two stable states.

Major benefits of binary manipulators are: they can be operated without extensive feedback control; they are relatively inexpensive; they are relatively lightweight and have a high payload to arm

weight ratio; their task repeatability is very high.

Page 8: Joint Advanced Student School 2006

Variable Geometry Truss manipulator

Fig. 2. All possible configurations of a 3-bit planar binary platform manipulator – one VGT module

Page 9: Joint Advanced Student School 2006

Variable Geometry Truss manipulator

Fig. 3. Configurations 110001110001110 and 001110001110001 of 15-DOF planar VGT manipulator

Page 10: Joint Advanced Student School 2006

Variable Geometry Truss manipulator

Fig. 4. Planar 30-DOF binary robot manipulator by

Chirikjian and Burdick

Page 11: Joint Advanced Student School 2006

Variable Geometry Truss manipulator

Fig. 5. Ebert-Uphoff’s binary robot manipulator

Page 12: Joint Advanced Student School 2006

Variable Geometry Truss manipulator

Fig. 6. Suthakorn’s discretely-actuated hyper-redundant

robotic manipulator

Page 13: Joint Advanced Student School 2006

Binary Robotic Articulated Intelligent Device (BRAID)

Fig. 7. BRAID’s i-th parallel link stage:

(a) physical parallel link stage; (b) diagrammatic representation.

Page 14: Joint Advanced Student School 2006

Binary Robotic Articulated Intelligent Device (BRAID)

Fig. 8. Detent based binary joint

Page 15: Joint Advanced Student School 2006

Binary manipulator motion planning

While the hardware costs of a binary manipulator are lower than of a continuously actuated manipulator, there is a tradeoff in the complexity of the trajectory planning software.

The large number of possible states of a binary manipulator makes it highly desirable to have efficient algorithms for searching through some (potentially large) subset of manipulator configurations that satisfy a particular constraint, so that an “optimal” configuration can be chosen.

Since the mid 1990s Chirikjian and co-workers have developed a variety of efficient algorithms for highly actuated discrete-state robots and mechanisms. These include approaches to the kinematic synthesis of such mechanisms, the generation of workspaces and inverse kinematics.

Page 16: Joint Advanced Student School 2006

An efficient algorithm for computing the forward kinematics

Fig. 9. Serial-revolutemanipulator

For a serial-revolute manipulator (Fig. 9) the kinematicsof an individual module in a particular stateare described by:

.1

0

));sin(),cos((

max

min

ii

iii

iiiii

sifq

sifq

llb

Page 17: Joint Advanced Student School 2006

An efficient algorithm for computing the forward kinematics

The forward kinematics for a single VGT module (Fig. 10) obey the following geometric constraints:

.)()(

;

;)(

;

2210

210

20

20

20

22

21

21

21

21

21

wyyxx

qyx

qywx

qyx

These equations are solved simultaneously forthe coordinates of the top plate of the truss:

Fig. 10. VGT module

,,2

4

,2

,2

20

200

2

0

2221

222

11

221

22

1

xqya

acbbx

w

wqqqy

w

wqqx

where:

.4222

;4

;44

20

21

4221

220

21

20

40

41

1211

201

2

21

21

qywwqwqqqqqc

xqxqxwb

yxa

.,2

)(,

2

)(

01

011010

ii

iii

iiiii xx

yyarctg

yyxxb So,

Page 18: Joint Advanced Student School 2006

An efficient algorithm for computing the forward kinematics

Pre-computation algorithm

Inputs to the algorithm: qj

min, qjmax, the joint limits for each actuator in the manipulator in

states 0 and 1 respectively, for j = 1,…,J. wi, the width of the top of module i for a truss-type manipulator, or

li, the length of link i in a serial-revolute manipulator, for i = 1,…,B.

for i = 1 to Bfor j = 1 to J

Use the kinematic parameters of module ito compute Ci for state j.

endend

Page 19: Joint Advanced Student School 2006

An efficient algorithm for computing the forward kinematics

Main algorithm

Inputs to the algorithm: S, a J-bit binary number representing the current state of the manipulator. Ci, for i = 1,…,B, the configuration sets for the modules in the manipulator.Outputs from the algorithm: EEpos, the position of the manipulator’s end-effector. see, cee, the sin and cos of the end-effector orientation angle for the 2D case, or

Ree, the rotation matrix describing end-effector orientation, in the 3D case.

EEpos = 0; Ree = I;for i = 1 to B

select Ci

EEpos = EEpos + Rsibsi;Ree = Rsi Ree;

endend

Page 20: Joint Advanced Student School 2006

A combinatorial method for computing the inverse kinematics

The standard definition of the binomial theorem:

inin

i

n yxi

nyx

0

)(

If we let x = 1 and let y = 1, we get the following result:

.2

;11)11(

0

0

n

i

n

inin

i

n

i

n

i

n

Page 21: Joint Advanced Student School 2006

A combinatorial method for computing the inverse kinematics

Consider a VGT robot with J actuators, which we move toward itstarget location by changing no more than k of its actuators at a time.To do this we must search through:

candidate states to find the one thatbest moves the robot toward its target position.

k

JJJJ...

210

Operation is defined as follows:

k

n

).1)...(2)(1(!

1

1)...1)((

1)...)...(1(

!

1

)!(

!

!

1

)!(!

!

knnnnk

knkn

knnn

k

kn

n

kknk

n

k

n

Page 22: Joint Advanced Student School 2006

A combinatorial method for computing the inverse kinematics

Algorithm description

Inputs to the algorithm: EEdes, the desired position of the manipulator’s end-effector. EEnow, the current position of the manipulator’s end-effector. pnow, the manipulator’s current state vector. nmax, the maximum number of bits allowed to change in the

manipulator’s state vector. B, the number of degrees of freedom (same as number of bits) of

the manipulator. The geometry of the manipulator modules for computing the

forward kinematics (using, for example, the method described earlier).

Page 23: Joint Advanced Student School 2006

Algorithm descriptiondmin = cost(EEdes, EEnow);pmin = pnow;bmin = 0;for i = 1 to nmax

for j = 1 toc = combo(B, i, j);ptest = c pnow;dtest = cost(EEdes, fwdKin(ptest));if dtest < dmin then

dmin = dtest;pmin = ptest;bmin = i;

endend

endreturn dmin, pmin, bmin

A combinatorial method for computing the inverse kinematics

i

B

Page 24: Joint Advanced Student School 2006

Efficient workspace generation

Determining the workspace of a binary manipulator is of great practical importance for a variety of applications.

A representation of the workspace is essential for: trajectory tracking, motion planning, the optimal design

of binary manipulators.

Given that the number of configurations attainable by binary manipulators grows exponentially in the number of actuated DOF, O(2n), brute force representation of binary manipulator workspaces is not feasible in the highly actuated case.

Page 25: Joint Advanced Student School 2006

Efficient workspace generationConcepts for discrete workspaces

The point density ρ assigns each block of the number of binary manipulator states resulting in an end-effector position within the block, normalized by the volume of the block:

The point density array, or density array for short, is an N-dimensional array of integers (D(i, j) for N = 2 or D(i, j, k) for N = 3) in which each field/element corresponds to one block of the workspace and contains the number of binary manipulator states causing the end-effector to be in this block.

.block of avolume/are

block within points reachable of #

,block workspaceof avolume/are

blockithin position w-eein resulting statesr manipulatobinary #

ρ(block)

or(block)

NRW

Page 26: Joint Advanced Student School 2006

Efficient workspace generationConcepts for discrete workspaces

The ith intermediate workspace of a macroscopically serial manipulator composed of B modules is the workspace of the partial manipulator from module i + 1 to the end-effector.

An affine transformation in RN is a transformation of the formy = Ax + b, where x, y, and b are vectors in RN, and A is an arbitrary matrix in RNxN.

A homogenous transformation is a special case of an affine transformation: y = Rx + b, where R is a special orthogonal matrix, i.e., an orthogonal matrix with determinant 1.

Page 27: Joint Advanced Student School 2006

Efficient workspace generationEfficient representation of workspaces

Requirements for potential workspace representations:1. The amount of data stored at any time must be far less than the

explicit storage of an intermediate workspace, which would require 2k N-dimensional vectors for k ≤ n.

2. The positional error caused by the representation of the workspace has to be small. In the ideal case it must stay below a given bound.

3. It is crucial that the workspace representation used supports efficient computation of affine transformations.

4. It is desirable to be able to quickly test whether a particular vector lies in an intermediate workspace.

Page 28: Joint Advanced Student School 2006

Efficient workspace generationEfficient representation of workspaces

A density set is a computational structure containing the following information:

A reference point that defines a point of the workspace in real coordinates.

The resolution of the discretization, i.e. block dimensions given by .

The dimensions/length of the array in each direction, either in real (workspace) coordinates, , or as integers, iL, jL, kL, giving the numbers of pixels/voxels for the particular resolution.

The density array, D, of the workspace, which is an N-dimensional array of integers representing the point density of the workspace multiplied by block volume.

},,,{ L0 xΔxxDД NR0x

Tzyx ],,[ Δx

TLLL zyx ],,[Lx

Page 29: Joint Advanced Student School 2006

Efficient workspace generation

Fig. 11. Representation of a workspace as a density set

Page 30: Joint Advanced Student School 2006

Efficient workspace generation

Efficient representation of workspaces

For given workspace coordinates , the corresponding array indices can be find as follows:

First are chosen to be the indices corresponding to the middle point x0 of the workspace, such that the range of possible indices of the array is simply

),,( 000 kji

Tzyx ],,[x

.2,...,1,,...,1,0

,2,...,1,,...,1,0

,2,...,1,,...,1,0

000

000

000

kkkk

jjjj

iiii

),,( kji

Page 31: Joint Advanced Student School 2006

Efficient workspace generation

Efficient representation of workspaces

For given workspace coordinates , the corresponding array indices can be find as follows:

The rule to calculate workspace coordinates from array indices is:

Tzyx ],,[x),,( kji

).()(),,(

),()(),,(

),()(),,(

00

00

00

kkzzkzkjiz

jjyyjykjiy

iixxixkjix

Page 32: Joint Advanced Student School 2006

Efficient workspace generation

Efficient representation of workspaces

For given workspace coordinates , the corresponding array indices can be find as follows:

The inverse problem is solved as follows:

Tzyx ],,[x),,( kji

.5.0)(

)(),,(

,5.0)(

)(),,(

,5.0)(

)(),,(

00

00

00

kz

zzzkzyxk

jy

yyyjzyxj

ix

xxxizyxi

is the floor operation: x 5.0)( xxRound

Page 33: Joint Advanced Student School 2006

Efficient workspace generationThe workspace mapping algorithm

Iteration s of the algorithm, which deals with module m = B-s+1:1. Estimate size and location of intermediate workspace Wm-1. Based

on this information: Choose the dimensions of a block in the new density array:

. Based on these dimensions determine the number of fields of the

density array in each direction: . Allocate sufficient memory for this density array and initialize it

with zeros. Determine the coordinates of the middle point of the new

workspace: . Determine the array indices, , of the middle

point of the new array.

),,( )1()1()1( mmm zyx

),,( )1()1()1( mL

mL

mL kji

),,( )1(0

)1(0

)1(0

mmm zyx),,( )1(

0)1(

0)1(

0 mmm kji

Page 34: Joint Advanced Student School 2006

Efficient workspace generationThe workspace mapping algorithm

Iteration s of the algorithm, which deals with module m = B-s+1:2. For all configurations , ( ), apply the

corresponding homogeneous transformation to the density array Dm:

For all indices for which the entry of the density array Dm is not zero, the following steps are applied:

Calculate the vector from the array indices .

Calculate the coordinate vector . Find the array indices of x' in the new array. Increment entries in the block of the new array by the

corresponding entry of the old array:

m(m)l

(m)l C)b,(R mJl 2,...,1

),,( kji ),,( kjiDm

Tiziyix )](),(),([x1 m

(m)l

(m)l WbxRx

),,( kji

)).,,(),,((),,( 11 kjiDkjiDkjiD mmm

Page 35: Joint Advanced Student School 2006

HRM Modeler

Fig. 12. The main window of the modeling program

Page 36: Joint Advanced Student School 2006

HRM Modeler

Main features of the program are: VGT structure graphic modeling; end-effector coordinates and orientation calculation; manipulator configuration, allowing to reach any given point,

computing; position error minimization by reducing the distance between

end-effector and given point; manipulator workspace computing and graphic representation.

Page 37: Joint Advanced Student School 2006

HRM Modeler

Fig. 13. The outcome of a combinatorial algorithm for the inverse kinematics of 30-DOF VGT manipulator

Page 38: Joint Advanced Student School 2006

HRM Modeler

Fig. 13. The outcome of a combinatorial algorithm for the inverse kinematics of 30-DOF VGT manipulator

Page 39: Joint Advanced Student School 2006

HRM Modeler

Fig. 13. The outcome of a combinatorial algorithm for the inverse kinematics of 30-DOF VGT manipulator

Page 40: Joint Advanced Student School 2006

HRM Modeler

Fig. 13. The outcome of a combinatorial algorithm for the inverse kinematics of 30-DOF VGT manipulator

Page 41: Joint Advanced Student School 2006

HRM Modeler

Fig. 14. The 15-DOF VGT manipulator workspace

Page 42: Joint Advanced Student School 2006

Summary

Binary manipulators are promising alternative to traditional continuously actuated robots.

Such advantages of binary robots, like low cost, light weight, high task repeatability and other, makes efforts in studying of binary manipulators very perspective and practical.

While the latest algorithm, described in this report, is extremely fast and efficient, there is some limitation in number of binary manipulator modules. When this limitation is exceeded high computational costs become an insoluble problem again.

Thus, there is still a problem of finding new decisions and making new algorithms in binary manipulator motion planning.