## Are you sure?

This action might not be possible to undo. Are you sure you want to continue?

**PLANAR TENSEGRITY STRUCTURES FOR ROBOTIC
**

APPLICATIONS

by

Andrew Peter Schmalz

A thesis submitted to the Faculty of the University of Delaware in partial

fulﬁllment of the requirements for the degree of Master of Science in Mechanical

Engineering

Fall 2006

c 2006 Andrew Peter Schmalz

All Rights Reserved

CLASSIFICATION, ANALYSIS, AND CONTROL OF

PLANAR TENSEGRITY STRUCTURES FOR ROBOTIC

APPLICATIONS

by

Andrew Peter Schmalz

Approved:

Sunil K. Agrawal, Ph.D.

Professor in charge of thesis on behalf of the Advisory Committee

Approved:

Thomas S. Buchanan, Ph.D.

Chair, Department of Mechanical Engineering

Approved:

Eric W. Kaler, Ph.D.

Dean, College of Engineering

Approved:

Daniel Rich, Ph.D.

Provost

ACKNOWLEDGEMENTS

I would like to thank my advisor, Dr. Sunil Agrawal, for all his support

and guidance throughout this project, as well as Dr. Michael Greenberg and Dr.

Xin-Yan Deng for serving on my thesis committee. I would also like to thank the

Delaware Space Grant Consortium for awarding me the NASA/DESGC Graduate

Fellowship to help fund my research. Thanks to all the members of the Mechanical

Systems Laboratory, especially John Fader and Sean McIntosh, whose friendship

and laugher have made life in a drab, windowless lab a little more bearable. Special

thanks also to John Barbour for dedicating countless hours of his time to assisting

me with adjustments to the experimental setup. Finally, I would like to thank my

parents for their many years of love and encouragement that have taught me the

importance of challenging myself and persevering through to the end.

iii

TABLE OF CONTENTS

LIST OF FIGURES . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . vii

LIST OF TABLES . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . xi

ABSTRACT . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . xii

Chapter

1 INTRODUCTION . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1

1.1 Background and History . . . . . . . . . . . . . . . . . . . . . . . . . 1

1.2 A Shift Toward Robotics . . . . . . . . . . . . . . . . . . . . . . . . . 3

1.3 Problem Statement and Scope of the Thesis . . . . . . . . . . . . . . 8

2 TAXONOMY, NOMENCLATURE, AND STRUCTURAL

ANALYSIS . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11

2.1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11

2.2 Taxonomy and Nomenclature . . . . . . . . . . . . . . . . . . . . . . 11

2.2.1 Assumptions and Restrictions . . . . . . . . . . . . . . . . . . 11

2.2.2 Numbering Convention . . . . . . . . . . . . . . . . . . . . . . 13

2.2.3 Naming Scheme . . . . . . . . . . . . . . . . . . . . . . . . . . 15

2.3 Structural Model . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16

2.4 General Procedure for Dynamic Analysis . . . . . . . . . . . . . . . . 19

2.4.1 Class 1 Dynamics . . . . . . . . . . . . . . . . . . . . . . . . . 20

2.4.2 Class 2 Dynamics . . . . . . . . . . . . . . . . . . . . . . . . . 29

2.5 Conclusions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 37

iv

3 SYSTEM CONTROL . . . . . . . . . . . . . . . . . . . . . . . . . . . . 39

3.1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 39

3.2 Negative Tension Problem . . . . . . . . . . . . . . . . . . . . . . . . 39

3.3 Feedback Linearization . . . . . . . . . . . . . . . . . . . . . . . . . . 41

3.4 Null-Space Controller . . . . . . . . . . . . . . . . . . . . . . . . . . . 43

3.5 Simulations . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 46

3.5.1 T

1

R

4

C

12

D

12,34

Simulation . . . . . . . . . . . . . . . . . . . . 46

3.5.2 T

1

R

4

C

14

D

12,23,34

Simulation . . . . . . . . . . . . . . . . . . . 53

3.5.3 T

2

R

4

C

7

V

2

Simulation . . . . . . . . . . . . . . . . . . . . . . . 55

3.6 Conclusions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 57

4 SYSTEM WORKSPACE DETERMINATION . . . . . . . . . . . . 60

4.1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 60

4.2 Analytical Error Solution . . . . . . . . . . . . . . . . . . . . . . . . . 61

4.3 Dynamic Workspace Generation Techniques . . . . . . . . . . . . . . 62

4.4 Three-Degree-of-Freedom Tensegrity Structure . . . . . . . . . . . . . 64

4.4.1 Physical Description . . . . . . . . . . . . . . . . . . . . . . . 64

4.4.2 Kinematic Model . . . . . . . . . . . . . . . . . . . . . . . . . 64

4.4.3 Dynamic Model . . . . . . . . . . . . . . . . . . . . . . . . . . 66

4.4.4 Simulation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 68

4.4.4.1 One-Dimensional Motion . . . . . . . . . . . . . . . . 68

4.4.4.2 Multi-Dimensional Workspace . . . . . . . . . . . . . 79

4.4.4.3 Static Workspace Comparison . . . . . . . . . . . . . 84

4.5 Overactuated System Comparison . . . . . . . . . . . . . . . . . . . . 86

4.6 Conclusions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 92

5 EXPERIMENTATION . . . . . . . . . . . . . . . . . . . . . . . . . . . 94

5.1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 94

5.2 System Description . . . . . . . . . . . . . . . . . . . . . . . . . . . . 94

v

5.3 Experiments . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 98

5.3.1 Dynamic Workspace . . . . . . . . . . . . . . . . . . . . . . . 98

5.3.2 Maintaining Fixed Conﬁguration . . . . . . . . . . . . . . . . 100

5.3.3 Motion to x = .35 m, y = .05 m . . . . . . . . . . . . . . . . . 100

5.3.4 Motion to x = .25 m, y = −.07 m, θ = 100

◦

. . . . . . . . . . 105

5.4 Conclusions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 105

6 CONCLUSION . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 108

6.1 Summary of Results and Contributions . . . . . . . . . . . . . . . . . 108

6.2 Recommendations for Future Work . . . . . . . . . . . . . . . . . . . 111

BIBLIOGRAPHY . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 113

vi

LIST OF FIGURES

1.1 Snelson’s Tensegrity Sculptures . . . . . . . . . . . . . . . . . 2

1.2 Fuller’s Tensegrity Structures . . . . . . . . . . . . . . . . . . . 3

1.3 Class 2 Tensegrity Boom . . . . . . . . . . . . . . . . . . . . . 6

1.4 Tensegrity Pipe Crawler . . . . . . . . . . . . . . . . . . . . . . 6

1.5 Walking Tensegrity Robot . . . . . . . . . . . . . . . . . . . . . 7

1.6 Load-Handling Tensegrity Structure . . . . . . . . . . . . . . 7

2.1 Class 1 vs. Class 2 Tensegrity Structures . . . . . . . . . . . 12

2.2 Numbering Convention . . . . . . . . . . . . . . . . . . . . . . . 14

2.3 Numbering Convention Used by de Jager and Skelton . . . 15

2.4 T

2

R

6

C

10

V

23

Planar Tensegrity Structure . . . . . . . . . . . . . 16

2.5 Basic Rod Characterization . . . . . . . . . . . . . . . . . . . . 18

2.6 T

1

R

4

C

12

D

12,34

Structure . . . . . . . . . . . . . . . . . . . . . . . 21

2.7 T

1

R

4

C

12

D

12,34

Imposed Constraints . . . . . . . . . . . . . . . . 22

2.8 Free-Body Diagrams of Individual T

1

R

4

C

12

D

12,34

Rods . . . . 26

2.9 T

2

R

4

C

7

V

2

Structure . . . . . . . . . . . . . . . . . . . . . . . . . . 29

2.10 Free-Body Diagrams of Individual T

2

R

4

C

7

V

2

Rods . . . . . . 33

3.1 Feasible Regions . . . . . . . . . . . . . . . . . . . . . . . . . . . 45

vii

3.2 T

1

R

4

C

12

D

12,34

Conﬁguration . . . . . . . . . . . . . . . . . . . . 47

3.3 Initial and Final System Conﬁgurations . . . . . . . . . . . . 49

3.4 System Variable Motion vs. Time . . . . . . . . . . . . . . . . 50

3.5 T

1

R

4

C

12

D

12,34

Tensions vs. Time with Passive Cables 3, 4,

and 8 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 51

3.6 T

1

R

4

C

12

D

12,34

Tensions vs. Time with Passive Cables 9, 10,

and 12 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 52

3.7 T

1

R

4

C

12

D

12,34

Tensions vs. Time with All Cables Actuated . 53

3.8 T

1

R

4

C

14

D

12,23,34

Conﬁguration . . . . . . . . . . . . . . . . . . . 54

3.9 T

1

R

4

C

14

D

12,23,34

Tensions vs. Time with Passive Cables 9, 10,

13, 14 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 55

3.10 T

2

R

4

C

7

V

2

Conﬁguration . . . . . . . . . . . . . . . . . . . . . . . 56

3.11 Initial and Final System Conﬁgurations . . . . . . . . . . . . 57

3.12 T

2

R

4

C

7

V

2

Tensions vs. Time with Passive Cables 5 and 7 . . 58

3.13 T

2

R

4

C

7

V

2

Tensions vs. Time with All Cables Actuated . . . 58

3.14 System Variable Tracking vs. Time . . . . . . . . . . . . . . . 59

4.1 Planar Tensegrity Structure with One Fixed Rod and One

Free Rod . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 65

4.2 Initial Conﬁguration . . . . . . . . . . . . . . . . . . . . . . . . 69

4.3 Surface Plots of Input Tension Values for Varying x

d

. . . . 69

4.4 Feasible Areas for Choice of x

d

. . . . . . . . . . . . . . . . . . 71

4.5 x-Position versus Time . . . . . . . . . . . . . . . . . . . . . . . 72

4.6 Cable Tensions During x-Motion . . . . . . . . . . . . . . . . . 72

viii

4.7 Initial Conﬁguration for y-Motion . . . . . . . . . . . . . . . . 73

4.8 Surface Plots of Input Tension Values for Varying y

d

. . . . 73

4.9 Feasible Areas for Choice of y

d

. . . . . . . . . . . . . . . . . . 74

4.10 y-Position versus Time . . . . . . . . . . . . . . . . . . . . . . . 75

4.11 Cable Tensions During y-Motion . . . . . . . . . . . . . . . . . 75

4.12 Initial Conﬁguration for θ-Motion . . . . . . . . . . . . . . . . 76

4.13 Surface Plots of Input Tension Values for Varying θ

d

. . . . 76

4.14 Feasible Areas for Choice of θ

d

. . . . . . . . . . . . . . . . . . 77

4.15 θ-Orientation versus Time . . . . . . . . . . . . . . . . . . . . . 78

4.16 Cable Tensions During θ-Motion . . . . . . . . . . . . . . . . . 78

4.17 Final System Conﬁguration . . . . . . . . . . . . . . . . . . . . 79

4.18 Dynamic Workspace at Successive Time Samples . . . . . . 81

4.19 Time-Independent Dynamic Workspace . . . . . . . . . . . . 82

4.20 Cable Tensions During Combined x-y-θ Motion . . . . . . . 83

4.21 Tracking of Each System Variable versus Time . . . . . . . . 83

4.22 Comparison of Dynamic and Static Workspaces . . . . . . . 84

4.23 Cable Tensions During Infeasible Motion . . . . . . . . . . . 85

4.24 Static Equilibrium Conﬁguration . . . . . . . . . . . . . . . . . 85

4.25 Time-Independent Dynamic Workspace for Overactuated

System . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 88

4.26 Portion of Feasible Volume Added by Using Overactuation 89

ix

4.27 Geometrically Constrained Time-Independent Dynamic

Workspace for Overactuated System . . . . . . . . . . . . . . 91

4.28 Portion of Feasible Volume Added by Using Overactuation

and Geometric Constraints . . . . . . . . . . . . . . . . . . . . 91

4.29 Cable Tensions for Overactuated System Motion . . . . . . 92

5.1 Experimental Setup . . . . . . . . . . . . . . . . . . . . . . . . . 96

5.2 Time-Independent Dynamic Workspace for Experimental

System . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 98

5.3 Length-Restricted Time-Independent Dynamic Workspace 99

5.4 Position and Orientation Tracking for Fixed Conﬁguration

Experiment . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 100

5.5 Tension Values for Fixed Conﬁguration Experiment . . . . . 101

5.6 Position and Orientation Tracking for x-y Translation

Experiment . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 102

5.7 Tension Values for x-y Translation Experiment . . . . . . . . 103

5.8 Early Portion of Position and Orientation Tracking for x-y

Translation Experiment . . . . . . . . . . . . . . . . . . . . . . 104

5.9 Early Portion of Tension Values for x-y Translation

Experiment . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 104

5.10 Position and Orientation Tracking for Translation-Rotation

Experiment . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 106

5.11 Tension Values for Translation-Rotation Experiment . . . . 106

x

LIST OF TABLES

2.1 Numerical Relations Among Structural Elements . . . . . . 12

3.1 T

1

R

4

C

12

D

12,34

Simulation Parameters . . . . . . . . . . . . . . . 47

3.2 T

2

R

4

C

7

V

2

Simulation Parameters . . . . . . . . . . . . . . . . . 55

4.1 Simulation Parameters . . . . . . . . . . . . . . . . . . . . . . . 68

5.1 Experimental Parameters . . . . . . . . . . . . . . . . . . . . . 97

xi

ABSTRACT

Tensegrity is a structural concept in which a set of compressive components

(rods) interacts with a network of tensile components (cables), deﬁning a stable

volume in space. For years this idea was applied to static structures in ﬁelds such as

architecture and art. Recently, however, there has been a movement toward using

tensegrity for robotic applications. By modifying the tensions in the cables within

a structure, movement can be achieved. If actuation is performed in a coordinated

manner, useful motions and changes to the overall shape of a structure are possible.

The primary issue in the control of such structures is the need to maintain positive

tensions in the cables. If cables become slack, the desired control inputs cannot be

delivered to the system, causing a degradation in performance, or worse, instability.

Tensegrity systems may be used for such applications as deployable or collapsible

structures, locomotor devices, and even robotic manipulators.

This thesis addresses the use of planar tensegrity structures for robotic appli-

cations. A systematic classiﬁcation and naming scheme is established which enables

determination of the conﬁguration of a particular tensegrity structure simply given

its assigned name. A procedure for performing the dynamic analysis of two separate

classes of planar structures is then developed. Next a null-space controller based on

feedback linearization is presented, which governs system motion while maintaining

positive tensions. Simulations verify the eﬀectiveness of such a controller. Addition-

ally, methods for generating the dynamic workspace for such devices is developed,

which speciﬁes conﬁgurations that are achievable while obeying imposed tension

constraints. Finally, experimental results are presented for an actual physical de-

vice that incorporates the theories developed throughout the thesis.

xii

Chapter 1

INTRODUCTION

Tensegrity is not a new idea. In fact, it is a concept that has been around for

over ﬁfty years. It has, however, experienced a recent revival, as an idea that was

purely structural has evolved into one that has promising applications in the areas

of robotics and control. This thesis explores several of these aspects, particularly the

dynamics and control issues involved in governing the movement and shape change

of planar tensegrity structures.

1.1 Background and History

The concept of tensegrity was ﬁrst developed in the late 1940s by Kenneth

Snelson, a structural artist, and R. Buckminster Fuller, an architect and designer.

Fuller is credited with coining the term “tensegrity” as a contraction of tensional

integrity. In his book An Introduction to Tensegrity, Anthony Pugh [19] deﬁnes a

tensegrity structure as being “established when a set of discontinuous compressive

components interacts with a set of continuous tensile components to deﬁne a stable

volume in space.” Many variations to this deﬁnition have been proposed, however.

For example, Ren´e Motro [7] suggests the deﬁnition be modiﬁed to incorporate

the ideas that the compressive elements are inside the set of tensile elements and

that the system is in a state of “self-equilibrium stability.” Essentially, a tensegrity

structure is formed by rods whose ends are connected with cables. The rods are

in compression and the cables are in tension such that the entire structure is in a

state of stable equilibrium. Applying an external force to the structure may cause

1

it to deform, but when this force is removed, the structure will return to its natural

equilibrium state. The integrity of such a structure relies on prestress in the cables

such that they remain in tension when connected to the rods within a structure.

Snelson has viewed tensegrity strictly as an artistic expression. He does not

incorporate math or physics into his designs other than to ensure they maintain

structural integrity. His main concerns are aesthetic in creating a work that is

attractive as an art piece. Several of Snelson’s sculptures are shown in Figure 1.1

[27].

Figure 1.1: Snelson’s Tensegrity Sculptures. QuinTetRow, 2002 (top), Vortex

Study, 1967 (bottom left), Rainbow Arch, 2002 (bottom right).

2

In contrast, Fuller concentrated more on tensegrity as an architectural idea.

His interest in a variety of structural forms, in particular geodesic domes, motivated

his pursuit of a way to incorporate tensegrity into his work. Fuller patented several

of his tensegrity ideas, including a tensegrity dome and tensegrity truss, shown in

Figure 1.2 [5]. Many of his ideas are still used in architecture today.

Figure 1.2: Fuller’s Tensegrity Structures. Tensegrity dome (left), tensegrity

truss (right).

1.2 A Shift Toward Robotics

For many years, tensegrity was thought of as a idea only applicable for ﬁxed,

static structures. In applications such as sculpture and architecture, it was desirable

for structures to maintain their intended shape. Recently, however, there has been a

shift in thinking, where it has been realized that tensegrity concepts can also be used

to achieve motion and shape change in structures. By actuating the cables or rods

within a tensegrity structure, it is possible to produce movement. This is achievable

3

using motors to alter cable lengths or with telescopic struts. If this actuation is

done in a coordinated manner, useful motions and changes to the overall shape of a

structure are possible.

Several characteristics of tensegrity structures make them appealing for robotic

applications. First, these types of structures typically have very little mass but are

considerably strong, possessing an exceptional strength-to-weight ratio. Further-

more, with low mass, rapid motions are feasible, as inertial eﬀects are less prob-

lematic. In addition to being lightweight, these structures also oﬀer space-saving

capabilities, as they can be designed to be collapsed or folded to occupy less volume

while not in use [7]. Also, due to the isolation of rigid elements with a ﬂexible ten-

sile network, tensegrity structures are eﬀective at absorbing shocks. Finally, since

tensegrity systems are parallel mechanisms, individual actuators aﬀect multiple de-

grees of freedom. This fact can be exploited in certain applications to provide fault

tolerance in compensating for a defective actuator [14].

Applications for tensegrity systems continue to emerge. Perhaps the greatest

contributor to the ﬁeld of tensegrity in robotics is Robert Skelton at the Univer-

sity of California, San Diego. In the last decade, Skelton has explored numerous

tensegrity applications in addition to teaching and writing on the subject. Skelton

has developed his own tensegrity deﬁnitions, which allow for two diﬀerent structural

classes [24]. He describes a tensegrity structure as a “stable system of axially loaded

members” and then goes on to diﬀerentiate two classes. A structure is deﬁned as

Class 1 “if the members in tension form a continuous network, and the members

in compression form a discontinuous set of members.” This description matches

the traditional deﬁnition of a tensegrity structure. However, Skelton then deﬁnes

a Class 2 structure as one in which “the members in tension form a continuous

set of members, and there are at most two members in compression connected to

each node.” This eﬀectively expands the deﬁnition of tensegrity structures to allow

4

rods to connect to other rods, a characteristic prohibited in the conventional deﬁ-

nition. Furthermore, it incorporates a whole new class of structures for tensegrity

applications.

Recent work by Skelton’s group includes development of a wrist-mimic robot,

a two-stage Class 1 tensegrity structure that is reconﬁgurable for deployment and

non-symmetric applications [17]. A similar Class 2 device [18] aimed at lifting

applications is shown in Figure 1.3. Other projects include a tensegrity “Stewart

Platform-like” structure in which rod lengths are pneumatically actuated [22] and

a planar tensegrity locomotor device capable of crawling along a pipe (pictured in

Figure 1.4) [23]. Another appealing application is in the area of robotic arms and

manipulators. Often these devices require rapid motions for applications such as

pick-and-place, where large inertial forces become an issue. Skelton’s group has

begun exploring the use of tensegrity-based devices as robotic manipulators [1]. Be-

cause tensegrity systems have low mass and a high strength-to-weight ratio, they of-

fer an exciting alternative to standard rigid-link robotic manipulators. Furthermore,

tensegrity structures are more ﬂexible and can provide more agility in positioning

objects.

Many others have also conducted research on robotic tensegrity applications.

Chandana Paul et al at Cornell University have concentrated on locomotor tenseg-

rity devices, using genetic algorithms to ﬁnd actuation cycles which produce favor-

able gaits [14, 15, 16]. In this case, the robot is underactuated but the cycling of

actuation patterns allows the device to create a net forward motion. Paul has also

studied the issue of fault tolerance in her devices. A prototype of one of the walking

