online variable recruitment for pneumatic artificial

58
IN DEGREE PROJECT MECHANICAL ENGINEERING, SECOND CYCLE, 30 CREDITS , STOCKHOLM SWEDEN 2020 Online Variable Recruitment for Pneumatic Artificial Muscles with Springs ANTHONY LOCCISANO KTH ROYAL INSTITUTE OF TECHNOLOGY SCHOOL OF INDUSTRIAL ENGINEERING AND MANAGEMENT

Upload: others

Post on 16-Nov-2021

2 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Online Variable Recruitment for Pneumatic Artificial

IN DEGREE PROJECT MECHANICAL ENGINEERING,SECOND CYCLE, 30 CREDITS

, STOCKHOLM SWEDEN 2020

Online Variable Recruitment for Pneumatic Artificial Muscles with Springs

ANTHONY LOCCISANO

KTH ROYAL INSTITUTE OF TECHNOLOGYSCHOOL OF INDUSTRIAL ENGINEERING AND MANAGEMENT

Page 2: Online Variable Recruitment for Pneumatic Artificial

ii

Page 3: Online Variable Recruitment for Pneumatic Artificial

iii

Examensarbete TRITA-ITM-EX 2020:430

Variabel Rekrytering under Drift av Pneumatiska,

Artificiella Muskler med Fjädrar

Anthony Loccisano

Godkänt

2020-07-24

Examinator

Lei Feng

Handledare

Qinglei Ji

Uppdragsgivare

KTH

Kontaktperson

Elena Gutierrez-Farewik

Sammanfattning Pneumatiska artificiella muskler (PAM) har fått uppmärksamhet inom området för mjuk robotik

för deras höga effekt-/viktförhållande, låga tillverkningskostnader, låg vikt och relativt enkla att

implementera. Detta gör dem till bra kandidater för exoskelett. Ett område inom ny forskning

innefattar variabel rekrytering, en process där man successivt aktiverar enskilda PAM i ett

system bestående av flera sådana, för att förbättra den totala systemeffektiviteten. Medan några

simulerings- och kvasistatiska studier existerar, har väldigt lite forskning undersökt

realtidskoppling med ett fysiskt system. I de kvasistatiska studierna har knäckningen av icke-

aktiverade PAM: er varit en konsekvent fråga. I detta projekt är en uppsättning av sex parallella

PAM-serier anslutna seriellt till enskilda fjädrar för att förhindra att icke-aktiverade PAM-skivor

knäcks under sammandragning. Systemet körs genom både en "batch-" och en "orderly-"open-

loop-rekryteringscykel för att bättre förstå övergångseffekter och energiförbrukning. Det visade

sig att batchmetoden använder mer energi och är mer benägen att påverkas av att störningar

under övergångar. Fjädrarna förhindrar dock knäckning på bekostnad av individuell

rekryteringsnivå. Rekommendationer för att implementera omkopplingsstrategierna och hur man

använder fjädrar ges.

Page 4: Online Variable Recruitment for Pneumatic Artificial

iv

Page 5: Online Variable Recruitment for Pneumatic Artificial

v

Master of Science Thesis TRITA-ITM-EX 2020:430

Online Variable Recruitment for Pneumatic Artificial Muscles with Springs

Anthony Loccisano

Approved

2020-07-24

Examiner

Lei Feng

Supervisor

Qinglei Ji

Commissioner

KTH

Contact person

Elena Gutierrez-Farewik

Abstract Pneumatic artificial muscles (PAMs) have gained attention in the realm of soft robotics for their

high power to weight ratio, low manufacturing cost, low weight, and relatively high compliance.

This makes them appear as a great candidate for exoskeletons. An area of recent research involves

variable recruitment, the process of successively activating individual PAMs from a set to improve

overall system efficiency. While a few simulation and quasi-static studies exist, very little research

has investigated real time switching with a physical system. In the quasi-static studies, the buckling

of non-activated PAMs has been a consistent issue. In this thesis, a set of six parallel PAMs are

connected serially to individual springs to prevent non-activated PAMs from buckling during

contraction. The system is run through both a batch and orderly, open loop recruitment cycle to

better understand transition effects and energy consumption. It was found that the batch method

uses more energy and is prone to disturbances during transitions. The serial elastic elements do

prevent buckling at the cost of individual recruitment level movement capability.

Recommendations for implementing the switching strategies and how to use springs are given.

Page 6: Online Variable Recruitment for Pneumatic Artificial

vi

Page 7: Online Variable Recruitment for Pneumatic Artificial

vii

FOREWORD

This project would have been impossible if not for the support of my friends and colleagues.

I would like to express my very great appreciation to Professor Elena Gutierrez-Farewik, the

project champion who believed in me and provided the opportunity to work on something unique

and close to my heart.

I would also like to thank my supervisor, Qinglei Ji for always making time for questions and

others in the mechatronics department, Björn Möller and Staffan Qvarnström, for providing me

with space and equipment to carry out the study. Vicki Derbyshire especially, was invaluable for

her support in managing the administrative hurdles that occurred throughout the year from housing

to residency.

I would like to acknowledge Lasse Hässler, Anton Boström and others from the KTH Prototype

Center for their assistance constructing some of the components and showing me how to use the

prototyping equipment. It was most appreciated. A special shoutout goes to workshop manager,

Tomas Östberg for bearing with my Swedish and machining everything I asked for.

I am grateful to the KTH Solid Mechanics lab manager, Martin Öberg for his patience and

flexibility regarding the work to get the quasi-static test data for the PAMs as well as Magnus at

Hydroscand AB for doing something unconventional.

To my friends and classmates, especially Alejandro Kuratomi, Kayla Kearns, Nils Jörgensen,

Stefan Ionescu, and Gustav Sten, thank you for your endless encouragement, service as sounding

boards and carrying my workstation between rooms multiple times. You all rock.

Anthony Loccisano

Stockholm, July 2020

Page 8: Online Variable Recruitment for Pneumatic Artificial

viii

Page 9: Online Variable Recruitment for Pneumatic Artificial

ix

NOMENCLATURE

Notations

Symbol Description Units

EIn Input Fluid Energy J

EOut Output Mass Potential Energy J

ESpring Spring Potential Energy J

F0 Initial Spring Tension N

FDes Desired Force N

FMax Maximum Motor Unit Force N

FT Total External Force N

g Acceleration due to Gravity m/s2

k Spring Constant N/m

LPo Original PAM Length m

LPC PAM Contraction Length m

LSo Original Spring Length m

M Mass of Load kg

nMU-Act Number of Active Motor Units -

nMU-T Number of Total Motor Units -

Ps System Air Supply Pressure Pa

Qs System Air Supply Flow Rate m3/s

rL Moment Arm of Cable m

rP Pulley Diameter m

R Arm Length m

S Samples per Period -

ts Sample Time s

x Spring Extension/Contraction m

xT Cumulative Spring Extension m

y Floating Plate Translation m

η Efficiency %

θ Arm Angle deg

Page 10: Online Variable Recruitment for Pneumatic Artificial

x

Abbreviations

ADC Analog to Digital Converter

CR Contraction Ratio

DAC Digital to Analog Converter

FAM Fluid Artificial Muscle

HAM Hydraulic Artificial Muscle

ID Inside Diameter

MU Motor Unit

OD Outside Diameter

PAM Pneumatic Artificial Muscle

RL

SD

Recruitment Level

Standard Deviation

SEM Single Equivalent Muscle

SOTA State of the Art

Page 11: Online Variable Recruitment for Pneumatic Artificial

xi

TABLE OF CONTENTS

SAMMANFATTNING (SWEDISH) iii

ABSTRACT iv

FOREWORD vii

NOMENCLATURE ix

TABLE OF CONTENTS xi

1 INTRODUCTION 1

1.1 Background 1

1.2 Frame of Reference 2

1.3 Purpose 4

1.4 Delimitations 4

1.5 Method 5

1.6 Ethical Considerations 5

2 PAM DEVELOPMENT 7

2.1 PAM Research and Manufacture 7

2.2 PAM Testing 8

3 IMPLEMENTATION 11

3.1 Test System and Components 11

3.2 Spring Specification 13

3.3 Switching Logic 15

3.4 Experiment 17

4 RESULTS 19

4.1 Smoothness 19

Page 12: Online Variable Recruitment for Pneumatic Artificial

xii

4.2 Energy and Efficiency 20

4.3 Spring Results and Observations 23

5 DISCUSSION 25

5.1 Smoothness 25

5.2 Energy and Efficiency 25

5.3 Spring System 26

5.4 Limitations 27

6 FINAL THOUGHTS 29

6.1 Conclusions 29

6.2 Recommendations 29

6.3 Future Work 30

7 REFERENCES 33

APPENDIX A: BILL OF MATERIALS 35

APPENDIX B: PAM DEAD BAND 38

APPENDIX C: ELECTRICAL SCHEMATIC 39

APPENDIX D: ARDUINO CODE 40

APPENDIX E: SPRING EQUATIONS 44

APPENDIX F: SIMULINK SWITCHING LOGIC 45

Page 13: Online Variable Recruitment for Pneumatic Artificial

1

1 INTRODUCTION

This chapter describes the background, purpose, and scope for the thesis. A general overview of

the methodology along with ethical considerations are also presented.

1.1 Background

The McKibben muscle was developed by Joseph L. McKibben in the 1950’s. In its most basic

form, this artificial muscle consists of an elastomeric bladder surrounded by a mesh. When a fluid

source pressurizes the bladder, radial expansion is checked by the mesh and results in an overall

axial contraction [1][2]. The single action tension force and radial expansion have a strong surface

similarity to natural skeletal muscle. Figure 1 illustrates the above explanation. Note that for

subsequent illustrations the muscle meshes will be excluded.

Figure 1. PAM inflation and contraction.

These types of artificial muscles have been further characterized and referred to in more detail as

Pneumatic Artificial Muscles (PAMs) for use with air and Hydraulic Artificial Muscles (HAMs)

for liquids. Naturally there also exist more general Fluid Artificial Muscles (FAMs). Their main

benefits are their force to weight ratio, ease of construction, low cost and natural compliance [3][4].

This makes them appealing for human-interaction and rehabilitation devices. Indeed, some more

interesting highlights of their use are in a contracting elastomeric sleeve [5] and posture assisting

vest [6] where PAMs are used as a textile.

There are, however, disadvantages and limitations to using these types of artificial muscles in

general. They require antagonistic pairing for bi-directional actuation and exhibit highly non-linear

behavior [2][7]. They also usually need a reservoir and compressor. Nevertheless, as wearable

robotics becomes more popular, McKibben type actuators are considered a safe and new

alternative [7] and have been used in different exoskeleton designs [8]-[10]. Some examples are

shown in Figure 2.

Elastic Bladder

Braided SleeveEnd Fittings

Atmospheric Pressure

Fully Pressurized

Page 14: Online Variable Recruitment for Pneumatic Artificial

2

Figure 2. PAM use examples, as a posture assisting vest (left) [6] and in an exoskeleton (right) [10].

1.2 Frame of Reference

While there are many research efforts involving McKibben type actuators, this proposal will focus

on an actuation strategy called variable recruitment. In biological muscle, groups of muscle fibers

that are innervated by a single motor neuron are dubbed a motor unit (MU) [11]. The muscle fibers

are composed of myofibrils arranged in parallel, which are then composed of sarcomeres (single

contractile/force units) arranged in series. Force is said to derive from how many total sarcomeres

are acting in parallel, while velocity is said to stem from how many total sarcomeres are acting in

series [11].

Researchers have begun to use the ideas of variable recruitment in their designs. Thinking of a

single PAM as a muscle fiber, and a group of PAMs as a MU, the contraction behavior can be

based on the firing rate (pressure) to the MU and the number of active MUs [12]. Recruitment