robots is shown in Figure 1.5. Etienne Fest et al at the Swiss Federal Institute

of Technology have developed and built a full-scale tensegrity structure capable of

compensating for external loads and maintaining its desired shape through the use

of a predictive model and search algorithm [4]. Such a device (pictured in Figure 1.6)

5

Figure 1.3: Class 2 Tensegrity Boom. Skelton’s Class 2 device deploying.

Figure 1.4: Tensegrity Pipe Crawler. A CAD model of Skelton’s pipe-crawling

device.

could be used in building applications where structures must contend with external

conditions such as wind or snowfall accumulation. Matthew Marshall at the Uni-

versity of Florida has developed a tensegrity-based parallel platform in which both

rod and cable lengths are adjustable [6]. It has even been suggested that tensegrity

6

structures may have a place in the medical ﬁeld, including use in minimally inva-

sive surgical instruments, as well as in space applications for deployable antennas

or radio telescopes [29].

Figure 1.5: Walking Tensegrity Robot. A device built by Chandanda Paul at

Cornell University.

Figure 1.6: Load-Handling Tensegrity Structure. Tensegrity structure capa-

ble of maintaining its shape under external loadings built at the Swiss

Federal Institute of Technology.

7

1.3 Problem Statement and Scope of the Thesis

In moving from tensegrity as a strictly static, structural idea to one in which

a system must be movable and controllable, certain issues arise. The most important

of these is the fact that typically, the actuated members of a tensegrity structure are

cables, which are eﬀective in tension but cannot supply a compressive force. If one

tries to push on the ends of a cable, it simply collapses. In a typical robotic device,

rigid links are capable of supplying both tensile and compressive forces, so control

is relatively straightforward using well-established control methods. In the case of

tensegrity devices, however, in addition to achieving the desired system motion, a

controller must be developed which maintains positive tensions in the cables.

Planar tensegrity structures are generally simpler to analyze than their spa-

tial counterparts because they are limited to two dimensions. Therefore, individual

rods may possess at most three degrees of freedom (two translational, one rotational)

compared to six for a spatial structure (three translational, three rotational). Dy-

namic analysis in this case is also considerably simpler, especially in deriving inertial

expressions. Nonetheless, planar structures are very useful in providing insight into

the functioning of tensegrity concepts and can still serve as useful practical devices.

Two areas of particular interest are robotic arms or manipulators and deployable

structures. Both of these areas look to be promising arenas for tensegrity devices,

both planar and spatial. With this in mind, investigation of a subclass of planar

tensegrity structures suited for these applications is pursued here. Though only

planar mechanisms are addressed in this thesis, the ideas are extendable to similar

spatial structures as well.

The thesis is organized as follows. Chapter 2 discusses the subclass of planar

tensegrity structures under investigation. A systematic classiﬁcation and naming

scheme is developed which enables the determination of a particular tensegrity’s

structure simply given its assigned name. A method for uniform numbering of

8

individual structural elements is also established. Then a framework for performing

the structural analysis of such devices is discussed. This section includes physical

assumptions, force modeling, constraint management, and a general procedure for

the derivation of system dynamics.

Chapter 3 develops aspects of control for tensegrity systems. This subject

is crucial due to the additional requirement that positive tensions be maintained

in all cables. A basic discussion of feedback linearization is followed by the de-

velopment of a null-space controller which maintains positive cable tensions while

governing system motion. Results from several simulations are then presented, ver-

ifying the performance of the feedback-linearizing controller for various tensegrity

arrangements.

In chapter 4, a procedure for determining the dynamic workspace of planar

tensegrity structures is detailed. This workspace is composed of conﬁgurations a

tensegrity structure may reach from a given initial state while maintaining tensions

which are within a speciﬁed range. The process is based on the ability to predict

future system behavior by analytically solving for the error between actual and

desired system states for a given controller. This information is used to ﬁnd the

necessary tension inputs over all time and, thus, determine which conﬁgurations

are dynamically reachable. Two workspace generation techniques are analyzed and

simulations are presented which verify their utility.

Chapter 5 presents experimental results for a planar tensegrity device. Con-

struction of the device is detailed, as well as the instrumentation used for its control.

The dynamic workspace for the mechanism is derived and used to choose feasible

conﬁgurations for the device to assume. Results such as system behavior and sources

of error are then discussed.

Finally, the thesis is concluded with chapter 6, which summarizes the work

9

and results presented throughout the previous chapters. A discussion of the con-

tributions of this thesis are also included, followed by suggestions for supplemental

study and future research.

10

Chapter 2

TAXONOMY, NOMENCLATURE, AND STRUCTURAL

ANALYSIS

2.1 Introduction

Planar tensegrity structures can be constructed in a variety of diﬀerent con-

ﬁgurations. In order to accommodate this diversity, it is useful to introduce a

generalized classiﬁcation and naming scheme that enables the determination of the

arrangement of a certain structure simply given its name. This naming scheme is

based on a systematic convention for the numbering of individual elements within

a structure, established to maintain consistency among diﬀerent examples. After

the naming and numbering procedures are established, the rest of this chapter de-

tails a framework for performing structural analysis for planar tensegrity systems,

including force modeling, constraint management, and derivation of the dynamic

equations of motion.

2.2 Taxonomy and Nomenclature

2.2.1 Assumptions and Restrictions

Several preliminary assumptions are made to limit the extent of possible two-

dimensional tensegrity structures. Only those structures containing an even number

of rods are considered. Rods are grouped in crossing pairs that form an X shape, and

these fundamental units form a horizontal chain comprising the structure. There are

two classes of tensegrity structures that are considered. Class 1 structures contain

11

rods whose endpoints connect only to cables. In Class 2 structures, rods connect

to other rods through pivots at their endpoints in addition to cables [18]. Thus, in

Class 1 structures, the X components overlap and are connected by cables, whereas

in Class 2 structures, the X shapes are connected at pivoting endpoints. Figure 2.1

shows an example of each class of tensegrity structure.

Figure 2.1: Class 1 vs. Class 2 Tensegrity Structures. Sample Class 1

(left) and Class 2 (right) planar tensegrity structures.

Additionally, it is assumed that in any planar structure, the outer perimeter

is bound by cables. In a Class 1 structure with n rods, there are 2n outer cables

surrounding the structure. In a Class 2 structure with n rods, there are n+2 outer

cables. A node is deﬁned at each junction of two or more structural elements. These

always occur at rod endpoints. A Class 1 structure with n rods contains 2n nodes,

while a Class 2 structure has n + 2 nodes. A summary of the standard numeric

relations among the fundamental structural elements is given in Table 2.1.

Table 2.1: Numerical Relations Among Structural Elements.

Class 1 Class 2

Rods n n

Outer Cables 2n n + 2

Nodes 2n n + 2

12

The quantity and placement of cables lying within the perimeter of the tenseg-

rity structure may vary. Given a basic structure conﬁgured symmetrically about its

horizontal midline, the nodes of the structure will line up vertically in pairs. Each

pair is given an identifying number (explained in more detail in section 2.2.2). Inner

cables may be arranged either vertically or diagonally between nodes. It is assumed

that diagonal cables are always placed in crossing couples between two nodal pairs,

never individually. Though not necessarily essential to the integrity of a structure,

this premise helps restrict the number of conﬁgurational permutations while main-

taining vertical symmetry in the structure.

At this point it is worth reemphasizing that the range of structures considered

here is only a subclass of the multitude of achievable planar tensegrity structures.

For example, a planar structure could be composed of repeating crossed rods in

the vertical dimension or both vertically and horizontally, creating a “matrix” of

crossed pairs rather than just a one-dimensional chain. Or rods could be grouped

in conﬁgurations other than crossed X’s. However, this subclass was chosen to

facilitate a systematic numbering convention and naming scheme for a group of

structures that could be useful as robotic manipulators, deployable structures, or

other similar devices.

2.2.2 Numbering Convention

A systematic convention for the numbering of individual structural elements

was developed. All rods, cables, and nodes are numbered under this protocol accord-

ing to their position within the structure in a basic lower-upper, left-right fashion.

Rods are numbered based on the position of their leftmost endpoint. Beginning

at the lower left corner of a structure, rods are numbered in sequential order in a

repeating lower-upper pattern from left to right across the structure.

Outer and inner cables are not distinguished in the numbering scheme. Rather

13

horizontal, vertical, and diagonal cables are designated. Horizontal cables are num-

bered ﬁrst, again in a repeating lower-upper sequence from left to right. Next,

vertical cables are numbered from left to right, continuing the numerical sequence.

Finally, the diagonal cables are numbered in the same pattern used for the rods.

Nodes are denoted by a column number and a row letter. The lower row

of nodes in a structure is denoted A and the upper row is denoted B. Columns

of paired nodes are numbered from left to right. Numbering nodes in pairs helps

simplify the naming scheme described in the next section. So, for example, the lower

leftmost node is labeled n

1A

and the upper leftmost node is labeled n

1B

. Figure 2.2

illustrates the numbering convention for a Class 1 planar tensegrity structure.

Figure 2.2: Numbering Convention. Rods, cables, and nodes are numbered as

illustrated.

De Jager and Skelton have developed a diﬀerent numbering convention for

similar tensegrity systems, shown in Figure 2.3 [3]. Their system has several draw-

backs, however, which is why it was not used here. First, in their model, all possible

cables are numbered in a ﬁxed pattern regardless of whether they actually appear

in the ﬁnal structure. If cables are omitted, then gaps appear in the cable number-

ing. Also, because the model is based on repeating elementary rod-and-cable units

assumed to be identical, a problem occurs at the ﬁxed end of the structure. There,

14

certain numbered cables must connect to diﬀerent nodes than would be expected

because the typical connecting rods are absent. Finally, the convention does not

accommodate Class 2 structures. These problems are avoided in the convention

developed in this chapter, which also lends itself to the naming scheme discussed

next.

Figure 2.3: Numbering Convention Used by de Jager and Skelton. Ca-

ble connections for t

i

4

and t

i

5

must be altered to accommodate the

structure’s ﬁxed end.

2.2.3 Naming Scheme

A naming scheme was established to aid in classifying and uniquely identify-

ing various planar tensegrity structures. The name given to each structure is based

on its class, number of rods, and number and location of its cables. Each name con-

tains ﬁve letters, or “identiﬁers,” with subscripts: T (for type, identifying its class),

R (for rods), C (for cables), V (for vertical placement), and D (for diagonal place-

ment). T is the class identiﬁer. The subscript for T is either 1 or 2, denoting whether

the structure is Class 1 or Class 2. R and C are quantity identiﬁers. The subscripts

15

for R and C denote the total number of rods and cables, respectively, comprising

the structure. V and D are location identiﬁers of internal cables. Their subscripts

relate the placement of vertical and diagonal cables based on node numbers. For

instance, V

23

means that there are internal vertical cables between nodal pairs 2 and

3, while D

12,34

means that their are crossed diagonal cables between nodal pairs 1

and 2, and 3 and 4. If a certain structure contains no internal vertical or diagonal

cables, that placement identiﬁer is omitted. Using this scheme, the name for the

structure in Figure 2.2 is T

1

R

4

C

14

V

23

D

12,34

. Another example is given in Figure 2.4,

showing a numbered Class 2 structure with the designation T

2

R

6

C

10

V

23

.

Figure 2.4: T

2

R

6

C

10

V

23

Planar Tensegrity Structure.

2.3 Structural Model

Kinematic and dynamic modeling of planar tensegrity structures can be gen-

eralized, as described by de Jager and Skelton [3]. A similar approach is taken

here. Under the current scheme, each rod within a structure is treated as an inde-

pendent body of ﬁxed length 2l and mass m. For simplicity all rods are assumed

to be identical. Cables are assumed massless and elastic, each having an identical

spring constant, but their individual lengths may vary. Furthermore, cables can only

handle tensile loads, so it is important to maintain positive forces within cables.

16

Each rod is characterized by three variables: the (x, y) coordinates corre-

sponding to a position vector c of its center of mass with respect to a ﬁxed coordi-

nate frame and an orientation angle θ about this center. These variables represent

the three degrees of freedom possessed by an unconstrained rod. The subscript on

each of these variables corresponds to the number of the rod being described, so

rod i is denoted by center of mass position c

i

= [x

i

y

i

]

T

and angle θ

i

. The end-

point positions of rod i are denoted by a

i

and b

i

, corresponding to the nodal row

to which each endpoint belongs. The orientation angle is always measured from

the horizontal, counterclockwise towards the b end. It is important to distinguish

here that nodal positions in the structure (used for classiﬁcation and naming) are

denoted by a number followed by a capital A or B, while the endpoints speciﬁc to

individual rods (used for dynamic analysis) are denoted by a lower-case a or b with

a subscript corresponding to the rod number. Although nodes and rod endpoints

coincide, they are treated and referenced diﬀerently when referring to the structure

in a global sense or to rods as individual bodies. Figure 2.5 shows the description

of a typical rod in a planar tensegrity structure. The endpoint positions are found

from the equations

a

i

= c

i

−l

cos θ

i

sin θ

i

¸

¸

, b

i

= c

i

+ l

cos θ

i

sin θ

i

¸

¸

. (2.1)

Because each rod is treated as an independent body, the Newton-Euler for-

mulation of the dynamic equations is used. Forces acting on the rods consist of

gravity, cable tensions, and in the case of Class 2 structures, forces from connecting

adjacent rods. Gravity acts in the negative y-direction through the center of mass.

All other forces act at nodal points at the ends of rods. Because nodal forces act at

common points, they can be combined into a single resultant force at each rod end.

These forces are denoted f

a

= [f

ax

f

ay

]

T

and f

b

= [f

bx

f

by

]

T

. Generally, this type

17

Figure 2.5: Basic Rod Characterization.

of structure is attached to a rigid surface at one end. End nodes are typically con-

strained to pivot about a ﬁxed point or slide in a single direction. These constraints

introduce additional reaction forces and reduce the number of degrees of freedom of

the aﬀected rods.

Three dynamic equations are used to describe the motion of a single rod i.

These equations are

m¨ x

i

= F

x

i

(2.2)

m¨ y

i

= F

y

i

(2.3)

I

¨

θ

i

= M

z

i

(2.4)

where m is the rod mass and I is the moment of inertia of the rod about its center

of mass

I =

1

12

m(2l)

2

. F

x

i

and F

y

i

are the total sum of x and y force components

acting on rod i, while M

z

i

is the sum of moments acting on rod i about its center.

These values are found using the equations

F

x

i

= f

aix

+ f

bix

(2.5)

F

y

i

= f

a

iy

+ f

b

iy

−mg (2.6)

M

z

i

= l(f

a

ix

sinθ

i

−f

a

iy

cos θ

i

) + l(−f

b

ix

sin θ

i

+ f

b

iy

cos θ

i

) (2.7)

18

where g is the acceleration due to gravity.

Individual cable tensions are determined based on an elastic constant k of

their material and the initial rest lengths and stretched lengths of the cables. If

cables are modeled as simple springs, this k is the spring constant. Alternatively,

cables may be modeled as a solid material with a uniform circular cross section. In

this case, k = EA/L

0

, where E is Young’s modulus for the cable material, A is the

nominal cross-sectional area of the cable, and L

0

is the unstretched cable length. T

j

is the magnitude of the force in cable j. It is determined from the equation

T

j

= k(L

j

−L

j

0

) (2.8)

where L

j

is the stretched length of cable j and L

j

0

is the initial unstretched length of

the cable. The vector representing the tension of cable j acting on rod i is denoted

T

j

i

and is found by combining the magnitude of the cable force and the unit direction

vector of that force acting axially along the cable away from the connection point at

the rod. The direction of cable tension is determined by calculating the diﬀerence

between the two connection point positions, obtained using equation (2.1). The

direction vector of the force is denoted d

j

i

. It is then necessary to scale this vector

by the cable’s length, yielding a unit direction vector

ˆ

d

j

i

. Thus, the overall tension

vector for cable j acting on rod i is given as

T

j

i

= T

j

d

j

i

L

j

= T

j

ˆ

d

j

i

. (2.9)

2.4 General Procedure for Dynamic Analysis

Assuming an n-rod structure, the overall system dynamics can be grouped

and written in the combined form

A¨ q = F (2.10)

19

where A is the system inertia matrix, ¨ q is a vector of the system variables’ second

time derivatives, and F is a vector containing the x- and y-force components, and

moments acting on all rods. System variables are collected in the form

q = [x

1

y

1

θ

1

· · · x

n

y

n

θ

n

]

T

(2.11)

The set of equations (2.10) represents the generalized system dynamics for a planar

tensegrity structure. This form will typically need to be altered, however, to account

for lost degrees of freedom when constraints are imposed at rod endpoints and, in

the case of Class 2 systems, kinematic restrictions due to revolute joints between

rods. As a result, several system variables may need to be eliminated to reﬂect the

constrained system and, therefore, the form of q is typically modiﬁed as well. A

general procedure has been developed to most eﬃciently derive the dynamics for

speciﬁc planar tensegrity structures. This procedure is slightly diﬀerent for Class

1 and Class 2 systems, though the basic approach is the same. The procedure is

described below for each class, accompanied by a speciﬁc example to clarify.

2.4.1 Class 1 Dynamics

The ﬁrst step in the dynamic analysis is to draw the tensegrity system in its

general, symmetric conﬁguration and label all nodes, rods, and cables. Given its

name, which deﬁnes the placement of structural components, and the numbering

scheme developed above, this is straightforward. It is also useful to denote the

(x, y, θ) of each rod. As an example, consider the T

1

R

4

C

12

D

12,34

structure. This

is a Class 1 structure with 4 rods and 12 cables, 2 pairs of which cross diagonally

between nodal groups 1 and 2, and 3 and 4. This structure is shown labeled in

Figure 2.6. The next step is to deﬁne the center of mass (c

i

) and endpoint (a

i

,b

i

)

positions of each rod. This is done using equation (2.1). Because these positions

20

Figure 2.6: T

1

R

4

C

12

D

12,34

Structure.

are locally deﬁned, it is not yet necessary to deﬁne a global reference frame. The

resulting endpoint positions are as follows.

a

1

=

x

1

−l cos θ

1

y

1

−l sinθ

1

¸

¸

b

1

=

x

1

+ l cos θ

1

y

1

+ l sinθ

1

¸

¸

(2.12)

a

2

=

x

2

−l cos θ

2

y

2

−l sinθ

2

¸

¸

b

2

=

x

2

+ l cos θ

2

y

2

+ l sinθ

2

¸

¸

(2.13)

a

3

=

x

3

−l cos θ

3

y

3

−l sinθ

3

¸

¸

b

3

=

x

3

+ l cos θ

3

y

3

+ l sinθ

3

¸

¸

(2.14)

a

4

=

x

4

−l cos θ

4

y

4

−l sinθ

4

¸

¸

b

4

=

x

4

+ l cos θ

4

y

4

+ l sinθ

4

¸

¸

(2.15)

Next, one must decide how the structure will be constrained and where the

inertial reference frame will be ﬁxed. It is common to attach such a structure to

a rigid surface at one end. For example, node 1B can be ﬁxed such that rod 2 is

constrained to rotate about its left endpoint. It is convenient to place the origin of a

21

Cartesian reference frame at this point. Similarly rod 1 can be constrained to slide

vertically along the line x = 0. This idea is shown in Figure 2.7. These constraints

Figure 2.7: T

1

R

4

C

12

D

12,34

Imposed Constraints.

eﬀectively eliminate three degrees of freedom from the system. Because rod 2’s left

endpoint is now ﬁxed, x

2

and y

2

are no longer independently variable. Instead they

are automatically determined geometrically as

x

2

= −l cos θ

2

(2.16)

and

y

2

= −l sinθ

2

. (2.17)

Also, because rod 1’s left endpoint must slide in the vertical direction, x

1

becomes

x

1

= l cos θ

1

. (2.18)

22

Since these three variables no longer appear in the dynamics, equations (2.16-2.18)

must be substituted into the places they appear in (2.12-2.15). After this substi-

tution, the rod endpoints are completely deﬁned in terms of the remaining system

variables.

a

1

=

0

y

1

−l sin θ

1

¸

¸

b

1

=

2l cos θ

1

y

1

+ l sin θ

1

¸

¸

(2.19)

a

2

=

−2l cos θ

2

−2l sinθ

2

¸

¸

b

2

=

0

0

¸

¸

(2.20)

a

3

=

x

3

−l cos θ

3

y

3

−l sinθ

3

¸

¸

b

3

=

x

3

+ l cos θ

3

y

3

+ l sinθ

3

¸

¸

(2.21)

a

4

=

x

4

−l cos θ

4

y

4

−l sinθ

4

¸

¸

b

4

=

x

4

+ l cos θ

4

y

4

+ l sinθ

4

¸

¸

(2.22)

Now that the positions all rod endpoints are deﬁned, the cable (force) di-

rection vectors can be determined. Since all cables connect to rod endpoints, their

directions are determined by simply subtracting the appropriate endpoint positions.

It is worth noting that each cable supplies a force that acts on two diﬀerent rod

endpoints, and thus in two opposite directions. There are therefore twice as many

direction vectors as there are cables. The direction can be deﬁned once for each ca-

ble and then reversed to be applied in the opposite direction. The direction vectors

are then normalized by scaling by the cable lengths. The nominal cable direction

23

vectors are as follows.

Cable 1 : d

11

=

−−→

a

1

a

3

=

x

3

−l cos θ

3

y

3

−l sinθ

3

−y

1

+ l sinθ

1

¸

¸

= −d

13

(2.23)

Cable 2 : d

22

=

−−→

b

2

b

4

=

x

4

+ l cos θ

4

y

4

+ l sinθ

4

¸

¸

= −d

24

(2.24)

Cable 3 : d

33

=

−−→

a

3

a

2

=

−2l cos θ

2

−x

3

+ l cos θ

3

−2l sinθ

2

−y

3

+ l sinθ

3

¸

¸

= −d

32

(2.25)

Cable 4 : d

44

=

−−→

b

4

b

1

=

2l cos θ

1

−x

4

−l cos θ

4

y

1

+ l sinθ

1

−y

4

−l sinθ

4

¸

¸

= −d

41

(2.26)

Cable 5 : d

52

=

−−→

a

2

a

4

=

x

4

−l cos θ

4

+ 2l cos θ

2

y

4

−l sin θ

4

+ 2l sin θ

2

¸

¸

= −d

54

(2.27)

Cable 6 : d

61

=

−−→

b

1

b

3

=

x

3

+ l cos θ

3

−2l cos θ

1

y

3

+ l sinθ

3

−y

1

−l sinθ

1

¸

¸

= −d

63

(2.28)

Cable 7 : d

71

=

−−→

a

1

b

2

=

0

−y

1

+ l sinθ

1

¸

¸

= −d

72

(2.29)

Cable 8 : d

84

=

−−→

a

4

b

3

=

x

3

+ l cos θ

3

−x

4

+ l cos θ

4

y

3

+ l sinθ

3

−y

4

+ l sinθ

4

¸

¸

= −d

83

(2.30)

Cable 9 : d

91

=

−−→

a

1

b

4

=

x

4

+ l cos θ

4

y

4

+ l sinθ

4

−y

1

+ l sinθ

1

¸

¸

= −d

94

(2.31)

Cable 10 : d

102

=

−−→

b

2

a

3

=

x

3

−l cos θ

3

y

3

−l sinθ

3

¸

¸

= −d

103

(2.32)

Cable 11 : d

112

=

−−→

a

2

b

3

=

x

3

+ l cos θ

3

+ 2l cos θ

2

y

3

+ l sinθ

3

+ 2l sinθ

2

¸

¸

= −d

113

(2.33)

Cable 12 : d

121

=

−−→

b

1

a

4

=

x

4

−l cos θ

4

−2l cos θ

1

y

4

−l sinθ

4

−y

1

−l sinθ

1

¸

¸

= −d

124

(2.34)

24

The cable lengths are given as follows.

L

1

= |

−−→

a

1

a

3

| =

(x

3

−l cos θ

3

)

2

+ (y

3

−l sinθ

3

−y

1

+ l sinθ

1

)

2

(2.35)

L

2

= |

−−→

b

2

b

4

| =

(x

4

+ l cos θ

4

)

2

+ (y

4

+ l sinθ

4

)

2

(2.36)

L

3

= |

−−→

a

3

a

2

| (2.37)

=

(−2l cos θ

2

−x

3

+ l cos θ

3

)

2

+ (−2l sinθ

2

−y

3

+ l sinθ

3

)

2

L

4

= |

−−→

b

4

b

1

| (2.38)

=

(2l cos θ

1

−x

4

−l cos θ

4

)

2

+ (y

1

+ l sinθ

1

−y

4

−l sinθ

4

)

2

L

5

= |

−−→

a

2

a

4

| (2.39)

=

(x

4

−l cos θ

4

+ 2l cos θ

2

)

2

+ (y

4

−l sinθ

4

+ 2l sinθ

2

)

2

L

6

= |

−−→

b

1

b

3

| (2.40)

=

(x

3

+ l cos θ

3

−2l cos θ

1

)

2

+ (y

3

+ l sin θ

3

−y

1

−l sinθ

1

)

2

L

7

= |

−−→

a

1

b

2

| =

(−y

1

+ l sinθ

1

)

2

(2.41)

L

8

= |

−−→

a

4

b

3

| (2.42)

=

(x

3

+ l cos θ

3

−x

4

+ l cos θ

4

)

2

+ (y

3

+ l sinθ

3

−y

4

+ l sinθ

4

)

2

L

9

= |

−−→

a

1

b

4

| =

(x

4

+ l cos θ

4

)

2

+ (y

4

+ l sinθ

4

−y

1

+ l sinθ

1

)

2

(2.43)

L

10

= |

−−→

b

2

a

3

| =

(x

3

−l cos θ

3

)

2

+ (y

3

−l sinθ

3

)

2

(2.44)

L

11

= |

−−→

a

2

b

3

| (2.45)

=

(x

3

+ l cos θ

3

+ 2l cos θ

2

)

2

+ (y

3

+ l sinθ

3

+ 2l sinθ

2

)

2

L

12

= |

−−→

b

1

a

4

| (2.46)

=

(x

4

−l cos θ

4

−2l cos θ

1

)

2

+ (y

4

−l sinθ

4

−y

1

−l sinθ

1

)

2

Dividing (2.23-2.34) by (2.35-2.47), respectively, produces the normalized cable di-

rection vectors. These are then multiplied by the tension magnitude of each cable

to yield the ﬁnal force vectors, as described in (2.9). For example, the force cable 9

applies on rod 4 is T

94

= T

9

(d

94

/L

9

).

25

Now that the cable force vectors are completely deﬁned, the dynamic equa-

tions can be written for each rod using equations (2.2-2.7). Because rods 3 and 4

are unconstrained, their dynamic equations will follow this exact form. The slid-

ing/pivoting constraints placed on rods 1 and 2, however, require their dynamic

equations to be modiﬁed slightly (introducing wall reaction forces) and consolidated

to eliminate the equations corresponding to the lost degrees of freedom (x

1

, x

2

,

and y

2

). It is helpful to look at a free-body diagram of each rod individually when

writing the dynamic equations. These are shown in Figure 2.8.

Figure 2.8: Free-Body Diagrams of Individual T

1

R

4

C

12

D

12,34

Rods.

The three initial dynamic equations for each rod are listed below.

26

Rod 1 :

m¨ x

1

= (T

1

1x

+ T

7

1x

+ T

9

1x

+ R

1x

) + (T

4

1x

+ T

6

1x

+ T

12

1x

) (2.47)

m¨ y

1

= (T

1

1y

+ T

7

1y

+ T

9

1y

) + (T

4

1y

+ T

6

1y

+ T

12

1y

) −mg (2.48)

I

¨

θ

1

= l

(T

1

1x

+ T

7

1x

+ T

9

1x

+ R

1x

) sinθ

1

−(T

1

1y

+ T

7

1y

+ T

9

1y

) cos θ

1

(2.49)

+ l

−(T

4

1x

+ T

6

1x

+ T

12

1x

) sinθ

1

+ (T

4

1y

+ T

6

1y

+ T

12

1y

) cos θ

1

Rod 2 :

m¨ x

2

= (T

3

2x

+ T

5

2x

+ T

11

2x

) + (T

2

2x

+ T

7

2x

+ T

10

2x

+ R

2x

) (2.50)

m¨ y

2

= (T

3

2y

+ T

5

2y

+ T

11

2y

) + (T

2

2xy

+ T

7

2y

+ T

10

2y

+ R

2y

) −mg (2.51)

I

¨

θ

2

= l

(T

3

2x

+ T

5

2x

+ T

11

2x

) sin θ

2

−(T

3

2y

+ T

5

2y

+ T

11

2y

) cos θ

2

(2.52)

+ l

−(T

2

2x

+ T

7

2x

+ T

10

2x

+ R

2x

) sin θ

2

+ (T

2

2xy

+ T

7

2y

+ T

10

2y

+ R

2y

) cos θ

2

Rod 3 :

m¨ x

3

= (T

1

3x

+ T

3

3x

+ T

10

3x

) + (T

6

3x

+ T

8

3x

+ T

11

3x

) (2.53)

m¨ y

3

= (T

1

3y

+ T

3

3y

+ T

10

3y

) + (T

6

3y

+ T

8

3y

+ T

11

3y

) −mg (2.54)

I

¨

θ

3

= l

(T

1

3x

+ T

3

3x

+ T

10

3x

) sin θ

3

−(T

1

3y

+ T

3

3y

+ T

10

3y

) cos θ

3

(2.55)

+ l

−(T

6

3x

+ T

8

3x

+ T

11

3x

) sin θ

3

+ (T

6

3y

+ T

8

3y

+ T

11

3y

) cos θ

3

Rod 4 :

m¨ x

4

= (T

5

4x

+ T

8

4x

+ T

12

4x

) + (T

2

4x

+ T

7

4x

+ T

10

4x

) (2.56)

m¨ y

4

= (T

5

4y

+ T

8

4y

+ T

12

4y

) + (T

2

4y

+ T

7

4y

+ T

10

4y

) −mg (2.57)

I

¨

θ

4

= l

(T

5

4x

+ T

8

4x

+ T

12

4x

) sin θ

4

−(T

5

4y

+ T

8

4y

+ T

12

4y

) cos θ

4

(2.58)

+ l

−(T

2

4x

+ T

7

4x

+ T

10

4x

) sin θ

4

+ (T

2

4y

+ T

7

4y

+ T

10

4y

) cos θ

4

**Now equation (2.47) must be solved for R
**

1x

and substituted into equation (2.49).

However, since x

1

is no longer a feasible system variable, ¨ x

1

must be found by twice

diﬀerentiating equation (2.18), x

1

= −l cos θ

1

. This yields

¨ x

1

= −l

¨

θ

1

sinθ

1

−l

˙

θ

2

1

cos θ

1

. (2.59)

27

Similarly, (2.16) and (2.17) are twice-diﬀerentiated to get

¨ x

2

= l

¨

θ

2

sin θ

2

+ l

˙

θ

2

2

cos θ

2

(2.60)

and

¨ y

2

= −l

¨

θ

2

cos θ

2

+ l

˙

θ

2

2

sinθ

2

. (2.61)

Solving (2.47) for R

1x

and using (2.59) gives

R

1x

= m(−l

¨

θ

1

sinθ

1

−l

˙

θ

2

1

cos θ

1

) −T

1

1x

−T

7

1x

−T

9

1x

−T

4

1x

−T

6

1x

−T

12

1x

. (2.62)

Substituting this into (2.49) gives

(I + ml

2

sin

2

θ

1

)

¨

θ

1

= l

(ml

˙

θ

2

1

cos θ

1

−T

4

1x

−T

6

1x

−T

12

1x

) sinθ

1

−(T

1

1x

+ T

7

1x

+ T

9

1x

) cos θ

1

+ l

−(T

4

1x

+ T

6

1x

+ T

12

1x

) sin θ

1

+ (T

4

1y

+ T

6

1y

+ T

12

1y

) cos θ

1

. (2.63)

Solving (2.50) and (2.51) for R

2x

and R

2y

, respectively, and incorporating (2.60) and

(2.61) yields

R

2x

= m(l

¨

θ

2

sinθ

2

+ l

˙

θ

2

2

cos θ

2

) −T

3

2x

−T

5

2x

−T

11

2x

−T

2

2x

−T

7

2x

−T

10

2x

(2.64)

and

R

2y

= m(−l

¨

θ

2

cos θ

2

+l

˙

θ

2

2

sinθ

2

)−T

3

2y

−T

5

2y

−T

11

2y

−T

2

2y

−T

7

2y

−T

10

2y

+mg. (2.65)

Now these two equations are substituted into (2.52) to get

(I + ml

2

)

¨

θ

2

= l

(T

3

2x

+ T

5

2x

+ T

11

2x

) sin θ

2

−(T

3

2y

+ T

5

2y

+ T

11

2y

) cos θ

2

+ l

−(ml

˙

θ

2

2

cos θ

2

−T

3

2x

−T

5

2x

−T

11

2x

) sin θ

2

+ (ml

˙

θ

2

2

sinθ

2

−T

3

2y

−T

5

2y

−T

11

2y

+ mg) cos θ

2

. (2.66)

Note that the force components from cables 2, 7, and 10 drop out since they act at

the ﬁxed end of rod 2 and, thus, cannot contribute to rod 2’s motion.

28

This completes the dynamic analysis for the T

1

R

4

C

12

D

12,34

structure with the

chosen constraints. There are now nine ﬁnal dynamic equations (2.48, 2.63, 2.66,

2.53, 2.54, 2.55, 2.56, 2.57, 2.58) in terms of the nine system variables (y

1

, θ

1

, θ

2

,

x

3

, y

3

, θ

3

, x

4

, y

4

, θ

4

). These equations can now be grouped to construct a particular

form of (2.10) which incorporates the system constraints.

2.4.2 Class 2 Dynamics

For Class 2 planar tensegrity structures, the dynamic analysis is slightly

diﬀerent due to the interaction between connecting rods. The general approach is,

however, the same. Again the ﬁrst step is to draw the structure. In this case, a

T

2

R

4

C

7

V

2

is chosen for illustration. The labeled structure is shown in Figure 2.9.

Because the rods in Class 2 structures are linked by revolute joints, there is a loss of

Figure 2.9: T

2

R

4

C

7

V

2

Structure.

several degrees of freedom. Essentially, every chain of linked rods contains only one

x and one y position variable, and then one orientation angle for each rod. Though

it is possible to assign the (x, y) variables to any of the rods, it is convenient to

place them at the center of mass of the leftmost rod in each chain (c

1

and c

2

) and

29

this convention is assumed throughout this analysis. Therefore, it is possible to

eliminate several system variables before introducing wall constraints simply due

to the standard conﬁguration of Class 2 structures. This immediately simpliﬁes

the system dynamics. For the current T

2

R

4

C

7

V

2

structure, there are eight system

variables (degrees of freedom) before the structure is constrained at the wall: x

1

,

y

1

, θ

1

, x

2

, y

2

, θ

2

, θ

3

, and θ

4

.

The rod endpoint positions are now deﬁned as follows.

a

1

=

x

1

−l cos θ

1

y

1

−l sinθ

1

¸

¸

b

1

=

x

1

+ l cos θ

1

y

1

+ l sin θ

1

¸

¸

(2.67)

a

2

=

x

2

−l cos θ

2

y

2

−l sinθ

2

¸

¸

b

2

=

x

2

+ l cos θ

2

y

2

+ l sin θ

2

¸

¸

(2.68)

a

3

=

x

2

−l cos θ

2

y

2

−l sinθ

2

¸

¸

b

3

=

x

2

−l cos θ

2

+ 2l cos θ

3

y

2

−l sinθ

2

+ 2l sinθ

3

¸

¸

(2.69)

a

4

=

x

1

+ l cos θ

2

−2l cos θ

3

y

1

+ l sin θ

2

−2l sinθ

3

¸

¸

b

4

=

x

1

+ l cos θ

1

y

1

+ l sinθ

1

¸

¸

(2.70)

Note that the right endpoint positions of rods 3 and 4 must be found using only the

viable system variables rather than with equation (2.1). Now if the same reference

frame placement and wall constraints are imposed as before, restricting rod 2 to

pivot about its left endpoint at the origin and rod 1 to slide in the vertical direction

at x = 0, variables x

1

, x

2

, and y

2

are again lost. Using equations (2.16-2.18), the rod

30

endpoint positions can be rewritten in terms of the remaining ﬁve system variables.

a

1

=

0

y

1

−l sinθ

1

¸

¸

b

1

=

2l cos θ

1

y

1

+ l sinθ

1

¸

¸

(2.71)

a

2

=

−2l cos θ

2

−2l sinθ

2

¸

¸

b

2

=

0

0

¸

¸

(2.72)

a

3

=

−2l cos θ

2

−2l sinθ

2

¸

¸

b

3

=

−2l cos θ

2

+ 2l cos θ

3

−2l sinθ

2

+ 2l sinθ

3

¸

¸

(2.73)

a

4

=

2l cos θ

1

−2l cos θ

4

2l sinθ

1

−2l sinθ

4

¸

¸

b

4

=

2l cos θ

1

y

1

+ l sinθ

1

¸

¸

(2.74)

Before deﬁning the cable direction vectors, it is necessary to discuss the issue of

uncertainty in the location of cable forces. Because cables 1, 2, 3, 4, and 6 each

connect to a joint linking adjacent rods, a decision must be made about which forces

act on which bodies. For instance, the force in cable 1 may be said to act on rod

2, rod 3, or both. This decision is arbitrary, however, since the connection points

all coincide. The same ﬁnal system dynamics will result regardless of the choice,

but it is important to assign each force explicitly. The easiest method of handling

this uncertainty is to assign all cable forces acting at a joint between rods solely to

the rod on the left. Hence, for this system, T

2

, T

4

, and T

6

are assumed to act on

rod 1 and T

1

, T

3

, and T

6

are assumed to act on rod 2. In addition, there is a force

interaction between the connecting rods. Each rod in a connecting pair applies a

force on the other. These forces are equal and opposite to each other. Free-body

diagrams of each rod illustrate the force distribution in Figure 2.10. Now the cable

direction vectors can be deﬁned as follows.

Cable 1 : d

11

=

−−→

a

1

a

2

=

−2l cos θ

2

−2l sinθ

2

−y

1

+ l sinθ

1

¸

¸

= −d

12

(2.75)

Cable 2 : d

22

=

−−→

b

2

b

1

=

2l cos θ

1

y

1

+ l sinθ

1

= −d

21

(2.76)

31

Cable 3 : d

32

=

−−→

a

2

a

4

=

2l(cos θ

1

−cos θ

4

+ cos θ

2

)

2l(sinθ

1

−sin θ

4

+ sinθ

2

)

¸

¸

= −d

34

(2.77)

Cable 4 : d

41

=

−−→

b

1

b

3

=

2l(−cos θ

2

+ cos θ

3

−cos θ

1

)

2l(−sinθ

2

+ sin θ

3

) −y

1

−l sinθ

1

¸

¸

(2.78)

= −d

43

Cable 5 : d

51

=

−−→

a

1

b

2

=

0

−y

1

+ l sinθ

1

¸

¸

= −d

52

(2.79)

Cable 6 : d

62

=

−−→

a

2

b

1

=

2l(cos θ

1

+ cos θ

2

)

y

1

+ l sinθ

1

+ 2l sinθ

2

¸

¸

= −d

61

(2.80)

Cable 7 : d

74

=

−−→

a

4

b

3

=

2l(−cos θ

2

+ cos θ

3

−cos θ

1

+ cos θ

4

)

2l(−sinθ

2

+ sinθ

3

−sinθ

1

+ sinθ

4

)

¸

¸

(2.81)

= −d

73

The cable lengths are deﬁned below.

L

1

= |

−−→

a

1

a

2

| =

−2l cos θ

2

2

+

−2l sin θ

2

−y

1

+ l sin θ

1

2

(2.82)

L

2

= |

−−→

b

2

b

1

| =

2l cos θ

1

2

+

y

1

+ l sinθ

1

2

(2.83)

L

3

= |

−−→

a

2

a

4

| =

2l(cos θ

1

−cos θ

4

+ cos θ

2

)

2

+

2l(sinθ

1

−sin θ

4

+ sinθ

2

)

2

(2.84)

L

4

= |

−−→

b

1

b

3

| (2.85)

=

2l(−cos θ

2

+ cos θ

3

−cos θ

1

)

2

+

2l(−sinθ

2

+ sinθ

3

) −y

1

−l sin θ

1

2

L

5

= |

−−→

a

1

b

2

| =

−y

1

+ l sinθ

1

2

(2.86)

L

6

= |

−−→

a

2

b

1

| =

2l(cos θ

1

+ cos θ

2

)

2

+

y

1

+ l sin θ

1

+ 2l sin θ

2

2

(2.87)

L

7

= |

−−→

a

4

b

3

| (2.88)

=

2l(−cos θ

2

+ cos θ

3

−cos θ

1

+ cos θ

4

)

2

+

2l(−sinθ

2

+ sinθ

3

−sinθ

1

+ sinθ

4

)

2

32

Figure 2.10: Free-Body Diagrams of Individual T

2

R

4

C

7

V

2

Rods.

Using equation (2.9) as before, the cable directions are divided by their re-

spective lengths to form normalized direction vectors which are subsequently multi-

plied by the tension magnitudes to give the ﬁnal force vectors in the form T

j

i

. The

dynamic equations can now be written. Initially, there are three equations for both

rod 1 and rod 2, which are later combined to eliminate the lost degrees of freedom.

These equations are listed below.

33

Rod 1 :

m¨ x

1

= (T

1

1x

+ T

5

1x

+ R

1x

) + (T

2

1x

+ T

4

1x

+ T

6

1x

+ F

rod4

x

) (2.89)

m¨ y

1