patterns usually start with the slowest/weakest, indefatigable fibers (Type I) and lead up to the

fastest/strongest, fatigable fibers (Type II) [11][12].

The main driver for this type of research has been efficiency. A set of smaller muscles, such as in

Figure 3, selectively acting in parallel is said to be more efficient than a single equivalent muscle

(SEM) of equal cross-sectional area in the low pressure, force range [12]. By better matching the

force, or the number and size of the PAMs, to the load, the more efficient the actuation system

becomes as a whole [13].

Figure 3. SEM becoming three PAM MUs, not necessarily to scale.

For example, a small load may only require the use of MU1 and using the SEM would be overkill.

However, if the load were to increase, the system may require a force in the upper range of the

SEM and call for a higher recruitment level (RL), activating all the MUs. Thus, efficiency is tied

to recruiting the appropriate number or types of MUs for the task at hand.

SEM

MU3

MU2

MU1

Single Equivalent Muscle Motor Units

Single Equivalent Muscle Motor Units

MU1

MU3

MU2SEM

Page 15: Online Variable Recruitment for Pneumatic Artificial

3

There are two variable recruitment strategies, called batch and orderly, that have received the most

attention in the literature. In a batch process, each RL commissions a certain number of PAMs that

all operate at the same control pressure. In an orderly process, successive RLs commission

successive PAMs to operate at the control pressure. Previously activated PAMs remain at max

pressure while non-activated PAMs remain at rest [3]. Figure 4 illustrates the two strategies

moving from RL1 to RL2. In practice, this means that a batch system would only require one

pressure control valve and however many on/off switches as there are MUs, whereas an orderly

system would require a pressure control valve for each MU.

Figure 4. Batch vs orderly RL transitions.

The area of research surrounding variable recruitment is relatively small, with only a handful of

studies and a lot of collaboration between authors. An overview is described and concludes with a

summary in Table 1.

Bryant et al. [13] found that by varying MU size and activation, greater efficiencies could be

obtained at lower force operating conditions. Robinson et al. [12] modeled three identical MUs in

parallel and showed in simulation and quasi-static experiments that variable recruitment can

increase efficiency compared to a SEM and that fewer active muscles produce greater force for a

given compressed air mass.

Jenkins et al. [3] simulated batch and orderly and found that the batch method, where all active

MUs utilized the same applied system pressure, had less desirable transition effects.

In the work of Meller et al. [14], a state machine was used to switch between three RLs as one

would change gears in a vehicle transmission. Each RL had a different gain in its PI controller.

The end result was an increased average efficiency of 46% but transitions were not tracked

smoothly. While it was claimed to be an orderly process, because each active PAM received the

same pressure signal, the strategy was a batch process, albeit with gain scheduling.

DeLaHunt et al. [15] highlighted PAM uniformity and found similar efficiency results using

miniature PAMs. And most recently, Chapman et al. [4] has looked at the entire electrohydraulic

system and found that efficiency advantages with variable recruitment exist over SEMs only when

the source motor/pump is restarted. Variable recruitment still had benefits with continuous

operation of the pump regarding bandwidth.

Both FAMs [3][4][14], and PAMs [12][13][15] were used in the studies. Most studies used a quasi-

static approach or tested different recruitment methods by switching offline to validate their model

[12][13][15]. A couple used simulations [3][4], but only one performed dynamic RL switching

online [14]. Many studies cite the buckling of non-recruited FAMs or PAMs as an issue since this

creates a delay in force application once they are brought online or adds resistance to the active

PAMs [12]-[15].

Batch Orderly

End RL1

Mid RL2

End RL2

5

[7] Jenkins, et al, 2016.

Resting

Fully Contracted

Page 16: Online Variable Recruitment for Pneumatic Artificial

4

This represents the current State of the Art (SOTA) for variable recruitment in McKibben type

actuators. This thesis will focus on the gaps of the literature base, explained more in Section 1.3.

Table 1. Variable recruitment literature summary.

A study unrelated to variable recruitment utilized springs to add a passive element to PAMs and

make them more akin to natural muscle [16]. Adding a passive element is hypothesized to

potentially help with the buckling issue previously mentioned. Previous mitigation attempts

include pre-stretching the FAMs or an embedding process [13]. The embedding process resulted

in decreased contraction ability and force output while the pre-stretch is believed to potentially

accelerate actuator fatigue [12]. In any case, alternative methods of mitigation are desired.

1.3 Purpose

The main purpose of this study was to demonstrate and compare the batch and orderly recruitment

paradigms online, as most work thus far has been conducted via simulation or quasi-static

scenarios for the batch process. The batch process used in the only physical system with online

switching lacked adequate trajectory tracking, especially during transitions [14] and it has been

suggested from simulations that orderly switching offers better transition effects [3]. PAMs were

used as the muscle of choice to address the gap dealing with a compressible medium, as both the

physical system [14] and simulation [3] looked at HAMs. Notably, the simulation also specified

that a compressible fluid could exacerbate transition effects [3].

These three design parameters: online switching, a compressible medium, and switching strategy,

were combined with a physical system to highlight areas needed for further research and help

round out the literature base. Springs serving as serial-elastic elements like in Wolfen [16] were

used to address the buckling issue as a secondary investigation and may transfer the burden of pre-

stretch from FAMs to an external component.

The research questions for this thesis are then stated as:

1. How do physical batch and orderly recruitment strategies compare to each other and

simulations reported in the literature in terms of energy efficiency and transition smoothness?

2. How does the inclusion of series elastic elements impact system performance in terms of

buckling, response, and range of motion?

1.4 Delimitations

This research focused on the physical implementation of variable recruitment strategies and their

effects on transition smoothness and energy consumption for PAMs with springs. Therefore, not

everything in the system was optimized and compared.

Study Switching Medium System Switching Method Date

Bryant et al. [13] Offline Pneumatic Physical Batch Jun 2014

Robinson et al. [12] Offline Pneumatic Physical Batch Aug 2015

Meller et al.[14] Online Hydraulic Physical Batch Nov 2016

Jenkins et al. [3] Online Hydraulic Simulation Batch & Orderly Nov 2016

Loccisano Online Pneumatic Physical Batch & Orderly Jun 2020

Page 17: Online Variable Recruitment for Pneumatic Artificial

5

PAM manufacturing was documented and based on available materials, recommendations from

the literature and surface observations but a complete SOTA PAM was not investigated or

developed. The experimental design did not compare different materials or geometries for PAMs.

PAMs were manufactured to the level necessary to complete the study and are assumed identical.

A single PAM bundle was used for controlling the flexion of a single degree of freedom mock

elbow joint under load. Antagonistic pairs or bi-directional motion was not included in this project.

The arrangement of the PAM bundle was held constant. Variations in number of PAMs in parallel

or in series, their diameter, braiding pattern, elasticity, etc. was not included at this time but could

be another area for future work.

Only one set of springs was tested and all springs were assumed to be identical. Open loop control

was used in this thesis due to time constraints. The research questions can still be adequately

answered without closed loop control or a working model of the PAMs.

Other assumptions are presented as they become relevant.

1.5 Method

A case study methodology was chosen as the most appropriate for answering the research

questions because it is the most direct. It can be used to test if simulation results could be replicated

via a physical system and to highlight other factors that would need to be included in a future

model or simulation for better accuracy.

The smoothness results were evaluated qualitatively while energy and efficiency were evaluated

quantitatively. The latter are more directly measurable and widely reported [3][4][12]-[15] while

smoothness can be subjective to the end user. Observations about the springs were documented

throughout the process, as were other general findings.

A single degree of freedom joint was used as the plant, mocking the elbow, thereby making the

PAM bundle akin to the biceps brachii. This follows setups used in the literature [3][14]. Because

this study focused on the performance of a physical system, equipment necessary for batch and

orderly control was procured and installed including test frame, compressed air source and

pneumatic regulation/measurement equipment and all electronic components. The PAMs were

fabricated and tested to ensure sufficient performance for the study. This includes quasi-static

testing and comparison to the literature.

The system was run in an open-loop trajectory that ensured all RLs would be triggered. Three

cycles for both batch and orderly were performed.

1.6 Ethical Considerations

This thesis is based in part on existing simulations from the literature with known results.

Therefore, a bias risk exists and was acknowledged.

In the grand scheme, the use of this technology is geared towards the development a product that

is fully controlled and functional for the end user in their everyday life. Care should be taken to

follow this technology into the public sector and continually monitor it for potential safety and

security pitfalls as these cannot always be fully taken into account, even with clinical testing.

Page 18: Online Variable Recruitment for Pneumatic Artificial

6

Page 19: Online Variable Recruitment for Pneumatic Artificial

7

2 PAM DEVELOPMENT

This chapter covers how the PAMs were made and evaluated for use. PAMs were not optimized

further than necessary to function for the research questions. The properties presented here have

major implications for system performance.

2.1 PAM Research and Manufacture

First, a small summary of PAM fabrication materials and methods was collated from the literature

[6][12][13][15][17]-[25].

Operating pressure, bladder and braid material, outside diameter (OD), inside diameter (ID),

thickness and length, and braid angle were recorded if available. In general, bladder materials were

found to be silicone or natural rubber/latex and braid materials were Kevlar, Nylon or PET. It

seemed that wall thickness affects dead band pressure while shore hardness (A) affects contraction

ratio (CR) [12][24]. Therefore, a large OD-wall thickness ratio and soft bladder material was

prioritized while searching through local materials. Available onsite air pressure was 6 bar and in

agreement with typical pressures used in the above studies.

In the end, a latex bladder of OD/ID 14/10 mm and a 15-30 mm diameter PET expandable braided

cable sleeve were chosen. Part numbers can be found in Appendix A and can be seen in Figure 5.

A braid with a smaller initial ID than bladder OD would eliminate delay between bladder inflation

and contraction. Here the 1 mm difference is acceptable. The braid frays easily when cut so to

prevent unraveling, the ends were melted with a soldering iron. The PAMs had an average length

of 527.5 mm which was chosen based on the CR and explained further in Section 3.2. Initial braid

angle, the angle the braid forms with the longitudinal axis, was ~22.75º averaged from several

measurements with a goniometer.

Figure 5. PAM materials including latex bladder and PET braided cable sleeve.

This size of PAM was also chosen due to availability of standard fittings, making use of 10mm-

3/8” barbed hose connectors. Originally hose clamps and super glue were used to secure the fittings

but proved to create asymmetries during inflation and could not withstand the high forces

generated. The asymmetry can be seen in Figure 6. Eventually, the barb fittings were secured by

crimping them. This was done by Hydroscand AB, using their equipment for making hydraulic

hose. They cautioned that latex rubber is not a normal candidate for this process as the material

for hydraulic hose is harder and has a metal coil inside that interacts with the crimped fitting better.

Nevertheless, the resulting PAMs were more robust than those using hose clamps and super glue.

Page 20: Online Variable Recruitment for Pneumatic Artificial

8

Figure 6. Hose clamp asymmetries during inflation (left) and crimp vs hose clamp fastening for PAMs (right).

2.2 PAM Testing

Quasi-static testing was performed on the PAMs, as well as tests to determine the blocked force

and free strain, as these parameters are common for initial characterization. The blocked force is

the maximum amount of force a PAM can exert at a given pressure and occurs when the PAM is

not allowed to contract. The free strain is the maximum contraction a PAM experiences with no

load under a certain pressure [4][13][25].

Quasi-static testing is used to generate a force-strain curve for PAMs at a specified pressure and

measures the force produced at different levels of strain. To obtain this curve, a set of two PAMs

was tested using an MTS axial-torque load cell, model 662.024-01 with a 22.5T capacity at the

KTH Solid Mechanics Lab. The load cell was oversized but had the largest available stroke

capability at 130 mm. A set of two PAMs was used because each motor unit would consist of a