= (T

1

1y

+ T

5

1y

) + (T

2

1y

+ T

4

1y

+ T

6

1y

+ F

rod4

y

) −mg (2.90)

I

¨

θ

1

= l

(T

1

1x

+ T

5

1x

+ R

1x

) sinθ

1

−(T

1

1y

+ T

5

1y

) cos θ

1

(2.91)

+ l

−(T

2

1x

+ T

4

1x

+ T

6

1x

+ F

rod4

x

) sin θ

1

+ (T

2

1y

+ T

4

1y

+ T

6

1y

+ F

rod4

y

) cos θ

1

Rod 2 :

m¨ x

2

= (T

1

2x

+ T

3

2x

+ T

6

2x

+ F

rod3x

) + (T

2

2x

+ T

5

2x

+ R

2x

) (2.92)

m¨ y

2

= (T

1

2y

+ T

3

2y

+ T

6

2y

+ F

rod3

y

) + (T

2

2y

+ T

5

2y

+ R

2y

) −mg (2.93)

I

¨

θ

2

= l

(T

1

2x

+ T

3

2x

+ T

6

2x

+ F

rod3

x

) sinθ

2

−(T

1

2y

+ T

3

2y

+ T

6

2y

+ F

rod3

y

) cos θ

2

+ l

−(T

2

2x

+ T

5

2x

+ R

2x

) sinθ

2

+ (T

2

2y

+ T

5

2y

+ R

2y

) cos θ

2

(2.94)

For all Class 2 structures, it is automatically assumed that any rod other

than rods 1 or 2 can only rotate about the joint at its left endpoint. Therefore,

it is simpler to ﬁnd the one required rotational equation for each of these rods

by taking the moment about its left endpoint (which will avoid having to include

the internal joint reaction forces there), rather than taking the moment about its

center and substituting in the translational equations to account for the loss of the

translational variables. The moment of a rod about its end is I

e

=

1

3

m(2l)

2

. Though

the translational equations for these rods are not needed directly, they are used later

to solve for the internal reaction forces which constrain the rods at their joints, so

they are still written. For rods 3 and 4, the equations are as follows.

Rod 3 :

m¨ x

3

= (T

4

3x

+ T

7

3x

) + F

rod2

x

(2.95)

m¨ y

3

= (T

4

3y

+ T

7

3y

) + F

rod2y

−mg (2.96)

I

e

¨

θ

3

= 2l

−(T

4

3x

+ T

7

3x

) sinθ

3

+ (T

4

3y

+ T

7

3y

) cos θ

3

−mgl cos θ

3

(2.97)

34

Rod 4 :

m¨ x

4

= (T

3

4x

+ T

7

4x

) + F

rod1

x

(2.98)

m¨ y

4

= (T

3

4y

+ T

7

4y

) + F

rod1y

−mg (2.99)

I

e

¨

θ

4

= 2l

(T

3

4x

+ T

7

4x

) sin θ

4

−(T

3

4y

+ T

7

4y

) cos θ

4

+ mgl cos θ

4

(2.100)

To eliminate the joint reaction forces (F

rod1

, F

rod2

, F

rod3

, F

rod4

), one may

recall that each pair is equal and opposite. This yields the equations

F

rod1

= −F

rod4

(2.101)

F

rod2

= −F

rod3

. (2.102)

In addition, because the translational variables for rods 3 and 4 must not appear,

the following substitutions must be made.

x

3

y

3

¸

¸

=

−2l cos θ

2

+ l cos θ

3

−2l sinθ

2

+ l sinθ

3

¸

¸

(2.103)

¨ x

3

¨ y

3

¸

¸

=

2l

¨

θ

2

sin θ

2

+ 2l

˙

θ

2

2

cos θ

2

−l

¨

θ

3

sinθ

3

−l

˙

θ

2

3

cos θ

3

−2l

¨

θ

2

cos θ

2

+ 2l

˙

θ

2

2

sin θ

2

+ l

¨

θ

3

cos θ

3

−l

˙

θ

2

3

sinθ

3

¸

¸

(2.104)

x

4

y

4

¸

¸

=

2l cos θ

1

−l cos θ

4

y

1

+ 2l sinθ

1

−l sinθ

4

¸

¸

(2.105)

¨ x

4

¨ y

4

¸

¸

=

−2l

¨

θ

1

sinθ

1

−2l

˙

θ

2

1

cos θ

1

+ l

¨

θ

4

sinθ

4

+ l

˙

θ

2

4

cos θ

4

¨ y

1

+ l

¨

θ

1

cos θ

1

−l

˙

θ

2

1

sinθ

1

−l

¨

θ

4

cos θ

4

+ l

˙

θ

2

4

sinθ

4

¸

¸

(2.106)

Now by using equations (2.104), (2.106), (2.101), and (2.102), equations (2.95, 2.96)

and (2.98, 2.99) can be solved in terms of forces F

rod3

and F

rod4

, respectively. Equa-

tions (2.95) and (2.96) become

F

rod3

x

= −m(2l

¨

θ

2

sinθ

2

+ 2l

˙

θ

2

2

cos θ

2

−l

¨

θ

3

sin θ

3

−l

˙

θ

2

3

cos θ

3

) + (T

4

3x

+T

7

3x

) (2.107)

F

rod3y

= −m(−2l

¨

θ

2

cos θ

2

+ 2l

˙

θ

2

2

sinθ

2

+ l

¨

θ

3

cos θ

3

−l

˙

θ

2

3

sin θ

3

) + (T

4

3y

+ T

7

3y

) −mg

(2.108)

35

while equations (2.98) and (2.99) become

F

rod4

x

= −m(−2l

¨

θ

1

sinθ

1

−2l

˙

θ

2

1

cos θ

1

+l

¨

θ

4

sinθ

4

+l

˙

θ

2

4

cos θ

4

) +(T

3

4x

+T

7

4x

) (2.109)

F

rod4

y

= −m(¨ y

1

+l

¨

θ

1

cos θ

1

−l

˙

θ

2

1

sinθ

1

−l

¨

θ

4

cos θ

4

+ l

˙

θ

2

4

sin θ

4

) + (T

3

4y

+ T

7

4y

) −mg.

(2.110)

These joint reaction forces can now be substituted into the appropriate places

in equations (2.89-2.94), yielding

R

1x

= −m(3l

¨

θ

1

sinθ

1

+ 3l

˙

θ

2

1

cos θ

1

−l

¨

θ

4

sin θ

4

−l

˙

θ

2

4

cos θ

4

) (2.111)

−(T

1

1x

+ T

2

1x

+ T

4

1x

+ T

5

1x

+ T

6

1x

) −(T

3

4x

+ T

7

4x

)

m¨ y

1

=

1

2

−m(l

¨

θ

1

cos θ

1

−l

˙

θ

2

1

sinθ

1

−l

¨

θ

4

cos θ

4

+ l

˙

θ

2

4

sinθ

4

) (2.112)

+(T

1

1y

+ T

2

1y

+ T

4

1y

+ T

5

1y

+ T

6

1y

) + (T

3

4y

+ T

7

4y

)

−mg

I

¨

θ

1

= l

(T

1

1x

+ T

5

1x

+ R

1x

) sinθ

1

−(T

1

1y

+ T

5

1y

) cos θ

1

(2.113)

−l

T

2

1x

+ T

4

1x

+ T

6

1x

−m(−2l

¨

θ

1

sin θ

1

−2l

˙

θ

2

1

cos θ

1

+ l

¨

θ

4

sin θ

4

+ l

˙

θ

2

4

cos θ

4

)

+(T

3

4x

+ T

7

4x

)

sinθ

1

+l

T

2

1y

+ T

4

1y

+ T

6

1y

−m(¨ y

1

+ l

¨

θ

1

cos θ

1

−l

˙

θ

2

1

sin θ

1

−l

¨

θ

4

cos θ

4

+ l

˙

θ

2

4

sinθ

4

)

+(T

3

4y

+ T

7

4y

) −mg

cos θ

1

R

2x

= m(3l

¨

θ

2

sinθ

2

+ 3l

˙

θ

2

2

cos θ

2

−l

¨

θ

3

sinθ

3

−l

˙

θ

2

3

cos θ

3

) (2.114)

−(T

1

2x

+ T

2

2x

+ T

3

2x

+ T

5

2x

+ T

6

2x

) −(T

4

3x

+ T

7

3x

)

R

2y

= m(−3l

¨

θ

2

cos θ

2

+ 3l

˙

θ

2

2

sinθ

2

+ l

¨

θ

3

cos θ

3

−l

˙

θ

2

3

sinθ

3

) (2.115)

−(T

1

2y

+ T

2

2y

+ T

3

2y

+ T

5

2y

+ T

6

2y

) −(T

4

3y

+ T

7

3y

) + 2mg

I

¨

θ

2

= l

T

1

2x

+ T

3

2x

+ T

6

2x

(2.116)

−m(2l

¨

θ

2

sinθ

2

+ 2l

˙

θ

2

2

cos θ

2

−l

¨

θ

3

sin θ

3

−l

˙

θ

2

3

cos θ

3

) + (T

4

3x

+ T

7

3x

)

sinθ

2

−l

T

1

2y

+ T

3

2y

+ T

6

2y

−m(−2l

¨

θ

2

cos θ

2

+ 2l

˙

θ

2

2

sin θ

2

+ l

¨

θ

3

cos θ

3

−l

˙

θ

2

3

sinθ

3

)

+(T

4

3y

+ T

7

3y

) −mg

cos θ

2

+l

−(T

2

2x

+ T

5

2x

+ R

2x

) sinθ

2

+ (T

2

2y

+ T

5

2y

+ R

2y

) cos θ

2

36

where equations (2.59-2.61) have again been used to replace ¨ x

1

, ¨ x

2

, and ¨ y

2

. Finally,

equation (2.111) is substituted into (2.113) to eliminate R

1x

, giving

ml cos θ

1

¨ y

1

+

I + ml

2

(5 −4 cos

2

θ

1

)

¨

θ

1

−ml

2

(2 sin θ

1

sinθ

4

+ cos θ

1

cos θ

4

)

¨

θ

4

(2.117)

= −(4ml

2

sinθ

1

cos θ

1

)

˙

θ

2

1

+ ml

2

(2 sin θ

1

cos θ

4

−cos θ

1

sinθ

4

)

˙

θ

2

4

−2l sin θ

1

(T

2

1x

+ T

4

1x

+ T

6

1x

+ T

3

4x

+ T

7

4x

)

−l cos θ

1

(T

1

1y

−T

2

1y

−T

4

1y

+ T

5

1y

−T

6

1y

−T

3

4y

−T

7

4y

+ mg)

Likewise, (2.114) and (2.115) are substituted into (2.116) to eliminate R

2x

and R

2y

,

giving

(I + 5ml

2

)

¨

θ

2

−2ml

2

(sinθ

2

sin θ

3

+ cos θ

2

cos θ

3

)

¨

θ

3

= (2.118)

2ml

2

(sinθ

2

cos θ

3

−cos θ

2

sin θ

3

)

˙

θ

2

3

+ 2l sinθ

2

(T

1

2x

+ T

3

2x

+ T

6

2x

+ T

4

3x

+ T

7

3x

)

−2l cos θ

2

(T

1

2y

−T

3

2y

−T

6

2y

+ T

4

3y

−T

7

3y

) + 3mgl cos θ

2

.

This completes the dynamic analysis for the T

2

R

4

C

7

D

2

structure with the

chosen constraints. There are ﬁve ﬁnal dynamic equations (2.112, 2.117, 2.118, 2.97,

2.100) in terms of the ﬁve system variables (y

1

, θ

1

, θ

2

, θ

3

, θ

4

). Like before, these

equations can be grouped to construct a particular form of (2.10) which incorporates

the system constraints.

2.5 Conclusions

This chapter presented a generalized classiﬁcation and naming scheme for a

subclass of planar tensegrity structures. This procedure allows for the arrangement

of a certain structure to be determined based solely on its assigned name. Further-

more, a convention for the numbering of each component was established to ensure

standardization in referencing structural elements. A basic approach for structural

modeling was then discussed, including a general procedure for the dynamic analysis

of both Class 1 and Class 2 tensegrity systems, illustrated with a speciﬁc example

37

for each. With the dynamic analysis completed, the issue of system control becomes

important. This is the subject of the next chapter.

38

Chapter 3

SYSTEM CONTROL

3.1 Introduction

The overall aim of this investigation is to be able to control planar tensegrity

structures so they can achieve useful motions and conﬁgurations required in various

robotic manipulator tasks or structural deployment. One of the most important

control issues is the necessity of maintaining positive tensions in all cables while still

governing the desired system motion. If cables become slack, the desired control

inputs cannot be delivered to the system, causing a degradation in performance or

worse, instability. Therefore, a reliable controller must be developed. That is the

subject of this chapter.

3.2 Negative Tension Problem

In order to have complete control of a system, at least as many actuators as

degrees of freedom being controlled are required. In many cases, a fully-actuated

system is suﬃcient. However, because, in the case of tensegrity structures, the

control inputs are cable tensions, required to be greater than or equal to zero at

all times, a fully-actuated system may not be suﬃcient. Often, using only a fully-

actuated system, negative values are generated for cable tensions in order to achieve

the desired system output. This problem can be avoided by overactuating the system

– introducing redundancy by establishing additional cable inputs. This does not

necessarily mean introducing additional cables. Not all cables in a system need to

39

be actuated. Rather, individual cable tensions may be actively controlled as system

inputs or passively determined by cable stretch. Passive cables are simply treated

as tension springs in the system, with a given initial length and variable stretched

length. If the number of cables in the system exceeds the number of system degrees of

freedom, one or more of the extra passive cables can be made active to aid in ensuring

positive tension control. Sultan and Skelton discuss a method for manipulating the

active cable tensions called “rest-length control,” where cable lengths are treated as

the control inputs rather than the tensions themselves [28]. This method is based

on modiﬁcation of the active lengths of the cables. Essentially, as a motor winds a

cable onto a pulley, the portion of the cable that wraps around the pulley no longer

contributes to the cable tension, shortening the active length. This is eﬀectively

the same as if the initial rest length (L

0

) of the cable were shortened, increasing the

magnitude of the tension according to equation (2.8). Likewise, unwinding the cable

increases its active length, as if the rest length were made longer. For purposes of

clarity and simplicity in this chapter, however, the tension magnitudes themselves

will be treated as the control inputs for the active cables, rather than the cable rest

lengths.

When working with the control of a tensegrity structure it is useful to rewrite

(2.10) in the modiﬁed form

A¨ q = Bu + Cv +g (3.1)

where now u is the input vector containing the magnitudes of the actuated cables’

tensions with coeﬃcient matrix B, v is a vector containing the remaining passive

cables’ tension values (dictated by equation (2.8)) with coeﬃcient matrix C, and g

is a vector of nonlinear and gravity terms.

40

3.3 Feedback Linearization

Although the system represented by (3.1) is nonlinear, a procedure known as

feedback linearization can be applied to it in order to utilize linear control methods

[26]. Assuming a fully-actuated system for now, in which the dimension of the input

vector u equals that of ¨ q, (3.1) can be written in the alternate form

u = B

−1

(A¨ q −Cv −g). (3.2)

By choosing the control input to be of the form

u = B

−1

(Aw −Cv −g) (3.3)

where w is a new input to be determined, the nonlinearity in (3.1, 3.2) is can-

celed. Upon equating (3.2) and (3.3), the result is simply a linear double-integrator

relationship between the output ¨ q and the new input w,

¨ q = w. (3.4)

Now that a linear equation has been derived, a linear control technique may be used.

For instance, w may be chosen as

w = ¨q

d

+ K

d

( ˙ q

d

− ˙ q) + K

p

(q

d

−q) (3.5)

where q

d

(t) and q(t) are the desired and actual states of the system at time t, and K

d

and K

p

are positive diagonal matrices containing derivative and proportional control

gains, respectively. Substituting (3.5) into (3.4), and letting e(t) = q

d

(t) − q(t) be

the tracking error, the ﬁnal result is the equation

¨e + K

d

˙ e + K

p

e = 0 (3.6)

which is a homogeneous linear second-order ordinary diﬀerential equation whose

solution converges to zero exponentially given proper choice of K

d

and K

p

. The

characteristic equation for the ODE in (3.6) is

s

2

+ K

d

s + K

p

= 0 (3.7)

41

with roots

s

1,2

=

−K

d

±

K

2

d

−4K

p

2

. (3.8)

The analytical solution of the tracking error is then

e(t) = C

1

e

s

1

t

+ C

2

e

s

2

t

(3.9)

where the constants C

1

and C

2

are given by

C

1

=

s

2

e(0) − ˙ e(0)

s

2

−s

1

(3.10)

C

2

=

˙ e(0) −s

1

e(0)

s

2

−s

1

(3.11)

and s

1

and s

2

are given in (3.8).

When discussing the dynamic response of a system, it is common to write

(3.7) in the form

s

2

+ 2ζω

n

s + ω

2

n

(3.12)

where ζ is the damping ratio and ω

n

is the undamped natural frequency of the

system. Equating (3.12) and (3.7), it is clear that ζ =

K

d

2

√

Kp

and ω

n

=

K

p

.

Furthermore, (3.8) can then be written as

s

1,2

= (−ζ ±

ζ

2

−1)ω

n

. (3.13)

To achieve a nonoscillatory response, the quantity under the square root sign in (3.8,

3.13) must be nonnegative. This is equivalent to having a damping ratio ζ ≥ 1. In

terms of control gains, this restriction requires that K

2

d

−4K

p

≥ 0 or

K

d

≥ 2

K

p

(3.14)

where use of an equality will yield critical damping and a greater-than inequality

will yield an overdamped system response. As long as the control gains are chosen

satisfying (3.14), the tracking error is guaranteed to converge exponentially to zero

and the system will be exponentially stable.

42

3.4 Null-Space Controller

Oh and Agrawal detail a method of using redundant cables to ensure positive

(or zero) tensions in cable-suspended robots [10]. This idea can be extended to

tensegrity systems. The method is based on feedback linearization theory and can

be used to exponentially stabilize a system to a desired state or trajectory, while

satisfying the property u(t) ≥ 0, t > 0. As described in the previous section, a

feedback law of the form

Bu = Aw−Cv −g (3.15)

can be chosen so that the system dynamics become

¨ q = w (3.16)

where w is chosen as

w = ¨ q

d

+ K

d

˙ e + K

p

e (3.17)

yielding

Bu = A(¨ q

d

+ K

d

˙ e + K

p

e) −Cv −g. (3.18)

If the system is fully-actuated, (3.18) can be solved uniquely if the involved

equations are linearly independent. However, if the system is overactuated, as is

often necessary to ensure nonnegative tensions, the equations result in an under-

determined set, yielding many solutions as long as B’s pseudoinverse, B

T

(BB

T

)

−1

,

exists. If this is true, (3.18) can be solved using

u = ¯ u + N(B)p (3.19)

where

¯ u = B

T

(BB

T

)

−1

[A(¨ q

d

+ K

d

˙ e + K

p

e) −Cv −g]. (3.20)

Here, ¯ u is the minimum norm solution of (3.18), N(B) is the null space of matrix

B, and p is a vector of feasibility parameters chosen to satisfy the condition

¯ u + N(B)p ≥ 0. (3.21)

43

Vector p will have dimension (n −r) for a system with n actuated cables and a B

matrix of rank r. Essentially, the number of elements in p should match the degree

of overactuation. The dimensions of the null space of B will be n × (n −r) and ¯ u

will have dimension n.

The null space (or kernel) of a matrix is the set of values which map the

matrix to the zero vector. For matrix B, this means

BN(B) = 0. (3.22)

Substituting (3.19) into (3.18) gives

B¯ u + BN(B)p = A(¨ q

d

+ K

d

˙ e + K

p

e) −Cv −g (3.23)

which is equivalent to

B¯ u = A(¨ q

d

+ K

d

˙ e + K

p

e) −Cv −g. (3.24)

Therefore, the null space component can be used to rectify the input u without

altering the system motion.

If all components of ¯ u are positive, it is not necessary to ﬁnd p and the

solution of u is simply ¯ u. Otherwise, the components of p are determined by solving

(3.21), which contains n linear inequalities. A feasible region of acceptable values is

determined by solving the n inequalities simultaneously. Once the bounded feasible

region is found, any point inside will satisfy (3.21). If all inequalities cannot be

simultaneously satisﬁed, no feasible region emerges, and the tension constraints are

not achievable.

The degree of overactuation will match the dimension of the feasibility space.

For example, with one extra cable, the feasible region will be a line in one dimension

bounded within the solution points of (3.21). Vector p will contain only one element

and this point can be chosen anywhere along the line. If there are two extra cables,

the feasible region will be a two-dimensional area bounded by intersecting lines, and

44

the elements of p will be any pair of coordinates representing a point within the

region. Three extra cables result in a three-dimensional volume for the feasibility

region, and so on for higher degrees of overactuation. This idea is illustrated in

Figure 3.1 for a simple system with four degrees of freedom and cases of n = 5 and

n = 6 actuated cables.

Figure 3.1: Feasible Regions. Possible feasible regions (shaded in gray) for

choice of p for a four-degree-of-freedom system, with ﬁve actuators

(left) and six actuators (right).

The choice of a point within the feasible region can be made using such tech-

niques as linear and quadratic programming. Ideally the chosen point should yield

a solution such that the smallest possible tension values are used in the additional

cables to ensure that all tensions remain positive. Equation (3.21) can be stated

as a linear programming problem with the goal of minimizing c

T

p subject to the

constraints

−N(B)p ≤ ¯ u, p

l

≤ p ≤ p

u

(3.25)

where c is a constant vector, and p

l

and p

u

are the lower and upper bounds placed

on p. The quantity c

T

p represents a point, line, plane, or higher-order level set that

45

is shifted across the domain of the feasibility space. The resulting solution will occur

at one of the vertices of the feasible region. Likewise, quadratic programming can

be used to ﬁnd a viable solution. In this case, the goal is to minimize p

T

Hp subject

to (3.25), where H is a positive deﬁnite matrix. The quantity p

T

Hp represents an

ellipsoid about the origin whose size is increased until it reaches the feasible region.

Here, the solution may or may not occur at a vertex. The MATLAB functions

linprog and quadprog are useful in deriving the desired solutions.

3.5 Simulations

Several simulations were developed to analyze various planar tensegrity sys-

tems and their response to the feedback controller. Diﬀerent combinations of actu-

ated cables and degrees of actuation were examined. All tensions were monitored

throughout the system motion to determine their magnitude and sign.

3.5.1 T

1

R

4

C

12

D

12,34

Simulation

The ﬁrst planar tensegrity system analyzed is a T

1

R

4

C

12

D

12,34

structure, for

which the dynamics were derived in chapter 2. This is a Class 1 system with four

rods and twelve cables, including two pairs of crossing diagonal cables. The system

is constrained at nodes 1A and 1B, the left endpoints of rods 1 and 2. Rod 1 is

constrained by a frictionless sliding left endpoint, whose motion is restricted to the

line x = 0. Therefore, this body is reduced from three degrees of freedom to two.

Rod 2 is constrained to rotate about its left endpoint, which remains ﬁxed at the

origin of the global reference frame. This limits rod 2 to one degree of freedom.

Rods 3 and 4 remain unconstrained at three degrees of freedom each. Thus, the

entire system has nine total degrees of freedom. The structure is depicted again in

Figure 3.2.

The chosen simulation parameters are listed in Table 3.1. Because of the nine

degrees of freedom, nine equations are used to deﬁne the system dynamics. These

46

Figure 3.2: T

1

R

4

C

12

D

12,34

Conﬁguration.

equations were derived in section 2.4.1 and the reader may wish to refer back to

that section. The vector of system variables is written as

q = [y

1

θ

1

θ

2

x

3

y

3

θ

3

x

4

y

4

θ

4

]

T

(3.26)

where the unused variables have been eliminated from the general form (2.11).

Table 3.1: T

1

R

4

C

12

D

12,34

Simulation Parameters.

Rod Mass m .15 kg

Rod Length 2l .5 m

Rod Moment of Inertia about Center I =

1

12

m(2l)

2

.003125 kgm

2

Cable Spring Constant k 45 N/m

Proportional Gain Matrix K

p

50(I

[9×9]

)

Derivative Gain Matrix K

d

15(I

[9×9]

)

Because this system has twelve cables and only nine degrees of freedom,

several cables may be kept passive. Initially, the system is given nine actuated

cables and three passive cables to investigate the emergence of negative tensions.

47

Cables 3, 4, and 8 are left passive, such that their tensions are determined geo-

metrically by (2.8). The initial lengths of these cables are taken as L

3

0

= .05 m,

L

4

0

= .05 m, and L

8

0

= .10 m. If the distance between the connection points of

any of these cables becomes less than the cable’s initial length, the tension value

becomes zero. The nine actuated cables’ tensions are determined and generated

by the controller. The system is written in the form shown in (3.1) where now

u = [T

1

T

2

T

5

T

6

T

7

T

9

T

10

T

11

T

12

]

T

and v = [T

3

T

4

T

8

]

T

. These magnitudes are

factored out of the tension vectors calculated in chapter 2 and the remaining vector

components are inserted into coeﬃcents in the B and C matrices. Because in this

case the system is not overactuated, the feedback linearization procedure described

in section 3.3 is used directly, rather than the null-space controller. The control

gains are chosen with (3.14) in mind. Because K

d

is slightly larger than 2

K

p

,

the system response will be mildly overdamped, ensuring exponential stability. Fur-

thermore, given these gains, a time interval of only a few seconds is necessary in

simulation because the system will have settled to its desired state within this time.

Of course now there is nothing guaranteeing positive tensions, but this exercise

is to ﬁrst determine the extent of negative tensions arising before employing the

positive-tension control scheme.

The controller is capable of tracking a reference trajectory or merely moving

the system between set points. Set-point control is simpler, where only initial and

desired conﬁgurations are speciﬁed, rather than desired velocites and accelerations

as well. Using set-point control, the system motion is governed by the physical

system parameters and the control gains. Because a speciﬁc reference trajectory is

unnecessary at this point and set-point control is more straightforward, it will be

used for the simulations. The system is given an initial conﬁguration and desired

ﬁnal conﬁguration as follows.

q

0

= [−.125 30

◦

150

◦

.5335 −.125 30

◦

.5335 −.125 150

◦

]

T

(3.27)

48

q

d

= [−.075 17.46

◦

162.54

◦

.6615 −.075 17.46

◦

.6615 −.075 162.54

◦

]

T

(3.28)

These correspond to a structure whose perimeter begins as a .25 m×.75 m rectangle

and ends as a .15 m×.9 m rectangle as the system stretches horizontally. The initial

and ﬁnal conﬁgurations are pictured in Figure 3.3. A time interval of 3 seconds is

used for the simulation, which is run using MATLAB’s ode45 function.

0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 1

−0.3

−0.2

−0.1

0

0.1

x (m)

y

(

m

)

0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 1

−0.3

−0.2

−0.1

0

0.1

x (m)

y

(

m

)

Figure 3.3: Initial (top) and Final (bottom) System Conﬁgurations.

The fully-actuated controller brings the system to the desired state, however,

six of the tensions (T

1

, T

2

, T

7

, T

9

, T

11

, T

12

) become negative at some point during

the motion. So in reality, this controller would not work, since cables cannot carry a

negative (compressive) force. Figure 3.4 shows the motion of each system variable.

Figure 3.5 shows the resulting cable tension values vs. time for this simulation.

For a point of comparison, a second simulation of this structure is conducted,

this time choosing three of the diagonal cables (9, 10, and 12) to be passive and

49

Figure 3.4: System Variable Motion vs. Time. Each system variable moves

exponentially to its desired state.

making cables 3, 4, and 8 active. In this case the initial length for each of the passive

cables is chosen to be .10 m. All other aspects of the simulation are identical. The

system again transitions to the desired ﬁnal conﬁguration, but this time, only T

1

becomes negative. This, however, is still unacceptable, and conﬁrms the need for

a controller that maintains nonnegative tensions. The cable tension values for this

simulation are shown in Figure 3.6.

Next, the null-space controller is employed in an eﬀort to achieve the same

system motion, but maintain nonnegative tensions. In the ﬁrst attempt with this

50

0 0.5 1 1.5 2 2.5 3

−20

−15

−10

−5

0

5

10

15

Time (s)

T

e

n

s

i

o

n

(

N

)

T

1

T

2

T

3

T

4

T

5

T

6

T

7

T

8

T

9

T

10

T

11

T

12

Figure 3.5: T

1

R

4

C

12

D

12,34

Tensions vs. Time with Passive Cables 3, 4, and

8. Six of the twelve tensions become negative for the fully-actuated

system.

controller, the system is overactuated by one degree, using ten active cables and two

passive cables. This requires a p vector with only one element. First, cables 3 and

4 are left passive with initial lengths of .05 m, and all other cables are actuated. In

this case, no feasible region for the choice of p emerges, meaning it is not possible

to rectify the negative tensions using only one extra actuator. Alternatively, com-

binations of passive cables 9 and 10, 10 and 12, and 9 and 12 are tried, resulting in

the same problem. No feasible region develops for any of these trials.

To bolster the probability of obtaining a feasible region, the system overac-

tuation is next increased to three degrees, and all cables in the structure are made

active. Here, the input vector u contains all twelve cable tensions and C and v are

omitted from the dynamic description (3.1). In this case, a feasible region emerges

51

0 0.5 1 1.5 2 2.5 3

−20

−10

0

10

20

30

40

50

Time (s)

T

e

n

s

i

o

n

(

N

)

T

4

T

1

T

3

T

9

T

10

T

12

T

7

T

8

T

5

T

11

T

2

T

6

Figure 3.6: T

1

R

4

C

12

D

12,34

Tensions vs. Time with Passive Cables 9, 10,

and 12. Only one tension becomes negative for this choice of passive

cables.

throughout the entire system motion. Both the linear programming and quadratic

programming techniques are employed to choose the best p values. Now the p vector

is three-dimensional, so three p values must to be chosen at each iteration of the

simulation. For the linear and quadratic programming trials, the c

T

vector is chosen

as [1 1 1], while the H matrix is chosen as the 3×3 identity matrix for the quadratic

programming trial. The MATLAB functions linprog and quadprog are utilized here.

The results of both the linear and quadratic programming trials are identical

in both the choice of the p vectors and, thus, the resulting tensions throughout

the system motion. The controller clearly works, as no tension becomes negative

during the entire simulation, while the system exponentially reaches the desired

state. The system motion is identical to that depicted in Figure 3.4. Three of

the tensions (T

1

, T

8

, T

11

), are, in fact, kept at zero throughout the system motion.

52

This is acceptable, since a zero force is not a compressive force, and furthermore, is

advantageous because no energy input is required for these cables. This is eﬀectively

the same as removing these three cables entirely. Unfortunately, three tensions also

become relatively high. T

4

, T

9

, and T

12

reach maximum values of 191.0 N, 88.5 N,

and 92.9 N, respectively. The tension values resulting from the linear/quadratic

programming schemes for this simulation are shown in Figure 3.7.

0 0.5 1 1.5 2 2.5 3

−50

0

50

100

150

200

Time (s)

T

e

n

s

i

o

n

(

N

)

T

1

T

8

T

11

T

4

T

9

T

12

Figure 3.7: T

1

R

4

C

12

D

12,34

Tensions vs. Time with All Cables Actuated.

Both linear and quadratic programming methods for choosing p result

in the same nonnegative tensions. T

1

, T

8

, and T

11

are zero for all times.

3.5.2 T

1

R

4

C

14

D

12,23,34

Simulation

Another four-rod system is examined next to determine the eﬀect of adding

of more cables. The new system is a T

1

R

4

C

14

D

12,23,34

structure, equivalent to the

previous system with the addition of a pair of diagonal cables at the center of the

structure. This system is pictured in Figure 3.8.

53

Figure 3.8: T

1

R

4

C

14

D

12,23,34

Conﬁguration.

This system is given the same physical parameters, control gains, and initial

and desired states as the previous system. Again, the time interval is taken to be 3

seconds. One degree of overactuation is used in this case, with cables 3, 4, 7, and 8

left passive. Initial lengths for cables 3 and 4 are set to .05 m, and those for cables

7 and 8 are set to .10 m.

This initial choice of passive cables does not yield a feasible region, so cables

9, 10, 13, and 14 are subsequently chosen as replacements. All initial lengths of these

cables are set to .10 m. This time, a feasible region does arise. Using the same c

and H as with the previous system, the linear and quadratic programming methods

again yield identical results. No tensions become negative at any point during the

system motion. T

1

and T

13

are zero throughout portions of the simulation and all

other tensions are positive. The maximum tension reached is 58.7 N by T

4

, which is

signiﬁcantly lower than the highest tensions reached with the previous system. The

tension values for this simulation are presented in Figure 3.9.

54

0 0.5 1 1.5 2 2.5 3

−10

0

10

20

30

40

50

60

Time (s)

T

e

n

s

i

o

n

(

N

)

T

1

T

12

T

8

T

11

T

7

T

5

T

6

T

9

T

10

T

13

T

14

T

2

T

3

T

4

Figure 3.9: T

1

R

4

C

14

D

12,23,34

Tensions vs. Time with Passive Cables 9,

10, 13, 14. With one degree of overactuation, both the linear and

quadratic programming methods for choosing p result in the same

nonnegative tensions.

3.5.3 T

2

R

4

C

7

V

2

Simulation

Next, a Class 2 system is simulated. The chosen system is the T

2

R

4

C

7

V

2

structure shown in Figure 3.10, for which the dynamics were derived in section

2.4.2. The simulation parameters are given in Table 3.2. This system has seven

Table 3.2: T

2

R

4

C

7

V

2

Simulation Parameters.

Rod Mass m .15 kg

Rod Length 2l .5 m

Rod Moment of Inertia about Center I =

1

12

m(2l)

2

.003125 kgm

2

Rod Moment of Inertia about End I

e

=

1

3

m(2l)

2

.0125 kgm

2

Cable Spring Constant k 45 N/m

Proportional Gain Matrix K

p

50(I

[5×5]

)

Derivative Gain Matrix K

d

15(I

[5×5]

)

55

Figure 3.10: T

2

R

4

C

7

V

2

Conﬁguration.

cables and ﬁve degrees of freedom. Initially, the system is given only ﬁve actuators,

leaving cables 5 and 7 passive. They are each given initial length of .10 m. Again,

the system dynamics are written in the form of (3.1) and the feedback linearization

procedure of section 3.3 is used. Recall q = [y

1

θ

1

θ

2

θ

3

θ

4

]

T

. Under set-point

control, the initial and desired conﬁguration vectors are taken as

q

0

= [−.1768 45

◦

135

◦

45

◦

135

◦

]

T

, (3.29)

q

d

= [−.0855 20

◦

160

◦

20

◦

160

◦

]

T

. (3.30)

These conﬁgurations are shown in Figure 3.11. Using the fully-actuated system, T

1

becomes negative, as shown in Figure 3.12. Therefore, the simulation is run again,

actuating all cables and using the null-space controller. As Figure 3.13 depticts,

this time all tensions are kept from going negative. T

1

and T

3

are zero for the

entire simulation. Both linear programming and quadratic programming methods

for ﬁnding p with the null-space controller result in the same tensions. Each system

variable properly moves to its desired state. The tracking of the ﬁve variables is

shown in Figure 3.14.

56

0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 1

−0.4

−0.35

−0.3

−0.25

−0.2

−0.15

−0.1

−0.05

0

0.05

0.1

x (m)

y

(

m

)

0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 1

−0.4

−0.35

−0.3

−0.25

−0.2

−0.15

−0.1

−0.05

0

0.05

0.1

x (m)

y

(

m

)

Figure 3.11: Initial (top) and Final (bottom) System Conﬁgurations.

3.6 Conclusions

System control for planar tensegrity structures was addressed in this chapter.

Feedback linearlization methods and null-space control utilizing overactuation were

shown to feasibly allow shape modiﬁcation of a variety of tensegrity structures while

maintaining positive tensions in the cables. It is apparent that the introduction of

more cables allows the required tensions to drop in magnitude, although a more

thorough analysis of this idea would be appropriate in the future. Furthermore, the

57

0 0.5 1 1.5 2 2.5 3

−10

−5

0

5

10

15

20

Time (s)

T

e

n

s

i

o

n

(

N

)

T

1

T

5

T

7

T

6

T

3

T

2

T

4

Figure 3.12: T

2

R

4

C

7

V

2

Tensions vs. Time with Passive Cables 5 and 7. T

1

becomes negative during the system motion.

0 0.5 1 1.5 2 2.5 3

−5

0

5

10

15

20

25

Time (s)

T

e

n

s

i

o

n

(

N

)

T

1

T

3

T

7

T

4

T

6

T

5

T

2

Figure 3.13: T

2

R

4

C

7

V

2

Tensions vs. Time with All Cables Actuated. Both

linear and quadratic programming methods for choosing p result in

the same nonnegative tensions. T

1

and T

3

are zero for all times.

58

Figure 3.14: System Variable Tracking vs. Time. Each system variable

moves exponentially to its desired state.

choice of the number and placement of actuated cables was somewhat arbitrary. In

certain cases, the choice was not acceptable for the null-space controller. Knowing

ahead of time whether a certain choice of actuated cables is suitable to achieve

a particular conﬁguration would be advantageous. This idea is the focus of the

following chapter.

59

Chapter 4

SYSTEM WORKSPACE DETERMINATION

4.1 Introduction

In general, an n-degree-of-freedom system can be fully controlled with n actu-

ators. The reachable domain, or workspace of allowable conﬁgurations of the system,

is typically limited by kinematic constraints. In the case of tensegrity structures,

however, due to the additional requirement that all actuated tensions be positive,

an n-degree-of-freedom system with n actuated cables may have a workspace much

more limited than if the actuators could supply compressive forces. Therefore, a

desired conﬁguration of a tensegrity structure that appears to be acceptable at ﬁrst

glance, may in fact lie outside the feasible workspace. Complicating matters is the

fact that the static workspace, consisting of all conﬁgurations where the structure

can maintain static equilibrium, does not account for integrity of the system during

motion from one conﬁguration to another. In other words, the starting and ending

conﬁgurations may both lie within the static workspace, but at some time in the

transition between the two conﬁgurations, the tensions may try to become negative.

Therefore, it is necessary to develop the dynamic workspace for a structure, which

accounts for this transition between points. It is possible to develop the dynamic

workspace for a tensegrity system that is fully-actuated and also for one that employs

overactuation and null-space control. Obviously, knowing a priori what conﬁgura-

tions of a system are attainable with positive tensions is extremely valuable. This

chapter describes the methods used to generate the feasible workspaces for various

60

planar tensegrity structures, as well as presenting results from simulations utilizing

these workspaces.

Several papers have addressed the issue of deriving a static workspace for

a variety of cable-based systems [20, 21, 30, 31, 32]. Similarly, Skelton et al have

discussed necessary static equilibrium conditions for tensegrity structures [2, 25, 33].

However, for a system that is in motion, it is important to recognize that the con-

ﬁgurations a system may maintain statically may not necessarily correlate to those

it may reach dynamically. Oh and Agrawal have developed methods of generating

a dynamic workspace for a cable-suspended robot [8, 9, 11, 12, 13]. They show

that future system behavior can be predicted by solving for the error of the system

states analytically based on a given controller. This incorporates system dynamics

rather than simply ﬁnding feasible static equilibrium conﬁgurations. The analytical

solution can be used to determine which conﬁgurations will be dynamically reach-

able. A similar approach based on feedback linearization is used here to develop the

dynamic workspace for planar tensegrity systems.

4.2 Analytical Error Solution

Because one can solve for the tracking error of a feedback-linearized system

analytically, as described in section 3.3, it is possible to determine the state of a

system, q(t), at any time for a given K

d

, K

p

, q

d

(t), and initial state q(0). To see

this, it is helpful to ﬁrst rewrite (3.9) with the constants’ values included, writing

the error terms as q

d

−q,

[q

d

(t) −q(t)] =

s

2

[q

d

(0) −q(0)] −[ ˙ q

d

(0) − ˙ q(0)]

s

2

−s

1

e

s

1

t

+

[ ˙ q

d

(0) − ˙ q(0)] −s

1

[q

d

(0) −q(0)]

s

2

−s

1

e

s

2

t

. (4.1)

61

Recall s

1

and s

2

are given by equation (3.8). Solving for q(t) yields

q(t) = q

d

(t) −

s

2

[q

d

(0) −q(0)] −[ ˙ q

d

(0) − ˙ q(0)]

s

2

−s

1

e

s

1

t

−

[ ˙ q

d

(0) − ˙ q(0)] −s

1

[q

d

(0) −q(0)]

s

2

−s

1

e

s

2

t

. (4.2)

This equation can be simpliﬁed for the case of set-point control. Using set-point

control, the system begins and ends at rest, such that q

d

is a constant vector,

independent of time. Under this assumption, ˙ q(0), ˙ q

d

(0) = 0 and q

d

(0) = q

d

. Then

(4.2) becomes

q(t) = q

d

−

s

2

(q

d

−q

0

)

s

2

−s

1

e

s

1

t

+

s

1

(q

d

−q

0

)

s

2

−s

1

e

s

2

t

(4.3)

where q(0) has been replaced by q

0

. Similarly, the solution of ˙ q(t) under set-point

control is

˙ q(t) = −

s

2

(q

d

−q

0

)

s

2

−s

1

s

1

e

s

1

t

+

s

1

(q

d

−q

0

)

s

2

−s

1

s

2

e

s

2

t

. (4.4)

Thus, analytical solutions of both q(t) and ˙ q(t) are available, which is essential in

generating the dynamic workspace.

4.3 Dynamic Workspace Generation Techniques

Using the control law speciﬁed in (3.5) and assuming a perfect model of a