pair of PAMs, explained later in Section 3.1. The set up can be seen below in Figure 7.

Figure 7. PAM testing set up, resting (left) and pressurized (right).

Hose clamp

& super glue

Hydraulic hose

crimp

Page 21: Online Variable Recruitment for Pneumatic Artificial

9

The quasi-static testing was performed at 1, 2, & 3 bar to start as the capabilities of the PAMs were

unknown. Each pressure was tested a total of three times in a randomized order. Then three tests

at 4 bar were performed. The quasi-static data was obtained by setting the PAM in a blocked force

condition and pressurizing. The machine then allowed the PAMs to contract at a rate of 1 mm/s

until they reached a reading of 0 N, which is its free strain position. After this, the machine returned

to the original position at the same speed. The sample rate for the load was 20 Hz and the results

are shown in Figure 8. The strain is calculated from the average PAM length of 527.5 mm.

Figure 8. Force-Strain curve for PAM pairs at given pressures. The “Actual (mm)” label represents physical PAM

contraction from testing. Blocked force and free strain information can be observed from this plot as well.

Blocked force was then recorded for pressures at 0.5 bar increments. At 5 bar, a PAM popped but

the initial force was recorded at around 1300 N or roughly 66 kg per PAM. Therefore, 60 kg was

used as the max tensile load for these PAMs. The blocked force can be seen in Figure 9.

Figure 9. PAM pair blocked force. A single PAM at 3 bar can produce a maximum of just under 400 N.

0

200

400

600

800

1000

1200

1400

0 1 2 3 4 5 6

Forc

e (

N)

Pressure (Bar)

PAM Pair Blocked Force

0 0.03 0.06 0.09 0.12 0.15 0.18 0.21 0.24 0.27 0.3

0

200

400

600

800

1000

1200

0 20 40 60 80 100 120 140 160

Strain

Forc

e (

N)

Actual (mm)

PAM Pair Max Force at Contraction

4 Bar

3 Bar

2 Bar

1 Bar

Page 22: Online Variable Recruitment for Pneumatic Artificial

10

The free strain was measured on a separate test bench by recording PAM length as pressure was

increased by increments of 0.1 bar. In this case, PAMs did not share a terminal and were measured

individually, shown as PAM E and PAM W in Figure 10. The curve is sigmoidal with an inflection

occurring around 1.58 bar. No dead band was observed in this process and more details about dead

band can be found in Appendix B.

Figure 10. Free strain for two individual PAMs (East & West designation). The test could be performed to 6 bar

because PAMs were not loaded.

As seen in the literature, blocked force is linear and there is a hysteresis in the force-strain curve,

with higher forces being recorded for an eccentric contraction. The hysteresis is typical of PAM

behavior and is thought to come from bladder elasticity and friction [12][26]. The curves also are

more non-linear towards the beginning of the contraction, which is similar to results seen in the

literature [12][13]. The plots confirm that the PAMs manufactured behave in accordance with the

literature and are suitable for use to answer the research questions.

0

20

40

60

80

100

120

140

160

180

0 1 2 3 4 5 6

Contr

action (

mm

)

Pressure (Bar)

Free Strain

PAM E

PAM W

Page 23: Online Variable Recruitment for Pneumatic Artificial

11

3 IMPLEMENTATION

This chapter reviews the test system for the experiment and how the variable recruitment strategies

were implemented.

3.1 Test System and Components

The test rig is set up similar to Meller et al. [14]. An anchor plate was drilled to hold both the

incoming pneumatic fittings on one side and the hydraulic fittings of the PAMs on the other, seen

in Figure 11. There are six PAMs for a total of three MUs, with each pair symmetrically arranged

around a circle and connected to one proportional valve each. As explained previously in Section

1.2, having a proportional valve for each MU allows a true orderly process to be conducted [3].

Each MU is assumed to be identical and represents one RL, giving a total of three RL’s.

Figure 11. Anchor plate showing connection of PAM hydraulic fittings. MU1 is highlighted in purple, MU2 in green

and MU3 in orange. These also represent the RLs.

The other side of each PAM was fitted with an adapter that sealed the PAM and connected it to a

spring. All the springs terminated on a single floating plate, hence dubbed the “plate”, which then

connected to the arm via wire rope and pulley. These items are highlighted in Figure 12.

Figure 12. Specific component views. From left to right: arm and load, floating plate, PAM adapters.

3

2 3

1

2

1

Page 24: Online Variable Recruitment for Pneumatic Artificial

12

Figures 13 and 14 show the system as whole. Only three PAMs and springs are shown in Figure

13 but each represents a pair. The pairs and the symmetrical arrangement are assumed to eliminate

moments on the plate.

Figure 13. Overall test set up diagram.

Figure 14. Overall test set up. Pneumatic equipment not shown. The system is in the end of RL2.

A Kubler KIH40 incremental encoder was used to track angular position and could also be used

for velocity. The angular position would be the ultimate variable under closed loop control in a

feedback system, if implemented. Since this study only used open loop control, recording the

actual angle in real time did not matter as long as the initial position was known; the change in

angular position was all that was needed. The initial angle was measured at the start of each test

cycle and added to the recorded angle, which always started measuring from 0º.

1

kg

Arduino

PC

Regulated

Air Supply

Load Cell

EncoderProportional

Valves

Pressure SensorFlow

Meter

Angle, ϴ

PAM’s Springs

Page 25: Online Variable Recruitment for Pneumatic Artificial

13

A Tedea Huntleigh 500kg S-Type load cell was used to record the tension in the wire cable. A

HX711 breakout board by Sparkfun was used to filter and amplify the load cell signals. The load

cell could be used in future work to trigger RL switches. Here it served as a reference and was also

used in validating the energy output.

Pneumatic components were obtained from Festo, including three 6 bar VEAB proportional

valves, a 100 L/min SFAH flow meter and a 6 bar SPTW pressure sensor. All devices run on a 24

V power supply and output 0-10 V signals; in addition to regulating pressure, the proportional

valves also send back the actual pressure values. These signals were passed through a voltage

divider to a 16-bit ADS1115 Analog-Digital Converter (ADC) breakout board.

Two of these ADCs were used to handle five incoming sensor signals, as each ADC had only four

channels. The proportional valves’ pressure signals were all handled by one ADC while the

pressure and flow readings were handled by the other.

The flow meter and pressure sensor were used to calculate energy input, explained later in Section

3.4. The proportional valves regulated the pressure in the PAMs in proportion to the voltage

received. The setpoint range varied from 0-10 V and was achieved by amplifying a 0-5 V signal

sent from a 12 bit MCP4725 Digital-Analog Converter (DAC) breakout board from Adafruit via

an LM358 operational amplifier with a gain of 2.

Three DACs were required to handle the proportional valves' pressure setpoints established in

Simulink. As there are only two addresses possible on each DAC, a TCA9548 multiplexer

breakout board from Adafruit was used to manage I2C communications between these boards and

the Arduino Mega 2560 microcontroller. Each DAC used the same address and signals were routed

via switching in the multiplexer. A full wiring diagram can be found in Appendix C and more

details on the components can be found in Appendix A.

All readings were sent via serial communication to Simulink for logging with a sample time of 20

ms. Simulink also generated the input signal for batch or orderly switching and is explained more

in Section 3.3. The setpoints for the proportional valves were then sent from Simulink back to the

Arduino via serial. The Arduino code used can be found in Appendix D. Simulink can also handle

future controllers for benchtop applications.

3.2 Spring Specification

In this setup, the individual PAMs and springs are each assumed to be identical and the PAMs are

assumed to be stiff, that is they do not stretch under load. For PAM-Spring muscle units, Wolfen

used an optimization method for obtaining the spring constant generally based on the PAMs

contraction gradient at its most nonlinear point, assuming no boundary conditions [16]. In this

case, the boundary conditions were used to specify the springs.

The first two conditions considered were the initial resting state, i, and a contracted state in RL3

for an orderly system. The following equations represent these two states in a static condition,

𝑅 cos 𝜃𝑖 𝑀𝑔

𝑟𝐿= 6𝑘𝑥𝑖 (1)

𝑅 cos 𝜃 𝑀𝑔

𝑟𝐿= 4𝑘(𝑥𝑖 − 𝑦 + 𝐿𝑃𝐶) + 2𝑘 (𝑥𝑖 − 𝑦 +

𝐿𝑃𝐶

3) (2)

Page 26: Online Variable Recruitment for Pneumatic Artificial

14

where R is the arm length, rL is the moment arm of the wire cable (which takes into account the

thickness of the cable) M is load mass, g is acceleration due to gravity, k is the spring constant, xi

is the initial stretch of the springs, y is the movement of the plate and LPC is the contraction of the

PAM, which is assumed to result in a spring extension of equal magnitude. Figure 15 gives an

illustration of the variables, where 𝐿𝑃𝑜, 𝐿𝑃,𝑅𝐿1, and 𝐿𝑆𝑜

are the nominal PAM pair length, contracted

PAM pair length of RL1, and nominal spring length respectively.

Figure 15. Coefficient definitions. The top system represents the initial state while the bottom system represents the

end of RL1 / beginning of RL2.

The numerical coefficients in Equations (1) & (2) represent the number of PAMs in the conditions.

For the initial state in Equation (1) all six PAMs are at rest with their springs extended by the load.

The state represented by Equation (2) was intentionally limited to a third of the PAM pair’s

contraction to build a buffer. In the event the load was increased the remaining two-thirds could

be used, but the final target load was originally set to require only a third of orderly RL3’s capacity.

The orderly paradigm was chosen because it more clearly highlights the contraction and force

range for a single MU at the highest loading condition.

By solving both Equations (1) and (2) for k and then setting them equal, the contraction of the

PAM, LPC, and thus the final extension of the spring, could be solved for. Plugging these values

back into either equation would yield the spring constant. This process was iterated in MATLAB

through a given set of parameters including mass, initial angle, desired plate movement and desired

initial spring stretch.

The initial stretch in the springs was set to be 10 mm larger than the desired overall movement of

the plate to ensure that there would always be some extension in the springs to keep inactive PAMs

in tension and prevent them from buckling. The exact value of 10 mm was arbitrary but could be

optimized to prevent a certain amount of catenary. The plate movement was based on the angle of

the arm and assumed no slip in the pulley or stretch in the wire cable. The relation is shown in

Equation (3) where rP is the pulley radius.

𝜃 = 𝜃𝑖 −𝑦

𝑟𝑃

180

𝜋 (3)

PAM contractions from the set generated in MATLAB were screened to ensure they were within

the physical limitations identified in the quasi-static testing. The PAMs can only provide so much

force at certain contractions. Of the remaining parameter combinations, the final set was selected

to maximize the initial angle, initial spring stretch and overall plate motion for the widest range of

masses.

LPo LSo xi

LP,RL1 LPC LSo x y

FT

FT

Page 27: Online Variable Recruitment for Pneumatic Artificial

15

From this final set, the available spring constants were between 0.56-1.35 N/mm. Available

springs were then screened based on maximum allowable extension and resting length. These

boundaries are set by the worst-case scenarios for each constraint. For spring extension this is the

end of RL1, when one MU has fully contracted and the remaining MUs are at rest. The worst case

for buckling is the end of RL2, where two MUs have fully contracted and the remaining one is at

rest with the plate having moved the majority of its path. The nominal length of the spring had to

be short enough to ensure it would still be in extension in this case.

Ultimately, the springs chosen had a nominal spring constant of 0.75 N/mm and initial tension of

33 N. The springs were tested upon delivery and found to have an average spring constant of 0.76

N/mm with a standard deviation (SD) of 0.03 N/mm and were assumed identical.

In this study, the PAMs were assumed to be stiff. Their measured spring constant in the initial load

state was around 11.5-15.5 N/mm but was highly variable and later changed depending on the

pressure. As this is at least an order of magnitude above the spring constant used for the springs,