tensegrity system, the input that will be provided to the system at any time can be

determined from (3.3) as

u(t) = B

−1

A

¨q

d

+ K

d

( ˙ q

d

− ˙ q) + K

p

(q

d

−q)

−Cv −g

. (4.5)

Using set-point control, where q

d

is composed of ﬁxed values of the system variables,

this equation simpliﬁes to

u(t) = B

−1

A

K

d

(−˙ q) + K

p

(q

d

−q)

−Cv −g

(4.6)

where B

−1

, C, and v are functions of q, and q and ˙ q are given by (4.3) and (4.4),

respectively. Therefore, given a set of control gains K

d

and K

p

, initial conﬁguration

62

q

0

, and desired conﬁguration q

d

, the control inputs u that will be provided to the

system over all time can be found. The dynamic workspace is composed of all q

d

that result in positive u at each time. The range of q

d

that will result in positive

tension inputs typically shrinks over time, meaning that the tensions under certain

choices of q

d

begin positive but become negative at some time during the system’s

transition between states. These q

d

are obviously unacceptable, and therefore, the

time-independent dynamic workspace, composed of q

d

that generate positive tension

inputs for all time, is more signiﬁcant.

The structure of the dynamic workspace of a given tensegrity system depends

on time, as well as the dimension of vector q

d

. As the dimension of q

d

increases

for systems with higher degrees of freedom, it becomes more diﬃcult to depict the

dynamic workspace graphically. For example, the workspace of any system beyond

two degrees of freedom cannot be graphed directly because it will depend on at

least four parameters (three kinematic variables and time), while only three spatial

dimensions exist for plotting. Therefore, representing the workspace graphically

becomes a challenge. There are several ways to manage this issue, however. The

ﬁrst is limiting motion to one dimension at a time. In other words, given an initial

conﬁguration in, for example, x, y, and θ, one may ﬁrst ﬁnd the feasible x

d

region,

choose a value from this region, and have the system move there. Then this process

may be repeated for the other two system variables. Another option is plotting the

feasible volume of (x

d

, y

d

, θ

d

) combinations at a number of time samples, and then

ﬁnding the intersection of these volumes that span the entire time domain. This will

yield a single, time-independent workspace volume. This second option becomes

rather limited beyond a three-degree-of-freedom system, however, as, again, one

cannot plot greater than three dimensions in a single graph. It is, of course, possible

to still ﬁnd a higher-dimensional workspace without plotting it. Both approaches

to plotting the dynamic workspace of a three-degree-of-freedom tensegrity structure

63

are discussed in the following sections.

4.4 Three-Degree-of-Freedom Tensegrity Structure

4.4.1 Physical Description

Consider a planar tensegrity structure with two crossing rods and four cables.

It is possible to describe this structure as a T

1

R

2

C

4

system, however, because there

are no sites available for the placement of vertical or diagonal cables, it is suitable

to forgo the naming/numbering scheme of chapter 2 for a structure of this limited

scope. This structure can be constrained such that it has only three degrees of

freedom, compared to its original six. These degrees can be reduced in several ways.

The simplest method is to hold one rod ﬁxed at each end, eliminating all three of its

degrees, while the other rod is left unconstrained. This system is investigated and

described here. Such a structure is shown in Figure 4.1. Rod 1 is left unconstrained

and deﬁned geometrically by its center-of-mass position (x, y) and orientation angle

θ measured counterclockwise from the horizontal. Rod 2 is ﬁxed horizontally, and,

for all intents and purposes, is dynamically negligible. It is simply used to keep the

ends of the four cables ﬁxed in place. Each rod is of length 2l and mass m. The

system origin is placed at the left endpoint of rod 2 with axes deﬁned as shown in

the ﬁgure. Cable tensions are denoted by T

1

, T

2

, T

3

, and T

4

. Gravity acts in the

negative-y direction.

4.4.2 Kinematic Model

The kinematics of this structure are rather straightforward since only one

body is in motion. The tension direction vectors are given by the following equations.

64

Figure 4.1: Planar Tensegrity Structure with One Fixed Rod and One

Free Rod.

d

1

=

−−→

BD =

−x −l cos θ

−y −l sinθ

¸

¸

(4.7)

d

2

=

−−→

BE =

2l −x −l cos θ

−y −l sinθ

¸

¸

(4.8)

d

3

=

−→

AE =

2l −x + l cos θ

−y + l sinθ

¸

¸

(4.9)

d

4

=

−−→

AD =

−x + l cos θ

−y + l sinθ

¸

¸

(4.10)

65

The cable lengths are found as follows.

L

1

= |

−−→

BD| =

(−x −l cos θ)

2

+ (−y −l sinθ)

2

(4.11)

L

2

= |

−−→

BE| =

(2l −x −l cos θ)

2

+ (−y −l sinθ)

2

(4.12)

L

3

= |

−→

AE| =

(2l −x + l cos θ)

2

+ (−y + l sinθ)

2

(4.13)

L

4

= |

−−→

AD| =

(−x + l cos θ)

2

+ (−y + l sin θ)

2

(4.14)

Then unit vectors are found by scaling the tension direction vectors by their respec-

tive cable lengths.

ˆ

d

i

=

d

i

L

i

(4.15)

4.4.3 Dynamic Model

Next, the system dynamics are deﬁned. As in chapter 2, this is done using

the Newton-Euler method. Because rod 2 is stationary, it can be neglected in the

dynamic analysis. There are then three equations to deﬁne the dynamics of rod 1:

m¨ x = F

x

(4.16)

m¨ y = F

y

(4.17)

I

¨

θ = M

z

(4.18)

Substituting in the x-components of the four cable tensions, (4.16) becomes

m¨ x = T

1

ˆ

d

1x

+ T

2

ˆ

d

2x

+ T

3

ˆ

d

3x

+ T

4

ˆ

d

4x

=

(−x −l cos θ)

L

1

T

1

+

(2l −x −l cos θ)

L

2

T

2

+

(2l −x + l cos θ)

L

3

T

3

+

(−x + l cos θ)

L

4

T4 (4.19)

and substituting in the y-tension components and rod weight changes (4.17) to

m¨ y = T

1

ˆ

d

1y

+ T

2

ˆ

d

2y

+ T

3

ˆ

d

3y

+ T

4

ˆ

d

4y

=

(−y −l sin θ)

L

1

T

1

+

(−y −l sinθ)

L

2

T

2

+

(−y + l sinθ)

L

3

T

3

+

(−y + l sinθ)

L

4

T4 −mg. (4.20)

66

The moments created by the four tensions are summed using

I

¨

θ = (

−−→

CB ×T

1

ˆ

d

1

) + (

−−→

CB ×T

2

ˆ

d

2

) + (

−→

CA×T

3

ˆ

d

3

) + (

−→

CA×T

4

ˆ

d

4

) (4.21)

where

−→

CA and

−−→

CB are deﬁned as

−−→

CB =

l cos θ

l sinθ

¸

¸

,

−→

CA =

−l cos θ

−l sinθ

¸

¸

. (4.22)

The ﬁnal sum-of-moments equation becomes

I

¨

θ =

xl sin θ −yl cos θ

L

1

T

1

+

−2l

2

sinθ + xl sinθ −yl cos θ

L

2

T

2

+

2l

2

sinθ −xl sinθ + yl cos θ

L

3

T

3

+

−xl sinθ + yl cos θ

L

4

T

4

(4.23)

These three dynamic equations can be written in matrix form, as in (3.1). The

system variables are grouped into a vector q = [x y θ]

T

. T

1

, T

2

, and T

3

are taken

as the control inputs, making up the vector u. Cable 4 is unactuated, and T

4

found

using

T

4

= k(L

4

−L

4

0

). (4.24)

Therefore in this case, vector v has only one element, T

4

. The ﬁnal matrix form of

the system dynamics is

m 0 0

0 m 0

0 0 I

¸

¸

¸

¸

¸

¨ x

¨ y

¨

θ

¸

¸

¸

¸

¸

=

−x−l cos θ

L

1

2l−x−l cos θ

L

2

2l−x+l cos θ

L

3

−y−l sinθ

L

1

−y−l sinθ

L

2

−y+l sin θ

L

3

xl sinθ−yl cos θ

L

1

−2l

2

sinθ+xl sinθ−yl cos θ

L

2

2l

2

sinθ−xl sinθ+yl cos θ

L

3

¸

¸

¸

¸

¸

T

1

T

2

T

3

¸

¸

¸

¸

¸

+

−x+l cos θ

L

4

−y+l sinθ

L

4

−xl sinθ+yl cos θ

L

4

¸

¸

¸

¸

¸

T

4

+

0

−mg

0

¸

¸

¸

¸

¸

(4.25)

or, again,

A¨ q = Bu + Cv +g. (4.26)

67

4.4.4 Simulation

To generate the dynamic workspace of the three-degree-of-freedom tensegrity

structure described above, a simulation was developed using MATLAB. The chosen

simulation parameter values are shown in Table 4.1. Given an initial conﬁguration

Table 4.1: Simulation Parameters.

Rod Mass m .15 kg

Rod Length 2l .5 m

Rod Moment of Inertia about Center I =

1

12

m(2l)

2

.003125 kgm

2

Cable Spring Constant k 100 N/m

Unstretched Length of Passive Cable 4 L

4

0

.15 m

Proportional Gain Matrix K

p

50(I

[3×3]

)

Derivative Gain Matrix K

d

15(I

[3×3]

)

q

0

, the dynamic workspace can be determined. This is done numerically, dividing

the ranges of the system variables into discrete samples, and calculating the input

tensions u at each (x, y, θ, t) combination using (4.6). The points where u ≥ 0 are

mapped to the dynamic workspace, while those where u < 0 are omitted.

4.4.4.1 One-Dimensional Motion

If the system motion is limited to one dimension at a time, a planar plot

of the feasible region can be represented in (t,q

d

) coordinates, where q

d

represents

the range of desired values in the variable dimension of interest. Once the region

is generated for the ﬁrst dimension, a feasible q

d

value is chosen, and the process is

repeated for the other two system variables.

For the current system, an initial conﬁguration of q

0

= [.25 0 90

◦

]

T

is chosen.

This conﬁguration is shown in Figure 4.2. First, y and θ are held ﬁxed such that

y

d

= y

0

and θ

d

= θ

0

, leaving x as the only variable dimension. Then, the time

domain is sampled every 0.01 seconds from 0 to 3 seconds, resulting in 301 discrete

time samples. The range of x

d

is taken from 0 to 0.5m and divided, for consistency

68

−0.1 0 0.1 0.2 0.3 0.4 0.5 0.6

−0.3

−0.2

−0.1

0

0.1

0.2

0.3

x (m)

y

(

m

)

Figure 4.2: Initial Conﬁguration. The system is given initial values x

0

= 0.25m,

y

0

= 0m, and θ

0

= 90

◦

.

and ease of plotting, into 301 equally-spaced discrete values as well. The input

values for each of the actuated cables are then computed for each of these x

d

-t

combinations. The result is a three-dimensional surface plot of the tensions as a

function of x

d

and time. Figure 4.3 shows these surface plots of T

1

, T

2

, and T

3

.

As can be seen, the tensions in all three cables remain positive for all choices of x

d

.

However, the plots of T

2

and T

3

approach inﬁnity as x

d

goes to 0.5m and t increases.

This obviously is not feasible, so a second limiting condition is imposed such that

Figure 4.3: Surface Plots of Input Tension Values for Varying x

d

.

69

only the points where the tension is less than or equal to 1000N are considered in the

workspace. With the minimum and maximum restrictions established, the region

of feasible points can be plotted in the plane. Figure 4.4 shows the feasible areas

for the three cables and their combined, composite region. This composite region is

the feasible area such that all tensions will remain within the imposed limits. The

thin curved boundary at the top of the shaded area results from the exponential

controller. Choosing an x

d

above 0.49m will cause tensions to rise beyond the 1000N

limit once time progresses beyond the curved boundary. However, a choice of x

d

below this line results in positive inputs that are below the imposed maximum for

all time. The region below the horizontal line at x

d

= 0.49m thus represents the

time-independent dynamic workspace. Any x

d

within the time-independent dynamic

workspace is acceptable. A value of x

d

= 0.37m is arbitrarily chosen. The x-motion

is tracked versus time in Figure 4.5. The tension values for all four cables are shown

in Figure 4.6.

70

Figure 4.4: Feasible Areas for Choice of x

d

.

71

0 0.5 1 1.5 2 2.5 3

0.24

0.25

0.26

0.27

0.28

0.29

0.3

0.31

0.32

0.33

0.34

0.35

0.36

0.37

0.38

x−Position vs. Time

Time (s)

x

(

m

)

Figure 4.5: x-Position versus Time. The system begins at x = 0.25m and

moves exponentially to x = 0.37m.

0 0.5 1 1.5 2 2.5 3

15

20

25

30

35

40

45

50

55

Tension Values vs. Time

Time (s)

T

e

n

s

i

o

n

(

N

)

T

4

T

1

T

2

T

3

Figure 4.6: Cable Tensions During x-Motion. The tension in each cable stays

within the imposed limits throughout the motion from 0.25m to 0.37m.

72

The process for ﬁnding the feasible area for y

d

is then carried out. The new

initial conﬁguration is q

0

= [.37 0 90

◦

]

T

, as shown in Figure 4.7. Now x and θ

are held ﬁxed while y

d

is varied from −0.25m to 0.25m. Again, t is taken from 0

to 3 seconds and sampled every 0.01 seconds. y

d

is given an equivalent number of

samples. The resulting tension surface plots are shown in Figure 4.8.

−0.1 0 0.1 0.2 0.3 0.4 0.5 0.6

−0.3

−0.2

−0.1

0

0.1

0.2

0.3

x (m)

y

(

m

)

Figure 4.7: Initial Conﬁguration for y-Motion. New initial values are x

0

=

0.37m, y

0

= 0m, and θ

0

= 90

◦

.

Figure 4.8: Surface Plots of Input Tension Values for Varying y

d

.

As before, the tension maximum must be limited to 1000 because T

1

and

T

2

spike at y

d

= −0.25m. Also, these tensions become slightly negative as y

d

73

approaches 0.25m, though it is diﬃcult to tell due to the scaling of the plots in

Figure 4.8. Figure 4.9, however, shows the feasible areas for each tension and their

composite. The limit at y

d

= −0.23m is due to excessively high tensions, while

the limit at 0.24m is due to negative tensions. An arbitrary choice of y

d

= −0.09 is

made. The corresponding y-motion tracking and cable tensions are shown in Figures

4.10 and 4.11, respectively.

Figure 4.9: Feasible Areas for Choice of y

d

.

74

0 0.5 1 1.5 2 2.5 3

−0.1

−0.09

−0.08

−0.07

−0.06

−0.05

−0.04

−0.03

−0.02

−0.01

0

y−Position vs. Time

Time (s)

y

(

m

)

Figure 4.10: y-Position versus Time. The system begins at y = 0m and moves

exponentially to y = −0.09m.

0 0.5 1 1.5 2 2.5 3

20

30

40

50

60

70

80

90

Tension Values vs. Time

Time (s)

T

e

n

s

i

o

n

(

N

)

T

1

T

2

T

3

T

4

Figure 4.11: Cable Tensions During y-Motion. The tension in each cable

stays within the imposed limits throughout the motion from 0m to

−0.09m.

75

The ﬁnal phase of motion is rotation of the angle θ about the rod’s center.

The new initial conﬁguration is q

0

= [.37 −.09 90

◦

]

T

, as shown in Figure 4.12.

In this case, θ is varied from 0

◦

to 180

◦

and sampled in the same manner as the

previous variables. The other variables are again ﬁxed, and the same time interval

and sampling are used. The tension surface plots each contain several areas that

spike to large positive and negative values, as is shown in Figure 4.13.

−0.1 0 0.1 0.2 0.3 0.4 0.5 0.6

−0.3

−0.2

−0.1

0

0.1

0.2

0.3

x (m)

y

(

m

)

Figure 4.12: Initial Conﬁguration for θ-Motion. New initial values are x

0

=

0.37m, y

0

= −0.09m, and θ

0

= 90

◦

.

Figure 4.13: Surface Plots of Input Tension Values for Varying θ

d

.

76

The corresponding feasible regions are shown in Figure 4.14. Any θ

d

between

37.2

◦

and 158.4

◦

is acceptable. A value of 125

◦

is chosen. The corresponding θ-

motion tracking and cable tensions are shown in Figures 4.15 and 4.16.

Figure 4.14: Feasible Areas for Choice of θ

d

.

77

0 0.5 1 1.5 2 2.5 3

90

95

100

105

110

115

120

125

130

θ−Orientation vs. Time

Time (s)

θ

(

°

)

Figure 4.15: θ-Orientation versus Time. The system begins at θ = 90

◦

and

moves exponentially to θ = 125

◦

.

0 0.5 1 1.5 2 2.5 3

30

40

50

60

70

80

90

Tension Values vs. Time

Time (s)

T

e

n

s

i

o

n

(

N

)

T

1

T

2

T

3

T

4

Figure 4.16: Cable Tensions During θ-Motion. The tension in each cable

stays within the imposed limits throughout the motion from 90

◦

to

125

◦

.

78

Therefore, by plotting the dynamic workspace for each variable and using

consecutive one-dimensional moves, the feasible system motion was determinable

and the desired conﬁguration was reached. The ﬁnal system conﬁguration of q =

[.37 −.09 125

◦

]

T

is shown in Figure 4.17.

−0.1 0 0.1 0.2 0.3 0.4 0.5 0.6

−0.3

−0.2

−0.1

0

0.1

0.2

0.3

x (m)

y

(

m

)

Figure 4.17: Final System Conﬁguration. Final values are x = 0.37m, y =

−0.09m, and θ = 125

◦

.

4.4.4.2 Multi-Dimensional Workspace

Obviously, a more expedient approach would be to map the feasible combi-

nations of x

d

, y

d

, and θ

d

rather than having to ﬁnd each individually. That is the

focus of this section. As mentioned earlier, a feasible volume of points in (x

d

, y

d

, θ

d

)

coordinates can be found at each instant of time. This volume is time-dependent,

and will thus change as time progresses. However, by ﬁnding the intersection of

points that exist within the volume for all time, the time-independent dynamic

workspace can be determined, from which any combination of system variables is a

viable choice. Unfortunately, this method is much more computationally intensive

than the previous one. Because there are now four parameters that determine the

input values rather than two, it becomes necessary to use fewer samples of each, and

79

the plot resolution is not as sharp. Nevertheless, this method is an eﬀective way of

determining the feasible dynamic workspace.

As a point of comparison, an initial system conﬁguration identical to the

one in the previous method, q

0

= [.25 0 90

◦

]

T

, is used. The same range of each

variable is used again as well: 0 ≤ x

d

≤ 0.50, −0.25 ≤ y

d

≤ 0.25, 0 ≤ θ

d

≤ 180,

and 0 ≤ t ≤ 3. Each is sampled at 20 equally-spaced points, producing 160, 000

diﬀerent combinations for which u is computed. Again the criteria for inclusion in

the dynamic workspace is that all input tensions be positive and not exceed 1000N.

All (x

d

, y

d

, θ

d

) points fulﬁlling these requirements are mapped to the workspace.

From this point cloud, a more solid volume is created by taking level sets through

each sampled value in each spatial dimension. The change in shape of the workspace

can be seen in Figure 4.18, which shows the feasible volume at six diﬀerent time

samples. The workspace begins as a cube, ﬁlling the entire spatial domain, and

then shrinks as more points become infeasible. The time-independent dynamic

workspace, composed of the intersection of feasible points present at all time samples,

is given in Figure 4.19.

Any point from the time-independent dynamic workspace should produce

satisfactory tensions throughout the motion from q

0

to q

d

. However, it is important

to realize that this method is numerical and depends heavily on the sampling resolu-

tion. It is possible for tensions to spike rapidly and drastically if the system reaches

an unstable conﬁguration, as can be seen in Figure 4.13. Such a situation can occur

when the rods become uncrossed or the cables themselves cross over one another.

If the sampling resolution is ﬁne enough, these spikes will be detected and the cor-

responding points will be eliminated from the workspace. However, because the

degree of computational intensiveness rapidly increases with the resolution, there is

an obvious tradeoﬀ. These unstable points tend to occur at the boundaries of the

80

Figure 4.18: Dynamic Workspace at Successive Time Samples. The feasi-

ble volume shrinks as time progresses.

81

0

0.05

0.1

0.15

0.2

0.25

0.3

0.35

0.4

0.45

0.5

−0.25

−0.2

−0.15

−0.1

−0.05

0

0.05

0.1

0.15

0.2

0.25

0

20

40

60

80

100

120

140

160

180

x

d

(m)

Volume of x

d

, y

d

, θ

d

Combinations Resulting in Feasible Tensions in All Cables for All Times

y

d

(m)

θ

d

(

ο

)

Figure 4.19: Time-Independent Dynamic Workspace. Feasible volume en-

compassing points present at each time sample.

82

workspace, and are avoidable by staying away from the workspace edges. Alterna-