the assumption was deemed acceptable.

Interestingly, overall plate motion, y, is not directly dependent on the spring constant. Instead, it

is only influenced by the initial stretch of the springs. Plate motion is given by Equation (4) and

the full derivation can be found in Appendix E.

𝑦 =𝑛𝑀𝑈𝐴𝑐𝑡

𝑛𝑀𝑈𝑇

(𝐿𝑃𝑜)(𝐶𝑅) (4)

In this system, plate motion is based on the CR, original length of the PAM and the ratio of active

MUs to total MUs, 𝑛𝑀𝑈𝐴𝑐𝑡 and 𝑛𝑀𝑈𝑇

, respectively. The spring constant and load force affect the

boundary conditions. This makes sense looking at Equation (1), which can be rearranged to solve

for the initial stretch, leading to initial position. If a constant force is assumed, say with a cammed

pulley, having all the PAMs contract will cause the plate to move but the springs will still have the

same stretch they did at the start. The whole system will simply have shifted. However, if the load

force is not constant, the boundary conditions change and the plate motion will be affected.

Equation (4) was used to size the PAM length such that a sufficient plate motion could be obtained.

This phenomenon not only has physical set up ramifications but dictates the overall amount of

plate movement possible before buckling will occur. Assuming identical springs and a constant

load force, FT, the cumulative total initial stretch of all the springs, xT, in the system must be greater

than the product of PAM contraction and the total number of MUs. Otherwise buckling will occur.

This design constraint is given by Equation (5).

𝐹𝑇

𝑘= 𝑥𝑇 ≥ 𝑛𝑀𝑈𝑇

(𝐿𝑃𝑜)(𝐶𝑅) (5)

3.3 Switching Logic

The following formulae for determination of RL and setpoints were adapted from [3] and are

shown below in Equations (6)-(8). Because the system utilized an open loop configuration and no

feedback, the forces were artificially constructed and are symbolic. It should also be noted that this

study assumed a linear relationship between PAM pressure and force for convenience. Because

only transition effects were under study, an accurate pressure-force model was not necessary but

could be a source for better tracking ability.

Page 28: Online Variable Recruitment for Pneumatic Artificial

16

𝑅𝐿 = 𝑐𝑒𝑖𝑙𝑖𝑛𝑔 (𝐹𝐷𝑒𝑠

𝐹𝑀𝑎𝑥) (6)

𝐵𝑎𝑡𝑐ℎ 𝑆𝑒𝑡𝑝𝑜𝑖𝑛𝑡 =𝐹𝐷𝑒𝑠

𝑅𝐿 (7)

𝑂𝑟𝑑𝑒𝑟𝑙𝑦 𝑆𝑒𝑡𝑝𝑜𝑖𝑛𝑡 = {

𝐹𝑀𝑎𝑥

𝑟𝑒𝑚𝑎𝑖𝑛𝑑𝑒𝑟 (𝐹𝐷𝑒𝑠

𝐹𝑀𝑎𝑥)

0

< 𝑅𝐿𝐴𝑐𝑡

𝑅𝐿𝐴𝑐𝑡 (𝐹𝐷𝑒𝑠

𝐹𝑀𝑎𝑥)

> 𝑅𝐿𝐴𝑐𝑡

(8)

FMax represents the maximum force a MU can produce and in this study is represented by the PAM

pressure of 3 bar, or in Simulink its corresponding bit value. FDes normally represents the force a

controller would call for, a desired force. For the open loop configuration it was simply the

setpoint, which was a sine wave scaled to ensure all three RLs would be activated and is further

described in Section 3.4. For the orderly setpoint, previously activated MUs from lower RLs are

left on full power while non-activated MUs are set to 0. Appendix F shows the Simulink block

diagrams for the switching. The resulting control signals are shown in Figure 16.

Figure 16. Setpoint trajectory for batch (top) and orderly (bottom). Graphs are scaled to pressure but the actual

setpoints from Simulink were bit values.

0

0.5

1

1.5

2

2.5

3

3.5

0 100 200 300

Pre

ssure

(bar)

Time (s)

Orderly Control Signal

MU1

MU2

MU3

-0.5

0

0.5

1

1.5

2

2.5

3

3.5

0 100 200 300

Pre

ssure

(bar)

Time (s)

Batch Control Signal

MU1

MU2

MU3

Page 29: Online Variable Recruitment for Pneumatic Artificial

17

3.4 Experiment

The main experiment will move a load of 12 kg through one lift-release cycle. A discrete sine

wave was generated in Simulink to serve as the input signal with an amplitude of 1. The sine wave

was then multiplied by a little under three times the theoretical pressure required for FMax of a

SEM, in this case 9 bar. In this way, the system would call from 0 to roughly three times a single

MU’s capacity and go back down to 0. All three RLs would be triggered and required to activate.

The reference signal was time based and used a frequency of 0.0104666 Hz and sample time, ts,

of 500 ms. This gives 1200 samples per period, S, and a half cycle 0 to π, of 300 s. The test cycle

is intentionally slow to highlight transition effects as momentum from faster motions could mask

the transitions [3]. This would also help the actual pressure to closely follow the control signal.

As the PAMs contracted and the mass moved, the angle change was recorded by the encoder. The

force in the wire cable was measured by the load cell and used to validate the expected force. The

change of height of the mass would be used as the output energy, EOut, and system air flow, QS,

and pressure, PS, would be used for the input energy, EIn. While spring energy, ESpring, was included

in the overall efficiency, η, it does not perform useful work. This follows the virtual work model

used in the literature [3][12][14]. Data was recorded in Simulink simulation time, which was

slower than real time. The energies were thus calculated by,

𝐸𝐼𝑛 = ∑ 𝑃𝑆(𝑖)𝑄𝑆(𝑖)

𝑆 2⁄

𝑖=𝑡

𝑡𝑠 (9)

𝐸𝑂𝑢𝑡 = ∫ 𝑅𝑀𝑔 cos 𝜃

𝜃𝑓

𝜃𝑖

𝑑𝜃 (10)

𝜂 =𝐸𝑂𝑢𝑡

𝐸𝐼𝑛∗ 100% (11)

For Equation (10), EOut was calculated per lifting cycle for the positive work range, corresponding

to the initial and final angle, θi and θf, of the lifts, respectively. Otherwise, as the mass returned to

its original position the energy would be 0 J. The exact energy change of the springs is not directly

measurable during the experiment and omitted for energy efficiency.

Page 30: Online Variable Recruitment for Pneumatic Artificial

18

Page 31: Online Variable Recruitment for Pneumatic Artificial

19

4 RESULTS

Results are presented here. Analysis takes place in Chapter 5. Some observations are also

documented in this chapter. All graphs and data utilize Simulink simulation time and not actual

time.

4.1 Smoothness

As the load moves through one cycle, its trajectory is presented in Figure 17 as a measure of angle

change. The cycle starts in RL1 and the first two “Switches” represent an upshift in RL- to RL2

and then to RL3. The last two “Switches” are the reverse, moving from RL3 → RL2 → RL1. The

load starts in a position hanging below the horizontal of 0º. A sample of the cycle trial results are

shown in Figure 18.

Figure 17. Angle change for batch and orderly lifting cycle 3.

Figure 18. Angle change for batch and orderly cycles.

-50

-40

-30

-20

-10

0

10

600 650 700 750 800 850 900

Angle

(deg)

Time (s)

Angle Smoothness

Orderly

Batch

Switches

-50

-40

-30

-20

-10

0

10

0 200 400 600 800

Angle

(deg)

Time (s)

Orderly & Batch Cycles

Orderly

Batch

Page 32: Online Variable Recruitment for Pneumatic Artificial

20

Smoothness can also be seen when comparing the control signal to the actual pressure for each

switching method and RL, as shown in Figure 19.

Figure 19. Control pressure vs actual pressure for batch and orderly.

4.2 Energy and Efficiency

Energy is calculated from Equations (9) & (10) using measured values. Input energy fluctuations

are shown throughout the main cycle in Figure 20. It closely follows the air supply flow rate. Both

the input and output energy are each summed cumulatively from start to finish for the main cycle

and shown in Figure 21. Switches are the same as described in Section 4.1. Note the order of

magnitude for the y-axis of each graph.

0

0.5

1

1.5

2

2.5

3

3.5

0 50 100 150 200 250 300

Pre

ssure

(bar)

Time (s)

Orderly Control Signal vs Actual Pressure

MU1

MU2

MU3

Actual MU1

Actual MU2

Actual MU3

-0.5

0

0.5

1

1.5

2

2.5

3

3.5

0 50 100 150 200 250 300

Pre

ssure

(bar)

Time (s)

Batch Control Signal vs Actual Pressure

MU1

MU2

MU3

Actual MU1

Actual MU2

Actual MU3

Page 33: Online Variable Recruitment for Pneumatic Artificial

21

Figure 20. Input fluid energy for batch and orderly lifting cycle 3.

Figure 21. Energy plots for batch and orderly lifting cycle 3. Cumulative fluid energy input (top) and cumulative

gravitational potential output energy of the load (bottom).

Total input energy for lifting cycle 3 and average total efficiency for all lifting cycles are shown

in Figures 22 & 23 respectively. Error bars represent one SD. Figure 22 highlights the impact of

transition events.

0

20

40

60

80

100

120

140

600 650 700 750 800 850 900

Energ

y (J

)

Time (s)

Input Energy

Orderly

Batch

Switches

0

500

1000

1500

2000

2500

600 650 700 750 800 850 900

Energ

y (J

)

Time (s)

Cumulative Input Energy

Orderly

Batch

Switches

0

5

10

15

20

25

30

600 650 700 750 800 850 900

Energ

y (J

)

Time (s)

Cumulative Output Energy

Orderly

Batch

Switches

Page 34: Online Variable Recruitment for Pneumatic Artificial

22

Figure 22. Total input fluid energy for batch and orderly lifting cycle 3 demonstrating proportion of transitions.

Figure 23. Average efficiency for all batch and orderly lifting cycles.

The transitions are further highlighted in Table 2, which breaks down the timing for both batch

and orderly. Time denotes a duration for each RL and not the time stamp. Transitions are only

applicable for the batch process and are defined as the point active MUs began working in parallel

after a switch. In other words, the time it took for the previously active MU(s) to deflate and match

the pressure of the inflating MU.

0

500

1000

1500

2000

2500

Orderly Batch

Energ

y (J

)

Total Input Energy

Transitions

0%

2%

4%

6%

8%

10%

12%

14%

Orderly Batch

Average Total Efficiency

Page 35: Online Variable Recruitment for Pneumatic Artificial

23

Table 2. RL times for batch and orderly.

4.3 Spring Results and Observations

Plate displacement and load change as shown in Table 3 are derived from the change in angle and

load cell readings during individual RLs from the main experiment. The load change refers to the

increase in force measured.

Table 3. Load and plate movement changes by RL for batch and orderly. SD’s are in parentheses.

Springs did keep PAMs engaged throughout the entire motion. In previous tests where PAMs were

inflated at full throttle, oscillations were observed in both the lifting and lowering of the load. It

was also noted that previously activated MUs in the orderly scheme contracted when approaching

the end of the subsequent RL.

Recruitment Time (s)

Level Orderly Batch

1 (Lift) 33.00 33.00

Transition 3.67

2 (Lift) 37.33 33.67

Transition 2.67

3 (Lift) 79.83 77.17

3 (Lower) 80.83 80.83

Transition 4.33

2 (Lower) 37.17 32.83

Transition 3.17

1 (Lower) 32.17 29.00

TOTAL 300.33 300.33

Transitions 13.83

S.D. 0.29 0.29

Recruitment Plate Displacement (mm) Load Change (N)

Level Orderly Batch Orderly Batch

1 8.09 (0.02) 8.04 (0.02) 87.53 (0.48) 87.53 (0.64)

Transition -1.85 (0.19) -18.91 (0.56)

2 10.86 (0.10) 12.73 (0.13) 83.61 (0.61) 102.73 (0.38)

Transition -1.60 (0.65) -10.16 (0.81)

3 19.75 (0.18) 20.78 (0.68) 63.51 (0.73) 75.20 (1.17)

TOTAL 38.69 38.09 234.65 236.39

Transitions -3.45 -29.07

Page 36: Online Variable Recruitment for Pneumatic Artificial

24

Page 37: Online Variable Recruitment for Pneumatic Artificial

25

5 DISCUSSION

A discussion of the results and some recommendations are presented in this chapter, along with

limitations for the thesis.

5.1 Smoothness

Looking at the angle data from Figure 17 a few things are apparent. The first is that both the batch

and orderly paths are identical for RL1, which is to be expected since they both use only MU1.

The shape for this contraction resembles the free strain “S” shape showed previously in Figure 10.

The next thing to note is that this “S” shape is consistent for each RL for the orderly process, most

likely due to each RL having only one active MU. On the other hand, the batch path has 2 or 3

MUs contracting and the “S” shape is less pronounced or even eliminated altogether. This is

important for the batch strategy because it indicates that an overall smoother trajectory can occur

given better transitions.

Indeed, the most obvious observation is that for the batch switching, the transitions are

accompanied by sharp jerks and disruptions to the overall motion. The cycle was originally set to

be slow to highlight these transition effects and the transitions occur much faster than the

contractions. From Table 2 the transition times were an order of magnitude smaller than the

contraction times. It may be possible to better tune the switching points so that they are not

targeting a theoretical equivalent pressure.

Both batch and orderly were smoother than physical online transitions in [14] and this is most

likely due to the addition of the springs. As in the simulations performed in [3], batch does have

propensity to drop or jerk during transitions and while a complete delay does not exist during

transitions for orderly, the contraction rate does decrease. In this experiment, no dead band was

observed. The angular position shown in Figure 17 always increased during the lifting cycle and

while the rate of increase did vary it was never zero, indicating that no dead band was present. The

ramp rate was too slow for the inertia to mask the transition. If dead band is a concern, perhaps

having all non-active PAMs at a low standby pressure of 0.5 bar could alleviate delays.

Looking at Figure 19, it becomes apparent that the batch method could not obtain the desired

pressures quickly enough, especially during the lowering half of the cycle for both deflation and

inflation. The batch method requires better understanding of PAM dynamics and their inclusion in

the control scheme for smooth transitions.

Overall, batch had less desirable transition effects as expected from the simulation results in the

literature [3]. The effects were consistent across multiple trials as evidenced by Figure 18.

5.2 Energy and Efficiency

The cumulative energy output shown in Figure 21 matches the shape of the angle in Figure 17

because the energy is directly related to the height of the load.

Looking at the cumulative energy input from Figure 21, a key difference is the increase in energy

consumption for batch at transitions vs a drop-off for orderly. Less energy is used for orderly when

commissioning a new MU, as flow increases towards the middle of PAM inflation. Inflating more

Page 38: Online Variable Recruitment for Pneumatic Artificial

26

PAMs uses more air and therefore more energy than keeping other PAMs charged and inflating a

single new set. Even discounting the transitions, the batch process still required more energy for

the same motion.

The transition energies are highlighted in Figures 20 and 22 with the large spikes for the batch

process, further exacerbated because the system was bringing on the new MU as quickly as

possible. This effect was so great that the transitions for batch alone almost matched the entirety

of the orderly process. The energy consumption profile then goes on to match orderly later through

the contraction.

The next metric to consider is efficiency. Both batch and orderly are relatively inefficient overall.

PAMs themselves tend to be inefficient as they use air, which has a low bulk modulus, and a lot

of the energy is used in overcoming bladder elasticity [12][26]. Robinson et al. achieved

efficiencies of between 15-35% and similar results were obtained here, if considering that the

spring energy was not included in Equations (10) & (11); its inclusion would only increase the

efficiency.

A major factor for efficiency is that batch requires air and energy input even on the relaxation of

the muscle. Going from RL3 to RL2 still requires inflation or active work, whereas for orderly it

is strictly a deflation process. Most studies have not looked at the energy for lowering the load,

only studying the positive work from contraction [12][14]. This leads to an underestimation of

overall energy requirements for a system if the batch process will need air for both contraction and

relaxation.

In the simulations performed by Jenkins et al., the differences between batch and orderly efficiency

were “nearly imperceptible” but the authors cautioned a compressible working fluid may highlight

differences [3] and this has proven true. Robinson et al. notes that simulations predict efficiency

increases with a decrease in number of active MUs, which helps explain why the batch process

resulted in more energy loss [12].

The difference in efficiency becomes more obvious in Figure 23, which only accounted for the

lifting portion of the cycles. While a statistical analysis was not performed, it is readily apparent

that orderly is more efficient. However, it should be noted that efficiency differences may diminish

if cycle speed were increased.

5.3 Spring System

In general, a system using springs kept the inactive PAMs engaged and immediately ready for

work. However, while the buckling phenomena was removed it came with several tradeoffs that

must be understood and evaluated before adopting such a system.

First, dividing the maximum recorded load of 720 N between the MUs and using Figure 24 (a

modified version of Figure 8) gives the PAMs estimated contraction at roughly 70 mm at Point A.

Yet the overall plate motion was only around 38 mm. Using Equation (1) with the initial and final

angles of -42º and 4º, respectively, from Figure 17 and solving for x, we see that the stretch of the

springs at the final position (with the higher load) is 39 mm longer than the initial stretch at the

start of the test. This 39 mm was taken away from the full contraction capability of the PAM and

resulted in only 38 mm of plate movement. Without the springs, the PAMs could have moved the

load much further.

Page 39: Online Variable Recruitment for Pneumatic Artificial

27

Figure 24. Force-Strain curve for PAM pairs highlighting the effects of springs. Modified from Figure 8.

Second, the system required all PAMs be fully contracted to move the load this 38 mm. Referring

again to Figure 24, moving the load this distance of 38 mm without springs would only take two

MUs at a pressure of 3 bar, Point B. Not only would RL3 not be activated but the pressure required

for RL2 would be lower. As previously shown and demonstrated in the literature, the greater the

number of PAMs activated and the more air used, the lower the efficiency [12][13].

The benefits of variable recruitment are inhibited because RL1 cannot cycle through the PAM’s

whole range of motion. Following Equation (4), all MUs must be activated to achieve a single

PAM’s full contraction range, thus making the system behave like a SEM. To prevent this, the

PAMs were made longer than necessary. Targeting a 38 mm displacement with a similar load, a

system without springs would use PAMs of roughly 190 mm. The 527.5 mm PAMs used for this

study were almost three times what would be necessary if not using springs. It would be interesting

to compare the energy needs and efficiency of the spring system and that of a no-spring equivalent

SEM.

Theoretically, all RLs contribute equally to displacement and a full contraction of an additional

MU would only move the system an additional fraction of the total number of MUs relative to

the PAMs CR. However, the results from Table 3 show that the contribution between RLs was

not equal. This is in part due to the nature of the load being tied to cosθ and that its rate of

increase tapered off towards the end of the cycle as can be seen by the load change decreasing.

But also, RL3 occurred when the springs were at their most stretched, allowing more of the

PAM’s contraction to directly impact the plates motion.

Surprisingly, previously activated MUs contracted when currently active MUs reached a certain

point, highlighting the compliant nature of PAMs and implying that the equilibrium of forces

between all MUs changes within the RLs themselves. This resulted in a smaller force for the

previously activated MU, allowing the same pressure to further contract the PAMs.

As described at the end of Section 3.2, springs are passive elements and allow the starting position

of the load to change. The limitations of Equation (5) make the resulting system unsuitable for an

application requiring a wide range of loads and motions.

Overall, for specific applications, PAMs of the right length and CR can prevent buckling and

provide smooth transitions with the properly sized springs for a specified load. This may come

with a higher production costs and energy expenditure.

A

B

0

100

200

300

400

500

600

700

800

900

0 20 40 60 80 100 120 140

Forc

e (

N)

Contraction (mm)

PAM Pair Max Force at Contraction

3 Bar

Page 40: Online Variable Recruitment for Pneumatic Artificial

28

5.4 Limitations

There are many limitations to this study that also serve as areas of future work. Different speeds,

spring constants or loading conditions were not tested making this study only a snapshot of the

factors involved with the inclusion of a serial elastic element.

It can be seen in Figure 18 that each cycle was not identical. Tests run on different days also had

differences in the exact energy values. Part of this is due to the manual process of establishing

the initial angle but another part is that different ambient conditions can have large impacts on

air dynamics. While no gross changes were seen over the course of testing, implying the PAMs’

and system’s repeatability, subsequent runs over multiple days were not performed. Similar

results can be reasonably expected but exact values are suspect.

The sample time for this study was quite large at 0.5 seconds. This time was needed to align the

Simulink model with the real-time data acquisition although a small delay was still present. If

real-time was ignored and a smaller sample time used in Simulink, the same patterns for angle

and energy were observed, albeit with a large physical delay. The delay is believed to come from

running and processing the I/O through the Arduino vs sending signals directly to Simulink.

Since there was no comparison to an SEM or system without springs, the claims for these

systems made in the previous sections of Chapter 5 have not been fully validated.

A sine function was chosen arbitrarily as the input signal over a linear ramp. This could have

impacted overall stability considering that the load changed as a function of cosine. Other ramp

profiles would be of further interest.

The equipment used to measure the angle, load, flow and pressure is another limiting factor.

Especially for the flow meter and to a lesser extent the load cell, the experiment employed the

devices at the low end of their respective ranges.

Page 41: Online Variable Recruitment for Pneumatic Artificial

29

6 FINAL THOUGHTS

In this chapter, recommendations on more detailed solutions and future work in this field are

presented. The conclusions summarize the analysis & answer questions presented in Chapter 1.

6.1 Conclusions

In this study, a set of PAMs were arranged with serial elastic elements to raise a mechanical arm

to its horizontal position using two variable recruitment approaches- batch and orderly. The

research questions from Section 1.3 are re-stated and answered below:

1. How do physical batch and orderly recruitment strategies compare to each other and

simulations reported in the literature in terms of energy efficiency and transition smoothness?

The batch method showed a greater number of discontinuities through the motion and consumed

more air for the same motion compared to the orderly method, resulting in a lower efficiency. The

first result was expected from the literature [3] while the second was a new finding.

2. How does the inclusion of series elastic elements impact system performance in terms of

buckling, response, and range of motion?

The springs prevented non-activated PAMs from buckling, allowing them to apply force as soon

as they were brought online during a RL shift. However, springs also shifted the range of motion

for the PAMs and tied overall motion to RL, thereby limiting the advantages of variable

recruitment or requiring oversized PAMs.

For PAMs, or other FAMs using a compressible media, transition effects for both batch and orderly

are not negligible. Deflation and inflation are not instantaneous and must be accounted for in the

control scheme, whether it be a state machine or another kind of advanced controller.

6.2 Recommendations

In Section 5.1 it is mentioned that better tuning for the batch transitions may provide an overall

smoother profile than orderly. In this experiment the transitions were set to trigger at equivalent

pressure values but did not consider the inflation and deflation dynamics. Not aiming for a quick

synch between MUs using full throttle inflation and deflation and instead building in the time it

would take to switch from one RL to another may solve this problem. Careful consideration would

have to be given to the ramp rates of both inflation and deflation such that inflation of the newly

recruited MU would start earlier than the equivalent pressure point and be high enough to continue

the trajectory even as the previously activated MU(s) deflate.

The system gets more complicated if a change in setpoint occurs during the transition time. The

orderly process may have less innate smoothness during a RL contraction but the transitions are

naturally more seamless. Therefore, it is recommended to straighten the “S” curve with a controller

rather than try to manage the transitions for a batch process.

Meller et al. built hysteresis into the switching states to avoid chatter and also mentions that once

a RL threshold is reached “another motor unit is excited at its base activation rate. The first

active motor unit’s maximum firing rate is achieved after the next motor unit is added.” This is

seen as applicable advice for an orderly process [14].

Page 42: Online Variable Recruitment for Pneumatic Artificial

30

Batch is also not recommended due to its energy intensity. As mentioned in Section 5.2, the

switching method used was disastrous for downshifting RLs. One way to remedy this would be to

make the batch process deflate from its current RL and not switch when releasing the load, so no

transitions would occur for relaxing. If the load is in the realm of RL1 when it is deflating all

previously activated MUs, say from RL3, and a signal to contract is sent, the controller should

automatically switch to RL1 for inflation and continue deflating the nonactive MUs. This creates

a more complicated state machine that also considers whether or not the system is contracting or

relaxing.

It is important not to completely discount batch though. Since this system requires all MUs to be

active for achieving the maximum displacement, the batch method becomes faster than orderly.

This is because orderly must travel through each RL, successively activating MUs, whereas

batch can activate all MUs at once and jump to RL3. In this case a hybrid system of batch and

orderly may be the most useful. If speed becomes important or the load is known ahead of time

and energy efficiency is not a factor, the system can operate in batch.

As PAMs produce the most force at the start of their contraction and springs stretch the most at

the start of their extension, the two are mismatched. Designing a system such that the most force

is required at the beginning of motion while also not making the springs so stiff that they fail to

prevent buckling at the end of motion is advised.

It was shown that RLs are not always equivalent and, especially with a changing load, MU

behavior can change while in a single RL. A future controller should consider these changes

between and within RLs. One option is to continue pressurizing a PAM after it no longer contracts

for expected gains later on. Another option is trying to always match the MU pressure with desired

contraction and shift all active and previously active MUs during RL transitions. In any case, there

are many choices available to the designer. Especially for orderly, the previously activated MUs

displacement will change while the active MU is doing work.

Furthermore, the ability of PAMs to stretch or contract with changes in external load makes them

more akin to passive, non-linear springs than actuators. Viewing PAMs this way is not new [28].

It is recommended to use the free strain value of a pressurized PAM as its “resting state”. The

“extension” of the PAM from its free strain position by the force applied is then based on its

“spring constant”, which is a function of pressure. By changing the pressure of the PAM, and

thereby its spring constant, both new resting lengths and possible force-strain values are obtained.

Ultimately, it is recommended to use HAMs or FAMs with an incompressible fluid as they have

been shown to be more efficient [3][26]. If using PAMs, use of larger fittings, ideally as large as

the nominal ID, would allow for much faster inflation and deflation times. In this case, the VEAB

proportional valves from Festo required 4mm tubing and restricted air flow.

Springs should be paired with some sort of damping mechanism if used. Springs can be used to

prevent buckling if initial load position is not a factor and smoothness is vital. Finally, as long as

a reservoir is needed for FAMs they are not recommended for exoskeletons.

6.3 Future Work

There are many opportunities for future work. First, comparison to a system without springs is

vital, as well as to an SEM with and without springs. Second would be to close the control loop

with feedback, as has been performed previously [3][12][14]. Setting transition effects with

hysteresis and before theoretical equivalencies would help with chatter [14] and smoothness.

Page 43: Online Variable Recruitment for Pneumatic Artificial

31

Next would be a study of the inflation and deflation dynamics. A full step analysis is proposed

for each RL, varying load and spring constant for both batch and orderly. Batch is included for

its predicted advantages in speed and possible inclusion in a hybrid approach.

In general, different FAM materials, serial elastic elements and clutch mechanisms, are also worth

investigating, as are varying the RLs themselves with different types, sizes and numbers of FAMs.

Other interesting studies could look at which switching paradigm best responds to random set point

changes, cycle fatigue and if there are redundancies in displacement-contraction patterns.

Page 44: Online Variable Recruitment for Pneumatic Artificial

32

Page 45: Online Variable Recruitment for Pneumatic Artificial

33

7 REFERENCES

[1] Tondu, Bertrand, and Pierre Lopez. “Modeling and Control of McKibben Artificial

Muscle Robot Actuators.” IEEE Control Systems, vol. 20, no. 2, Apr. 2000, pp.

15–38., doi:10.1109/37.833638.

[2] Tondu, Bertrand. “Modelling of the McKibben Artificial Muscle: A Review.” Intelligent

Material Systems and Structures, vol. 23, no. 3, 29 Mar. 2012, pp. 225–253.,

doi:10.1177/1045389X11435435.

[3] Jenkins, Tyler E, et al. “Bio-Inspired Online Variable Recruitment Control of Fluidic

Artificial Muscles.” Smart Materials and Structures, vol. 25, 11 Nov.2016,

doi:10.1088/0964-1726/25/12/125016.

[4] Chapman, Edward M, et al. “Design and Analysis of Electrohydraulic Pressure Systems

for Variable Recruitment in Fluidic Artificial Muscles.” Smart Materials and

Structures, vol. 27, no. 10, 2018, p. 105024., doi:10.1088/1361-665x/aadbff.

[5] Park, Yong-Lae, et al. “Active Modular Elastomer Sleeve for Soft Wearable Assistance

Robots.” 2012 IEEE/RSJ International Conference on Intelligent Robots and

Systems, Oct. 2012, doi:10.1109/iros.2012.6386158.

[6] Abe, Tomoki, et al. “Muscle Textile to Implement Soft Suit to Shift Balancing Posture of

the Body.” 2018 IEEE International Conference on Soft Robotics (RoboSoft),

Apr. 2018, doi:10.1109/robosoft.2018.8405387.

[7] Huo, Weiguang, et al. “Lower Limb Wearable Robots for Assistance and Rehabilitation:

A State of the Art.”IEEE Systems Journal, vol. 10, no. 3, 20 Oct. 2014, pp. 1068–

1081., doi:10.1109/JSYST.2014.2351491.

[8] Hussain, Shahid, et al. “Robust Nonlinear Control of an Intrinsically Compliant Robotic

Gait Training Orthosis.” IEEE Transactions on Systems, Man, and Cybernetics:

Systems, vol. 43, no. 3, IEEE, 2013, pp. 655–65,

doi:10.1109/TSMCA.2012.2207111.

[9] Wehner, Michael, et al. “A Lightweight Soft Exosuit for Gait Assistance.” Proceedings -

IEEE International Conference on Robotics and Automation, IEEE, 2013, pp.

3362–69, doi:10.1109/ICRA.2013.6631046.

[10] Ferris, Daniel P., and Cara L. Lewis. “Robotic Lower Limb Exoskeletons Using

Proportional Myoelectric Control.” 2009 Annual International Conference of the

IEEE Engineering in Medicine and Biology Society, IEEE, 2013, pp. 2119–24,

doi:10.1109/IEMBS.2009.5333984.

[11] Hamill, Joseph, et al. Biomechanical Basis of Human Movement. Wolters Kluwer Health,

2015.

[12] Robinson, Ryan M., et al. “Variable Recruitment Testing of Pneumatic Artificial Muscles

for Robotic Manipulators.” IEEE/ASME Transactions on Mechatronics, vol. 20,

no. 4, 2015, pp. 1642–1652., doi:10.1109/tmech.2014.2341660.

[13] Bryant, Matthew, et al. “Variable Recruitment Fluidic Artificial Muscles: Modeling and

Experiments.” Smart Materials and Structures, vol. 23, no. 7, 2014, p.

074009., doi:10.1088/0964-1726/23/7/074009.

Page 46: Online Variable Recruitment for Pneumatic Artificial

34

[14] Meller, Michael, et al. “Improving Actuation Efficiency through Variable Recruitment

Hydraulic McKibben Muscles: Modeling, Orderly Recruitment Control, and

Experiments.” Bioinspiration & Biomimetics, vol. 11, no. 6, 2016, p. 065004.,

doi:10.1088/1748-3190/11/6/065004.

[15] DeLaHunt, Sylvie Adams. “VARIABLE RECRUITMENT OF MINIATURE

PNEUMATIC ARTIFICIAL MUSCLES AND SPACE QUALIFIED

PNEUMATIC ARTIFICIAL MUSCLES.” University of Maryland, College Park,

2016.

[16] Wolfen, Simon, et al. Bioinspired Pneumatic Muscle Spring Units Mimicking the Human

Motion Apparatus : Benefits for Passive Motion Range and Joint Stiffness

Variation in Antagonistic Setups. 2018, doi:10.1109/M2VIP.2018.8600913.

[17] Wakimoto, Shuichi, et al. “Flexible Artificial Muscle by Bundle of McKibben Fiber

Actuators.” 2011 IEEE/ASME International Conference on Advanced Intelligent

Mechatronics (AIM), July 2011, doi:10.1109/aim.2011.6027056.

[18] Funabora, Yuki. “Prototype of a Fabric Actuator with Multiple Thin Artificial Muscles

for Wearable Assistive Devices.” SII 2017 - 2017 IEEE/SICE International

Symposium on System Integration, vol. 2018-Janua, 2018, pp. 356–61,

doi:10.1109/SII.2017.8279238.

[19] Suzumori, Koichi, et al. “Index Finger of a Human-Like Robotic Hand Using Thin Soft

Muscles.” IEEE Robotics and Automation Letters, vol. 3, no. 1, IEEE, 2017, pp.

92–99, doi:10.1109/lra.2017.2732059.

[20] Endo, Gen, et al. “Braiding Thin McKibben Muscles to Enhance Their Contracting

Abilities.” IEEE Robotics and Automation Letters, vol. 3, no. 4, IEEE, 2018, pp.

3240–46, doi:10.1109/lra.2018.2851025.

[21] Chen, Yijin, et al. “Structural Design and Analysis of Morphing Skin Embedded with

Pneumatic Muscle Fibers.” Smart Materials and Structures, vol. 20, no. 8, 2011,

doi:10.1088/0964-1726/20/8/085033.

[22] De Volder, M., et al. “Fabrication and Control of Miniature McKibben Actuators.”

Sensors and Actuators, A: Physical, vol. 166, no. 1, Elsevier B.V., 2011, pp. 111–

16, doi:10.1016/j.sna.2011.01.002.

[23] Hocking, Erica G., and Norman M. Wereley. “Analysis of Nonlinear Elastic Behavior in

Miniature Pneumatic Artificial Muscles.” Smart Materials and Structures, vol.

22, no. 1, 2013, doi:10.1088/0964-1726/22/1/014016.

[24] Pillsbury, Thomas E., et al. “Effect of Bladder Wall Thickness on Miniature Pneumatic

Artificial Muscle Performance.” Bioinspiration and Biomimetics, vol. 10, no. 5,

IOP Publishing, 2015, doi:10.1088/1748-3190/10/5/055006.

[25] Vocke, Robert D., et al. “Design and Testing of a High-Specific Work Actuator Using

Miniature Pneumatic Artificial Muscles.” Journal of Intelligent Material Systems

and Structures, vol. 23, no. 3, 2012, pp. 365–78,

doi:10.1177/1045389X11431743.

[26] Meller, Michael A., et al. “Reconsidering the McKibben Muscle: Energetics, Operating

Fluid, and Bladder Material.” Journal of Intelligent Material Systems and

Structures, vol. 25, no. 18, 2014, pp. 2276–93, doi:10.1177/1045389X14549872.

[27] Ching-Ping Chou; Hannaford, Blake. “Measurement and Modeling of McKibben

Pneumatic Artificial Muscles.” IEEE Transactions on Robotics and Automation,

vol. 12, no. 1, 1996, doi:10.1093/ndt/gfm531.

Page 47: Online Variable Recruitment for Pneumatic Artificial

35

APPENDIX A: BILL OF MATERIALS

No. Section Name Manufacturer Model Number QTY Unit Description & Notes

1 Air System 4mm PU Tubing Festo PUN-H-4X0,75-SW 5 m

2 Air System 4mm Push In Ball Valve Festo 153483 QH-QS-4 5 ea

3 Air System G1/4" Push In Connector Festo 190644 10 ea

4 Air System 4mm Push In Y Festo 153148 QSY-4 8 ea

5 Air System Proportional Valve Festo VEAB-L-26-D9-Q4-V1-1R1 3 ea Includes pressure sensor and vent to atmosphere

6 Air System M8 Electrical Cable Festo NEBU-M8G4-K-2.5-LE4 4 ea For proportional valves & flow sensor

7 Air System Flow Meter Festo SFAH-100U-G14FS-PNLK-PNVBA-M8 1 ea For volume of air used in energy calculation

8 Air System Pressure Sensor Festo SPTW-P6R-G14-VD-M12 1 ea For pressure of air used in energy calculation

9 Air System M12 Electrical Cable Festo NEBU-M12G5-K-2.5-LE4 1 ea For pressure sensor

10 Air System Thread Lock Loctite 542 1 ea Sealing all threaded components

11 Air System Filter Regulator SMC EAW2000-F02D 1 ea Maintains air supply pressure at 4bar

12 Air System Acrylic Pegboard KTH Custom 1 ea 20x20mm spaced 4mm holes

13 Air System Proportional Valve Mount KTH Custom 2 ea 3D printed mounting piece for proportional valves

14 Air System Flow Sensor Mount KTH Custom 1 ea 3D printed mounting piece for flow sensor

15 Muscle 10x14mm Latex Hose Kuntze 124-1014 4 m PAM bladder

16 Muscle 15-30mm OD Cable Sleeve Elfa RND 465-00757 4 m PET, PAM braid

17 Muscle 3/8"-10mm Barb Fitting Hydroscand Custom 12 ea Steel, hydraulically pressed

18 Muscle Coupler KTH Custom 6 ea See drawing. Could be shorter

19 Muscle 5x50 Snap Hook Bauhaus 2801651A 12 ea Connects spring to PAM and plate, WL > 70-80kg

20 Muscle M8x80 Eye Bolt Bauhaus 2801687A 6 ea Attaches to plate for spring. Trimmed down

21 Muscle 3x30x200 Extension Spring Lesjofors 3529 6 ea K = 0.75

22 Transmission Star Plate KTH Custom 1 See Drawing. Groups PAM-Springs

23 Transmission 4mm 7x19 Wire Cable Clas Ohlson 31-865-3 2 m 1000kg load

24 Transmission 4mm Wire Grip Bauhaus 2801647A 3 ea For cable

25 Transmission 4mm Thimble Bauhaus 2801642A 3 ea For cable

26 Transmission 500kg S-Type Load Cell Tedea Huntleigh 616 1 ea Measures both tension and compression. Stainless Steel

27 Transmission 6mm Swivel Pin Bauhaus 2801671A 1 ea Connects shaft to load cell

28 Transmission 1/2"-20 UNF Eye Bolt McMaster 3014T118 2 ea Trimmed down for load cell

Page 48: Online Variable Recruitment for Pneumatic Artificial

36

No. Section Name Manufacturer Model Number QTY Unit Description & Notes

29 Transmission 8x80 Carabiner Bauhaus 2801654A 1 ea Rated for 800kg working load

30 Transmission M12x15 Eye Bolt RS Components 673-642 1 ea Carbon Steel. 400kg load

31 Joint Pulley KTH Custom 1 ea

32 Joint Pulley Attachment KTH Custom 1 ea Barrel wire cable terminator

33 Joint Incremental Encoder Kubler 8.KIH40.5462.2048 1 ea 2048 PPR, RS422, Optical

34 Joint Encoder Plate KTH Custom 1 ea Encoder mounting plate

35 Joint Bearing Blocks KTH Custom 1 ea

36 Joint Pulley Bushing RS Components 477-7029 1 ea Locks pulley to shaft

37 Joint Pillow Block Bearings RS Components 750-8964 2 ea

38 Joint 30x450mm Shaft KTH Custom 1 ea h7 Tolerance. Steel. With 8x45mm step

39 Arm Arm KTH Custom 2 ea See drawing. Aluminum.

40 Arm 1.5 & 2.5kg Weights Unknown Unknown 6 ea 4x1.5kg, 2x2.5kg

41 Arm 25x265mm Steel Bar KTH Custom 1 ea Holds weights and weighs roughly 1kg

42 Arm 25mm Bar Clips HE Fitness 244 2 ea Pin weights to bar

43 Arm Cushion KTH Custom 1 m Foam pad for protecting arm and floor

44 Frame Steel Anchor Plate Bromma Steel Custom 1 ea See Drawing. Air supply manifold

45 Frame Angle Bracket 8 160x160 AluFlex 0.0.619.56 2 ea Connects anchor plate

46 Frame Fastening Set Angle Bracket AluFlex 0.0.479.96 2 ea

47 Frame Profile 8 40x40 - 310mm AluFlex 0.0.026.03 0.6 m Frame material, cross beams

48 Frame Profile 8 40x40 - 1500mm AluFlex 0.0.026.03 3 m Frame material, main beams

49 Frame Profile 8 40x40 - 1000mm AluFlex 0.0.026.03 2 m Frame material, extenders

50 Frame Angle Bracket 8 40x40 Zn AluFlex 0.0.411.15 8 ea Chipped off one guide flange on each

51 Frame T-Slot Nut 8 St M8, HD AluFlex 0.0.420.83 12 ea 4 for bearing plate, 8 for pillow supports

52 Frame T-Slot Nut 8 St M8 AluFlex 0.0.480.48 16 ea For 4 x 2x2 plates

53 Frame Mounting Brackets KTH Custom 4 ea See Drawing

Page 49: Online Variable Recruitment for Pneumatic Artificial

37

No. Section Name Manufacturer Model Number QTY Unit Description & Notes

54 Electronics Load Cell Amplifier SparkFun HX711 1 ea Conditions signal from load cell

55 Electronics Arduino Mega2560 Arduino A000067 1 ea Microcontroller

56 Electronics Breadboard K&H MB-85 1 ea

57 Electronics Jumper Cables RND Components RND 255-00013 1 ea Male female

58 Electronics Jumper Cables RND Components RND 255-00015 2 ea Male male

59 Electronics ADC Adafruit 1085 2 ea ADS1115 16 bit breakout

60 Electronics DAC Adafruit 935 3 ea MACP4725 12bit breakout

61 Electronics Multiplexer Adafruit 2717 1 ea TCA9548A breakout, Connects multiple DAC's w/ same address

62 Electronics OpAmp Texas Instruments LM358N/NOPB 2 ea Amplifies signal from DAC

63 Electronics Power Supply RND Components RND 320-KD3005D 3 ea 5V, 12V and 2V. Could substitute for more compact device

64 Electronics Breadboard RND Components 1 ea

65 Electronics Female Screw Terminals Phoenix Contact 1725672 5 ea For pneumatics cable termination

66 Electronics Load Cell Cable PCB KTH Custom 1 ea Terminates cable for use with breadboard

67 Electronics Encoder Cable PCB KTH Custom 1 ea Terminates cable for use with breadboard

68 Electronics Pneumatics PCB KTH Custom 1 ea Organizes all peripheral I/O's and power supplies

Unused

69 Transmission 30mm Shaft Collar RS Components 174-6739 2 ea Couples shaft and round plate & acts as stop

70 Transmission Linear Bearing AluFlex TE85–830 1 ea For 30mm shaft

71 Transmission Linear Bearing Plate KTH Custom 1 ea Mounting plate for linear bearing

72 Transmission Rubber Gasket KTH Custom 1 ea Prevents stop collar from damaging linear bearing

73 Transmission 30x400mm Shaft AluFlex W30 1 ea h6 Tolerance. Steel. With M12 Thread 1 side, 24mm deep

Page 50: Online Variable Recruitment for Pneumatic Artificial

38

APPENDIX B: PAM DEAD BAND

A single MU, or pair of two PAMs, was arranged in a blocked force condition with roughly 7.75kg

of initial tension. The MU was then pressurized in increments of 5 bits to see when force would

occur and what the dead band pressure was. Dead band is defined as the range for when increased

pressure performs no work and is thought to come from the amount of pressure required to

pressurize the air already inside the PAM and overcome the resistance of the elastic bladder [24].

The DAC used was 12-bit and triggered a 0-5V signal that was passed through an operational

amplifier of gain two. This controlled the VEAB proportional valve that required a 0-10V signal.

Theoretical pressure is simply a scaling of the bit value. The recorded pressure comes from the

VEAB output signal of 0-10V, which was passed through a 12.5-17.5Ω voltage divider into a 16-

bit ADC and scaled back to bar.

Table 3. Dead band pressure test results.

An offset between the theoretical value and measured pressure value of roughly 0.045 bar carried

through the rest of the pressure range up to at least 2 bar, at which point the experiment was

terminated. The VEAB proportional valve’s regulation range is specified from 0.03-6 bar.

Considering the relatively large force increase as pressure is first recorded compared with the

smaller force increase as the pressure is incremented, it is likely that the limitation of the PAM to

produce force is due to the valve’s ability to regulate pressure or the electronics setup to provide

enough of a signal for the valve to open. Therefore, it is believed that no practical dead band exists

for the PAM or that it is overshadowed by the capability of the valve.

Bit Value

(0 - 4096)

Theoretical

Pressure (bar)

Recorded

Pressure (bar)

Load (kg) Force (N)

0 0 -0.012 7.75 76.03

5 0.007324 -0.012 7.75 76.03

10 0.014648 -0.012 7.75 76.03

15 0.021973 -0.012 7.75 76.03

20 0.029297 -0.012 7.75 76.03

25 0.036621 -0.012 7.75 76.03

30 0.043945 -0.012 7.75 76.03

35 0.051270 0.005 8.50 83.39

40 0.058594 0.015 8.62 84.56

45 0.065918 0.020 8.71 85.45

50 0.073242 0.028 8.80 86.33

Page 51: Online Variable Recruitment for Pneumatic Artificial

39

APPENDIX C: ELECTRICAL SCHEMATIC

Page 52: Online Variable Recruitment for Pneumatic Artificial

40

APPENDIX D: ARDUINO CODE

/* Sketch handles I/O for PAM Test Rig

*

* Sketch pulls code from Robin's Tutorials https://forum.arduino.cc/index.php?topic=288234.0

* Sketch pulls code from Adafruit Manuals for DAC MCP4725, TCA9548A, ADS1015

* Sketch pulls code from SparkFun Examples HX711 Load Cell Breakout

*

* Encoder:

* Pin 2 = B

* Pin 3 = A

*

* Load Cell:

* Pin 6 = Clock

* Pin 7 = Data

* Always rezeroes itself upon running Simulink

*

* ADC Reminder:

* Default gain is 2/3, scale is +/- 6.144V or 0.188mV/bit

* 8ms conversion delay

* SPS can be modified if necessary from 8-860

*/

#include <Wire.h>

#include <Adafruit_ADS1015.h> // ADC

#include <Adafruit_MCP4725.h> // DAC

#define TCAADDR 0x70 // Set clock frequency for the DAC to 100kHz to match ADC

#include "HX711.h" // Load Cell

#define calibration_factor -8800.0 // Value obtained using SparkFun_HX711_Calibration sketch

#define DOUT 7

#define CLK 6

Adafruit_ADS1115 ads1115A; // Construct ads1115 at default address: 0x48, ADR to GND

Adafruit_ADS1115 ads1115B(0x49); // Construct ads1115 at address 0x49, ADR to VDD

Adafruit_MCP4725 dac; // Initialize DAC

HX711 scale; // Initialize Load Cell

// Set up variables

// DAC Variables

int Vali1 = 0;

int Vali2 = 0;

int Vali3 = 0;

// ADC Variables

float VA0; // Flow Sensor

float VA1; // Pressure Sensor

float VB0; // Prop Valve 1, MU1

float VB1; // Prop Valve 2, MU2

float VB2; // Prop Valve 3, MU3

int16_t adcA0, adcA1, adcB0, adcB1, adcB2; // Compatible with all boards (_t)

// Load Cell Variables

float load;

// Encoder Variables

float enc_count = 0; // Variable stores "events" to calculate pos & vel

int enc_val = 0; // Auxiliary variable to calculate current position

float currVelocity;

//Velocity calculation variables

float pos;

float prev;

float vel_enc;

float velocity;

int count = 0;

// Interrupt for velocity calculation

ISR (TIMER5_OVF_vect)

{

TCNT5 = 53036;

vel_enc = (pos - prev)*20;

velocity = vel_enc*31416/10000000;

prev = pos;

}

Page 53: Online Variable Recruitment for Pneumatic Artificial

41

// ISR called for every event in the channels

void encoder_isr()

{

static int8_t lookup_table[] = {0,-1,1,0,1,0,0,-1,-1,0,0,1,0,1,-1,0};

enc_val = enc_val << 2;

enc_val = enc_val | ((PINE & 0b110000) >> 4);

enc_count = enc_count + lookup_table[enc_val & 0b1111];

pos = enc_count;

count = count + pos;

}

// Set up for the serial sample time

int period = 500; // ms value

unsigned long time_now = 0; // Holder

// Set up for receiving serial from Simulink

const byte numBytes = 32; // Number of bytes. 32 is overkill but fine for now

byte receivedBytes[numBytes]; // An array to store the received data

byte numReceived = 0; // Must match # of bytes sent by Simulink, 4/float, x/int

boolean newData = false; // Has new data arrived?

static boolean recvInProgress = false; // Flag

static byte ndx = 0; // Index counter

char startMarker = '<'; // Simulink header treats all as character

char endMarker = '>'; // 0x0D = cr

byte rb; // Stores each incoming byte individually

// Unions are used for binary/byte conversion to integer

union {

byte byt[2]; // Doesn't need to be size 2 but it is more accurate

int i;

} u1 ;

union {

byte byt[2];

int i;

} u2 ;

union {

byte byt[2];

int i;

} u3 ;

void setup() {

// Encoder

interrupts();

attachInterrupt(digitalPinToInterrupt(2),encoder_isr,CHANGE); //Set interrupt encoder ch B

attachInterrupt(digitalPinToInterrupt(3),encoder_isr,CHANGE); //Set interrupt encoder ch A

DDRE &= 0b11001111; // Set port E as input

prev = 0; // Initialize previous position storage variable

TCCR5A = 0; // Setting counter for velocity calculation

TCCR5B = 0;

TCNT5 = 53036;

TCCR5B |= (1 << CS51)| (1 << CS50); // 64 pre-scaler

TIMSK5 |= (1 << TOIE5); // Enable timer overflow interrupt

// Serial

Serial.begin(9600); // Baud's between Simulink and Arduino must match

ads1115A.begin(); // Initialize ads1115

ads1115B.begin();

dac.begin(0x62); // Setting up the DAC's

// Load Cell

scale.begin(DOUT, CLK);

scale.set_scale(calibration_factor);

scale.tare(); // Tares the scale

}

void loop() {

// DAC Receiving Data from Simulink

recData();

getData();

// ADC Reading

Page 54: Online Variable Recruitment for Pneumatic Artificial

42

adcA0 = ads1115A.readADC_SingleEnded(0); // Reading Analog input on channel A0

adcA1 = ads1115A.readADC_SingleEnded(1); // Reading Analog input on channel A1

adcB0 = ads1115B.readADC_SingleEnded(0); // Reading Analog input on channel B0

adcB1 = ads1115B.readADC_SingleEnded(1); // Reading Analog input on channel B1

adcB2 = ads1115B.readADC_SingleEnded(2); // Reading Analog input on channel B2

// Scaling in Simulink

// Voltage Float = ADC Integer*.000188*2.38;

VA0 = adcA0;

VA1 = adcA1;

VB0 = adcB0;

VB1 = adcB1;

VB2 = adcB2;

/* DAC Signal. Channels available are 0, 3 and 7

* Voltages are sent out 0-5 and then to gain 2 OpAmp

* For Reference:

* .25V - .5V = 205

* .5V -> 1V = 410

* 1V -> 2V = 819 (1.2 Bar)

* 1.7V -> 3.4V = 1392 (2.04 Bar)

* 2V -> 4V = 1638 (2.4 Bar)

* 2.5V -> 5V = 2096 (3 Bar)

* 3.3V -> 6.6V = 2730 (4 Bar)

* 5V -> 10V = 4095 (6 bar)

*/

tcaselect(0); // Prop Valve 1

dac.setVoltage(Vali1, false); // Boolean is yes/no for EEPROM

tcaselect(3); // Prop Valve 2

dac.setVoltage(Vali2, false); // Vali is in range from 0-4095, done in Simulink

tcaselect(7); // Prop Valve 3

dac.setVoltage(Vali3, false);

// Load Cell

load = scale.get_units();

// Synch serial sample time with Simulink

if((unsigned long)(millis() - time_now) > period){

time_now = millis();

Serial.write((const char*)&VA0, 4);

Serial.write((const char*)&VA1, 4);

Serial.write((const char*)&VB0, 4);

Serial.write((const char*)&VB1, 4);

Serial.write((const char*)&VB2, 4);

Serial.write((const char*)&load, 4);

Serial.write((const char*)&enc_count, 4);

}

currVelocity = velocity;

}

void recData() {

while (Serial.available() > 0 && newData == false) {

rb = Serial.read(); // Reads one byte at a time

if (recvInProgress == true) { // Start marker received

if (rb != endMarker) { // Only if end marker not reached

receivedBytes[ndx] = rb; // Stores each byte in the array

ndx++;

if (ndx >= numBytes) {

ndx = numBytes - 1;

}

}

else { // End marker received

receivedBytes[ndx] = '\0'; // Terminate the string

recvInProgress = false;

numReceived = ndx; // Test

ndx = 0;

newData = true; // A new data set is ready

}

}

else if (rb == startMarker) { // Incoming data noticed

recvInProgress = true;

}

Page 55: Online Variable Recruitment for Pneumatic Artificial

43

}

}

void getData() {

if (newData == true) {

// Parse the incoming serial data

for (byte n = 0; n < 2; n++) { // 2 bytes per 16 bit int value

u1.byt[n] = receivedBytes[n]; // Simulink sends them in continuous set

u2.byt[n] = receivedBytes[n + 2];

u3.byt[n] = receivedBytes[n + 4];

}

Vali1 = u1.i;

Vali2 = u2.i;

Vali3 = u3.i;

newData = false; // Reset flag

}

}

void tcaselect(uint8_t i) { // Selects Multiplexer channel

if (i > 7) return;

Wire.beginTransmission(TCAADDR);

Wire.write(1 << i);

Wire.endTransmission();

}

Page 56: Online Variable Recruitment for Pneumatic Artificial

44

APPENDIX E: SPRING EQUATIONS

Here, the derivation for Equation (4) is shown. The illustration helps define the variables. With all

springs assumed to be identical, the total external force, FT, is given by Equation (5) where xT is

the total spring displacement and defined by Equation (12). The number of active MUs vs the

number of total MUs are denoted by 𝑛𝑀𝑈𝐴𝑐𝑡 and 𝑛𝑀𝑈𝑇

, respectively. All a PAM's contraction is

assumed to be transformed into stretching the spring and is represented by Equation (13). With no

active MUs at the initial resting state, the total displacement of the springs is shown in Equation

(14) and is simply an extension of Equation (5) for a certain number of MUs. The plate movement,

y, is given by the total length, LT, for the initial resting state minus that after RL1 and is represented

by Equation (15). Plugging in Equation (14) for xi and combining Equations (5) & (12) and then

rearranging for x, a new expression for plate motion, Equation (16), is found. Terms fall out and

reveal that plate movement is independent of spring constant and that it scales with each additional

MU and the contraction ratio, CR, of the PAM. CR is represented by a percentage.

Assumptions

• Assuming constant total external force, FT

• Springs are identical, s.t. 𝑘1 = 𝑘2 = ⋯ = 𝑘𝑛𝑀𝑈𝑇

• PAMs act as pure translation devices, that is they

will reach their final position dependent on the

contraction ratio, CR, and generate no force.

• The entire PAM contraction goes to spring

extension or plate movement.

• PAMs are stiff, do not stretch under load and do

not have catenary or slack

• Springs have no initial tension

𝐹𝑇 = 𝑘𝑥𝑇 (5)

𝑥𝑇 = 𝑛𝑀𝑈𝐴𝑐𝑡(𝐿𝑃𝑜

)(𝐶𝑅) + 𝑛𝑀𝑈𝑇(𝑥) (12)

𝐿𝑃𝐶 = 𝐿𝑃𝑜(𝐶𝑅), 𝐿𝑃𝑅𝐿1

= 𝐿𝑃𝑜− 𝐿𝑃𝐶 (13)

𝑥𝑇𝑖= 𝑛𝑀𝑈𝐴𝑐𝑡

(𝐿𝑃𝑜)(𝐶𝑅) + 𝑛𝑀𝑈𝑇(𝑥) → 𝑥𝑖 =

𝑥𝑇𝑖

𝑛𝑀𝑈𝑇

=𝐹𝑇

𝑘(𝑛𝑀𝑈𝑇) (14)

𝑦 = 𝐿𝑇𝑜− 𝐿𝑇𝑅𝐿1

= (𝑥𝑖 + 𝐿𝑃𝑜+ 𝐿𝑆𝑜

) − (𝑥 + 𝐿𝑃𝑅𝐿1+ 𝐿𝑃𝐶 + 𝐿𝑆𝑜

) = 𝑥𝑖 − 𝑥 (15)

𝑦 = (𝐹𝑇

𝑘(𝑛𝑀𝑈𝑇)

) − (𝐹𝑇

𝑘(𝑛𝑀𝑈𝑇)

−𝑛𝑀𝑈𝐴𝑐𝑡

𝑛𝑀𝑈𝑇

(𝐿𝑃𝑜)(𝐶𝑅)) (16)

𝑦 =𝑛𝑀𝑈𝐴𝑐𝑡

𝑛𝑀𝑈𝑇

(𝐿𝑃𝑜)(𝐶𝑅) (4)

LPo LSo xi

LP,RL1 LPC LSo x y

FT

FT

Page 57: Online Variable Recruitment for Pneumatic Artificial

45

APPENDIX F: SIMULINK SWITCHING LOGIC

Simulink Switching for Batch

The PAM Max value represents the bit signal sent to the Arduino and equates to 3 bar of pressure.

The Total Max is slightly under three times the PAM Max and serves as the reference for the input.

It is less than the true maximum to prevent a discontinuity at the peak value. Here MU1 is always

activated and uses the scaled output value. MU2 and MU3 are brought online as the RL increases

above 1 and 2, respectively. The input is detailed in Sections 3.3 and 34. Switching blocks were

inspired by Meller et al. [14].

Simulink Switching for Orderly

Here the Remainder is passed through to control activated MUs while previously activated MUs

are set to the bit value of 2096 and non-activated MUs are held at 0. Note that for MU1 the RL

must be greater than 1 to switch to passing through the PAM Max value, as the RL is always at

least 1 or more.

Page 58: Online Variable Recruitment for Pneumatic Artificial

TRITA ITM-EX 2020:430

www.kth.se