tively, geometric constraints can be placed on the system to prevent it from entering

these problematic conﬁgurations.

Using the generated time-independent dynamic workspace, the point q

d

=

[.37 −.09 125

◦

]

T

, is shown to again be feasible. It can be seen in Figure 4.20 that all

four tensions remain within the acceptable bounds when this point is chosen. Each

system variable is shown in Figure 4.21 to reach its desired state exponentially.

0 0.5 1 1.5 2 2.5 3

20

30

40

50

60

70

80

90

Tension Values vs. Time

Time (s)

T

e

n

s

i

o

n

(

N

)

T

1

T

2

T

3

T

4

Figure 4.20: Cable Tensions During Combined x-y-θ Motion. The tension

in each cable stays within the imposed limits throughout the motion

from [.25 0 90

◦

]

T

to [.37 −.09 125

◦

]

T

.

0 1 2 3

0.24

0.26

0.28

0.3

0.32

0.34

0.36

0.38

x−Position vs. Time

Time (s)

x

(

m

)

0 1 2 3

−0.1

−0.09

−0.08

−0.07

−0.06

−0.05

−0.04

−0.03

−0.02

−0.01

0

y−Position vs. Time

Time (s)

y

(

m

)

0 1 2 3

90

95

100

105

110

115

120

125

130

θ−Orientation vs. Time

Time (s)

θ

(

°

)

Figure 4.21: Tracking of Each System Variable versus Time.

83

4.4.4.3 Static Workspace Comparison

At this point it is worth comparing the time-independent dynamic workspace

with the static workspace, pictured in Figure 4.22. The static workspace represents

all (x

d

, y

d

, θ

d

) combinations such that the system can hold a static equilibrium con-

ﬁguration while maintaining cable tensions within the deﬁned range from 0N to

1000N. The two plots are very similar, but some regions are absent in the dynamic

workspace that appear in the static workspace, most notably as θ

d

approaches its

limits at 0

◦

and 180

◦

. What this means is that there are certain conﬁgurations in

which the system can hold itself statically and maintain acceptable tensions, but in

order to transition to these points from the speciﬁed initial conﬁguration, negative

or excessively high tensions will be required during the motion.

Figure 4.22: Comparison of Dynamic and Static Workspaces. The static

workspace (right) contains regions that are eliminated in the time-

independent dynamic workspace (left).

For illustration, consider the point (.30, −.10, 0), which is a part of the static

workspace but not the dynamic workspace. When this point is chosen, the cable

84

tensions are seen in Figure 4.23 to spike at around 0.5 seconds, though once the

system settles to the static equilibrium state, all tensions are within the imposed

limits (T

1

= 3.29N, T

2

= 0.16N, T

3

= 3.39N, T

4

= 0N). Thus, although the

ﬁnal conﬁguration (Figure 4.24) is a valid statically, the spiking tensions that occur

during the motion eliminate the point from the dynamic workspace.

0 0.5 1 1.5 2 2.5 3

−100

−80

−60

−40

−20

0

20

40

60

80

100

Tension Values vs. Time

Time (s)

T

e

n

s

i

o

n

(

N

)

Figure 4.23: Cable Tensions During Infeasible Motion. The tensions spike

outside the limits with the choice of q

d

= [.30 −.10 0

◦

]

T

.

−0.1 0 0.1 0.2 0.3 0.4 0.5 0.6

−0.3

−0.2

−0.1

0

0.1

0.2

0.3

x (m)

y

(

m

)

Figure 4.24: Static Equilibrium Conﬁguration. The ﬁnal conﬁguration sat-

isﬁes the static equilibrium conditions with nonnegative tensions.

85

4.5 Overactuated System Comparison

In the previous sections, the workspace of a fully-actuated three-degree-of-

freedom planar tensegrity structure was analyzed. The feasible combinations of

its system variables were mapped, showing allowable desired conﬁgurations for the

system using three actuated cables and one passive cable. The same procedure can

be performed for an equivalent system with all four cables actuated. Using null-

space control, as discussed in detail in section 3.4, the redundancy of actuation can

be exploited to rectify many of the negative tensions that would otherwise occur in

the system that was only fully actuated. While not every conﬁguration is reachable

with this positive tensions controller, the dynamic workspace is expanded compared

to that of the fully-actuated system.

For the overactuated system, the form of the system dynamics changes slightly

because there are now four control inputs. Equation (4.26) is altered such that C

and v are appended to the coeﬃcient matrix B and control vector u, respectively,

resulting in the simpler form

A¨ q = Bu +g (4.27)

where now B is (3 ×4) and u is a four-vector containing the four input tensions. In

this case u is determined using

u = ¯ u + N(B)p (4.28)

where

¯ u = B

T

(BB

T

)

−1

[A(¨ q

d

+ K

d

˙ e + K

p

e) −g], (4.29)

N(B) is the null space of matrix B, and p is a feasibility parameter chosen to satisfy

the condition

¯ u + N(B)p ≥ 0. (4.30)

Again, set-point control is used, simplifying (4.29) to

¯ u = B

T

(BB

T

)

−1

A

K

d

(−˙ q) + K

p

(q

d

−q)

−g

(4.31)

86

and the analytical error solution is used to supply ˙ q and q at each time sample.

For this simulation, if all elements of ¯ u are positive, there is no need to rectify

the inputs and u is simply set equal to ¯ u. Otherwise (4.30) is analyzed as a set of

four inequalities dependent on a choice of p. The range of feasible p values satisfying

all four inequalities may be lower-bounded, upper-bounded, or both. Any p within

this range will produce nonnegative inputs, though their values will vary depending

on the choice of p. If the range is bounded on only one side, choosing the extremum

value will result in at least one of the tensions being zero since this is the minimum

tension allowed by (4.30). If a slightly positive tension is desired, p may be chosen

slightly above the minimum bound or below the maximum bound. If the range

is double-bounded, the mean of the range is chosen. If all four of the inequalities

cannot be satisﬁed simultaneously, no feasible region will emerge, and it will be

impossible to avoid nonnegative tensions. When this occurs, the corresponding

(x

d

, y

d

, θ

d

) point is omitted from the dynamic workspace. Otherwise, all (x

d

, y

d

, θ

d

)

combinations for which the tensions can be rectiﬁed (and do not exceed 1000N) are

mapped to the dynamic workspace.

As before, the three q

d

variables and time interval are sampled at 20 equally-

spaced values. The combinations for which the tensions can be made nonnegative

and remain below the maximum limit over the entire time interval are included in

the time-independent dynamic workspace, shown in Figure 4.25. The workspace for

the overactuated system contains 5, 966 mapped points compared to 3, 192 for the

fully-actuated system, meaning that by introducing one extra actuator and using

null-space control, the workspace can be expanded by 87%. Note that the entire

volume for which y

d

< 0 is included in the workspace. This is because as long as the

free rod’s center of mass is below the horizontal containing the cables’ ﬁxed points,

there is no conﬁguration in which any of the cables would need to push to hold the

rod up. For example, if the rod were horizontal (θ

d

= 0

◦

, 180

◦

), at any y

d

< 0 all

87

four cables would be in tension, carrying the weight of the rod, while at any y

d

> 0

they would need to be in compression to hold the rod above the line y = 0. The

portion of the feasible volume added by utilizing overactuation is plotted in Figure

4.26.

0

0.05

0.1

0.15

0.2

0.25

0.3

0.35

0.4

0.45

0.5

−0.25

−0.2

−0.15

−0.1

−0.05

0

0.05

0.1

0.15

0.2

0.25

0

20

40

60

80

100

120

140

160

180

x

d

(m)

Volume of x

d

, y

d

, θ

d

Combinations Resulting in Feasible Tensions in All Cables for All Times

y

d

(m)

θ

d

(

ο

)

Figure 4.25: Time-Independent Dynamic Workspace for Overactuated

System. Feasible volume encompassing points present at each time

sample.

88

0

0.05

0.1

0.15

0.2

0.25

0.3

0.35

0.4

0.45

0.5

−0.25

−0.2

−0.15

−0.1

−0.05

0

0.05

0.1

0.15

0.2

0.25

0

20

40

60

80

100

120

140

160

180

x

d

(m)

y

d

(m)

θ

d

(

ο

)

Figure 4.26: Portion of Feasible Volume Added by Using Overactuation.

The increase in volume is seen by subtracting the time-independent

workspace of the fully-actuated system from that of the overactuated

system.

Although all points in the workspace shown in Figure 4.25 are reachable by

the system, the tensions that are necessary to bring the system to the corresponding

conﬁgurations, while positive, may be discontinuous in time. Most often, the discon-

tinuities arise for conﬁgurations where the rods become uncrossed, during which the

89

cables themselves sometimes must cross over one another to reach the desired con-

ﬁguration. As mentioned in section 4.4.4.2, geometric constraints may be imposed

which prevent the rods from becoming uncrossed. Two constraints are necessary:

one for the vertical direction and one for the horizontal direction. To ensure the free

rod does not move entirely above or below the ﬁxed rod, it is required that

−l sinθ < y < l sinθ. (4.32)

To ensure that the free rod does not move past the left or right endpoints of the

ﬁxed rod, it is necessary that

α < θ < β (4.33)

where α and β are angles established counterclockwise from the horizontal to cables

3 and 4, respectively. Mathematically, these angles are deﬁned as follows

α = tan

−1

−y + l sin θ

2l −x + l cos θ

(4.34)

β = 90

◦

+ tan

−1

x −l cos θ

−y + l sinθ

. (4.35)

With these constraints imposed, the new time-independent dynamic workspace can

be plotted, as shown in Figure 4.27. In this case 3, 936 points are mapped to the

workspace compared to 3, 175 for the fully-actuated system with the same geometric

constraints imposed. This equates to a 24% increase. The portion of the workspace

that is added by using the null-space controller in this case is shown in Figure 4.28.

The null-space controller also serves, in general, to lower the tension values

that are necessary to govern the system motion. Because the system is overactuated,

there is more freedom in choosing four inputs to control three degrees of freedom.

The null-space controller, while maintaining positive tensions, also chooses these

tensions to be as minimal as possible. As a point of comparison, if the same q

d

90

0

0.05

0.1

0.15

0.2

0.25

0.3

0.35

0.4

0.45

0.5

−0.25

−0.2

−0.15

−0.1

−0.05

0

0.05

0.1

0.15

0.2

0.25

0

20

40

60

80

100

120

140

160

180

x

d

(m)

y

d

(m)

θ

d

(

ο

)

Figure 4.27: Geometrically Constrained Time-Independent Dynamic

Workspace for Overactuated System. Feasible volume encom-

passing points present at each time sample.

0

0.05

0.1

0.15

0.2

0.25

0.3

0.35

0.4

0.45

0.5

−0.25

−0.2

−0.15

−0.1

−0.05

0

0.05

0.1

0.15

0.2

0.25

0

20

40

60

80

100

120

140

160

180

x

d

(m)

y

d

(m)

θ

d

(

ο

)

Figure 4.28: Portion of Feasible Volume Added by Using Overactua-

tion and Geometric Constraints. The increase in volume is seen

by subtracting the time-independent workspace of the geometrically

constrained fully-actuated system from that of the overactuated sys-

tem.

91

of [.37 −.09 125

◦

]

T

is chosen for the overactuated system, the corresponding ten-

sions much lower than those for the fully-actuated system, as shown in Figure 4.29.

Compared to Figure 4.20, in which tensions range from 20N to 90N, the present

tensions (between 0.4N and 1.7N) are signiﬁcantly improved.

0 0.5 1 1.5 2 2.5 3

0

0.2

0.4

0.6

0.8

1

1.2

1.4

1.6

1.8

2

Tension Values vs. Time

Time (s)

T

e

n

s

i

o

n

(

N

)

T

1

T

2

T

3

T

4

Figure 4.29: Cable Tensions for Overactuated System Motion. The cable

tensions for system motion from [.25 0 90

◦

]

T

to [.37 −.09 125

◦

]

T

are much lower when using null-space control and an overactuated

system.

4.6 Conclusions

In this chapter, various approaches to mapping the dynamic workspace of pla-

nar tensegrity structures were presented. For a given controller, the tracking error

of the system response was solvable analytically, from which the state of the system

could be determined at any time. From this, the input tension values throughout

the motion from an initial conﬁguration to a desired conﬁguration could be found,

92

and those desired states that aﬀorded tensions which remained within a predeﬁned

range were then mapped to the workspace. The time-independent workspace deﬁned

all feasible conﬁgurations a structure could attain under tension constraints. Sim-

ulation results veriﬁed the methods, as chosen points within the workspace yielded

appropriate tensions while the system moved to its desired state and the tracking

error went to zero.

93

Chapter 5

EXPERIMENTATION

5.1 Introduction

This chapter details an experimental system that was developed to verify

some of the theories and techniques discussed in the earlier chapters. The experiment

involved a simple three-degree-of-freedom planar tensegrity structure, much like

that described in chapter 4. Experimental data was collected from several trials

and then compared to expected results from simulations based on the same system

parameters.

5.2 System Description

An experimental system was developed at the University of Delaware’s Me-

chanical Systems Laboratory, consisting of the mechanical and control components

for a three-degree-of-freedom planar tensegrity structure. The chosen structure is

similar to that described in chapter 4, having two rods and four cables. The struc-

ture is constrained in the same way, such that one of the rods is ﬁxed in place

horizontally and the other is free to move unrestricted, reducing the system’s free-

dom by three degrees. A diagram of the system is shown in the previous chapter

in Figure 4.1. Since the horizontal rod is dynamically negligible, it is omitted from

the physical system. Steel is used as the material for the remaining rod in an eﬀort

to increase its mass and better suit it for the large size of the available motors.

Because this is a preliminary attempt at producing a working physical tensegrity

94

system, only three active cables are used, while an extension spring is used to repre-

sent the passive fourth cable. The three active cables are routed around pulleys ﬁxed

in place to mimic the endpoints of the omitted rod. From there, the cables run to

motors attached to the frame which holds a vertically mounted backboard, against

which the structure moves. The motors used are Kollmorgen GOLDLINE XT Series

direct-drive brushless servomotors, ﬁtted with 2048 count-per-revolution encoders.

In addition, four 50-lb-maximum (222.5 N) load cells from Transducer Techniques

are used to measure the tension in each cable at any instant during motion. Initially,

the system was designed with cables made of steel wire. However, when these cables

were wound around the aluminum spools attached to the motors, they picked up

electromagnetic interference when the motors were powered on. This noise traveled

along the cables to the load cells, which consequently experienced an approximately

20 N error in their tension readings. Insulating this cable had no eﬀect, and as

a result, the steel cable was replaced with braided high-strength ﬁshing line that

was non-conductive and ﬁnally isolated the load cells from this interference. Several

photographs of the experimental system are shown in Figure 5.1.

The control module for the experiment consists of a personal computer run-

ning Windows 2000 and a dSPACE PPC DS1103 Controller Board. The control

module serves to provide data acquisition and feedback control for the system. This

is accomplished using the dSPACE ControlDesk software, which acts as a front-

end user interface. The control program is written in MATLAB Simulink code

and downloaded to the dSPACE controller board using the Real-Time Workshop

software.

The control software acquires data input from two sources: the motor en-

coders and the load cell ampliﬁers. The motor encoders report the position of each

motor at each sample time, while the load cell ampliﬁers supply a voltage which is

calibrated to a corresponding tensile force. At the other end, the controller outputs

95

Figure 5.1: Experimental Setup. (A) Backboard with rod, cables, pulleys, load

cells, and motors; (B) routing pulleys; (C) load cells; (D) motor shaft

with cable spool.

a voltage to the motor ampliﬁers, which supply the appropriate current to turn the

motors with the desired torque.

The basic control algorithm works as follows. The rod is given an initial

conﬁguration for which the cable lengths are measured and known. Because the

cables are made from a stiﬀ material assumed to be rigid, rest-length control (section

3.2) is not applicable but also unnecessary. Instead, the load cells are used to provide

more precise tension data that is constantly updated. With unstretchable cables,

96

the (x, y, θ) conﬁguration of the rod can be found simply from the motor positions.

The motor encoder readings are correlated to lengths of cable wound or unwound.

Each sample time, the change in these lengths is computed. This data is formatted

as a vector that is then multiplied by a Jacobian matrix to ﬁnd the corresponding

changes in x, y, and θ. Because the initial (x, y, θ) conﬁguration is known, any

later conﬁguration can be found by adding the subsequent changes in position and

orientation. The actual conﬁguration at each time is compared to the chosen desired

set-point conﬁguration. Then, the error is computed and the feedback-linearizing

controller described in section 3.3 for a fully-actuated system is used to compute

the necessary input tensions at each time. Once these tensions are calculated they

are then compared to the actual tensions currently reported by the load cells. A

secondary PID controller then produces a voltage signal that is provided to the

motor ampliﬁers that will reconcile the two diﬀering tensions and bring the load

cell readings in line with the desired tensions. The motor movements are based

on the tension values and bring the rod to the desired state according to the main

controller.

The experimental parameters are given in Table 5.1. The dynamics for this

system were derived in section 4.4.3 and are included in the control algorithm. The

control law used to determine the input tensions is given by equation 4.6.

Table 5.1: Experimental Parameters.

Mass m 2.43 kg

Rod Length (Solid Portion) 2l

s

.58 m

Rod Length (Between Cable Connections) 2l .60 m

Rod Moment of Inertia about Center I =

1

12

m(2l

s

)

2

.00681 kgm

2

Passive Cable Spring Constant k 173 N/m

Unstretched Length of Passive Cable L

4

0

.25 m

Proportional Gain Matrix K

p

50(I

[3×3]

)

Derivative Gain Matrix K

d

15(I

[3×3]

)

97

5.3 Experiments

5.3.1 Dynamic Workspace

The goal of this experiment was to start the system from an initial conﬁgu-

ration and determine the quality of its response in moving to various set points. In

order to determine feasible choices for the ﬁnal conﬁguration, the time-independent

dynamic workspace for this system was generated, based on the initial conﬁguration

q

0

= [.30 0 90

◦

]

T

. This workspace is shown in Figure 5.2.

0

0.1

0.2

0.3

0.4

0.5

0.6

−0.3

−0.2

−0.1

0

0.1

0.2

0.3

0

20

40

60

80

100

120

140

160

180

x

d

(m)

y

d

(m)

θ

d

(

ο

)

Figure 5.2: Time-Independent Dynamic Workspace for Experimental

System.

98

This workspace represents all conﬁgurations that may be reached while the

tension remains positive in each cable. Unfortunately, due to the presence of the

load cells and connectors on each of the cables, the motion is further restricted.

Because the load cells and connectors may not pass around the routing pulleys,

none of the active cables may become shorter than approximately .15 m. When this

constraint is added, the resulting time-independent workspace appears as in Figure

5.3. Any point within this volume now represents a feasible ﬁnal conﬁguration.

0

0.1

0.2

0.3

0.4

0.5

0.6

−0.3

−0.2

−0.1

0

0.1

0.2

0.3

0

20

40

60

80

100

120

140

160

180

x

d

(m)

y

d

(m)

θ

d

(

ο

)

Figure 5.3: Length-Restricted Time-Independent Dynamic Workspace.

99

5.3.2 Maintaining Fixed Conﬁguration

As a ﬁrst trial, the ability of the system to maintain a ﬁxed conﬁguration

was tested. The system began from the conﬁguration q

0

= [.30 0 90

◦

]

T

and was

asked to hold this position. The expected x, y, and θ values (from simulation) and

the recorded experimental values are compared in Figure 5.4. All three variables

maintain their desired values reasonably well, with y performing best.

Figure 5.4: Position and Orientation Tracking for Fixed Conﬁguration

Experiment.

The corresponding cable tensions are shown below in Figure 5.5. Values from

the simulated perfect system are constant. The experimental values are close to the

simulation values, but as the system moves slightly, the desired tensions vary in an

eﬀort to keep the system at the initial conﬁguration. The load cell values show the

actual tensions track with the desired tensions for the three actuated cables.

5.3.3 Motion to x = .35 m, y = .05 m

Next, a solely translation motion was chosen for the system. The angle θ was

chosen to remain at 90

◦

, while x was to move from .30 m to .35 m and y from 0 m

to .05 m. The experimental system motion is shown in Figure 5.6. As can be seen

in the ﬁgure, the motion tracking approaches the desired values early in the motion,

100

Figure 5.5: Tension Values for Fixed Conﬁguration Experiment.

but after several seconds drifts further away. This problem is a result of friction in

the motors. After approaching the desired conﬁguration, but not reaching it exactly,

the controller continues to try to correct for the error. However, when this error

becomes small, the change in voltage supplied to the motor ampliﬁers becomes small

and the motors have diﬃculty moving from their rest state. Eventually one of the

101

Figure 5.6: Position and Orientation Tracking for x-y Translation Exper-

iment.

motors is able to overcome the friction but then overshoots its mark, causing the

other motors to jerk as well. The jump in y and θ at around 6 seconds illustrates

this phenomenon. The load cells are eventually brought equal to the calculated

tensions which should move the system to the correct position, but due to the

friction, the system is unable to move to the desired position and becomes stuck

at an incorrect equilibrium position. The corresponding calculated desired tensions

and actual tensions read by the load cells are shown in Figure 5.7.

To show a comparison between the early experimental response and that from

simulation, the ﬁrst couple seconds of the plots from Figures 5.6 and 5.7 are shown

again with the expected results from simulation in Figures 5.8 and 5.9. The early

actual response is similar to the simulation results, though signiﬁcant error is still

present.

102

Figure 5.7: Tension Values for x-y Translation Experiment.

103

Figure 5.8: Early Portion of Position and Orientation Tracking for x-y

Translation Experiment. The actual experimental tracking rea-

sonably approximates the expected results from simulation.

Figure 5.9: Early Portion of Tension Values for x-y Translation Experi-

ment.

104

5.3.4 Motion to x = .25 m, y = −.07 m, θ = 100

◦

Lastly, motion consisting of both translation and rotation of the rod was

investigated. The desired conﬁguration was chosen as q

d

= [.25 −.07 100

◦

]

T

. The

system motion for this experiment is shown in Figure 5.10. The system exhibited

a reasonably good response. Initially, all three variables move toward their desired

states. The x variable reaches its mark but then retreats slightly before settling

back to the desired value. The y variable overshoots its mark and is unable to

recover, likely due to gravity eﬀects. As it drops toward the desired −.07 m value

under gravity, it falls quickly to around −.11 m. It then tries to move back upwards

but is only able to reach −.10 m. The angle approaches the desired 100

◦

twice but

eventually settles back to a value of around 93

◦

. It is not unexpected, however, that

the angular motion has this type of error when a slight deviation in the tension of any

of the cables has a dramatic eﬀect on the angle of the rod. This error is compounded

by the fact that a diﬀerential of only 10

◦

between the initial and desired orientations

was speciﬁed. Had the diﬀerential been 20

◦

or 30

◦

, this error would be much less

conspicuous. Unfortunately, due to the mechanical constraints of the system, such

motions are not easily accomplished. Similarly, if it were possible to make larger

movements in either of the x or y directions with, perhaps, a system with larger

dimensions, the errors in these motions would not be as signiﬁcant. Figure 5.11

shows the tension values for this experiment. In this case, the tensions follow the

expected results from simulation reasonably well, especially T

2

and T

4

. The PID

tension controller also works well to bring the actual load cell values to the desired

calculated tensions.

5.4 Conclusions

This chapter described an experimental system developed to test the per-

formance of a three-degree-of-freedom planar tensegrity structure. In general, the

system performed satisfactorily for an initial prototype, but future versions of such a

105

Figure 5.10: Position and Orientation Tracking for Translation-Rotation

Experiment.

Figure 5.11: Tension Values for Translation-Rotation Experiment.

106

device should attempt several improvements. Most importantly, motor friction must

be eliminated. This was apparently the biggest obstacle to achieving a smooth, ac-

curate system response. Smaller, more sensitive motors would be better suited for

this type of application. Furthermore, a system with larger dimensions would allow

for more maneuverability, especially if load cells are again placed on the cables.

Future iterations should also implement the null-space controller of chapter 3. This

overactuation will also allow for a wider range of feasible motions, as the dynamic

workspace is expanded. Overall, however, this preliminary experiment demonstrated

the ability to physically implement a controllable planar tensegrity structure.

107

Chapter 6

CONCLUSION

6.1 Summary of Results and Contributions

The motivation for this thesis was to develop insight into a subclass of tenseg-

rity structures that could be useful in robotic applications such as deployable struc-

tures or robotic arms. Research was limited to planar tensegrity structures, although

the principles involved are easily extendable to spatial structures as well. The goals

of this research were to establish a classiﬁcation and naming scheme to describe the

relevant structures, develop control methods that allow for the governing of system

motion while maintaining positive cable tensions, and formulate generation tech-

niques for the dynamic workspace of such structures, which provide knowledge of

acceptable structural conﬁgurations that will satisfy tension constraints.

Chapter 2 outlined a classiﬁcation and naming strategy for a subgroup of

planar tensegrity structures. Under this scheme, a name can be assigned to any

structure within this subgroup, based on the arrangement of components within the

structure. This name uniquely identiﬁes the structure’s physical make-up, including

quantity and placement of rods and cables. Furthermore, each element is system-

atically numbered to ensure uniformity in referring to individual structural compo-

nents. While similar techniques have been developed previously for the numbering

of structural elements, this scheme oﬀers several advantages. First, it accommo-

dates both Class 1 and Class 2 structures. Additionally, it allows for variation in

the number and placement of cables, rather than assuming a standard, repeating

108

pattern. Finally, it is unambiguous in its enumeration process, allowing for con-

sistent numbering to be maintained regardless of how a structure is constrained or

whether certain cables are absent.

The remainder of chapter 2 detailed a framework for the structural analysis

of planar tensegrity systems. This included modeling of physical parameters such

as rod positions and cable forces, constraint management, and derivation of the

dynamic equations of motion that govern a tensegrity structure. The procedure

for dynamic analysis was outlined for both Class 1 and Class 2 structures and an

example of each was included to demonstrate the strategies.

In chapter 3, the control issues involved with tensegrity systems were ad-

dressed, the most important of which is the need to maintain positive tensions in

the cables. Through the use of redundant active cables, a null-space controller

based on feedback linearization was developed to bring a tensegrity structure from

one conﬁguration to another while preventing the tensions from becoming nega-

tive. Simulations of structures from both tensegrity classes revealed the necessity

for such a controller, as a system that was merely fully-actuated often developed

negative tensions in its attempt to move to the desired conﬁguration. Overactuating

the same systems and using the null-space controller showed the proposed methods

were eﬀective at keeping the tensions from crossing into the negative range, while

the desired conﬁguration was reached.

Chapter 4 discussed the concept of a dynamic workspace for tensegrity struc-

tures and techniques for determining this workspace. Signiﬁcant research has gone

into static workspace determination of a variety of systems, including tensegrity sys-

tems. However, for systems in motion, the conﬁgurations that are maintainable in

a static sense do not necessarily correlate to those that are reachable dynamically.

The work presented in this chapter extended the research of Oh and Agrawal that

developed similar methods for a cable-suspended robot. By analytically solving for

109

the error in the system states based on a given controller, it is possible to predict

future system behavior. From this information, the required tension inputs can be

determined. This incorporates system dynamics rather than simply ﬁnding feasible

static equilibrium conﬁgurations. The dynamic workspace consists of the ranges

of each system variable for which a system obeys imposed tension constraints at

a given time. Because the dynamic workspace is time-dependent, the more mean-

ingful concept of the time-independent dynamic workspace was then introduced.

This workspace consists of the range of conﬁgurations that are reachable without

violating the tension constraints at any time throughout the entire system motion.

To the author’s best knowledge, idea of a dynamic workspace has not previously

been developed for tensegrity robots. Two diﬀerent techniques for the generation

of the dynamic workspace were detailed in this chapter. In the ﬁrst, motion was

limited to one degree of freedom at a time. The feasible range for one variable was

mapped, and a choice for the desired output was made from this range. The system

was moved in this dimension and then the process was repeated for the remaining

degrees of freedom. The second technique combined all system variables into one

map, showing the combinations which resulted in feasible ﬁnal conﬁgurations. An

acceptable choice for the full system conﬁguration could be made directly in this

approach. The various workspace methods were each illustrated in simulation for a

three-degree-of-freedom planar structure with four cables.

In chapter 5, the design and implementation of a controllable three-degree-

of-freedom planar tensegrity structure were described. This fully-actuated system

utilized the feedback-linearizing control of chapter 3 and the dynamic workspace

determination described in chapter 4. While the system response suﬀered signiﬁ-

cantly from motor friction and other disturbances, the controller was able to move

the structure in the general desired manner toward allowable conﬁgurations cho-

sen from the generated dynamic workspace. This preliminary experimental system

110

demonstrated the feasibility of creating a physical implementation of the types of

structures analyzed previously in simulation.

6.2 Recommendations for Future Work

While a considerable amount of work has gone into this project, there remain

a number of issues for future study. For example, the naming scheme of chapter 2

is restricted to a subgroup of planar structures. It may be possible to expand this

idea to a broader group of tensegrity structures, perhaps even spatial structures.

Additionally, a more detailed analysis of the eﬀect of cable placement within a

structure and choice of actuated cables would be greatly beneﬁcial. Especially as

structures become larger and more complex with a greater number of components,

a better understanding of eﬀective placement of active and passive cables within

a structure will become increasingly necessary. Furthermore, for diﬀerent types of

tasks or desired performance characteristics, a given structure may need a diﬀerent

arrangement of actuated cables. Similarly, it would be worthwhile to modify the null-

space controller to incorporate an upper limit on tensions in addition to keeping them

nonnegative. This way, redundant cables may be used to share the responsibility of

governing system motion while preventing excessively high tensions from developing

in any of the cables.

As mentioned previously, set-point control was used primarily because it is

simpler and more straightforward than specifying a full reference trajectory in con-

trolling a system. However, since set-point control was shown to work eﬀectively,

it would be worth investigating how similar tensegrity systems respond to speci-

ﬁed reference trajectories, especially in the eﬀect they have on the required input

tensions. These results could then be compared to those obtained under set-point

control. Unfortunately, it becomes diﬃcult to generate the dynamic workspace us-

ing the approach detailed earlier if set-point control is not used, though it may

still be possible in some form. Regardless, it would be proﬁtable to develop the

111

dynamic workspace for various structures with more than three degrees of freedom.

Presenting the workspace for such a structure in a coherent form is still a challenge,

however.

Finally, as the behavior of these structures becomes better understood, more

consideration to their physical implementation is necessary. Tensegrity systems are

not easily suited to the incorporation of actuators into their structure, as attaching

bulky motors to slender rods dramatically changes the system dynamics. It is possi-

ble in some cases to locate actuators remotely, ﬁxed at the base of the structure, for

example, or attached to a frame (as in the system presented in chapter 5). Although

as structures become more complex, this type of placement becomes increasingly dif-

ﬁcult. Also, if these structures are to be used as robotic manipulators, issues such

as end-eﬀector design must be addressed. It is reasonable to expect that spatial

tensegrity structures similar to the planar types addressed here will be better suited

for actual implementation and use in tasks such as deployment or object manipu-

lation. Therefore, the ideas presented here should be extended to similar spatial

structures in the future to study their performance as well. Overall, however, the

results of this thesis lay a solid foundation for the analysis and control of subclass

of tensegrity structures and their suitability for a variety of robotic applications.

112

BIBLIOGRAPHY

[1] J. B. Aldrich, R. E. Skelton, and K. Kruetz-Delgado. Control synthesis for

a class of light and agile robotic tensegrity structures. In Proceedings of the

American Control Conference, pages 5245–5251, Denver, CO, June 2003.

[2] B. de Jager and R. E. Skelton. Symbolic stiﬀness optimization of planar tenseg-

rity structures. Journal of Intelligent Material Systems and Structures, 15:181–

193, March 2004.

[3] B. de Jager and R. E. Skelton. Input-output selection for planar tensegrity

models. IEEE Transactions on Control Systems Technology, 13(5):778–785,

September 2005.

[4] E. Fest, K. Shea, B. Domer, and I. F. C. Smith. Adjustable tensegrity struc-

tures. Journal of Structural Engineering, 129(4):515–526, April 2003.

[5] R. B. Fuller. Patent information courtesy of Buckminster Fuller Institute. Avail-

able: http://www.bfi.org, 2005.

[6] M. Q. Marshall. Analysis of tensegrity-based parallel platform devices. Master’s

thesis, University of Florida, 2003.

[7] R. Motro. Tensegrity: Structural Systems for the Future. Kogan Page Science,

Sterling, VA, 2003.

[8] S. R. Oh and S. K. Agrawal. Feasible set points with positive tensions for a

cable suspended robot with a lyapunov controller. In Proceedings of the 2004

ASME International Mechanical Engineering Congress & Exposition, Anaheim,

CA, November 2004.

[9] S. R. Oh and S. K. Agrawal. Nonlinear sliding mode control and feasible

workspace analysis for a cable suspended robot with input constraints and

disturbances. In Proceedings of the 2004 American Control Conference, pages

4631–4636, Boston, MA, 2004.

[10] S. R. Oh and S. K. Agrawal. Cable suspended planar robots with redundant

cables: Controllers with positive tensions. IEEE Transactions on Robotics,

21(3):457–464, June 2005.

113

[11] S. R. Oh and S. K. Agrawal. Guaranteed reachable domain and control design

of a cable suspended robot subject to input constraints. In American Control

Conference 2005, Portland, OR, June 2005.

[12] S. R. Oh and S. K. Agrawal. The feasible workspace of a set point controller

for a cable suspended robot with input constraints and disturbances. IEEE

Transactions on Control Systems Technology, 14(4):735–742, July 2006.

[13] S. R. Oh and S. K. Agrawal. Generation of feasible set points and control of a

cable robot. IEEE Transactions on Robotics, 22(3):551–558, June 2006.

[14] C. Paul, H. Lipson, and F. J. Valero-Cuevas. Design and control of tensegrity

robots for locomotion. IEEE Transactions on Robotics (accepted), 2005. Also

available as http://ccsl.mae.cornell.edu/papers/IEEETRO_Paul.pdf.

[15] C. Paul, H. Lipson, and F. J. Valero-Cuevas. Evolutionary form-ﬁnding of

tensegrity structures. In Proceedings of the 2005 Conference on Genetic and

Evolutionary Computation, pages 3–10, Washington, D.C., 2005.

[16] C. Paul, J. W. Roberts, H. Lipson, and F. J. Valero-Cuevas. Gait production in

a tensegrity based robot. In Proceedings of the 12th International Conference

on Advanced Robotics, pages 216–222. Seattle, WA, July 2005.

[17] J. P. Pinaud, M. Masic, and R. E. Skelton. Path planning for the deployment

of tensegrity structures. In SPIE’s 10th Annual International Symposium on

Smart Structures and Materials, San Diego, CA, March 2003.

[18] J. P. Pinaud, S. Solari, and R. E. Skelton. Deployment of a class 2 tensegrity

boom. In A. B. Flatau, editor, Proceedings of SPIE: Smart Structures and

Materials 2004: Smart Structures and Integrated Systems, volume 5390, pages

155–162, July 2004.

[19] A. Pugh. An Introduction to Tensegrity. University of California Press, Berkely,

CA, 1976.

[20] J. Pusey, A. Fattah, S. Agrawal, and E. Messina. Design and workspace anal-

ysis of a 6-6 cable-suspended parallel robot. Mechanism and Machine Theory,

39:761–778, 2004.

[21] R. G. Roberts, T. Graham, and T. Lippitt. On the inverse kinematics, statics,

and fault tolerance of cable-suspended robots. Journal of Robotic Systems,

15(10):581–597, 1998.

[22] R. E. Skelton. http://maeweb.ucsd.edu/

~

skelton/laboratory/

tensegrity_platform.htm.

114

[23] R. E. Skelton. http://maeweb.ucsd.edu/

~

skelton/laboratory/crawler.

htm.

[24] R. E. Skelton, J. P. Pinaud, and D. L. Mingori. Dynamics of the shell class of

tensegrity structures. Journal of the Franklin Institute, 338:255–320, 2001.

[25] R. E. Skelton, D. Williamson, and J. Han. Equilibrium conditions of a class 1

tensegrity structure. Advances in the Astronautical Sciences, Spaceﬂight Me-

chanics, 112:927–950, 2002.

[26] J. E. Slotine and W. Li. Applied Nonlinear Control. Prentice-Hall, Upper

Saddle River, NJ, 1991.

[27] K. Snelson. http://www.kennethsnelson.net.

[28] C. Sultan and R. Skelton. Deployment of tensegrity structures. International

Journal of Solids and Structures, 40:4637–4657, 2003.

[29] J. van de Wijdeven and B. de Jager. Shape change of tensegrity structures:

Design and control. In American Control Conference 2005, pages 2522–2527,

Portland, OR, June 2005.

[30] R. Verhoeven, M. Hiller, and S. Tadokoro. Workspace of tendon-driven stewart

platforms: Basics, classiﬁcation, details on the planar 2-dof class. In Proceedings

of the 4th International Conference on Motion and Vibration Control, volume 3,

pages 871–876, 1998.

[31] R. Verhoeven, M. Hiller, and S. Tadokoro. Workspace, stiﬀness, singularities

and classiﬁcation of tendon-driven stewart platforms. In Proceedings of the

ARK 1998: 6th International Symposium on Advances in Robot Kinematics,

pages 105–114, Strobl, Australia, 1998.

[32] R. L. Williams and P. Gallina. Planar cable-direct-driven robots, part 1: Kine-

matics and statics. In Proceedings of the 2001 ASME Design Technical Confer-

ences 27th Design Automation Conference, Pittsburgh, PA, September 2001.

[33] D. Williamson, R. E. Skelton, and J. Han. Equilibriumconditions of a tensegrity

structure. In Proceedings of the Third World Conference on Structural Control,

Como, Italy, April 2002.

115

- Deployable Tensegrity Structures for Space Applications by Tibert
- Theoretical Biomechanics
- Geometry of Dynamic Structure by Diehl
- Aerial, Terrestrial and Aquatic Microbots by Wood
- Tensegrity Tower Making by Klimke, Stephan
- Symmetric Stick Puzzles
- Tensegrity Structures Why Are They Stable by Connelly
- Tensegrity by Carstens, Kuhl, Gacm 2008
- Art and Ideas Kenneth Snelson
- Workspace Boundaries of a Planar Tensegrity Mechanism by Arsenault
- Tension, Integrity and Form ada 2005 by Bartram
- Locomotion of a Tensegrity Robot via Dynamically Coupled Modules by Rieffel, Stuk, Cuevas Lipson
- The Messeturm in Rostock- A Tensegrity Tower by Schlaich
- What Tensegrities and Caterpillars Can Teach Us About Soft Robotics by Rieffel, Trimmer, Lipson
- Modelling and Control of Tensegrity Structures by Wroldsen
- Multiscale Tunability of solitary wave dynamics in tensegrity metamaterials
- Interactive 3D CAD Generation of Tensegrity Structures by Charalambides, Liapi
- Tensegrity Systems and Foot Bridge Poster by Andrea Micheletti
- Automated Discovery and Optimization of Large Irregular Tensegrity Structures by Rieffel, Cuevas Lipson
- Tensegrity Based Poultry Shed by Vyas
- Tensegrity Prototype Tg3 by Pena
- Correspondence Between 2D Force Networks, Tensegrity Structures
- Infinitesimally Locked Self-Touching Linkages by Connelly
- Us 3866366
- Tensegrity Models by Heller
- Mathematics and Tensegrity by Connelly, Back
- Red Blood Cell Tensegrity 2013 Thesis
- Glass Tensegrity Trusses by Froli, Lani
- Tensegrity Modules For Pedestrian Bridges By Rhode-barbarigos, Hadj Ali, Motro, Smith
- Zero Stiffness Tensegrity Structures by Schenk, Guest, Herder

- DELETE
- NumerNumerical Algorithm for Tensegrity Dynamics
- Optimal Topology and Geometry for Controllable Tensegrity Systems by Jager, Masic, Skelton
- Pinuad Dynamics CRC
- Kent Tensegritree
- Sensor or Actuator Selection by Skelton, Lia 2006
- Han LMI Struct Linear Cdc03
- Dynamics and control of tensegrity systems
- Path Planning for Tensegrity Deployment by Pinauda, Masica, Skelton
- Workshop on Tensegrity Systems Description by Skelton
- Growth-Adapted Tensegrity Structures Longman Skelton 2014
- Weiwei FSN CDC42
- Tensegity Deployment by Masic
- Biological Tensegrity Red Blood Cells
- Tensegrity Systems Short Course Outline by Skelton, De Oliveira
- Optimization of Class 2 Tensegrity Towers by Masic, Skelton
- Prestress Tensegrity Structures by Masic, Skelton 2005
- Intro to Mechanics of Tensegrity Structures
- Active Vibration Control of a Three-stage Tensegrity Structure by Chan, Arbelaez, Bossens, Skelton
- Equilibrium Conditions of a Tensegrity Structure by Williamson, Skelton, Han 2002
- Stiffness of Planar Tensegrity Truss Topologies by Jager, Skelton 2006
- Tensegrity telescope Design
- Deployment of Tensegrity Structures by Sultan, Skelton
- Equilibrium Conditions of Class 1 Tensegrity Structures by Williamson, Skelton, Han
- Equilibrium Conditions Of A Class I Tensegrity Structure
- Tensegrity Structures Optimization by Skelton 2005
- Control Synthesis for a Class of Light Robotic Tensegrity Structures
- Tensegrity Structures Prestressability Sultan, Skelton 2001
- An LMI Optimization Approach To The Design Of Structured Linear Controllers
- Equilibrium conditions of a tensegrity structure

Close Dialog## Are you sure?

This action might not be possible to undo. Are you sure you want to continue?

Loading