Using advanced composite materials Tobias Kamf - …555551/FULLTEXT01.pdf · TVE-12052...

126
TVE-12052 Examensarbete 30 hp September 2012 High speed flywheel design Using advanced composite materials Tobias Kamf Institutionen för teknikvetenskaper Department of Engineering Sciences

Transcript of Using advanced composite materials Tobias Kamf - …555551/FULLTEXT01.pdf · TVE-12052...

Page 1: Using advanced composite materials Tobias Kamf - …555551/FULLTEXT01.pdf · TVE-12052 Examensarbete 30 hp September 2012 High speed flywheel design Using advanced composite materials

TVE-12052

Examensarbete 30 hpSeptember 2012

High speed flywheel design

Using advanced composite materials

Tobias Kamf

Institutionen för teknikvetenskaperDepartment of Engineering Sciences

Page 2: Using advanced composite materials Tobias Kamf - …555551/FULLTEXT01.pdf · TVE-12052 Examensarbete 30 hp September 2012 High speed flywheel design Using advanced composite materials

Teknisk- naturvetenskaplig fakultet UTH-enheten Besöksadress: Ångströmlaboratoriet Lägerhyddsvägen 1 Hus 4, Plan 0 Postadress: Box 536 751 21 Uppsala Telefon: 018 – 471 30 03 Telefax: 018 – 471 30 00 Hemsida: http://www.teknat.uu.se/student

Abstract

High speed flywheel design

Tobias Kamf

This thesis is a part of a larger project that focuses on the development of a highspeed, high energy flywheel using both high-tech composites and levitating magneticbearings alongside a custom made, permanent magnetized generator built into theflywheel itself. The goal of the project is then to integrate this flywheel into anelectrical vehicle.

The main focus of this thesis is the composite material. The composite is to be usedas a shell around the flywheel rotor. This composite shell fills two purposes. The firstis to act as the main energy carrying material, storing above 75% of the total energy inthe flywheel. The second purpose it to strengthen the machine, holding it together.This so that higher speeds than normally possible can be achieved, with the goal beingset to 30 000rpm.

In order to be able to design the composite shell correctly a method of calculating theload stresses had to be developed. This was done by the creation of a Matlabprogram, named Spin2Win, capable of calculating the stresses inside a compositemetal hybrid flywheel. Using said Matlab code, combined with modelling andsimulations from SolidWorks, a fully-fledged flywheel was designed complete withdrawings and material specifications.

The composite analysis surprisingly shows that the best combination of compositematerials is a mixture of both high strength carbon fibres alongside softer glass fibrescoupled with the weight of the central core. This allowed for control of the radialstresses which was shown to otherwise be the limiting factor when designing rotatingcomposite materials.

One of the most interesting, and perhaps even unique, parts of the design is that theelectrical machine has been integrated into the flywheel’s composite shell. Having thetwo entities working together in order to control the radial stresses in thecomposite, by utilizing the weight of the permanent magnets.

UPTEC/ISRN: TVE-12052Examinator: Mikael BergkvistÄmnesgranskare: Kristofer GamstedtHandledare: Johan Abrahamsson

Page 3: Using advanced composite materials Tobias Kamf - …555551/FULLTEXT01.pdf · TVE-12052 Examensarbete 30 hp September 2012 High speed flywheel design Using advanced composite materials

ii

Page 4: Using advanced composite materials Tobias Kamf - …555551/FULLTEXT01.pdf · TVE-12052 Examensarbete 30 hp September 2012 High speed flywheel design Using advanced composite materials

iii

Table of contents

1 Introduction ................................................................................................. 1

1.1 Project history .............................................................................................................. 1

1.2 Problem description ..................................................................................................... 2

1.3 Method ......................................................................................................................... 2

1.4 Limitations ................................................................................................................... 2

1.5 Specifications ............................................................................................................... 3

1.6 Goals ............................................................................................................................ 3

2 Theory ......................................................................................................... 4

2.1 Flywheels as energy storage ........................................................................................ 4

2.2 Composite materials .................................................................................................... 6

2.2.1 General overview ................................................................................................. 6

2.2.2 Properties of some lightweight composites .......................................................... 7

2.2.3 Composite theory ................................................................................................. 7

2.3 Forces in rotating cylinders, orthotropic case .............................................................. 9

2.3.1 Limitations ......................................................................................................... 15

2.4 Interference-fits.......................................................................................................... 16

3 Simulations ................................................................................................ 17

3.1 Simulations in SolidWorks ........................................................................................ 17

3.1.1 Approximate dimensions .................................................................................... 17

3.1.2 Using orthotropic materials ................................................................................ 18

3.1.3 Press-fits ............................................................................................................. 19

3.2 Matlab calculations with Spin2Win .......................................................................... 20

3.2.1 Centrifugal forces ............................................................................................... 20

3.2.2 Press-fit calculations, matrix approach .............................................................. 21

3.2.3 Press fit calculations, numerical approach ......................................................... 22

3.3 SolidWorks versus Spin2Win .................................................................................... 23

3.3.1 Case 1: Aluminium cylinder at 22k rpm ............................................................ 24

3.3.2 Case 2: Press-fitted aluminium into a Carbon composite .................................. 26

3.3.3 Case 3: Press-fitted aluminium, glass, carbon in 22k rpm ................................. 28

4 Machine design ......................................................................................... 30

4.1 Support structure ........................................................................................................ 31

4.2 Active magnetic bearings .......................................................................................... 32

4.3 Stator .......................................................................................................................... 33

4.4 Rotor .......................................................................................................................... 34

4.5 The Swerea SICOMP concept ................................................................................... 35

4.5.1 Layups ................................................................................................................ 35

4.5.2 Manufacturing .................................................................................................... 36

4.5.3 Residual stresses ................................................................................................. 37

4.6 Layup evaluation with Spin2Win .............................................................................. 39

4.7 Final design in SolidWorks ....................................................................................... 41

5 Conclusion ................................................................................................ 43

6 Acknowledgements ................................................................................... 44

7 References ................................................................................................. 45

8 Appendix ................................................................................................... 46

Page 5: Using advanced composite materials Tobias Kamf - …555551/FULLTEXT01.pdf · TVE-12052 Examensarbete 30 hp September 2012 High speed flywheel design Using advanced composite materials

iv

List of figures

Figure 1: Woven sheet of carbon fibre, before resin impregnation [6] ...................................... 6

Figure 2: Single 6µm carbon fibre compared to a human hair ~100µm [7] .............................. 6

Figure 3: Cylinder coordinate description and differential piece definition. ............................. 9

Figure 4: Schematic picture of a interference-fit between two cylinders................................. 16

Figure 5: Coordinate naming in a cylindrical coordinate system ............................................. 18

Figure 6: Shell interference with two surfaces, defined as a press-fit with zero friction. ........ 19

Figure 7: Example stresses due to centripetal forces in an aluminium cylinder at 22k rpm. ... 20

Figure 8: Stress plot in along X with the central axis set as an extra reference ....................... 23

Figure 9: Symbol for cylindrical coordinates ........................................................................... 23

Figure 10: A cut of the Aluminium cylinder in SolidWorks FEM module. ............................ 24

Figure 11: Simulation results for Case 1. ................................................................................. 25

Figure 12: Data point labeling in Solidworks .......................................................................... 26

Figure 13: Simulation results for Case 2 .................................................................................. 27

Figure 14: Spin2Win GUI ........................................................................................................ 28

Figure 15: Simulation results for Case 3 .................................................................................. 29

Figure 16: Photo rendition of the complete flywheel with a 45° cut. ...................................... 30

Figure 17: Support structure overview ..................................................................................... 31

Figure 18: Active magnetic bearing housing, over and under-side .......................................... 32

Figure 19: Active magnetic bearing target, over and under-side. ............................................ 32

Figure 20: Schematic model of the stator. ................................................................................ 33

Figure 21: Rotor cross section and the rotor as a whole .......................................................... 34

Figure 22: Schematic picture of the filament winding process ................................................ 36

Figure 23: Residual radial stresses for Layup 2 on a steel mandrel. ........................................ 37

Figure 24: Residual tangential stresses for Layup 2 on a steel mandrel. ................................. 38

Figure 25: Axial residual stresses for Layup 2 on a steel mandrel........................................... 38

Figure 26: Layup 1 and 2 comparison, 30k rpm. ..................................................................... 39

Figure 27: Layup 2 with added core and magnets, 30k rpm .................................................... 40

Figure 28: Simulation data for Layup 2, 30k rpm .................................................................... 41

Figure 29: Layup 2 vs Layup 2 50-50, 30k rpm ....................................................................... 42

Page 6: Using advanced composite materials Tobias Kamf - …555551/FULLTEXT01.pdf · TVE-12052 Examensarbete 30 hp September 2012 High speed flywheel design Using advanced composite materials

v

List of tables

Table 1: Initial specifications ..................................................................................................... 3

Table 2: Composite material data from Swerea alongside general metal material data ............ 7

Table 3: Approximate data. ...................................................................................................... 17

Table 4: Proposed composite layups ........................................................................................ 35

Page 7: Using advanced composite materials Tobias Kamf - …555551/FULLTEXT01.pdf · TVE-12052 Examensarbete 30 hp September 2012 High speed flywheel design Using advanced composite materials

vi

List of symbols

a Inner radius, Alternative to ri [m]

b Outer radius, Alternative to ro [m]

E Young's modulus, [Pa]

Ek Kinetic energy, [J]

F Force density, [N/m3]

G Shear modulus, [Pa]

I Moment of inertia, [kg m2]

mc Mass of a hollow cylinder, [kg]

n Rotational speed, [rpm]

P Surface Pressure, [Pa]

Qkg Specific energy, [J/kg]

QV Energy density, [J/m3]

r Radius, [m]

u Displacement, [m]

σ*r Radial ultimate tensile strength, [Pa]

σ*θ Circumferential ultimate tensile strength, [Pa]

γ Material shear strain, [-]

δ Shell interference, [m]

ε Material strain, [-]

ν Poisson’s ratio, [-]

ρ Density, [kg/m3]

σ Material stress, [Pa]

τ Shear stress, [Pa]

ω Rotational speed, [rad/s]

Subscripts i Inner, internal

int Initial value

n Index number

o Outer, external

r Radial direction

z Axial direction

θ Circumferential (hoop) direction

Page 8: Using advanced composite materials Tobias Kamf - …555551/FULLTEXT01.pdf · TVE-12052 Examensarbete 30 hp September 2012 High speed flywheel design Using advanced composite materials

1

1 Introduction Energy storage plays a big part in today’s society, where almost everything we use in our

everyday life requires energy to work. If this energy cannot be directly supplied to where it is

needed, for from example the electrical grid, it is often instead taken from some kind of local

energy storage. Today this local energy storage usually consists or either fuels; such as wood

and gasoline, or different kinds of batteries.

The flywheel is another type of energy storage device that stores its energy as kinetic energy,

or simply put in the rotational motion of the flywheel. Most flywheels are quite poor energy

storage devices on their own, at least when concerning long term energy storage. However, if

designed correctly a flywheel’s main strength lies in its ability to supply or absorb short, high

energy, bursts; or in other words it is good at absorbing or delivering high amounts of power

for short amounts of time. As such it is often implemented alongside other energy storages in

order to complement them; where a need of instant high power may arise. This can for

example be as balancing for the power grid or for short term backup power in for example

hospitals, where a power shortage would be devastating.

This thesis is a part of a bigger project that is implementing a high power flywheel into an

electrical vehicle. This in order to allow for the use of less powerful batteries as the main

energy storage in the vehicle and relying on the flywheel when high power is needed, such as

when the vehicle tries to accelerate. Furthermore, the aim is also to absorb and store the

energy released when the vehicle breaks by the use of regenerative breaking.

The concept is by no means new and numerous research teams over the world have developed

similar devices over the years. However, very few have reached commercial successes.

Usually due to economical limitations, the systems are simply too expensive for what they

deliver. Some of the more successful projects include the work of K Takahashi, S Kitade, H

Morita [1] who built an experimental rotor, capable of storing 195Wh/kg. Also worthy of

notice is the system constructed by Flybrid Systems [2], containing a complete flywheel

system designed for use in a Formula 1 car, storing 22Wh/kg of energy in their rotor.

1.1 Project history

In early 2005, an article on the subject of flywheels as energy storages was published from

Uppsala University [3]. The ideas presented in this article were to become the starting

grounds for a new flywheel research group in Uppsala. Under the years following 2005 the

group’s main focus became the development of a complete driveline for an electrical vehicle,

a driveline in which a central flywheel was used as the main power source for the electrical

motors [4]. The flywheel was then to be charged by a separate battery powered circuit.

The project is now in its final stages and as such a first full scale prototype flywheel is being

constructed. A vital part of the flywheel concept developed in Uppsala University is the use of

composite materials as the main energy storage material. With the overall design decided and

much of the electrical design already done the focus of this thesis will be the design of the

composite materials for the full scale flywheel prototype.

Page 9: Using advanced composite materials Tobias Kamf - …555551/FULLTEXT01.pdf · TVE-12052 Examensarbete 30 hp September 2012 High speed flywheel design Using advanced composite materials

2

1.2 Problem description

The flywheel will mainly consist of an aluminium core covered with a thick composite shell.

The composite will act as the main energy storage material in the flywheel as well as the

material holding the flywheel together as the rotational speed is increased beyond the limit of

the naked aluminium core.

The design of a composite material flywheel is no trivial task. One of the main problems lies

in the composite itself; this by being an orthotropic material making the load calculations of

the material much more complicated. Another problem is manufacturing, this as composites

must more or less be made with the correct dimensions from the start as they are near

impossible to lathe or mill once cured. Furthermore, the properties of the composite vary

greatly with the orientation of the fibres and also with the matrix material used, complicating

the design even further.

The problem can however be described with the always present performance versus cost

dilemma. How does one design a composite shell for a high speed, high power machine that

meets up to the desired specifications? This while still keeping the costs low and the safety

factors high.

1.3 Method

The two main tools used in this thesis during the design of the composite flywheel and also

the machine in large was Matlab and SolidWorks. Matlab was used for trying out different

analytical expressions in order to describe the different loads acting on the flywheel.

SolidWorks was then used to verify the results from Matlab and fine tune the design using the

built in FEM module.

Additionally, SolidWorks was also used to make all computer generated pictures of the

flywheel present in this thesis, as well as all the drawings of the machine.

1.4 Limitations

The following limitations were applied to the thesis in order to simplify the calculations and

to maintain the number of design parameters on a reasonable level:

All composite calculations are based on the assumption of zero axial force. Additionally only carbon- and glass-fibres are investigated.

Most machine dimensions were set at the start of this thesis.

All equations and derivations are based on an assumption of zero shear force and torque in all material directions, meaning that they only hold true as long as the system

is in stationary operation.

In all equations an assumption of a system in thermal equilibrium is made, meaning

that no temperature change over time is present.

Page 10: Using advanced composite materials Tobias Kamf - …555551/FULLTEXT01.pdf · TVE-12052 Examensarbete 30 hp September 2012 High speed flywheel design Using advanced composite materials

3

1.5 Specifications

In order to further limit the design alternatives, a few additional constraints on the design

were set. Using these values approximate dimensions for the machine could later be

calculated. The constraints were as follows:

Minimal Maximal

Energy capacity: 300Wh (1.08MJ) none

Rotational speed: 15 000 rpm 30 000 rpm

Core height: 250 mm 280 mm

Core diameter: 195 mm 200 mm

Power: 30kW none

Operating temperature: -20 C +70 C Table 1: Initial specifications

1.6 Goals

The following list of goals was set up in order to be able to evaluate the work progress. In no

particular order the goals were as follows:

Investigate the feasibility of composite materials as the main energy storage of a high speed composite flywheel.

If proven feasible, begin the design of said composite shell. Design includes general geometry as well as operating loads and manufacturing processes.

Investigate the ability to manufacture the composite shell. If needed, find an external

manufacturer able to produce the composite.

Modify the overall machine design so that it can accommodate a composite shell.

Make a complete set of drawings for the whole machine, both for the sake of manufacturing and documentation.

Physically assemble the flywheel and perform initial performance tests, if time allows.

Write a full technical report on the work and present the results to interested parts.

With the goals set, the next step was to investigate the nature of composite materials.

Page 11: Using advanced composite materials Tobias Kamf - …555551/FULLTEXT01.pdf · TVE-12052 Examensarbete 30 hp September 2012 High speed flywheel design Using advanced composite materials

4

2 Theory Some basic material theory is required to understand the concepts presented in this thesis. The

first part presents a quick briefing as to why flywheels are interesting as energy storage and

after that follows some composite material theory. Finally, the most important part; how

stresses in composite cylinders can be calculated.

2.1 Flywheels as energy storage

Flywheels are generally used for kinetic energy storage and have been around since the early

times of man. Every object rotating around an axis stores some amount of kinetic energy and

could in theory be called a flywheel. But the word flywheel is usually used for constructions

whose main purpose is the storage of kinetic energy through rotation. This has led to the

convention that the term flywheel describes a rotating, cylindrical object, usually of

considerable mass, whose main purpose is to store energy or to increase the moment of inertia

of a given system.

The total energy stored in a rotating mass can be calculated by using [5]:

2

2

1zk IE (2.1)

For the sake of simplicity the flywheel is approximated to be a thin walled cylinder with

radius r. The moment of inertia can then be calculated using [5]:

2rmI cz (2.2)

The total stored energy can then be expressed by combining (2.1) with (2.2) creating the

following:

22

2

1rmE ck (2.3)

While this formula yields the total flywheel energy it is not that useful when comparing

different flywheel designs. Instead, another quality is used for that purpose, namely specific

energy, from here on called Qkg. The specific energy formula is obtained by dividing (2.3)

with the mass formula for a cylinder yielding:

22

2

1rQkg (2.4)

Page 12: Using advanced composite materials Tobias Kamf - …555551/FULLTEXT01.pdf · TVE-12052 Examensarbete 30 hp September 2012 High speed flywheel design Using advanced composite materials

5

However, without knowledge of the stresses in the flywheel this is not of much help. So if one

instead considers a circular cross-section of a cylindrical flywheel, there are two major forces

in play. One is the circumferential stress, also called hoop stress, and the other is the radial

stress. In reality a third force, the axial stress, is also present. But unless the construction have

some kind extra axial force, this force is usually small enough to be ignored. Approximately

the hoop stress in a spinning, closed loop of wire or thin walled cylinder, with a small cross

section area compared to its radius can be approximated by the following expression [6]:

22r (2.5)

By then combining (2.4) with (2.5) a new expression for Qkg can be obtained, namely:

2

1kgQ (2.6)

By looking at this formula it can be concluded that, in order to build a flywheel with a high

energy to weight ratio, a material with high yield strength and low density is required. Luckily

there is a class of materials that exhibit such behaviours, namely lightweight composite

materials.

One other commonly used quality to evaluate flywheels is energy per unit volume, from here

on called QV, which is obtained by dividing (2.3) with the flywheel volume yielding:

22

22

2

1

2

1r

V

rmE c

k (2.7)

and then combining this with (2.5) forming the final expression:

2

1VQ (2.8)

which indicate that if a high energy per volume ratio is desired the main factor to consider is

the yield strength of the material, where stronger is obviously better. Again lightweight

composite materials are a good candidate for such a material as they are among the strongest

man made materials to date.

Page 13: Using advanced composite materials Tobias Kamf - …555551/FULLTEXT01.pdf · TVE-12052 Examensarbete 30 hp September 2012 High speed flywheel design Using advanced composite materials

6

2.2 Composite materials

As it was shown in the previous chapter composite materials are a good material choice for a

high speed, high energy density flywheel. But designing a flywheel in composite requires a

good understanding of the basic concepts of composites.

2.2.1 General overview

A composite material is defined as a material made up of two or more different materials with

significantly different structural or chemical properties. Furthermore, both natural and

manmade composites usually consist of some kind of relatively strong fibres, often called

reinforcement, held together by a by a much weaker glue, usually called matrix or resin. The

most common natural composite is wood which consists of long cellulose fibres held together

by a lignin and hemicellulose matrix. The earliest man-made composites are thousands of

years old and consist of grass or wooden fibres encased in a matrix of clay, mud and dung. By

varying the matrix to fibre ratio and also the fibre direction within the material the material

properties can be tailored to fit specific roles. The most common manmade composite in use

today is rebar-reinforced concrete where the rebars work as the fibres and the concrete as the

matrix. [7] 89

While reinforced concrete may be one of the most abundant composites in the world today,

the word “composite” is usually used to describe a strong, lightweight construction material.

The most common lightweight composites are made of glass- or carbon-fibres encased in a

plastic matrix, usually made of epoxy. And it is these lightweight materials that are of interest

to this project.

Figure 1: Woven sheet of carbon fibre,

before resin impregnation [8]

Figure 2: Single 6µm carbon fibre compared to a human

hair ~100µm [9]

Page 14: Using advanced composite materials Tobias Kamf - …555551/FULLTEXT01.pdf · TVE-12052 Examensarbete 30 hp September 2012 High speed flywheel design Using advanced composite materials

7

2.2.2 Properties of some lightweight composites

In order to give the reader a first insight to the properties of some common composite

materials the following material data table was compiled. The metal material data is

somewhat approximate and may vary depending on the specific alloys used, heat treatments,

form-factor and so on. Note that all the composite material data presented below are for

unidirectional composites, meaning that all the fibres goes along the circumferential direction,

and as such only the epoxy matrix creates the strength in the radial and axial directions.

Composites Metals (approximate values)

Toray

T800

Toray

T700

Advantex

E-glass

Carbon

steel

Aluminium

alloy

Titanium

alloy

σ*θ [MPa] ~3100 ~2800 ~1400 300-1,300 200-600 400-1,400

σ*r [MPa] 20-30 20-30 20-30 300-1,300 200-600 400-1,400

Eθ [GPa] 198 155 55 200 72 116

Er [GPa] 11 11 12 200 72 116

Gθ-r [GPa] 4.5 4.6 5 79 25 44

Gr-z [GPa] 3.6 3.7 5 79 25 44

θ-r [-] 0.3 0.3 0.25 0.3 0.3 0.3

r-θ [-] 0.016 0.021 0.077 0.3 0.3 0.3

r-z [-] 0.56 0.53 0.70 0.3 0.3 0.3

ρ [kg/m3] 1600 1594 2146 7800 2800 4500

Table 2: Composite material data from Swerea alongside general metal material data

Kurt Olofsson [10] contributed with the composite data found in Table 2. These composites

are close to the current high-end spectrum of composite materials having high structural

values, and as such it is these composites that are of most interest to this project.

2.2.3 Composite theory

The significant difference in material properties between the matrix and reinforcement makes

the mathematical model for a composite material somewhat more complicated than that for a

isotropic material, such as most metals. This, as composite materials generally are stronger

along the directions of the fibres and weaker perpendicular to the fibres. In order to see the

effects of this on the mathematical model one must first study the general expressions, valid

for all materials. These general formulas are as follows [11]:

First is the general equation of motion, here written in tensor form:

uF (2.9)

which is a generalization of Newton’s second law, maF , with F being an externally

applied force density and representing the internal forces in the system. In order for the

system to be in equilibrium with no acceleration the term must be equal to F .

Page 15: Using advanced composite materials Tobias Kamf - …555551/FULLTEXT01.pdf · TVE-12052 Examensarbete 30 hp September 2012 High speed flywheel design Using advanced composite materials

8

Written in cylindrical coordinates, which is fitting as the systems considered in this thesis are

of cylindrical shape, and with an approximation of zero acceleration the equation of motion

can be expressed as:

01

021

01

zzrzzzr

rzr

rrzrrr

Frzrr

Frzrr

Frzrr

(2.10)

The second set of equations of importance is the strain-displacement relations,

Tuu

2

1 (2.11)

again expressed in tensor form. This equation describes the relation between the strain in the

system and the relative displacement between the systems parts. It states that if the

displacement is not constant throughout the material, the material will experience a strain

proportional to the change of displacement in any given direction. Expressed in cylindrical

coordinates this equation takes the following form:

z

u

r

uu

r

r

u

zz

r

rr

1

r

u

z

u

z

uu

r

u

rr

u

r

u

zr

rz

z

z

r

r

1

1

(2.12)

Lastly a set of constitutive relations are needed. For linear elastic materials these can be

obtained by using the generalized Hooke’s Law,

:C (2.13)

which relates the system strains and stresses to each other. C is here a stiffness tensor of the

forth order, containing the 81 coefficients of elasticity. The equation states that the stress in

any given direction can be expressed as a function of the system strains with the help of a

number of fixed coefficients contained within C. The number of different coefficients needed

vary from system to system and can be drastically reduced for symmetrical systems.

Page 16: Using advanced composite materials Tobias Kamf - …555551/FULLTEXT01.pdf · TVE-12052 Examensarbete 30 hp September 2012 High speed flywheel design Using advanced composite materials

9

In this thesis, the most interesting set of constraints are those that make Hooke’s law describe

an orthotropic material in cylindrical coordinates. It can be shown that for an orthotropic

material only 12 of these coefficients remains non zero [11]. Hooke’s Law then takes the form

of the following six equations:

EEE

EEE

EEE

zr

r

rzz

z

z

z

z

zr

r

r

z

z

zrr

r

r

r

1

1

1

zr

zr

zr

z

zz

r

r

r

G

G

G

1

1

1

(2.14)

2.3 Forces in rotating cylinders, orthotropic case

The approximate stresses calculated by (2.5) are good enough for most basic cases. However,

the thin walled cylinder approximation is no longer valid if the difference in inner and outer

radius is increased. In systems containing thick shells, such as the flywheel concept presented

in this thesis, a more advanced method for calculating the stresses is needed. The derivation of

this more advanced method is based on the work of G. Genta [6], M. Trevonen and A.

Pramila[12]. However, as the complete derivation is not presented in either of these two

papers it had to be redone. It is that re-derivation that is presented in this chapter.

Figure 3: Cylinder coordinate description and differential piece definition.

As a first step towards this solution some simplifications of the equations presented in the

previous chapter are in order. First, if one considers a small piece from the wall of a cylinder,

and the cylinder is spinning at constant speed with no external forces applied other than that

of the centripetal force, the piece will not experience any shear stresses. This assumption of

zero shear and no external forces can mathematically be described as:

0 zzrzrzrzr FF (2.15)

Page 17: Using advanced composite materials Tobias Kamf - …555551/FULLTEXT01.pdf · TVE-12052 Examensarbete 30 hp September 2012 High speed flywheel design Using advanced composite materials

10

Applying this assumption to the equations in (2.10) along with an assumption of perfect

rotational symmetry in the system, 0

, only two of the original six will remain non zero,

namely:

0

0

z

Frr

z

r

rr

(2.16)

where Fr remain the only force affecting the system. This force is the centripetal force per unit

volume, also called force density, and can be calculated by [13]:

rV

rmFr

22

. (2.17)

If there are no shear stresses in the system, the axial stress will be constant along the z-

direction. However, this is usually is not entirely true. If a cylinder is considered, the axial

strain is usually slightly lower in the ends of the cylinder. But are stabilized and becomes

more or less constant as one approaches the centre of the cylinder.

The next step is to apply the zero shear approximation onto Hooke’s Law in (2.14) effectively

eliminating the right column. As the radial and hoop strain are of most interest the remaining

three equations can be merged into two by substituting the last, εz, row into the other two

yielding:

r

rrzzz

r

zzrr

r

rr

r

rrzzz

r

zz

r

rr

EEE

E

EE

EEE

E

EE

. (2.18)

Further simplifications can then be achieved by using the fact that a composite material

wound into a cylinder, with all fibres in the same direction, is approximately transversely

isotropic [14] as long as the winding angle is close to 90°. This tells us that:

rz EE . (2.19)

With this simplification the equations in Hooke’s Law take the form:

zzrzzrrrzzr

r

rr

zzrzzr

r

rzz

EE

EE

1

1

(2.20)

Page 18: Using advanced composite materials Tobias Kamf - …555551/FULLTEXT01.pdf · TVE-12052 Examensarbete 30 hp September 2012 High speed flywheel design Using advanced composite materials

11

In order to solve this system of equations an additional relation between εθ and εr have to be

found. This can be done by utilising the first two relations shown in (2.12). If the first derivate

in the second equation is approximated to be zero, meaning that the hoop displacement is

constant around the hoop, something that is usually true, the resulting equations becomes:

r

u

r

u

r

rr

(2.21)

By substituting ur in the second equation into the first it can be shown that:

0

)(

rr

rr

r

r

(2.22)

relating the two main system strains to each other.

In order to reduce the number of unknowns, the next step is to replace σθ in equation (2.20)

with σθ from (2.16) yielding the following expressions, where the prime sign symbols

differentiation with respect to r:

zzrzzrrrr

rzzr

r

rr

zzrzzr

r

rzz

rr

E

rr

E

EE

rr

22

22

1

1

(2.23)

By then combining (2.22) with (2.23) the εθ and εr strains can also be eliminated resulting in

the following differential equation:

01

1

1

22

22

22

zzrzzr

r

rzz

rr

zzrzzr

r

rzz

rr

zzrzzrrrr

rzzr

r

r

EE

rr

rr

EE

rr

E

rr

E

(2.24)

Page 19: Using advanced composite materials Tobias Kamf - …555551/FULLTEXT01.pdf · TVE-12052 Examensarbete 30 hp September 2012 High speed flywheel design Using advanced composite materials

12

By then replacing νrθ in the previous equation with the known relations between Young’s

Modulus , Shear Modulus and Poisson's ratios, here presented with the approximation from

(2.19) applied to the default case for an orthotropic material [11], yielding:

12

12

12

rz

r

zr

zzrrz

r

rr

rz

zzr

G

E

G

E

G

E

E

E

E

E

(2.25)

and then performing the differentiation of the last term in equation (2.24) the following

expression is obtained:

01

22

1

1

2

22

22

zzrzzr

r

rzz

rr

zzrzzr

r

rzz

rr

zzrzzrrrr

rzzr

r

r

rE

rE

rrr

EE

rr

E

rr

E

(2.26)

Moving all terms in (2.26) not depending on σr to the right side, in order to structure the

expression, yields:

zz

zrzzzz

zz

zzrr

zz

rzzr

r

rrr

rE

rE

Err

1

13

1

113 222

(2.27)

By then creating and utilizing the following identities:

zz

zrzzzz

zz

zzrr

zz

rzzr

r

rE

E

E

1

1

1

12

(2.28)

the equation in (2.27) takes the form of:

313 2222 rrr rrr (2.29)

Page 20: Using advanced composite materials Tobias Kamf - …555551/FULLTEXT01.pdf · TVE-12052 Examensarbete 30 hp September 2012 High speed flywheel design Using advanced composite materials

13

In this differential equation both σr and εz depend on r making it significantly harder to solve.

The equation, (2.29), can be made simpler if an approximation of zero axial strain is made.

This constrain will force εz to zero in all cases, effectively eliminating the r dependent α-term

from the differential equation making it take the form of a ordinary linear differential equation

of the second order. The general solution to this Euler-Cauchy [15] differential equation can

be written as:

392

22)1(

2

)1(

rrCrCr µµ

r (2.30)

where C1 and C2 are constants, depending on the boundary conditions.

An expression for σθ can then be found by inserting (2.30) into (2.16) yielding the expression:

22

2

22)1(

2

)1(

1

2

22)1(

2

)1(

1

39

39

rrCrC

µ

rrCrC

rrr

µµ

µµ

(2.31)

By performing the differentiation of the first term and multiplying the last one with 9

92

2

µ

µthe

above equation takes the form of:

9

)9(3

9

39

2)1()1(

2

222

2

22)1(

2

)1(

1

2

22)1(

2

)1(

1

µ

µr

µ

rrCrC

µ

rµrCurCr

µµ

µµ

(2.32)

which can be reduced to:

2

2

22)1(

1

)1(

2 39

µµ

rrCrCµr µµ

(2.33)

In order to determine the C1 and C2 constants present in both (2.30) and (2.33) a set of

boundary conditions is needed. In this application an appropriate set of conditions is that both

the inner and outer cylinder surface is subjugated to a generic pressure. These pressures will

serve to simulate the radial interference between the shells, this as the presence of a

neighbouring shell can be replaced by an appropriate pressure to one of the cylinder surfaces.

If these ideas are implemented as boundary conditions, they can be written as [12]:

ir Pa and or Pb (2.34)

where a represents the cylinder inner radius and b its outer radius. Pi and Po symbols the inner

and outer surface pressure respectively.

Page 21: Using advanced composite materials Tobias Kamf - …555551/FULLTEXT01.pdf · TVE-12052 Examensarbete 30 hp September 2012 High speed flywheel design Using advanced composite materials

14

By inserting both terms in (2.34) into (2.30) the following expressions is obtained:

o

µµ

r

i

µµ

r

bbCbCb

aaCaCa

13

9

13

9

22

22)1(

2

)1(

1

22

22)1(

2

)1(

1

(2.35)

which is an simple linear system of equations with respect to C1 and C2, in which only C1 and

C2 remains as unknowns.

By inserting C1 from the first equation in (2.29) into the second one and performing some

simple algebraic operations the following expression for C1 and C2 is obtained:

µµ

µ

i

µ

o

µµ

µµ

µ

o

µ

i

µµµ

ba

aPbPabKC

ba

baPabPabbaKabC

22

1133

2

22

33

1

(2.36)

where

392

2

µK , in order to form a more compact expression.

With this all parts of the equations in (2.30) and (2.33) are known and are ready for use, as

long as all the input variables are known. These values can be obtained from material data

sheets along with system specifications, regarding rotational speed and cylinder dimensions.

Page 22: Using advanced composite materials Tobias Kamf - …555551/FULLTEXT01.pdf · TVE-12052 Examensarbete 30 hp September 2012 High speed flywheel design Using advanced composite materials

15

2.3.1 Limitations

Note that the equations obtained here have a few limitations and can produce highly

inaccurate results if the input values forces the equations beyond these limitations. Most

critical is that the hoop through radial modulus ratio is not allowed to be equal to 3 as this will

make the Q factor and hence also the stresses diverge towards infinity. Physically this is not

possible and the stresses have to be continuous even at modulus ratios of 3 [12]. Therefore, in

order to avoid inaccurate results it is recommended that the ratio, for orthotropic materials, is

kept at values of at least above 5. For isotropic materials the modulus ratio is always 1 by

definition, so the problem solves itself.

The next limitation is that the equations do not account for the tensile strength of the material

and hence do not detect when the materials enter their plastic deformation area, where

Hooke’s law no longer is valid. Furthermore due to the use of the zero axial strain

approximation the results will also become inaccurate if the real system is subjected to axial

strains. The user has to be observant on both of these aspects in order to make sure that the

results are valid.

Finally the equations derived here assume zero shear stress in all directions, meaning that the

system is in stationary rotation with no external torques or accelerations in any direction. The

calculated stresses will hence not be valid if the real system is subjected to such forces, for

example the results would become inaccurate if the flywheel was rapidly drained or fed

energy, as that would result in both high torques and accelerations.

As this derivation made the assumption of a transversely isotropic material and not a truly

orthotropic material it only holds true as long as the radial and axial Young’s modulus is

approximately the same. If the two are too different this derivation has to be redone without

this simplification in order to give accurate results.

Page 23: Using advanced composite materials Tobias Kamf - …555551/FULLTEXT01.pdf · TVE-12052 Examensarbete 30 hp September 2012 High speed flywheel design Using advanced composite materials

16

2.4 Interference-fits

An interference-fit is a type of friction based fastening method. Generally it is used when an

object, usually a cog or pulley is to be fastened onto a round shaft and the fastening does not

have to be easily disassemblable. There are two main types of interference-fits. The term

shrink-fit is used if the parts are mounted by heating and cooling the individual components;

causing them to expand and shrink. Parts are instead mounted by the use of brute force alone

the term press-fit is often used.

To obtain an interference-fit the hole, in which the shaft is to be fitted is deliberately made a

little bit too small, or the shaft is made a little bit too large for the hole. This means that the

shaft will have to be forced into the part with the hole. Once mounted, this creates an interface

pressure between the shaft’s outer walls and the hole’s inner walls. The magnitude of this

pressure is determined by the difference between the hole inner- and shaft outer-diameters as

well as the Young’s modulus and geometry of the two parts.

Figure 4: Schematic picture of a interference-fit between two cylinders

For a interference-fit between two isotropic materials the interface pressure and resulting

material deformations can be calculated using the following formulas [16]:

i

io

io

i

oi

i

o

io

io

o

ii

o

i

io

io

i

o

o

io

io

o

i

r

i

rr

rr

E

rP

RR

RR

E

RP

rr

rr

E

r

RR

RR

E

RP

22

22

22

22

22

22

22

22

(2.37)

Depending on the size of the interference, and hence the interface pressure, the material will

experience a number of internal stresses. For this thesis, the most important are the hoop and

radial stresses. This as, these stresses easily can get large enough to plasticise or even crack

the surrounding material, if the interference is designed incorrectly.

Page 24: Using advanced composite materials Tobias Kamf - …555551/FULLTEXT01.pdf · TVE-12052 Examensarbete 30 hp September 2012 High speed flywheel design Using advanced composite materials

17

3 Simulations

3.1 Simulations in SolidWorks

The SolidWorks model of the flywheel was made as a full-scale model containing all

individual parts needed to build the real flywheel. However, as most of the machines support

structure was already done at the beginning of this thesis most of the modelling and

subsequent simulations focused on the rotor. The simulations were made using constant speed

loads, press-fit loads and constant temperature loads.

3.1.1 Approximate dimensions

By using the limiting values found under specifications together with the flywheel formulas

from the theory chapter a rough estimate of the flywheel’s dimensions can be made, this in

order to provide a starting point for the flywheel design process.

Input data, estimated: Note:

ρ 1600 [kg/m3] Approximate density of carbon composite

ri 100 [mm] Flywheel inner radius

h 300 [mm] Flywheel height

Input data, from specifications:

nr,max 30000 [rpm] Maximal rotational speed

nr,min 15000 [rpm] Minimal rotational speed

Ek,min 1.08 [MJ] Stored kinetic energy

Table 3: Approximate data.

Using equation (2.4) the required moment of inertia, that is required in order to store the

specified energy, can be calculated:

2918.0)1500030000(4

1008.123600

)(4

23600222

6

2

min,

2

max,

2

rr

kz

nn

EI (3.1)

Using equation (2.6) the required outer radius can be then be calculated:

mmrrrrrhI ooiioz 5.1482918.0))((2

1 2222 (3.2)

Using this radius and the mass formula for a cylinder the flywheel weight is calculated to:

kgmc 17.18)1.01485.0(3.01600 22 (3.3)

So in order to store 300Wh of energy in a 300mm high, carbon composite flywheel with an

inner radius of 100mm an outer radius of around 150mm is needed, and such a flywheel

would weigh around 20kg.

Page 25: Using advanced composite materials Tobias Kamf - …555551/FULLTEXT01.pdf · TVE-12052 Examensarbete 30 hp September 2012 High speed flywheel design Using advanced composite materials

18

3.1.2 Using orthotropic materials

As a first step towards understanding the behaviour of rotating shells in SolidWorks some

initial simulations were done. These simulations were done on a system with values close to

those found in the approximate dimensions calculation, this in order to keep the simulation

results on a sensible scale.

One of the first problems encountered in SolidWorks was the usage of orthotropic materials in

cylindrical coordinate systems. In SolidWorks the only difference, between an orthotropic

material defined in Cartesian coordinates and an orthotropic material defined in cylindrical

coordinates, is the frame of reference used. If a surface, plane or edge is selected the material

becomes defined in a Cartesian coordinate system and if instead an axis is selected the

material becomes defined in a cylindrical coordinate system around this axis. However in the

move form Cartesian coordinates, x y z, to cylindrical coordinates, θ r z, SolidWorks continue

to name its variables with x y z as subscripts. So the question arise which index is which? Is x

now θ, r or even z? Only one example of this was found on SolidWorks support page [17].

Figure 5: Coordinate naming in a cylindrical coordinate system

And it stated that if the reference axis of symmetry is going along the z-axis in the Cartesian

coordinate system, the z direction remains z even in cylindrical coordinates. Furthermore, it

was stated that in that case x becomes θ and y becomes r. Note that this is only verified to be

true as long as the symmetry axis goes along the z direction, so instead of trying all possible

combinations, and facing the risk of mixing coordinate systems, it was deemed safer to just

build all CAD-models with symmetry around the z-axis from this point on.

Page 26: Using advanced composite materials Tobias Kamf - …555551/FULLTEXT01.pdf · TVE-12052 Examensarbete 30 hp September 2012 High speed flywheel design Using advanced composite materials

19

3.1.3 Press-fits

SolidWorks is capable of performing calculations on press-fits and shrink-fits, calculating

both the resulting deformations and interface pressures. The calculations works for both

isotropic and orthotropic materials, but sometimes generate questionable results if different

magnitudes of interference are used between the shells on orthotropic materials. Due to this it

is recommended to take a closer look on the results generated, in order to avoid the usage of

questionable results.

In order to make a press-fit the model have to be made with the interference built into the

parts, meaning that the part that is to be press-fitted have to be modelled a little bit too big, for

shafts, or a little bit too small, for holes. The press-fit is then defined in the simulation mode

as a component contact type named: “shrink-fit”. Setting the option “Incompatible bonding

options” to “More accurate” also improves the accuracy of the press-fit calculations [18].

During this work it was additionally observed that the mesh size must be fine enough, so that

each shell is at least divided into three regions, in order to give satisfactory results.

Figure 6: Shell interference with two surfaces, defined as a press-fit with zero friction.

Page 27: Using advanced composite materials Tobias Kamf - …555551/FULLTEXT01.pdf · TVE-12052 Examensarbete 30 hp September 2012 High speed flywheel design Using advanced composite materials

20

3.2 Matlab calculations with Spin2Win

The Matlab program Spin2Win [19] is based on the equations described in the theory chapter.

Using these equations the Matlab program calculates three important aspects of the system.

The first aspect is the effect of the centrifugal loads and its distribution through the material,

this is important to know as it sets the limits for the design. The second calculated aspect is

the effects of interference and surface contact in between the different layers, this is also an

important design variable as it introduces stresses in the flywheel. Lastly, the likelihood that

press-fits will be used as the main fastening method means that the program also has to be

able to cope with press-fit calculations as well as the effects that they will have on the rest of

the system.

3.2.1 Centrifugal forces

The pure centrifugal forces are calculated using equations (2.24) and (2.27) together with

(2.30) and the interference pressures set to zero. This is equal to that the shells have no

interaction at all and all shells rotate free of interference from their neighbours. The stress

distribution is described as a function or radius, with the values determined by the material

parameters as well as the cylinder geometry. For isotropic materials, such as most metals,

these calculations can be simplified by the fact that µ becomes 1, this is however not the case

for orthotropic materials, such as composites. For Matlab this makes little difference, and the

equations generate accurate results regardless of material. Note that the red and black line is

not present in the figure below. This, as the example system did not contain any press-fits

Figure 7: Example stresses due to centripetal forces in an aluminium cylinder at 22k rpm.

Page 28: Using advanced composite materials Tobias Kamf - …555551/FULLTEXT01.pdf · TVE-12052 Examensarbete 30 hp September 2012 High speed flywheel design Using advanced composite materials

21

3.2.2 Press-fit calculations, matrix approach

The equations presented in (2.31) are meant to be used on a two shelled, isotropic geometry.

Therefore, problems occur if more than two shells are used or if the shells are made of

orthotropic materials, ultimately making the model utterly useless for all but few cases

encountered in this thesis. So in order to work around these limitations some modifications of

the formula was needed.

As a first step the equation had to be modified so that it could work with more than two shells

at a time. This would not solve the problems it had with orthotropic calculations, but it was

deemed to be good enough as a first approximation. The solution was to convert the equation

into a matrix and from there construct a linear system of equations containing the geometry of

all shells. After some trial and error with trying to find the correct deformational relationships

between the shells a working matrix was found. The full creation of the final matrix can be

seen in the Main_calc code description found in Appendix A.

Below is an example matrix that represents a four shelled system. Due to the clear pattern in

the matrix it can easily be expanded for a larger system, or reduced for a smaller one.

100110000

110011000

011001000

10000000

01000000

00100000

00010000

00001000

00000100

3

2

1

3

2

1

U

U

U

K

K

K

A

3

2

1

0

0

0

0

0

0

B

9

8

7

6

5

4

3

2

1

x

x

x

x

x

x

x

x

x

C , (3.4)

where K and U are factors derived from the last two equations in (2.31) and looks as follows:

n

nino

nino

nc

ni

n

n

nino

nino

nc

ni

n

vrr

rr

E

rU

vrr

rr

E

rK

2

,

2

,

2

,

2

,

,

,

12

1,

2

1,

2

1,

2

1,

1,

1,

(3.5)

The above equation system can be solved quite quickly by using Matlabs build in linear

equation solver. The sought after interference pressures will here be stored in the first part of

the C variable; in this case the three interference pressures would become stored in x1, x2 and

x3. As a test of the matrix calculation accuracy it was tested against SolidWorks FEM module

and found to give results within 2% of SolidWorks simulated values, for isotropic materials at

least. But it still performed poorly for orthotropic materials, giving errors as large as 120%.

So in order to be able to do accurate calculations for orthotropic materials even further

modifications of the formulas was necessary.

Page 29: Using advanced composite materials Tobias Kamf - …555551/FULLTEXT01.pdf · TVE-12052 Examensarbete 30 hp September 2012 High speed flywheel design Using advanced composite materials

22

This was done mainly by trying to modifying of the K and U constants so that they did

account for the different Young’s modulus, all this in order to give a neat algebraic solution to

the problem. This did however prove to be a futile attempt and was ultimately abandoned

instead giving room for a numerical method.

3.2.3 Press fit calculations, numerical approach

The numerical method is based on shell displacement combined with the equations shown in

(2.12) and (2.33) together with Matlab's built in solver for non-linear equation system called

fsolve. In order to calculate the displacements the following relation was used [11]:

r

r

r

r

. (3.6)

The main idea is to use the fact that the interface pressure must be large enough to compress

or expand the different components so that the resulting displacements overcomes the initial

interference between the components. This can be written as:

0int1,, onrinr PP . (3.7)

Using the pressures from the matrix calculation, the non-linear solver makes a first calculation

of how large deformations these pressures would introduce into the system. By then

comparing these deformations to the given interface between the parts the solver can

approximate a new set of pressures that hopefully gives a better result. The solver then repeats

this procedure until a set of pressures is found that makes all resulting remaining interferences

zero. For a more detailed description please see the Pd_calc section in Appendix A. With the

final function of the Matlab code working some evaluation of the codes performance was

needed.

Page 30: Using advanced composite materials Tobias Kamf - …555551/FULLTEXT01.pdf · TVE-12052 Examensarbete 30 hp September 2012 High speed flywheel design Using advanced composite materials

23

3.3 SolidWorks versus Spin2Win

The Spin2Win Matlab program was designed to replace SolidWork's somewhat slow FEM

module as the main design tool used in this project. But in order to be sure that it was accurate

enough a comparative study between the two was needed. The goal of this study was to verify

that both SolidWorks and Spin2Win gave the same results for the same input data. If so was

proven the case Spin2Win would be used as the main design tool from here on. The

simulation results from SolidWorks was extracted from the FEM module using the built in

probe tool and then imported into Matlab and plotted on the same type of plots that was used

for the Spin2Win program, this in order to simplify the comparison between the results.

When using the probe tool to extract simulation data it is important that it have been set up in

the right way. In order for it to extract data in cylindrical coordinates it is crucial to choose the

used axis of symmetry under advanced options, see Figure 8, as an extra reference when

defining stress, strain or displacement data plots. Else, SolidWorks will use its default settings

and measure in Cartesian coordinates.

Figure 8: Stress plot in along X with the central axis set as an extra reference

If successful the symbol shown in Figure 9 should appear in

one of the corners of the main window, in addition to the

normal XYZ symbol. This new symbol informs the user

about the used notations. In this case the old X direction is

now connected to R, radial direction, and hence plots defined

in X direction will now show radial forces. The Y arrow

have disappeared and been replaced by a green-tinted

cylinder, telling the user that plots defined in Y direction now

will show hoop forces. Z remains the same as before the

switch.

Figure 9: Symbol for cylindrical

coordinates

Page 31: Using advanced composite materials Tobias Kamf - …555551/FULLTEXT01.pdf · TVE-12052 Examensarbete 30 hp September 2012 High speed flywheel design Using advanced composite materials

24

3.3.1 Case 1: Aluminium cylinder at 22k rpm

In the first case a single, spinning, aluminium cylinder was investigated. This was done in

order to test Spin2Win’s accuracy when it comes to calculating simple stress distributions

through an isotropic material. This single cylinder was kept at a constant 22.000 rpm.

Input data:

Shell 1 Aluminium, isotropic:

Inner diameter: 100 mm

Outer diameter: 300 mm

Height: 250 mm

Results:

Figure 10 shows a segment of the aluminium cylinder from SolidWorks. The segment is a 32°

cut, constrained with circular symmetry, in order to save simulation time. In the picture the

radial stress distribution is shown. The distribution is not the same in both ends of the

segment due to the fact the lower end is constrained with a zero axial movement constraint.

Figure 10: A cut of the Aluminium cylinder in SolidWorks FEM module.

Page 32: Using advanced composite materials Tobias Kamf - …555551/FULLTEXT01.pdf · TVE-12052 Examensarbete 30 hp September 2012 High speed flywheel design Using advanced composite materials

25

A mesh with an element size of 6mm was used in this simulation. The measurements were

taken in the middle of the mesh where the axial stress was more or less constant. The

extracted data was then imported into Matlab where it was combined with the results from

Spin2Win. The plot below shows this combined data.

Figure 11: Simulation results for Case 1.

Conclusion, Case 1:

The calculations for the radial and hoop stress are accurate to within 2.5% between the two

methods. However, the error increases somewhat for the displacement calculation with the

first section still being within 2.5% but as the radius is increased so does the error, with the

final data tip being 10% off and still falling. The reason for this remains unknown but

probably has its origin in the fact that Spin2Win ignore axial strains while SolidWorks does

not. But overall the results are within acceptable limits. This shows that Spin2Win is capable

of doing calculations on isotropic materials even though it is developed for orthotropic

calculations.

Page 33: Using advanced composite materials Tobias Kamf - …555551/FULLTEXT01.pdf · TVE-12052 Examensarbete 30 hp September 2012 High speed flywheel design Using advanced composite materials

26

3.3.2 Case 2: Press-fitted aluminium into a Carbon composite

In this case Spin2Win’s ability to calculate press-fit pressures in a system with both isotropic

and orthotropic materials was put to the test. In order to remove additional sources of errors

the two cylinders were kept stationary.

Input data:

Shell 1 Aluminium 7075, isotropic:

Inner diameter: 100 mm

Outer diameter: 200.5 mm

Height: 250 mm

Shell 2 T700-epoxy, orthotropic:

Inner diameter: 200 mm

Outer diameter: 300 mm

Height: 250 mm

Results:

The results have been extracted in the same way as in Case 1. The simulation was again made

on a 32° cut and with a mesh size of 6mm. Figure 12, below, shows SolidWorks somewhat

lacking method of organizing and labelling data points. The points here marked in the figure

were also the points that were later used to extract the simulation data from the model.

Figure 12: Data point labeling in Solidworks

Page 34: Using advanced composite materials Tobias Kamf - …555551/FULLTEXT01.pdf · TVE-12052 Examensarbete 30 hp September 2012 High speed flywheel design Using advanced composite materials

27

The results below have again been made in the same way as in Case 1 with a combination of

Spin2Win and SolidWorks data.

Figure 13: Simulation results for Case 2

Conclusion, Case 2:

The curve shapes are again quite similar in between the two methods. However, their

magnitude differs a lot more than in Case 1. Spin2Win gives, for the hoop stress, values that

are around 10% off, compared to the SolidWorks data. The same can be said for the radial

stress where the bottom point is 13% off target. However the error shrinks closer to the

endpoints. The displacement curve is the worst one, with a difference as large as 50%

between the two models. Combined, these errors makes Spin2Win unfit for calculations on

systems in standstill, where precision is needed. It can however still be used as an evaluation

tool that shows the scale of the forces in play.

Page 35: Using advanced composite materials Tobias Kamf - …555551/FULLTEXT01.pdf · TVE-12052 Examensarbete 30 hp September 2012 High speed flywheel design Using advanced composite materials

28

3.3.3 Case 3: Press-fitted aluminium, glass, carbon in 22k rpm

In Case 3 a three shelled geometry was used. The setup consisted of one inner aluminium

cylinder onto which a glass fibre and then also a carbon fibre cylinder was press-fitted. All

three shells were then spun up to 20.000 rpm. This case was designed to test Spin2Win's

ability to cope with multiple shells of different materials while rotating.

Input data:

Shell 1: Aluminium 7075, isotropic:

Inner diameter: 100 mm

Outer diameter: 200.5 mm

Height: 250 mm

Shell 2 Advantex-epoxy, orthotropic:

Inner diameter: 200 mm

Outer diameter: 300.25 mm

Height: 250 mm

Shell 3 T700-epoxy, orthotropic:

Inner diameter: 300 mm

Outer diameter: 350 mm

Height: 250 mm

Figure 14: Spin2Win GUI

Above is a picture of the Spin2Win GUI with the data from Case 3 fed into the correct fields.

Note that all fields that are unused are filled with zeros. This is not necessary as Spin2Win

will automatically ignore all fields above the first three as the "Number of active shells"

setting is set to 3.

Page 36: Using advanced composite materials Tobias Kamf - …555551/FULLTEXT01.pdf · TVE-12052 Examensarbete 30 hp September 2012 High speed flywheel design Using advanced composite materials

29

Results:

The simulation was again made on a 32° cut but with a mesh size of 8mm instead of 6mm due

to the larger model. This reduced the number of mesh elements in the model and hence saved

some simulation time.

Figure 15: Simulation results for Case 3

Conclusion, Case 3:

Again the curves seem to follow each other quite nicely. The Spin2Win hoop stress varies in

between -8% and +3% from the values taken from SolidWorks. For the radial stresses it looks

a bit worse. Measured in absolute values the difference is quite small, around 3MPa, but in

percentage terms the error is at average around 25% with data-points. The radial displacement

curve is almost identical in between the two methods, with an average error at around 5%.

Apart from the last interference in between the carbon and glass composite where the error is

around four times as large. The same kind of "peak" error could be seen in Case 2 so at least

the error is consistent. Overall it seems that the errors are a bit too large for it to be safe to

solely use Spin2Win as the main design evaluation method. However, it can be used to find

an approximate design and as a method to comparing two or more different designs.

Page 37: Using advanced composite materials Tobias Kamf - …555551/FULLTEXT01.pdf · TVE-12052 Examensarbete 30 hp September 2012 High speed flywheel design Using advanced composite materials

30

4 Machine design A quick overview of the whole machine will be presented in this chapter, this in order to both

document the design, as well as to ease the understanding of the function of the machine as a

whole. The machine is here divided into its main parts, each part containing a number of

smaller components. For an even more detailed view of the machine refer to Appendix B:

Machine Drawings. The word “part” in this text refers to an assembly or joining of two or

more smaller “components”.

Figure 16: Photo rendition of the complete flywheel with a 45° cut.

The picture above shows the complete assembled machine, excluding copper windings and

permanent magnets. Each structure has been given its own paragraph, beginning on the next

side, describing its function and components. Note that no bolts or nuts are present in this

SolidWorks model, this in order to reduce the workload on the used computers.

Page 38: Using advanced composite materials Tobias Kamf - …555551/FULLTEXT01.pdf · TVE-12052 Examensarbete 30 hp September 2012 High speed flywheel design Using advanced composite materials

31

4.1 Support structure

The support structure’s main function is to act as a platform on which all other components

are fastened. It consists of two main aluminium plates (1) containing a number of guiding

holes and slots. The plates are spaced from each other with six square steel pipes (2) bolted to

the plates by the use of brackets. In order to be able to stiffen the structure if need be, the six

steel pipes also have holes (3) in which diagonal steel wires can be mounted and tightened

using turnbuckles in order to stiffen the structure. Both the upper and lower plate has a backup

bearing (4), should the magnetic bearings fail. Both sides also have a plastic cup (5) for the

magnets of the passive axial magnetic bearing.

Figure 17: Support structure overview

Page 39: Using advanced composite materials Tobias Kamf - …555551/FULLTEXT01.pdf · TVE-12052 Examensarbete 30 hp September 2012 High speed flywheel design Using advanced composite materials

32

4.2 Active magnetic bearings

The active magnetic bearing consists of two parts, one static and one moving. The static part,

shown in Figure 18, is fastened into the main plates of the support structure. It contains the

electromagnets for the magnetic bearings and two position sensors (6) used to define the main

shaft’s location. In the picture the electromagnet windings are not in place so the stator plates

(7) lies bare. On the top side there are four holes (8) that are later are to be used by the

electromagnet cables. In order to reduce the eddy current losses plastic bolts (9) are used to

press the stator steel plates together, instead of regular iron bolts.

Figure 18: Active magnetic bearing housing, over and under-side

The moving part is the magnetic bearing target, shown in Figure 19, which is fastened to the

machines main shaft by the use of screws placed in the three inclined slots (12). The whole

target and shaft is then placed inside the central “hole” in the above stationary part. The target

consists simply of two aluminium plates (13) on each side of a circular stator steel stack (14).

Again plastic bolts (11) are used in order to reduce eddy current losses.

Figure 19: Active magnetic bearing target, over and under-side.

Page 40: Using advanced composite materials Tobias Kamf - …555551/FULLTEXT01.pdf · TVE-12052 Examensarbete 30 hp September 2012 High speed flywheel design Using advanced composite materials

33

The electromagnet’s stator steel is divided into four sections (10) each with two “teeth” each.

Each section’s windings can be individually controlled using external power-electronics and

as such the forces on the magnetic bearing target can be controlled. If the sensors detect that

the shaft is too close to one side the winding current is increased on the opposite side leading

to the attraction of the target to that side. As the positional error shrinks the power-electronics

reduces the winding current as well, effectively centring the main shaft.

4.3 Stator

The stator consists of a central pipe (15) with 27 individual windings (16) glued to its surface.

The windings are divided into 18 “high voltage” and 9 “low voltage” windings distributed

over three phases. This allow energy to be fed to the machine through the low voltage

windings at the same time as energy is drained from the high voltage windings, effectively

separating the charge circuit from the drain circuit making their operation more or less

independent of each other. The stator is fastened to the one of the main plates in the support

structure by the use nine small screws each with its own premade hole (17).

Figure 20: Schematic model of the stator.

Page 41: Using advanced composite materials Tobias Kamf - …555551/FULLTEXT01.pdf · TVE-12052 Examensarbete 30 hp September 2012 High speed flywheel design Using advanced composite materials

34

4.4 Rotor

In the core of the rotor is an aluminium cylinder (22) on which all other components are

mounted. The machines central shaft (18) is mounted in the central hole of the aluminium

cylinder through press-fitting. On the main shaft an aluminium cup (20) and steel cylinder

(21) is then fastened, also through press fitting. The purpose of the aluminium cup is to both

stabilize the steel cylinder and to act as housing for the plastic cup (19) containing the axial

bearing magnets. The steel cylinder also has two functions; one is to act as a yoke for the

magnetic flux in order to reduce the reluctance of the magnetic circuit, and the other is to

strengthen the press fit between the main shaft and aluminium core by preventing the

aluminium to expand. On the opposite side from the aluminium cup is yet another plastic cup

(24) containing the other half of the axial bearing magnets, this so that the rotor can be

supported from both directions.

Figure 21: Rotor cross section and the rotor as a whole

Inside the aluminium cylinder is a plastic matrix (26) containing the machines permanent

magnets (25). The magnets are arranged in a Halbach structure in order to strengthen the field

going inwards, this in an attempt to compensate for the loss in field strength due to the fact

that the magnets are not mounted on a ferromagnetic core as is often the case in other

permanent magnetized machines.

Lastly the whole core is inserted into a thick shell of composite (23) which will act as energy

storage; by increasing the systems moment of inertia, and as structural support; by preventing

the core from expanding as the rotational speed is increased. The making of this composite

shell was proven not to be a trivial task and as such external experience had to be brought in.

Page 42: Using advanced composite materials Tobias Kamf - …555551/FULLTEXT01.pdf · TVE-12052 Examensarbete 30 hp September 2012 High speed flywheel design Using advanced composite materials

35

4.5 The Swerea SICOMP concept

Swerea SICOMP in Piteå, Sweden assisted this project with the composite design,

calculations regarding residual stresses; as a result of manufacture as well as material data and

general composite design tips. Additionally, they will also be the ones producing the final

flywheel composite.

4.5.1 Layups

Although an approximate shell size had been calculated in 3.1.1 it was far from a final shell

design. After some initial discussion and concept refining the following main concepts for the

composite “layup” was proposed by Swerea [22]. These layups are specially designed so that

they can be cured in once curing-cycle, this in order to reduce the cost of the composite. The

alternative being that each layer is cured individually and then press-fitted onto each other, a

method that have previously been proven valid although expensive [20].

Layup 1 Layup 2

Thickness Angle Tension Material Thickness Angle Tension Material

(mm) (°) (MPa) (-) (mm) (°) (MPa) (-)

4 ±89.5 40 T700 4 ±89.5 40 Advantex

14 ±89.5 60 T700 26 ±89.5 60 Advantex

16 ±89.5 70 T700 26 ±89.5 70 Advantex

16 ±89.5 80 T700 24 ±89.5 80 T700

Layup 3

Thickness Angle Tension Material

(mm) (°) (MPa) (-)

4 ±89.5 40 T700

26 ±89.5 60 T700

26 ±89.5 70 T700

24 ±89.5 80 T800

Table 4: Proposed composite layups

In this table the thickness column gives the proposed wall thickness of each shell section. The

angle column tells what winding angle that is to be used for the filament, as seen from the

flywheel central axis. The tension column contains which tension that is to be applied in the

filament as it is wound onto the flywheel. Finally the material column simply gives material

of the used filament for each section.

As can be seen in Table 4 Layup 1 consisted solely of T700 carbon composite only wound

with different filament tensions in an attempt to minimize the residual stresses. Layup 2 is a

mixture of glass and carbon fibre and it was presented as a cheaper alternative to Layup 1.

Finally Layup 3 consists of three layers of T700 and a final layer of the much more expensive

T800. This was presented as a high end alternative as T800 can withstand higher stresses than

that of T700 but for a higher cost.

Page 43: Using advanced composite materials Tobias Kamf - …555551/FULLTEXT01.pdf · TVE-12052 Examensarbete 30 hp September 2012 High speed flywheel design Using advanced composite materials

36

4.5.2 Manufacturing

As mentioned in the previous paragraph the composite is to be produced by the winding of a

thin fibre around a central cylinder, a method commonly known as filament winding. The

basic idea of filament winding is to wind one or more separate threads onto a core cylinder,

known as the mandrel. Alongside the mandrel then goes a track on which a fibre guide travels

up and down the mandrel’s length. As the mandrel spins the guide ensures that the matrix

drenched filaments is evenly distributed along the mandrel. Once the desired thickness of the

composite is reached the whole mandrel is put in an oven in which the matrix cures or

“hardens”. After its time in the oven the mandrel and composite is allowed to cool. Once the

composite have cooled off the mandrel is removed leaving the finished composite cylinder.

[21]

Figure 22: Schematic picture of the filament winding process

Often, as the filaments are wound onto the mandrel, the tension in the filaments is regulated in

order to minimize the residual stresses that will be created during the curing process. In the

concepts from Swerea the composite would be wound with both different tensions and

materials. Additionally, the composite would also be wound on a steel mandrel.

The reason that the composite is not directly wound onto the flywheels aluminium core, and

instead wound onto a steel mandrel first, is that the composite shell often comes loose from its

mandrel after curing. This is often just a welcome side effect, as it makes the mandrel easily

separable from the composite, but in this application the composite must sit firmly on the

aluminium core with no risk of coming loose.

Page 44: Using advanced composite materials Tobias Kamf - …555551/FULLTEXT01.pdf · TVE-12052 Examensarbete 30 hp September 2012 High speed flywheel design Using advanced composite materials

37

4.5.3 Residual stresses

The previously mentioned residual stress is an effect of the different thermal expansion

coefficients between the materials in the composite, alongside with the chemical shrinkage of

the matrix during curing. As the composite is heated, during the curing process, the uncured

liquid matrix allows the composite fibres expand freely. But after the curing, as the composite

is allowed to cool off, the fibres in the composite are no longer allowed to freely move as the

matrix now is in solid form. Furthermore, even more stresses are created due to the fact that

the matrix itself usually shrinks somewhat during curing, as it moves from being a viscous

liquid to a cross-linked solid material.

Together these two effects create the so called residual stresses in the composite. The residual

stresses remain inside the material after it is finished and is impossible to get completely rid

of, although they can be reduced. If these stresses are not considered while designing the

composite, or if the material is wrongly cured, the residual stresses can easily get large

enough to permanently damage the composite as it cools. These damages primly consist of

fibre breakage; which weakens the material, and delamination in between different layers in

the composite; creating cracks inside or on the surface of the composite.

Figure 23: Residual radial stresses for Layup 2 on a steel mandrel.

The figure above shows an example of the radial residual stresses taken from the simulation

data generated by Swerea. The top is at around half the yield strength of the epoxy matrix and

given the thickness of the shell this is quite a good result. However, this means that half of the

material strength is used up for residual stresses leaving less than half the strength for the

actual load.

0

2

4

6

8

10

12

14

99 119 139 159 179

Rad

ial S

tress (

MP

a)

Radius (mm)

Page 45: Using advanced composite materials Tobias Kamf - …555551/FULLTEXT01.pdf · TVE-12052 Examensarbete 30 hp September 2012 High speed flywheel design Using advanced composite materials

38

Figure 24: Residual tangential stresses for Layup 2 on a steel mandrel.

As can be seen in the graph above the residual tangential stresses becomes much larger than

the radial ones. This is generally the case as a filament wound cylinder is much stiffer in the

tangential direction, along the fibres. The values shown here, although high compared to the

radial ones, are of no concern as the composite have a tensile strength of around 2500MPa in

this direction.

Figure 25: Axial residual stresses for Layup 2 on a steel mandrel.

The residual axial forces, shown above, seem to remain low throughout the material. All data

presented here was again supplied by Swerea [22]. For each Layup similar graphs of the

residual stresses were generated, each set containing graphs for all three main stresses; axial,

radial and tangential With this data as a base the real design of the flywheel composite could

commence.

-110

-60

-10

40

90

140

99 119 139 159 179

Tang

ential S

tress (

MP

a)

Radius (mm)

-15

-13

-11

-9

-7

-5

-3

-1

1

3

5

99 119 139 159 179

Axia

l S

tress (

MP

a)

Radius (mm)

Page 46: Using advanced composite materials Tobias Kamf - …555551/FULLTEXT01.pdf · TVE-12052 Examensarbete 30 hp September 2012 High speed flywheel design Using advanced composite materials

39

4.6 Layup evaluation with Spin2Win

As mentioned previously, Spin2Win was not deemed accurate enough to be used as sole

design method. However, it was deemed accurate enough to be used as an evaluation tool,

used for identifying the most promising design among a number of different alternatives.

Among the three proposed layups; Layup 1 and Layup 2 were deemed the most interesting.

This as Layup 3 was not only the most expensive but also had a much higher risk to

delaminate during manufacturing, according to the simulations made by Swerea. An initial

simulation was then made on the two remaining layups and the results are shown in the graph

below. Note that the composite shells at this stage were assumed to float freely in space

without any constraints. This as the most interesting factor, at this stage, was the composite’s

performance itself, and not its interaction with the rest of the system.

Figure 26: Layup 1 and 2 comparison, 30k rpm.

One of the most interesting differences from the graphs above is the difference between the

shapes of the two radial stress graphs. The main, black, radial stress curve from layup 2 has an

overall lower magnitude as well as the fact that it even goes negative for the last part. The fact

that it goes negative is a sign that the matrix in the material is subjected to compressive

stresses, something that is welcome as the compressive strength of epoxy is many times

higher than its tensile strength.

This differences between the two layups, made layup 2 the most interesting one for further

testing. Although, layup 1 had both lower hoop stress and radial displacement, the fact that

layup 2 had a more favourable radial stress distribution was the deciding factor. The reason

for this, as previously mentioned, is that the first thing to fail in a cylindrical composite often

is the matrix in between the filament layers. This matrix failure is often a result of high radial

tensile stresses; therefore minimising these stresses are top priority.

Page 47: Using advanced composite materials Tobias Kamf - …555551/FULLTEXT01.pdf · TVE-12052 Examensarbete 30 hp September 2012 High speed flywheel design Using advanced composite materials

40

A second Spin2Win simulation was done on Layup 2 but this time both the aluminium core

cylinder was added as well as a layer of dummy magnets on the inside of the cylinder. This

was done in order to make the weight distribution of the simulation closer to that of the real

design.

Figure 27: Layup 2 with added core and magnets, 30k rpm

The results of the added weight can be seen in Figure 27. The radial stress is negative or near

negative over the whole radius, this means that the matrix in this case cannot crack from

tensile stress only from compressive stress. But as previously mentioned, the compressive

strength of epoxy is much larger than its tensile strength so this bode well for Layup 2.

Furthermore, the hoop stress in the composite remains well below the tensile strength. The

main problem however, lies in the hoop stress in the aluminium cylinder with values as high

as 600MPa. If one uses Von Mises yield criterion [11] the cylinder will enter the plastic

deformation zone even without the added effect from the radial and axial stress.

Page 48: Using advanced composite materials Tobias Kamf - …555551/FULLTEXT01.pdf · TVE-12052 Examensarbete 30 hp September 2012 High speed flywheel design Using advanced composite materials

41

4.7 Final design in SolidWorks

With an approximate design found in Layup 2, it was high time to try it out in SolidWorks.

This serves two purposes. The first is that Spin2Win, as previously proven, is not deemed

accurate enough to be used as the sole design tool. So for the fine tuning of the design a more

reliable tool is needed. This means that SolidWorks have to be trusted to make more accurate

calculations than Spin2Win, something that has not been proven but is simply assumed to be

the case, as SolidWorks is a multi-million, commercially recognized product.

The second purpose is to compare the Spin2Win results for Layup 2 to this more realistic

simulation in order to see the differences in between the two methods for a full scale system.

Figure 28: Simulation data for Layup 2, 30k rpm

As can be seen in Figure 28 above the Spin2Win calculations is not too far off from the

SolidWorks simulations. However, there are some critical differences. Most important is

perhaps the large difference in the hoop stress of the aluminium cylinder, radius 93-98, where

SolidWorks gives a value close to 200 MPs lower than Spin2Win. While the value is still very

high for being in an aluminium construction it is at least below the tensile strength. However,

this could also just be a side effect of the somewhat coarse mesh-size used in SolidWorks.

Page 49: Using advanced composite materials Tobias Kamf - …555551/FULLTEXT01.pdf · TVE-12052 Examensarbete 30 hp September 2012 High speed flywheel design Using advanced composite materials

42

In an attempt to even further lower the hoop stress in the aluminium some modifications to

Layup 2 had to be done. Two main methods were used in order to achieve this. The first

alternative was to increase the press-fit in between the composite and aluminium; in order to

increase the initial compressive stress, and the second alternative was to make the composite

stiffer; so it prevents the aluminium from expanding.

The radial interference in between the aluminium and composite could not be made any larger

than 0.2mm due to the fact that the composite was to be shrink-fitted onto the aluminium and

it was unknown how the composite would react to heating and cooling. So in order to be safe

all the shrinking had to be done on the aluminium cylinder by cooling it. At -150°C the

aluminium core would have shrunk 0.35mm giving some, but not much, margin for error.

The second method, to stiffen up the composite, was achieved by simply increasing the

amount of carbon fibre composite. It showed that the best ratio was around 50-50, meaning

equal thickness of the carbon and glass composite layers.

Figure 29: Layup 2 vs. Layup 2 50-50, 30k rpm

Page 50: Using advanced composite materials Tobias Kamf - …555551/FULLTEXT01.pdf · TVE-12052 Examensarbete 30 hp September 2012 High speed flywheel design Using advanced composite materials

43

Figure 29 shows the effects of the increased carbon composite thickness. The aluminium hoop

stress is forced below 400MPa and the radial stress in the glass fibre, radius 98-138, is well

below over the whole section. Furthermore, the radial displacement is lowered by on average

20% over the whole radius. There is a drawback with this 50-50 layup though, and that is that

the last part of the carbon composite is experiencing positive radial stresses. For this reason

one might argue that it would be better to make the carbon composite a little bit thinner so

that the stress becomes negative again. However, this would lead to a less stiff composite

allowing the aluminium core to expand again. It was deemed that this 50-50 layup was the

better of the two alternatives.

5 Conclusion With the final touches laid to the composite the flywheel design was deemed finished. In

conclusion it can be said that the most important feature in this design is the ratio between

carbon and glass fibre composite coupled with the weight of the magnets in the core. This

allows for control of the radial stresses, which otherwise tends to be the limiting factor when

working with rotating composites.

In this design the heavy magnets starts to press on the aluminium as the flywheel begins to

spin up. This forces the aluminium to expand and start pressing on the inner glass fibre

composite creating compressive stresses throughout the glass fibre. Furthermore, as the glass

composite comes into contact with the much stiffer carbon composite yet another interference

pressure is created that prevents the glass fibre from freely expanding. In turn this second

interference pressure leads to compressive radial stresses in the carbon composite.

This approach has, at least to my knowledge, not been tried before. It is a method that

combines the electrical machine and composite of the flywheel, making them work together

in order to control the radial stresses. More work could be put into finding an even better ratio

or combination, current design is by no means optimal. For example it can be questioned if

the aluminium core is needed at all; perhaps the magnets could be mounted directly on the

composite? As it in its current state is the limiting factor in the design.

As for the stored energy a quick SolidWorks calculation gives a total of 766Wh of stored

kinetic energy in the whole rotor. This is more than double the specified minimum limit.

However, the rotor is also more massive than that which was initially calculated, and now

weighs in at just above 48kg, giving the rotor a specific energy of 16Wh/kg. This is a quite

low number but at least on the same scale as Flybrid Systmes flywheel which had 22Wh/kg. If

this system is able to go beyond the specified speed of 30 000rpm and increase its speed by

20% it will reach the same specific energy as the Flybrid Systems flywheel. Something that is

not impossible as the radial or hoop stress is not yet close to their maximal values.

Machine safety is yet another concern. While the carbon fibre is far from reaching its tensile

hoop stress the same cannot be said for the aluminium and glass fibre. With the most critical

being the aluminium core, having stresses close to the 500MPa yield strength. The theory here

is that the carbon composite will be the material holding the machine together. However, this

has not yet been verified as a valid method and should be marked for some further studies. At

the moment these concerns will be addressed by performing the initial flywheel tests inside a

vacuum chamber with thick steel walls.

Page 51: Using advanced composite materials Tobias Kamf - …555551/FULLTEXT01.pdf · TVE-12052 Examensarbete 30 hp September 2012 High speed flywheel design Using advanced composite materials

44

The Matlab program, Spin2Win, that have been developed as a part of this thesis have shown

to be a powerful tool to quickly compare different flywheel designs as it can solve a problem

in seconds that would take SolidWorks hours. Furthermore, it have shown its capability as a

mean of designing a rough flywheel layout. It is at its current state though a little bit to

inaccurate for it to be used as the sole design tool. Much of these inaccuracies probably comes

from the many approximations done during the derivation of the used formulas. If Spin2Win

is to become and actual alternative to FEM based solutions it needs more work, and perhaps

even the derivation of even more advanced equations.

In total it I think it can be said that this is a promising concept although it needs a lot more

work to reach its true potential. With the speed that Spin2Win can perform calculations it

would not be impossible to couple it to some kind of optimization algorithm in order to find

an even more optimal design. Furthermore, the design as a whole would benefit from some

major changes, the most important being to get rid of the aluminium core and main shaft.

Ideally the flywheel should be a thin walled cylinder freely levitating in a vacuum chamber

something that could be achieved by moving the magnetic bearings to the outer side of the

composite shell.

6 Acknowledgements I would like to start by thanking my supervisors Johan Abrahamsson, Kristofer Gamstedt and

Magnus Hedlund for their time and shown interest in my work. It has been a pleasant

experience working with you all.

Furthermore, a big thank you must go to Swerea SICOMP and Kurt Olofsson in particular for

their help with the composite materials. I am also thankful to Dione Kullager AB and Ingemar

Hermansson in particular for their help with all the parts for the flywheel.

Finally a general thank you goes to the division of Electricity as a whole for providing a fun

and stimulating working environment, filled with nice and dedicated people.

Page 52: Using advanced composite materials Tobias Kamf - …555551/FULLTEXT01.pdf · TVE-12052 Examensarbete 30 hp September 2012 High speed flywheel design Using advanced composite materials

45

7 References [1] K. Takahashi, S. Kitade, H. Morita, Development of high speed composite flywheel rotors for energy

[2] D. Cross, J. Hilton, High speed flywheel based hybrid systems for low carbon vehicles - Hybrid & Eco Friendly Vehicles Conference 2008

[3] B. Bolund, H. Bernhoff, M. Leijon, Flywheel energy and power storage systems -Renewable and Sustainable Energy Reviews, Volume 11, Issue 2, February 2007

[4] J. G. Oliveira, J. Lundin, H. Bernhoff , Power Balance Control in an AC/DC/AC Converter for

Regenerative Braking in a Two-Voltage-Level Flywheel-Based Driveline - International Journal of Vehicular Technology, 2011, vol. 2011

[5] Karl Björk, Formler och Tabeller för Mekanisk Konstruktion, 7th edition [6] G. Genta, Kinetic energy storage Theory and practice of advanced flywheel systems - Butterworths

1985, Page 58, ISBN 0-408-01396-6

[7] http://en.wikipedia.org/wiki/Composite_material 04-09-2012 [8] http://i01.i.aliimg.com/photo/v0/338333453/3d_carbon_fibre_sheet.jpg 11-06-2012

[9] http://upload.wikimedia.org/wikipedia/commons/7/71/Cfaser_haarrp.jpg 11-06-2012

[10] Kurt Olofsson, Swerea SICOMP, www.swerea.se/sicomp/ [11] B. Sundström, KTH Handbok och formelsamling i Hållfasthetslära, E-Print AB, 2008, Page 1-27

[12] M. Trevonen, A. Pramila, Stresses in a hollow rotating cylindrically orthotropic tube - Mechanics of

Composite Materials, vol. 32, No. 6, 1996 [13] C. Nordling, J. Österman, Physics Handbook - Studentlitteratur AB, 2006,

ISBN 978-91-44-04453-8, Page 158 [14] http://en.wikipedia.org/wiki/Transverse_isotropy 11-06-2012

[15] Verified by using the ODE solver on: http://www.wolframalpha.com 11-06-2012

[16] W.H.Dornfeld, Thick-Walled Cylinders and Press Fits, 2004

[17] http://help.solidworks.com/2011/english/SolidWorks/cworks/LegacyHelp/Simulation/ Materials/Isotropic_and_Orthotropic_Materials.htm 11-06-2012

[18] http://help.solidworks.com/2011/english/SolidWorks/cworks/LegacyHelp/Simulation/ Meshing_topics/About_Shrink_Fitting.htm 11-06-2012

[19] For the complete code see Appendix A: Spin2Win

[20] R.J. Hayes, J.P. Kajs, R.C. Thompson, J.H. Beno, Design and Testing of a Flywheel Battery for a Transit Bus - Center for Electromechanics, The University of Texas at Austin, 1999

[21] http://www.etamax.com.au/introduction_to_filament_winding.pdf 11-06-2012 [22] K. Olofsson, SICOMP CR12-024, 2012, www.swerea.se/sicomp/

Page 53: Using advanced composite materials Tobias Kamf - …555551/FULLTEXT01.pdf · TVE-12052 Examensarbete 30 hp September 2012 High speed flywheel design Using advanced composite materials

46

8 Appendices

Page 54: Using advanced composite materials Tobias Kamf - …555551/FULLTEXT01.pdf · TVE-12052 Examensarbete 30 hp September 2012 High speed flywheel design Using advanced composite materials

Appendix A: Matlab code

Table of contents

1 Introduction.................................................................................................. 2

2 Detailed descriptions and code ..................................................................... 3

2.1 Spin2Win.fig ................................................................................................................ 3

2.2 Spin2Win.m ................................................................................................................. 8

2.3 Main_calc.m .............................................................................................................. 15

2.4 Pd_calc.m .................................................................................................................. 23

2.5 Ten_cr_calc.m ........................................................................................................... 26

2.6 E_M_calc.m ............................................................................................................... 28

2.7 Plotter.m .................................................................................................................... 29

2.8 Load_default_iso.m ................................................................................................... 31

2.9 Load_default_ort.m ................................................................................................... 33

2.10 Split_indata.m ........................................................................................................ 35

2.11 Merge_indata.m ..................................................................................................... 36

2.12 ReadFile.m ............................................................................................................. 37

2.13 Import_n_format.m ................................................................................................ 38

3 Data structure explanations ........................................................................ 39

3.1 Raw import / export data ........................................................................................... 39

3.2 Geometrical data ........................................................................................................ 40

3.3 Settings data ............................................................................................................... 40

3.4 Output structure ......................................................................................................... 41

3.5 Output log file ............................................................................................................ 42

4 Explanation of output graphs ..................................................................... 44

Page 55: Using advanced composite materials Tobias Kamf - …555551/FULLTEXT01.pdf · TVE-12052 Examensarbete 30 hp September 2012 High speed flywheel design Using advanced composite materials

1 Introduction The Matlab program is designed to calculate the stresses in one or more cylinders rotating

around a central axis of symmetry. It is intended to be used both as a supplement to

SolidWorks FEM module, in order to save calculation time, and as standalone application for

general flywheel and press-fit calculations.

The complete program, named Spin2Win, contains a number of features apart from its main

purpose of calculating material stresses. The current implemented features are:

Radial and Tangential/Hoop stress calculations due to pure centrifugal effects, press-fit pressures and their combined effect.

Shell radial displacement calculations, for both the pure press-fit case and the

combined centrifugal, press-fit case.

Calculation of the interference pressures between the systems shells, both due to shell interference as well as centrifugal effects.

Calculation of the assembly force required when assembling the shells with press-fits, this can be used for general construction as well and does not have to involve

flywheels.

Maximal transferable torque calculations that calculate the maximal torque that

can be transferred between two shells, both in the case of standstill and maximal

speed.

Calculations of the total stored energy in the system as well as the energy stored in a specified speed interval.

Mass calculations for both the individual shells as well as the whole system.

The program is divided into a number of smaller functions each performing a specific task

with data being sent back into a master script that interprets the data and makes a graphical

representation of it. Below is a brief summary of the different functions, for a more detailed

description of each file see next chapter.

Spin2Win_v2.m and .fig – Describes a simple graphical user interface that enables easy

modification of the input data that are to be sent to Main_calc. Run Spin2Win.fig from

GUIDE in order for proper execution.

Main_calc.m – Contains the calls to all other subscripts except the GUI. Also contains the

diary output code. Takes in data supplied from the GUI or manual input and generates an

output structure called “mout”.

Page 56: Using advanced composite materials Tobias Kamf - …555551/FULLTEXT01.pdf · TVE-12052 Examensarbete 30 hp September 2012 High speed flywheel design Using advanced composite materials

Pd_calc.m – A function that is internally called by “Main_calc” in order to iterate forth the

interference pressures between all shells.

Ten_cr_calc.m – A function that is internally called by “Main_calc” in order to calculate the

hoop and radial forces in all shells given the rotational speed, shell geometry and interference

pressures.

E_M_calc.m – A function that is internally called by “Main_calc” in order to calculate the

mass of each shell as well as the total energy stored in the system at a given rotational speed.

Plotter.m – Called by the GUI and contains the plot making code. Takes data from the

“mout” structure generated by “Main_calc” and generates a number of graphs representing

said data.

load_default_iso.m – Called by the GUI in order to load a set of default isotropic data

hardcoded into the “load_default_iso” file. Return one matrix with geometry and settings

data.

load_default_ort.m – Called by the GUI in order to load a set of default orthotropic data

hardcoded into the “load_default_ort” file. Return one matrix with geometry and settings data.

split_indata.m – A function called by the GUI in order to format the input data generated by

functions like “load_default_iso” into two separate matrices in order to separate geometry and

settings data.

merge_indata.m – A function called by the GUI in order to merge the data from the GUI into

one single matrix that it can be sent to “Main_calc” for processing.

ReadFile.m – Called by the GUI to import an old output text file and read the text into a

matrix, also marks the start of each run and save this data into a separate matrix.

import_n_format.m – Called by the GUI in order to format the data generated by “ReadFile”

into the correct format used by the rest of the functions, so that it is accepted by for example

“Main_calc”

2 Detailed descriptions and code

2.1 Spin2Win.fig

Contains the graphical part of the GUI and together with Spin2Win.m completes the GUI.

The GUI was built as a method of simplifying the input and output of simulation data. So

instead of having to manually create a matrix with the correct format and input variables the

GUI offers a simple way of creating said matrix by the use of editable tables and checkboxes.

Page 57: Using advanced composite materials Tobias Kamf - …555551/FULLTEXT01.pdf · TVE-12052 Examensarbete 30 hp September 2012 High speed flywheel design Using advanced composite materials

Figure 1: An example picture for the GUI in action.

As can be seen in Figure 1 the GUI is divided into a number of different fields. Each field

contains a number of different settings or functions somewhat related to each other.

The “Basic Settings” field contains, as the name suggests, a number of simulation settings.

Each explained in the list below:

Number of active shells – Determines how many shells that are to be included in the final simulation regardless of how many columns that are filled with values in the

“Geometrical and material data” –field. This number cannot be higher than the number

of columns filled with actual data or the calculation will crash and return inaccurate

data. The number can however be lower and will then just ignore the data in the higher

columns. By default this value is limited to nine active shells, this can if needed be

overridden by checking the “Allow more than 9 active shells.” checkbox with risk of

causing some strange program behaviours. Must be a positive integer.

Rotor height – Determines the value of the height of the rotor in millimetres. This

value is used when the mass of each shell is to be calculated, which in turn influences

the energy stored in the system. This value is also used as the height of the

interference fit and is hence used to calculate the maximum assembly force and

transferable torques. Must be a positive real number.

Page 58: Using advanced composite materials Tobias Kamf - …555551/FULLTEXT01.pdf · TVE-12052 Examensarbete 30 hp September 2012 High speed flywheel design Using advanced composite materials

Maximal speed – Determinates the maximum allowed rotational speed, in revulsions

per minute. This also determinates the force magnitude in the results, as all results for

rotating geometries are calculated with the maximal speed. This value is also used

when the amount energy stored in the system is to be calculated. Must be a positive

real number.

Minimal speed – Determinates the minimal allowed rotational speed in revulsions per minute. This value is only used in order to calculate the available energy in the speed

interval between min and max rpm. Must be a positive real number.

Send plots to figure nr – Determinates to which figure the graphical representation of the calculation is to be sent. Must be a positive integer.

Figure and output prefix – Mark the simulation and plot figure with a special name for easy identification when many subsequent simulations are run.

The next field of interest is the “Additional Settings” field which consists of three

checkboxes that regulate some of the program behaviour.

Allow more than 9 active shells – This checkbox overrides the default maximum of

nine active shells per simulation and allows the input of any positive integer into the

”Number of active shells” field. This can however cause some unwanted program

behaviours and should be used with caution.

Increase figure number after each run – Checking this checkbox causes the program to automatically increase the value in the “Send plots to figure nr” field each

time the “Run Calculation” button is pressed.

Generate figures – Un-checking this checkbox causes the program skip the generation of a graphical representation of the results and instead stops directly after

having generated an output structure and file with the said data.

The “Unit” field is quite self explaining. It simply explains the abbreviations used by the

“Geometrical and material data” table and beyond that possess no editable fields or other

special functions.

Page 59: Using advanced composite materials Tobias Kamf - …555551/FULLTEXT01.pdf · TVE-12052 Examensarbete 30 hp September 2012 High speed flywheel design Using advanced composite materials

The biggest and most important field is the “Geometrical and Material Data” field. It is

in this field that all geometrical data, i.e. the shape and size of the flywheel, is entered.

Furthermore all relevant material data for each shell is also entered here. Each column

specifies one shell named “Shell 1,2,3…” and together a number of columns make up a

complete multi-layered flywheel. “Shell 1” is the most inner shell and hence must be

made the smallest. Each following shell must be bigger than the one beneath it but smaller

than the next in line. A small difference in “Do” for say “Shell 1” and “Di” for “Shell 2”

is allowed. This specifies the interference between the two shells hence determinates the

interference pressures between the two shells. This interference must be made by making

Do(1) < Di(2) (Do, Shell 1 smaller than Di, Shell 2).

Di – Shell inner diameter in millimetres. “Di” for “Shell 1” must be smaller than the “Do” for “Shell 1” and so forth. If this is not the case the program is forced to do

calculations on what is effectively an inverted cylinder; needless to say this causes the

program to ether crash completely or return imaginary values.

Do – Shell outer diameter in millimetres. “Do” for “Shell 1” must be larger than the

“Di” for “Shell 1” and so forth. If this is not the case the program is forced to do

calculations on what is effectively an inverted cylinder; needless to say this causes the

program to ether crash completely or returns imaginary values.

Ec – Young’s Modulus in circumferential / hoop direction in Giga Pascal. Determinates the stiffness of the composite hoop. As this is the strongest direction in

most composites it is also often abbreviated E1. For metals however this value is the

same as “Er” as isotropic materials only have one Young’s modulus for all directions.

Er – Young’s Modulus in radial direction in Giga Pascal. Determinates the stiffness of the composite in the radial direction. As this value often is much less than that of the

hoop value in composites it is often abbreviated E2. For metals this value is the same

as “Ec” as isotropic materials only have one Young’s modulus for all directions.

v – Poisson's ratio in hoop-radial direction also called v index 12. For most metals and

composites this value varies around 0.25-0.35. The inverse value, ν21 radial-hoop, for

composites is often much smaller, in the order of 0.02 due to the large difference in

Young’s modulus for different directions.

d – Material density in kilograms per cubic metre. The material density determinates the shells individual mass but also influences the magnitude of the centrifugal force, as

heavier materials experience a larger force, compared to a lighter one, for the same

revolution speed.

µ – The static friction coefficient between two shells. The first friction coefficient is for the contact surface between “Shell 1” and “Shell 2”, the second is for the surface

between “Shell 2” and “Shell 3” and so forth.

G – Shear Modulus of the material in the radial axial direction. Determinates the materials shear stiffens.

Page 60: Using advanced composite materials Tobias Kamf - …555551/FULLTEXT01.pdf · TVE-12052 Examensarbete 30 hp September 2012 High speed flywheel design Using advanced composite materials

The “Import Data From File” field contains a tool that is used to load all the settings and

geometries from a previous run. This is done in order to simplify the reruns of older

simulations and comparison of previous results.

The “Load File” button is used to load an old output text file. Pressing this button will bring

up a window asking for a text file beginning with “Spin2Win_” and ending with “.txt”. The

target file must be located in the same directory as the main program file. It is possible to load

custom made files as long as they are named correctly and the text inside them are formatted

in the correct way, a tip is to open and modify an existing output file and then just save it with

a new name. Once a file is loaded the central list will get populated with all runs contained

within the loaded file, the list is not updated when new runs is added to the log file and as

such it must be manually reloaded in order for the list to show the most resent runs.

The “Load Selected Run” button is used to load the geometrical data and other settings from

a specific run. Do this by selecting the name of a run from the list by clicking on it and then

click the “Load Selected Run” button.

Next to the “Import Data From File” is the “Load Defaults” field. Pressing one of these

buttons will case Spin2Win to load a set of default data from load_default_iso.m or

load_default_ort.m. The default geometry contains a nine shelled geometry with even shell

thickness and can be used to quickly get started on a new geometry.

Finally the big “Run Calculation” button does as one would imagine, clicking this button

executes the simulation and will cause an output file to be generated and if the appropriate

settings is set a plot would also get generated.

Page 61: Using advanced composite materials Tobias Kamf - …555551/FULLTEXT01.pdf · TVE-12052 Examensarbete 30 hp September 2012 High speed flywheel design Using advanced composite materials

2.2 Spin2Win.m

Below is the code from the Spin2Win Matlab function file. This file is connected to the

GUI and contains and controls all the logical operations performed by the GUI.

function varargout = Spin2Win_v2(varargin) % SPIN2WIN_V2 M-file for Spin2Win_v2.fig % SPIN2WIN_V2, by itself, creates a new SPIN2WIN_V2 or raises the

% existing % singleton*. % % H = SPIN2WIN_V2 returns the handle to a new SPIN2WIN_V2 or the

% handle to % the existing singleton*. % % SPIN2WIN_V2('CALLBACK',hObject,eventData,handles,...) calls the

% local % function named CALLBACK in SPIN2WIN_V2.M with the given input

% arguments. % % SPIN2WIN_V2('Property','Value',...) creates a new SPIN2WIN_V2 or

% raises the % existing singleton*. Starting from the left, property value pairs

% are % applied to the GUI before Spin2Win_v2_OpeningFcn gets called. An % unrecognized property name or invalid value makes property

% application % stop. All inputs are passed to Spin2Win_v2_OpeningFcn via varargin. % % *See GUI Options on GUIDE's Tools menu. Choose "GUI allows only one % instance to run (singleton)". % % See also: GUIDE, GUIDATA, GUIHANDLES

% Edit the above text to modify the response to help Spin2Win_v2

% Last Modified by GUIDE v2.5 26-Mar-2012 16:49:12

% Begin initialization code - DO NOT EDIT gui_Singleton = 1; gui_State = struct('gui_Name', mfilename, ... 'gui_Singleton', gui_Singleton, ... 'gui_OpeningFcn', @Spin2Win_v2_OpeningFcn, ... 'gui_OutputFcn', @Spin2Win_v2_OutputFcn, ... 'gui_LayoutFcn', [] , ... 'gui_Callback', []); if nargin && ischar(varargin{1}) gui_State.gui_Callback = str2func(varargin{1}); end

if nargout [varargout{1:nargout}] = gui_mainfcn(gui_State, varargin{:}); else gui_mainfcn(gui_State, varargin{:}); end % End initialization code - DO NOT EDIT

Page 62: Using advanced composite materials Tobias Kamf - …555551/FULLTEXT01.pdf · TVE-12052 Examensarbete 30 hp September 2012 High speed flywheel design Using advanced composite materials

%----------------------------------------------------------------------- % --- Executes just before Spin2Win_v2 is made visible. function Spin2Win_v2_OpeningFcn(hObject, eventdata, handles, varargin)

% Choose default command line output for Spin2Win_v2 handles.output = hObject;

% Update handles structure guidata(hObject, handles);

% Fill tables with zeros and ones tmp = ones(5,1); set(handles.uitable2 , 'data' , tmp); tmp = zeros(7,9); set(handles.uitable1 , 'data' , tmp);

%Copy filled table data to variables handles.calc_settings = get(handles.uitable2 , 'data'); handles.geom_data = get(handles.uitable1 , 'data');

% Set checkbox5 to 1 so that plot is generated by default set(handles.checkbox5,'Value',1)

% Update handles and object guidata(hObject, handles);

%----------------------------------------------------------------------- % --- Outputs from this function are returned to the command line. function varargout = Spin2Win_v2_OutputFcn(hObject, eventdata, handles)

% Get default command line output from handles structure varargout{1} = handles.output;

%----------------------------------------------------------------------- % --- Executes on button press in pushbutton1 % Run Calculation button function pushbutton1_Callback(hObject, eventdata, handles)

%Import and merge data to send % using merge_indata function senddat = merge_indata(handles.geom_data, handles.calc_settings);

%Get figure number from settings and prefix from GUI fignr = handles.calc_settings(5); prefix = get(handles.edit2,'String');

%Send data to Main_calc for prossesing. [mout] = Main_calc(senddat,prefix);

% Save output data if needed by other functions save mout

% Check if plots are to be generated or not if get(handles.checkbox5,'Value') == 1 Plotter(mout.Ten_c, mout.Ten_r, mout.intf, mout.r_mark, mout.r_mark2, ... mout.r, mout.ri, fignr, mout.stamp, prefix) end

Page 63: Using advanced composite materials Tobias Kamf - …555551/FULLTEXT01.pdf · TVE-12052 Examensarbete 30 hp September 2012 High speed flywheel design Using advanced composite materials

% Increase plot nr if that checkbox is set handles.calc_settings(5) = fignr + get(handles.checkbox2 , 'Value'); set(handles.uitable2 , 'data' , handles.calc_settings);

%Update values, save and exit guidata(hObject, handles);

%----------------------------------------------------------------------- % --- Executes on button press in pushbutton2. % Load Default Isometric data button function pushbutton2_Callback(hObject, eventdata, handles)

% Load data into tmp using split_indata function [tmp1, tmp2] = split_indata(load_default_iso);

% Format imported data to correct format and make sure all values are % valid. tmp3 = ones(5,1); tmp3(1) = floor(tmp2(5)); tmp3(2) = tmp2(2); tmp3(3) = tmp2(3); tmp3(4) = tmp2(4); tmp3(5) = floor(handles.calc_settings(5));

% Copy imported and formatted data to tables set(handles.uitable2 , 'data' , tmp3); set(handles.uitable1 , 'data' , tmp1);

%Copy table data to variables handles.calc_settings = get(handles.uitable2 , 'data'); handles.geom_data = get(handles.uitable1 , 'data');

%Update, save and exit guidata(hObject, handles);

%----------------------------------------------------------------------- % --- Executes on button press in pushbutton3. % Load Default Orthotropic data button function pushbutton3_Callback(hObject, eventdata, handles)

% Load data into tmp using split_indata function [tmp1, tmp2] = split_indata(load_default_ort);

% Format imported data to correct format and make sure all values are % valid. tmp3 = ones(5,1); tmp3(1) = tmp2(5); tmp3(2) = tmp2(2); tmp3(3) = tmp2(3); tmp3(4) = tmp2(4); tmp3(5) = handles.calc_settings(5);

% Copy data to tables set(handles.uitable2 , 'data' , tmp3); set(handles.uitable1 , 'data' , tmp1);

%Copy table data to variables handles.calc_settings = get(handles.uitable2 , 'data'); handles.geom_data = get(handles.uitable1 , 'data');

Page 64: Using advanced composite materials Tobias Kamf - …555551/FULLTEXT01.pdf · TVE-12052 Examensarbete 30 hp September 2012 High speed flywheel design Using advanced composite materials

%Update, save and exit guidata(hObject, handles);

%----------------------------------------------------------------------- % --- Executes on button press in checkbox1. % Shell number ovveride checkbox function checkbox1_Callback(hObject, eventdata, handles)

% Update checkbox status.

%----------------------------------------------------------------------- % --- Executes on button press in checkbox2. % Increase plot number after each run checkbox function checkbox2_Callback(hObject, eventdata, handles)

% Update checkbox status.

%----------------------------------------------------------------------- % --- Executes when entered data in editable cell(s) in uitable2. % Settings table updater, updates on change in settings table. function uitable2_CellEditCallback(hObject, eventdata, handles)

% Check for shell number <=9 and compare to checkbox status tmp = get(handles.uitable2 , 'data'); if get(handles.checkbox1,'Value') == 0 tmp(1) = min(tmp(1),9); end

% make sure input is within allowed values tmp(5) = floor(max(tmp(5),1)); tmp(4) = max(tmp(4),0); tmp(3) = max(tmp(3),0); tmp(2) = max(tmp(2),0); tmp(1) = floor(max(tmp(1),1));

% If the new number of shells is longer than the current maximal % number: expand the table and fill the new columns with zeros % but keep current data in cells. if length(handles.geom_data(1,:)) < tmp(1) tmp2 = zeros(7,tmp(1)); tmp3 = get(handles.uitable1 , 'data'); for i = 1:1:7 for k = 1:1:tmp(1) if k <= length(tmp3(1,:)) tmp2(i,k) = tmp3(i,k); end end end set(handles.uitable1 , 'data' , tmp2); end

% Copy new values to global handles and table handles.calc_settings = tmp; set(handles.uitable2 , 'data' , tmp); handles.geom_data = get(handles.uitable1 , 'data');

%Update, save and exit guidata(hObject, handles);

Page 65: Using advanced composite materials Tobias Kamf - …555551/FULLTEXT01.pdf · TVE-12052 Examensarbete 30 hp September 2012 High speed flywheel design Using advanced composite materials

%----------------------------------------------------------------------- % --- Executes when entered data in editable cell(s) in uitable1. % Geometry table updater, updates on change in geometry table. function uitable1_CellEditCallback(hObject, eventdata, handles)

%Copy table data to variables, make sure they are positive and real % by using abs command handles.geom_data = abs(get(handles.uitable1 , 'data'));

%Send positive data back to table set(handles.uitable1 , 'data', handles.geom_data)

%Update, save and exit guidata(hObject, handles);

%----------------------------------------------------------------------- % --- Executes on button press in pushbutton6. % Load File button function pushbutton6_Callback(hObject, eventdata, handles)

% Load file using built in uigetfile popup window and ReadFile subroutine % Filename must contain Spin2Win_ and be a .txt-file [filedata, hdlines] = ReadFile(uigetfile('Spin2Win_*.txt', ... 'Choose an old output-file, must begin with Spin2Win_'));

% If load of file sucseeds copy file data into correct variables % If load fails do nothing if ~isnumeric(filedata) handles.filedata = filedata; handles.hdlines = hdlines;

% Reset listbox2, run list, selected selected value to 1 handles.importnr = 1; set(handles.listbox2,'Value',1)

% Update listbox2 with found hdlines remove 'Date and time of run:' for i=1:1:length(hdlines) strtmp(i,1) = strrep(filedata(hdlines(i)),'Date and time of run: ',''); end set(handles.listbox2,'String',strtmp) % Enable load list data button set(handles.pushbutton7,'Enable','on') end

%Update, save and exit guidata(hObject, handles);

%----------------------------------------------------------------------- % --- Executes on selection change in listbox2. % Loaded runs list function listbox2_Callback(hObject, eventdata, handles)

% Update line import number to new selected line handles.importnr = get(hObject,'Value');

%Update, save and exit guidata(hObject, handles);

Page 66: Using advanced composite materials Tobias Kamf - …555551/FULLTEXT01.pdf · TVE-12052 Examensarbete 30 hp September 2012 High speed flywheel design Using advanced composite materials

%----------------------------------------------------------------------- % --- Executes during object creation, after setting all properties. % Loaded runs list function listbox2_CreateFcn(hObject, eventdata, handles)

% Set background colour to white if ispc && isequal(get(hObject,'BackgroundColor'), ... get(0,'defaultUicontrolBackgroundColor')) set(hObject,'BackgroundColor','white'); end

% Fill list with example text. gug(1,1) = cellstr('Load output-file'); gug(2,1) = cellstr('to populate list.'); set(hObject,'String',gug)

% Initiate import number variable handles.importnr = 1;

%Update, save and exit guidata(hObject, handles);

%----------------------------------------------------------------------- % --- Executes on button press in pushbutton7. % Load run list line data button function pushbutton7_Callback(hObject, eventdata, handles)

% Load data into tmp variable with import_n_format subroutine tmpdat = import_n_format(handles.filedata,

handles.hdlines(handles.importnr));

% Split loaded data into two tmp matrices. [tmp1, tmp2] = split_indata(tmpdat);

% make sure imported data is within allowed values tmp3 = ones(5,1); tmp3(1) = floor(tmp2(5)); tmp3(2) = tmp2(2); tmp3(3) = tmp2(3); tmp3(4) = tmp2(4); tmp3(5) = floor(handles.calc_settings(5));

%Fill empty gometry data field with zeros tmp4 = zeros(7,9); for i = 1:1:7 for k = 1:1:9 if k <= length(tmp1(1,:)) tmp4(i,k) = tmp1(i,k); end end end

% Extract old run prefix and format p_tmp = handles.filedata(handles.hdlines(handles.importnr)); p_tmp = strrep(p_tmp,'Date and time of run: ',''); [~ , p_tmp]=strtok(p_tmp); [~ , p_tmp]=strtok(p_tmp); p_tmp = char(p_tmp); p_tmp = p_tmp(2:end);

Page 67: Using advanced composite materials Tobias Kamf - …555551/FULLTEXT01.pdf · TVE-12052 Examensarbete 30 hp September 2012 High speed flywheel design Using advanced composite materials

% Copy data to tables set(handles.uitable2 , 'data' , tmp3); set(handles.uitable1 , 'data' , tmp4); set(handles.edit2,'String',p_tmp);

% Copy table data to variables handles.calc_settings = get(handles.uitable2 , 'data'); handles.geom_data = get(handles.uitable1 , 'data');

%Update, save and exit guidata(hObject, handles);

%----------------------------------------------------------------------- % Prefix field update function function edit2_Callback(hObject, eventdata, handles)

% Update String contents on change

%----------------------------------------------------------------------- % --- Executes during object creation, after setting all properties. % Prefix field creation function edit2_CreateFcn(hObject, eventdata, handles)

% Set background to white if ispc && isequal(get(hObject,'BackgroundColor'), ... get(0,'defaultUicontrolBackgroundColor')) set(hObject,'BackgroundColor','white'); end

%----------------------------------------------------------------------- % --- Executes on button press in checkbox5. % Generate plots checkbox function checkbox5_Callback(hObject, eventdata, handles)

% Update checkbox status on change

%%%%%%%%%%%%%%%%%%%%%%% FILE END %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%

Page 68: Using advanced composite materials Tobias Kamf - …555551/FULLTEXT01.pdf · TVE-12052 Examensarbete 30 hp September 2012 High speed flywheel design Using advanced composite materials

2.3 Main_calc.m

Below is the code from the Main_calc function. This file organizes data and sends this

data to a number of sub functions for processing. It also handles the creation and

management of the logfile and output data.

function [out] = Main_calc(indata,prefix) % Preassure and stress calculator for composite and isotropic materials

%%% NOTE!!!!!!!!!! %This script needs the following m-file functions in order to work: % Pd_calc.m - Interface pressure calculator % Ten_cr_calc.m - Stress distribution calculator % E_M_calc - Energy, Mass calculator %%%%

% Extract number of active shells from indata m = indata(8,5);

% Place the rest of indata into correct variables ri = indata(1,1:1:m)/2000; % [m] Inner radius, scale from D, mm to r, m ro = indata(2,1:1:m)/2000; % [m] Outer radius, scale from D, mm to r, m Ec = indata(3,1:1:m)*10^9; % [Pa] Youngs Modulus, Hoop Er = indata(4,1:1:m)*10^9; % [Pa ]Youngs Modulus, Radial v = indata(5,1:1:m); % Possions ratio, hoop - radial direction p = indata(6,1:1:m); % [kg/m3] Material density uu = indata(7,1:1:m); % Static friction coefficient G_rz = indata(9,1:1:m)*10^9; % Shear modulus radial-axial

hh = indata(8,2)/1000; % [m] Cylinder height, scale from mm to m n = indata(8,3); % Rotational speed rpm n_ = indata(8,4); % Min speed

% Step size setting, default 0.000001 is enough for most calculations. step = 0.000001 ; % [m] Radial step size used in calculations

% Initiate radial vector to get available flywheel radial positions r = min(ri):step:max(ro); % radial vector

% Preallocating vectors m = length(ri); dr = zeros(1,m); Ten_c = zeros(3,length(r)); Ten_r = zeros(3,length(r)); % Where: 1: Pressfit standstill stress, 2: Pure centrifugal stress, % 3: Pressfit with rotation intf = zeros(2,length(r)); % Where: 1: Interface plot standstill, 2: Interface plot rotating Pd = zeros(1,m-1); %interface pressure storage vector K = zeros(1,m-1); U = zeros(1,m-1); b = zeros(1,m); u = zeros(1,m); j = zeros(1,m); Ten_o = zeros(1,m); A = zeros(3*(m-1) , 3*(m-1)); B = zeros(3*(m-1) , 1); Pd_still = zeros(1,m-1);

Page 69: Using advanced composite materials Tobias Kamf - …555551/FULLTEXT01.pdf · TVE-12052 Examensarbete 30 hp September 2012 High speed flywheel design Using advanced composite materials

r_mark = zeros(1,m); r_mark2 = zeros(1,m); warning_flags = zeros(1,5); Ten_c_max = zeros(3,m); Ten_c_min = zeros(3,m); Ten_r_max = zeros(3,m); Ten_r_min = zeros(3,m); intf_max = zeros(2,m); intf_min = zeros(2,m);

% Fill idat with input data and settings % for easy transport into subroutines idat(1,1:1:m) = ri; idat(2,1:1:m) = ro; idat(3,1:1:m) = Ec; idat(4,1:1:m) = Er; idat(5,1:1:m) = v; idat(6,1:1:m) = p; idat(7,1:1:m) = uu; idat(9,1:1:m) = G_rz; idat(8,1) = length(r); idat(8,2) = hh; idat(8,3) = n; idat(8,4) = n_; idat(8,5) = indata(8,5);

% Useful constant relations calculations w = 2*pi*n/60; % rpm to rad/sec conversion for k = 1:1:m % radius quota, used in equation b(k) = ri(k)/ro(k);

% µ factor, used in equation u(k) = sqrt(Ec(k)/Er(k));

% j factor, used in equations j(k) = (b(k)^(-u(k)-1)-b(k)^2)/(b(k)^(-u(k)-1)-b(k)^(u(k)-1));

% Unmodified centrifugal field Ten_o(k) = p(k)*w^2*ro(k)^2*((3+v(k))/(9-u(k)^2));

end

% Interface calculation between shells for i = 1:1:m-1 dr(i) = ro(i)-ri(i+1); if abs(dr(i)) < 0.01*10^-6 dr(i) = 0.01*10^-6; warning_flags(1) = 1; end end % Make sure interference is positive dr = abs(dr);

% Calculate stresses due to pure centrifugal forces % using Ten_cr_calc subroutine wiht zero shell interference. Pdz = zeros(1,m-1);

[Ten_c(2,1:1:length(r)), Ten_r(2,1:1:length(r)), ... intf(2,1:1:length(r))] = Ten_cr_calc(Pdz,idat,n);

Page 70: Using advanced composite materials Tobias Kamf - …555551/FULLTEXT01.pdf · TVE-12052 Examensarbete 30 hp September 2012 High speed flywheel design Using advanced composite materials

%skip all press fit calculations if there is less than 2 shells if m ~= 1

% Calculate approximate pressures using % a simple linear matrix. Based on standard press fit formulas.

% Section pressure calc factors used in matrix for k = 1:1:m-1 K(k) = ri(k+1)*((ro(k+1)^2+ri(k+1)^2)/(Ec(k+1)*(ro(k+1)^2 ... -ri(k+1)^2))+v(k+1)/Er(k+1)); U(k) = ro(k)*((ro(k)^2+ri(k)^2)/(Ec(k)*(ro(k)^2-ri(k)^2))-v(k)/Er(k)); end

% Example Matrix structure for a 4 shelled geometry.

% B = [ 0 ; % 0 ; % 0 ; % 0 ; % 0 ; % 0 ; % dr(1) ; % dr(2) ; % dr(3) ];

% % P P P o o o i i i % A = [ K(1) 0 0 -1 0 0 0 0 0 ; % 0 K(2) 0 0 -1 0 0 0 0 ; % 0 0 K(3) 0 0 -1 0 0 0 ; % -U(1) 0 0 0 0 0 -1 0 0 ; % 0 -U(2) 0 0 0 0 0 -1 0 ; % 0 0 -U(3) 0 0 0 0 0 -1 ; % 0 0 0 1 0 0 -1 1 0 ; % 0 0 0 -1 1 0 0 -1 1 ; % 0 0 0 0 -1 1 0 0 -1 ];

% Matrix maker

% Pd do fill for k=1:1:m-1 A(k , k)=K(k); A(k , (m-1+k)) = -1; end

% Pd di fill for k=1:1:m-1 A(m-1+k , k) = -U(k); A(m-1+k , 2*(m-1)+k) = -1; end

% do di fill 1 for k=1:1:m-1 A(2*(m-1)+k , m-1+k) = 1; A(2*(m-1)+k , 2*(m-1)+k) = -1; end

Page 71: Using advanced composite materials Tobias Kamf - …555551/FULLTEXT01.pdf · TVE-12052 Examensarbete 30 hp September 2012 High speed flywheel design Using advanced composite materials

% do di fill 2 for k=1:1:m-2 A(2*(m-1)+1+k , m-1+k) = -1; A(2*(m-1)+k , 2*(m-1)+1+k) = 1; end

% B fill for k=1:1:m-1 B(2*(m-1)+k) = dr(k); end

% Matrix solver D = A\B;

% Extract pressures from vector X % Pd will be approximate now if a isotropic material is used. % Values will be used as input guess into fsolver for fine-tuning % or major change if an orthotropic material is used. Pd_t = 0; for k = 1:1:m-1 Pd_t(k) = D(k); end

% Copy values to pressure vector Pd = Pd_t;

% Special fsolve settings for increased chance of convergence options = optimset('TolFun',1e-9,'TolFun',1e-9);

% Fine-tune pressure guess from above matrix calculations % by using fsolve on Pd_calc subroutine % n = 0 for standstill curve [Pd, ~,warning_flags(4)] = fsolve(@(x) Pd_calc(x,idat,0),Pd,options); Pd_still = Pd;

% Calcualte the stresses in standstill case % with the Ten_cr_calc subroutine [Ten_c(1,1:1:length(r)), Ten_r(1,1:1:length(r)), ... intf(1,1:1:length(r))] = Ten_cr_calc(Pd,idat,0);

% Reset Pd to previous approximate values for next run Pd = Pd_t;

% Fine-tune pressure guess, include centrifugal pressure, n =/= 0 [Pd, ~,warning_flags(5)] = fsolve(@(x) Pd_calc(x,idat,n),Pd,options);

% Calculate press fit stresses due to rotating press fit % with the Ten_cr_calc subroutine [Ten_c(3,1:1:length(r)), Ten_r(3,1:1:length(r)), ... intf(2,1:1:length(r))] = Ten_cr_calc(Pd,idat,n);

end % end for if statement about number of shells

% Sacling from Pa to MPa for easier enterpritation Ten_c = Ten_c/(10^6); Ten_r = Ten_r/(10^6);

Page 72: Using advanced composite materials Tobias Kamf - …555551/FULLTEXT01.pdf · TVE-12052 Examensarbete 30 hp September 2012 High speed flywheel design Using advanced composite materials

% Find shell surface radius r length value % so that shell interfaces can be marked

for i=1:1:m-1 r_mark(1,i) = (ri(i+1)/step-ri(1)/step)+1;

end r_mark(1,m)=(ro(m)/step-ri(1)/step)+1; r_mark = floor(r_mark);

for i=1:1:m-1 r_mark2(1,i+1)=r_mark(1,i)+2; end r_mark2(1,1)=1;

% Make min max values vectors for each r_mark for i=1:1:3 for k=1:1:m Ten_c_max(i,k) = max(Ten_c(i,(r_mark2(k)+2):r_mark(k))); Ten_c_min(i,k) = min(Ten_c(i,(r_mark2(k)+2):r_mark(k))); end end

for i=1:1:3 for k=1:1:m Ten_r_max(i,k) = max(Ten_r(i,(r_mark2(k)+2):r_mark(k))); Ten_r_min(i,k) = min(Ten_r(i,(r_mark2(k)+2):r_mark(k))); end end

for i=1:1:2 for k=1:1:m intf_max(i,k) = max(intf(i,(r_mark2(k)+2):r_mark(k))); intf_min(i,k) = min(intf(i,(r_mark2(k)+2):r_mark(k))); end end

% Calculate mass and energy of system using E_M_calc subroutine [Energy, Mass] = E_M_calc(idat);

% Print data to screen and save into a logfile named after the current date % Mark each run with a timestamp

% Start diary mode diary(['Spin2Win_output_',date,'.txt']) diary on

% Get date and time from system stamp = datestr(now,0); disp(['Date and time of run: ', stamp, ', ', prefix])

Page 73: Using advanced composite materials Tobias Kamf - …555551/FULLTEXT01.pdf · TVE-12052 Examensarbete 30 hp September 2012 High speed flywheel design Using advanced composite materials

% Print input data format long disp('Input data:') disp(['Ri: ', num2str(ri,10)]) disp(['Ro: ', num2str(ro,10)]) disp(['Ec: ', num2str(Ec,10)]) disp(['Er: ', num2str(Er,10)]) disp(['v: ', num2str(v,10)]) disp(['p: ', num2str(p,10)]) disp(['µ: ', num2str(uu,10)]) disp(['G: ', num2str(G_rz,10)]) disp(['lr: ', num2str(length(r),10)]) disp(['h: ', num2str(hh,10)]) disp(['n: ', num2str(n,10)]) disp(['n_: ', num2str(n_,10)]) disp(['sh: ', num2str(m,10)]) fprintf('\n') format short

% Print output data disp('Results:') disp('--------------------------------------------------') disp('Centrifugal only:') disp(['Maximal tension, hoop: ', num2str(max(Ten_c(2,:))), ' [MPa]']) disp(['Minimal tension, hoop: ', num2str(min(Ten_c(2,:))), ' [MPa]']) disp(['Maximal tension, radial: ', num2str(max(Ten_r(2,:))), ' [MPa]']) disp(['Minimal tension, radial: ', num2str(min(Ten_r(2,:))), ' [MPa]']) disp('--------------------------------------------------') disp('Press-fit, standstill:') disp(['Maximal tension, hoop: ', num2str(max(Ten_c(1,:))), ' [MPa]']) disp(['Minimal tension, hoop: ', num2str(min(Ten_c(1,:))), ' [MPa]']) disp(['Maximal tension, radial: ', num2str(max(Ten_r(1,:))), ' [MPa]']) disp(['Minimal tension, radial: ', num2str(min(Ten_r(1,:))), ' [MPa]']) disp('Interference pressures:') %Repeat for number of interferences for k = 1:1:m-1 disp(['Shell ', num2str(k), '-' , num2str(k+1), ': ', ... num2str(Pd_still(k)/10^6), ' [MPa]']) end disp('--------------------------------------------------') disp('Press-fit, rotating:') disp(['Maximal tension, hoop: ', num2str(max(Ten_c(3,:))), ' [MPa]']) disp(['Minimal tension, hoop: ', num2str(min(Ten_c(3,:))), ' [MPa]']) disp(['Maximal tension, radial: ', num2str(max(Ten_r(3,:))), ' [MPa]']) disp(['Minimal tension, radial: ', num2str(min(Ten_r(3,:))), ' [MPa]']) disp('Interference pressures:') %Repeat for number of interferences for k = 1:1:m-1 disp(['Shell ', num2str(k), '-' , num2str(k+1), ': ', ... num2str(Pd(k)/10^6), ' [MPa]']) end disp('--------------------------------------------------') disp('Maximal assembly force needed for shell press-fit mounting:') %Repeat for number of interferences for k = 1:1:m-1 F = pi*2*ro(k)*hh*uu(k)*Pd_still(k)/1000; disp(['Shell ', num2str(k), '-' , num2str(k+1), ': ', num2str(F), '

[kN]']) end disp('--------------------------------------------------') disp('Maximal transferable torque between shells, at standstill:')

Page 74: Using advanced composite materials Tobias Kamf - …555551/FULLTEXT01.pdf · TVE-12052 Examensarbete 30 hp September 2012 High speed flywheel design Using advanced composite materials

%Repeat for number of interferences for k = 1:1:m-1 F = pi*2*ro(k)*hh*uu(k)*Pd_still(k)*ro(k)/1000; disp(['Shell ', num2str(k), '-' , num2str(k+1), ': ', num2str(F), '

[kNm]']) end disp('--------------------------------------------------') disp('Maximal transferable torque between shells, at max rpm:') %Repeat for number of interferences for k = 1:1:m-1 F = pi*2*ro(k)*hh*uu(k)*Pd(k)*ro(k)/1000; disp(['Shell ', num2str(k), '-' , num2str(k+1), ': ', num2str(F), '

[kNm]']) end disp('--------------------------------------------------') disp('Shell and system mass:') %Repeat for number of shells for k = 1:1:m disp(['Shell ', num2str(k), ': ', num2str(Mass(k)), ' [kg]']) end disp(['Total: ', num2str(Mass(m+1)), ' [kg]']) disp('--------------------------------------------------') disp('Stored energy:') disp(['in total: ', num2str(Energy(1)/3600), ' [Wh]']) disp(['in rpm interval: ', num2str(Energy(2)/3600), ' [Wh]']) disp('--------------------------------------------------')

% Print WARNINGS if they have been flagged if min(Pd) < 0 warning_flags(2) = 1; end if min(Pd_still) < 0 warning_flags(3) = 1; end

if warning_flags(1) == 1 disp('*************WARNING******WARNING**************') disp('Warning: Interference non existent or to small. < 0.1*10^-6') disp('Emergency minimum value of: 0.1*10^-6 [m] activated.') disp('*************WARNING******WARNING**************') end

if warning_flags(2) == 1 disp('*************WARNING******WARNING**************') disp('Warning: Rotating interference pressure have gone negative,') disp('calculations higly unstable and mostly broken.') disp('Reduce speed or increase interference') disp('*************WARNING******WARNING**************') end

if warning_flags(3) == 1 disp('*************WARNING******WARNING**************') disp('Warning: Standstill interference pressure have gone negative,') disp('calculations higly unstable and mostly broken.') disp('Check input data for sign errors and interference') disp('*************WARNING******WARNING**************') end

Page 75: Using advanced composite materials Tobias Kamf - …555551/FULLTEXT01.pdf · TVE-12052 Examensarbete 30 hp September 2012 High speed flywheel design Using advanced composite materials

if warning_flags(4) ~= 1 disp('*************WARNING******WARNING**************') disp('Warning: Standstill pressure calculation did not converge,') disp('Check input data for sign errors and interference') disp('*************WARNING******WARNING**************') end

if warning_flags(5) ~= 1 disp('*************WARNING******WARNING**************') disp('Warning: Rotating pressure calculation did not converge,') disp('Check input data for sign errors and interference') disp('*************WARNING******WARNING**************') end

% Mark end of run and fill with some blank lines. disp('End of output') fprintf('\n') fprintf('\n') fprintf('\n') fprintf('\n') fprintf('\n')

% Stop diary mode diary off

% Prepare and Copy important data and plotter data into struct for return % Plotter data out.Ten_c = Ten_c ; out.Ten_r = Ten_r ; out.intf = intf ; out.r_mark = r_mark ; out.r_mark2 = r_mark2 ; out.r = r ; out.ri = ri ; out.stamp = stamp ;

% General data out.P_standstill = Pd_still ; out.P_rotating = Pd ; out.Energy = Energy ; out.Mass = Mass ; out.Ten_c_max = Ten_c_max ; out.Ten_c_min = Ten_c_min ; out.Ten_r_max = Ten_r_max ; out.Ten_r_min = Ten_r_min ;

end

Page 76: Using advanced composite materials Tobias Kamf - …555551/FULLTEXT01.pdf · TVE-12052 Examensarbete 30 hp September 2012 High speed flywheel design Using advanced composite materials

2.4 Pd_calc.m

Below is the code from the Pd_calc function. This file is called from Main_calc.m and

takes a set of input pressures and returns the corresponding error between shell interfaces

and shell deformations. It is intended for use together with the fsolve command in order to

find the interference pressures between all system shells.

function [z] = Pd_calc(x,idat,n) % Syntax:

% [Remaining interference] =

% Pd_calc(Input pressure guess, Geometrical data, Rotational speed)

% Calculate remaining interference in a geometry with applied pressures % using equations from the theory chapter.

% Extract useful values from idat m = idat(8,5); ri = idat(1,1:1:m); ro = idat(2,1:1:m); Ec = idat(3,1:1:m); Er = idat(4,1:1:m); v_cr = idat(5,1:1:m); p = idat(6,1:1:m); G_rz = idat(9,1:1:m);

% Preallocating vectors dr = zeros(1,m); Ten_c = zeros(1,m-1); Ten_r = zeros(1,m-1); Ten_z = zeros(1,m-1); u = zeros(1,m); Pi = zeros(1,m-1); Po = zeros(1,m-1); C1 = zeros(1,m); C2 = zeros(1,m); Q = zeros(1,m); Q2 = zeros(1,m); z = zeros(1,m-1); di = zeros(1,m-1); do = zeros(1,m-1); b = zeros(1,m); v_rc = zeros(1,m); v_rz = zeros(1,m); v_zr = zeros(1,m); v_zc = zeros(1,m); v_cz = zeros(1,m);

% Useful relations w = 2*pi*n/60; % rpm to rad/sec conversion

% Calculate Possions ratios for a assumed transversely isotropic material for k = 1:1:m v_rc(k) = v_cr(k)*Er(k)/Ec(k); v_rz(k) = Er(k)/(2*G_rz(k))-1; v_zr(k) = v_rz(k); v_zc(k) = v_rc(k); v_cz(k) = v_cr(k); end

Page 77: Using advanced composite materials Tobias Kamf - …555551/FULLTEXT01.pdf · TVE-12052 Examensarbete 30 hp September 2012 High speed flywheel design Using advanced composite materials

% Make Young's modulus quotas and b quota for k = 1:1:m u(k) = sqrt((Ec(k)/Er(k))*((1-v_rz(k)*v_zr(k))/(1-v_zc(k)*v_cz(k)))); b(k) = (v_cr(k)+v_cz(k)*v_zr(k))/(1-v_zc(k)*v_cz(k)); end

% Interface calc for i = 1:1:m-1 dr(i) = ro(i)-ri(i+1); end

% Make sure interference is positive dr = abs(dr);

% Copy input value to pressure vector Pd = x;

% Format inner and outer pressure vectors using Pd % Assume same pressure around whole machine Pi(1) = 0; Po(m) = 0; for k=1:1:m-1 Pi(k+1) = Pd(k); Po(k) = Pd(k); end

% Make C1 C2 and Q=K constants for k = 1:1:m

Q(k) = (p(k)*w^2*(3+b(k))/(u(k)^2-9)); %last part of 2.20 Q2(k) = p(k)*w^2*(u(k)^2+3*b(k))/(u(k)^2-9); % last part of 2.22

C1(k) = (((ri(k)*ro(k))^(u(k)))/(ri(k)^(2*u(k))-ro(k)^(2*u(k))))... *(Q(k)*(ri(k)^3*ro(k)^(u(k))-ro(k)^3*ri(k)^(u(k)))... +Pi(k)*ro(k)^(u(k))*ri(k)-Po(k)*ri(k)^(u(k))*ro(k));

C2(k) = (Q(k)*(ro(k)^(u(k)+3)-ri(k)^(u(k)+3))+Po(k)*ro(k)^(u(k)+1)-... Pi(k)*ri(k)^(u(k)+1))/(ri(k)^(2*u(k))-ro(k)^(2*u(k)));

end

% Calculate stresses using equations from theory % and displacements using general Hooke's law for k = 1:1:m-1

% Calc shell k+1 inner displacement di k=k+1;

Ten_r(k-1) = C1(k)*ri(k)^(-1-u(k))+C2(k)*ri(k)^(-1+u(k))+Q(k)*ri(k)^2;

Ten_c(k-1) = u(k)*(C2(k)*ri(k)^(-1+u(k))-C1(k)*ri(k)^(-1-u(k)))... +Q2(k)*ri(k)^2;

di(k-1) = ri(k)*((Ten_c(k-1)/Ec(k))*(1-v_zc(k)*v_cz(k))... -(v_rc(k)+v_zc(k)*v_rz(k))*Ten_r(k-1)/Er(k));

Ten_z(k-1)=Er(k)*(v_zr(k)*Ten_r(k-1)/Er(k)+v_zc(k)*Ten_c(k-1)/Ec(k));

Page 78: Using advanced composite materials Tobias Kamf - …555551/FULLTEXT01.pdf · TVE-12052 Examensarbete 30 hp September 2012 High speed flywheel design Using advanced composite materials

k=k-1;

% Calc shell k outer displacement do Ten_r(k) = C1(k)*ro(k)^(-1-u(k))+C2(k)*ro(k)^(-1+u(k))+Q(k)*ro(k)^2;

Ten_c(k) = u(k)*(C2(k)*ro(k)^(-1+u(k))-C1(k)*ro(k)^(-1-u(k)))... +Q2(k)*ro(k)^2;

do(k) = ro(k)*((Ten_c(k)/Ec(k))*(1-v_zc(k)*v_cz(k))... -(v_rc(k)+v_zc(k)*v_rz(k))*Ten_r(k)/Er(k));

Ten_z(k)=Er(k)*(v_zr(k)*Ten_r(k)/Er(k)+v_zc(k)*Ten_c(k)/Ec(k));

end

% return z as error function % between inner and outer displacement % compared to original shell interference % scaled up so that fsolve do not end prematurely

for k=1:1:m-1 z(k) = (di(k)-do(k)-dr(k))*10^6; end

end

Page 79: Using advanced composite materials Tobias Kamf - …555551/FULLTEXT01.pdf · TVE-12052 Examensarbete 30 hp September 2012 High speed flywheel design Using advanced composite materials

2.5 Ten_cr_calc.m

Below is the code from the Ten_cr_calc function. This file is called from Main_calc.m

and takes a set of input pressures and rotational speed and returns the corresponding hoop

and radial stress that are experienced by the shells. It also returns the radial displacement

of the shells in a separate vector.

function [ Ten_c, Ten_r, intf ] = Ten_cr_calc(x,idat,n) % Syntax:

% [Hoop stress, Radial stress, Radial displacement] =

% Ten_cr_calc(Input pressures, Geometrical data, Rotational speed)

% Calculates hoop and radial stresses of a spinning cylinder % using theory chapter equations.

% Extract values from idat m = idat(8,5); ri = idat(1,1:1:m); ro = idat(2,1:1:m); Ec = idat(3,1:1:m); Er = idat(4,1:1:m); v_cr = idat(5,1:1:m); p = idat(6,1:1:m); y = idat(8,1); G_rz = idat(9,1:1:m);

% Preallocating vectors u = zeros(1,m); Pi = zeros(1,m-1); Po = zeros(1,m-1); C1 = zeros(1,m); C2 = zeros(1,m); Q = zeros(1,m); Q2 = zeros(1,m); r = linspace(min(ri), max(ro), y); Ten_c = zeros(1,length(r)); Ten_r = zeros(1,length(r)); intf = zeros(1,length(r)); b = zeros(1,m); v_rc = zeros(1,m); v_rz = zeros(1,m); v_zr = zeros(1,m); v_zc = zeros(1,m); v_cz = zeros(1,m);

% Useful relations w = 2*pi*n/60; % rpm to rad/sec conversion

% Calculate Possions ratios for a assumed transversely isotropic material for k = 1:1:m v_rc(k) = v_cr(k)*Er(k)/Ec(k); v_rz(k) = Er(k)/(2*G_rz(k))-1; v_zr(k) = v_rz(k); v_zc(k) = v_rc(k); v_cz(k) = v_cr(k); end

Page 80: Using advanced composite materials Tobias Kamf - …555551/FULLTEXT01.pdf · TVE-12052 Examensarbete 30 hp September 2012 High speed flywheel design Using advanced composite materials

% Make Young's modulus quotas and b quota for k = 1:1:m u(k) = sqrt((Ec(k)/Er(k))*((1-v_rz(k)*v_zr(k))/(1-v_zc(k)*v_cz(k)))); b(k) = (v_cr(k)+v_cz(k)*v_zr(k))/(1-v_zc(k)*v_cz(k)); end

% Copy input value to pressure vector Pd = x;

% Format inner and outer pressure vectors using Pd % Assume same pressure around whole machine Pi(1) = 0; Po(m) = 0; for k=1:1:m-1 Pi(k+1) = Pd(k); Po(k) = Pd(k); end

% Make C1 C2 and Q=K constants for k = 1:1:m

Q(k) = (p(k)*w^2*(3+b(k))/(u(k)^2-9)); %last part of 2.20 Q2(k) = p(k)*w^2*(u(k)^2+3*b(k))/(u(k)^2-9); % last part of 2.22

C1(k) = (((ri(k)*ro(k))^(u(k)))/(ri(k)^(2*u(k))-ro(k)^(2*u(k))))... *(Q(k)*(ri(k)^3*ro(k)^(u(k))-ro(k)^3*ri(k)^(u(k)))... +Pi(k)*ro(k)^(u(k))*ri(k)-Po(k)*ri(k)^(u(k))*ro(k));

C2(k) = (Q(k)*(ro(k)^(u(k)+3)-ri(k)^(u(k)+3))+Po(k)*ro(k)^(u(k)+1)-... Pi(k)*ri(k)^(u(k)+1))/(ri(k)^(2*u(k))-ro(k)^(2*u(k)));

end

% Calculate stresses using equations from theory eqs % and displacements using general Hooke's law k = 1; for i = 1:1:length(r)

k = min(k,m-1); %Limit k to prevent index overflow. if r(i) > ri(k+1) k = k+1; end k = max(k,1); %Limit k to prevent index overflow.

% Calculate stresses Ten_r(i) = C1(k)*r(i)^(-1-u(k))+C2(k)*r(i)^(-1+u(k))+Q(k)*r(i)^2;

Ten_c(i) = u(k)*(C2(k)*r(i)^(-1+u(k))-C1(k)*r(i)^(-1-

u(k)))+Q2(k)*r(i)^2;

%Calculate displacements intf(i) = r(i)*(Ten_c(i)/Ec(k)-v_cr(k)*Ten_r(i)/Er(k)); end

end

Page 81: Using advanced composite materials Tobias Kamf - …555551/FULLTEXT01.pdf · TVE-12052 Examensarbete 30 hp September 2012 High speed flywheel design Using advanced composite materials

2.6 E_M_calc.m

Below is the code from the E_M_calc function. This file is called from Main_calc.m and

takes a set of input data and return the mass and stored energy in the given system.

function [ E, M ] = E_M_calc( idat ) % Syntax:

% [Energy, Mass] =

% E_M_calc(Input data)

% E_W_CALC System energy and weight calculator for Spin2Win

% Extract values from idat m = idat(8,5); ri = (idat(1,1:1:m)); ro = (idat(2,1:1:m)); p = idat(6,1:1:m); h = (idat(8,2)); n = idat(8,3); n_ = idat(8,4);

% Preallocating vectors E = zeros(1,2); % E(1) = total energy, E(2) = Energy in rpm interval M = zeros(1,m+1); % W(1-m) individual shell weight, W(m+1) Total weight [kg] I = zeros(1,m);

% Useful relations w = 2*pi*n/60; % rpm to rad/sec conversion w_ = 2*pi*n_/60; % rpm to rad/sec conversion

% Shell mass calculation for k=1:1:m M(k) = h*p(k)*pi*(ro(k)^2-ri(k)^2); end

% Calcualte total mass M(m+1) = sum(M);

% Shell inertia calculation for k=1:1:m I(k) = 0.5*M(k)*(ro(k)^2+ri(k)^2); end

% Energy calculation E(1) = 0.5*sum(I)*w^2; E(2) = 0.5*sum(I)*(w^2-w_^2); end

Page 82: Using advanced composite materials Tobias Kamf - …555551/FULLTEXT01.pdf · TVE-12052 Examensarbete 30 hp September 2012 High speed flywheel design Using advanced composite materials

2.7 Plotter.m

Below is the code from the Plotter script. This file is called from the GUI and takes the

output structure, generated by Main_calc, as input. It then generates a figure showing a

graphical representation of the system.

function Plotter(Ten_c, Ten_r, intf, r_mark, r_mark2, r, ri, fignum, stamp,

prefix) % Syntax: % Plotter( Hoop stress, Radial stress, Radial displacements, ... % Shell markers upper half, Shell markers lower half, Radial vector, ... % Inner radius, Figure number, Time stamp, Run prefix)

% Plot input data in one figure with three subplots.

if ishandle(fignum) == 1 close(figure(fignum)) end

% Settings step = 0.000001 ; % [m] Radial step size used in calculations % Must be same as in Main_calc

% Make figure figure(fignum)

% Set figure name to same as stamp set(figure(fignum),'Name',[stamp, ', ', prefix])

% Plotting hoop stresses subplot(3,1,1) hold on plot(r*1000,Ten_c(1,:),'--r'); plot((r_mark*step+ri(1))*1000,Ten_c(1,r_mark),'*r'); plot(((r_mark2-1)*step+ri(1))*1000,Ten_c(1,(r_mark2)),'*r');

plot(r*1000,Ten_c(2,:),'--b'); plot((r_mark*step+ri(1))*1000,Ten_c(2,r_mark),'*b'); plot(((r_mark2-1)*step+ri(1))*1000,Ten_c(2,(r_mark2)),'*b');

plot(r*1000,Ten_c(3,:),'-k'); plot((r_mark*step+ri(1))*1000,Ten_c(3,r_mark),'*k'); plot(((r_mark2-1)*step+ri(1))*1000,Ten_c(3,(r_mark2)),'*k');

% Give axis names hold off title 'Hoop stress [Blue: Pure centrifugal , Red: Press-fit at standstill ,

Black: Press-fit while rotating]' ylabel 'Stress [MPa]'

Page 83: Using advanced composite materials Tobias Kamf - …555551/FULLTEXT01.pdf · TVE-12052 Examensarbete 30 hp September 2012 High speed flywheel design Using advanced composite materials

% Plotting radial stresses subplot(3,1,2) hold on

plot(r*1000,Ten_r(1,:),'--r'); plot((r_mark*step+ri(1))*1000,Ten_r(1,r_mark),'*r');

plot(r*1000,Ten_r(2,:),'--b'); plot(((r_mark)*step+ri(1))*1000,Ten_r(2,r_mark),'*b');

plot(r*1000,Ten_r(3,:),'-k'); plot((r_mark*step+ri(1))*1000,Ten_r(3,r_mark),'*k');

% Give axis names hold off title 'Radial stress [Blue: Pure centrifugal , Red: Press-fit at

standstill , Black: Press-fit while rotating]' ylabel 'Stress [MPa]'

% Plotting interface distribution subplot(3,1,3) hold on

plot(r*1000,intf(2,:)*10^6,'b'); plot((r_mark*step+ri(1))*1000,intf(2,r_mark)*10^6,'*b'); plot(((r_mark2-1)*step+ri(1))*1000,intf(2,(r_mark2))*10^6,'*b');

plot(r*1000,intf(1,:)*10^6,'r'); plot((r_mark*step+ri(1))*1000,intf(1,r_mark)*10^6,'*r'); plot(((r_mark2-1)*step+ri(1))*1000,intf(1,(r_mark2))*10^6,'*r');

% Give axis names hold off title 'Radial displacement [Red: Displacement at standstill , Blue:

Displacement while rotating]' ylabel 'Displacement [µm]' xlabel 'Radius [mm]'

end

Page 84: Using advanced composite materials Tobias Kamf - …555551/FULLTEXT01.pdf · TVE-12052 Examensarbete 30 hp September 2012 High speed flywheel design Using advanced composite materials

2.8 Load_default_iso.m

Below is the code from the load_default_iso function. This file is called from the GUI and

takes no input parameters, but returns a full set of default system data for a nine shelled

geometry of solely aluminium.

function [ idat ] = load_default_iso() % Syntax: % [Output data] = load_default_iso()

% Generates a set of data that can be used as input data in Spin2Win

% Input parameters % Aluminium SETTINGS % C1 C2 C3 C4 C5 % C6 C7 C8 C9 % [m] Inner radius ri = [ 0.100 , 0.125 , 0.150 , 0.175 , 0.200 , ... 0.225 , 0.250 , 0.275 , 0.300 ]; % [m] Outer radius ro = [ 0.12525 , 0.15025 , 0.17525 , 0.20025 , 0.22525 , ... 0.25025 , 0.27525 , 0.30025 , 0.32500 ]; % [Pa] Youngs Modulus, Hoop Ec = [ 72*10^9 , 72*10^9 , 72*10^9 , 72*10^9 , 72*10^9 , ... 72*10^9 , 72*10^9 , 72*10^9 , 72*10^9 ]; % [Pa ]Youngs Modulus, Radial Er = [ 72*10^9 , 72*10^9 , 72*10^9 , 72*10^9 , 72*10^9 , ... 72*10^9 , 72*10^9 , 72*10^9 , 72*10^9 ]; % Possions ratio, circumference - radial direction v = [ 0.33 , 0.33 , 0.33 , 0.33 , 0.33 , ... 0.33 , 0.33 , 0.33 , 0.33 ]; % [kg/m3] Material density p = [ 2800 , 2800 , 2800 , 2800 , 2800 , ... 2800 , 2800 , 2800 , 2800 ]; % Static friction coefficient uu = [ 0.61 , 0.61 , 0.61 , 0.61 , 0.61 , ... 0.61 , 0.61 , 0.61 , 0 ]; % Shear modulus G_rz = [ 28*10^9 , 28*10^9 , 28*10^9 , 28*10^9 , 28*10^9 , ... 28*10^9 , 28*10^9 , 28*10^9 , 28*10^9 ];

% Additional input parameters hh = 0.3 ; % rotor height n = 8000; % [rpm] rotational speed n_ = 3000; % Minimum speed

% Settings step = 0.000001 ; % [m] Radial step size used in calculations %Must be same as in Main_calc

% Preallocating vectors m = length(ri); r = min(ri):step:max(ro); % radial vector

Page 85: Using advanced composite materials Tobias Kamf - …555551/FULLTEXT01.pdf · TVE-12052 Examensarbete 30 hp September 2012 High speed flywheel design Using advanced composite materials

% Fill idat with input data for easy transport into subroutines % scaled to mm, diameters and MPa idat(1,1:1:m) = ri*2000; idat(2,1:1:m) = ro*2000; idat(3,1:1:m) = Ec/10^9; idat(4,1:1:m) = Er/10^9; idat(5,1:1:m) = v; idat(6,1:1:m) = p; idat(7,1:1:m) = uu; idat(9,1:1:m) = G_rz/10^9; idat(8,1) = length(r); idat(8,2) = hh*1000; idat(8,3) = n; idat(8,4) = n_; idat(8,5) = 9;

end

Page 86: Using advanced composite materials Tobias Kamf - …555551/FULLTEXT01.pdf · TVE-12052 Examensarbete 30 hp September 2012 High speed flywheel design Using advanced composite materials

2.9 Load_default_ort.m

Below is the code from the load_default_ort function. This file is called from the GUI and

takes no input parameters, but returns a full set of default system data for a nine shelled

geometry of solely generic carbon fibre composite.

function [ idat ] = load_default_ort() % Syntax: % [Output data] = load_default_ort()

% Generates a set of data that can be used as input data in Spin2Win

% Input parameters % CARBON-COMPOSITE SETTINGS % C1 C2 C3 C4 C5 % C6 C7 C8 C9 % [m] Inner radius ri = [ 0.100 , 0.125 , 0.150 , 0.175 , 0.200 , ... 0.225 , 0.250 , 0.275 , 0.300 ]; % [m] Outer radius ro = [ 0.12525 , 0.15025 , 0.17525 , 0.20025 , 0.22525 , ... 0.25025 , 0.27525 , 0.30025 , 0.32500 ]; % [Pa] Youngs Modulus, Hoop Ec = [ 155*10^9 , 155*10^9 , 155*10^9 , 155*10^9 , 155*10^9 , ... 155*10^9 , 155*10^9 , 155*10^9 , 155*10^9 ]; % [Pa ]Youngs Modulus, Radial Er = [ 9*10^9 , 9*10^9 , 9*10^9 , 9*10^9 , 9*10^9 , ... 9*10^9 , 9*10^9 , 9*10^9 , 9*10^9 ]; % Possions ratio, circumference - radial direction v = [ 0.25 , 0.25 , 0.25 , 0.25 , 0.25 , ... 0.25 , 0.25 , 0.25 , 0.25 ]; % [kg/m3] Material density p = [ 1600 , 1600 , 1600 , 1600 , 1600 , ... 1600 , 1600 , 1600 , 1600 ]; % Static friction coefficient uu = [ 0.61 , 0.61 , 0.61 , 0.61 , 0.61 , ... 0.61 , 0.61 , 0.61 , 0 ]; % Shear modulus G_rz = [ 3.6*10^9 , 3.6*10^9 , 3.6*10^9 , 3.6*10^9 , 3.6*10^9 , ... 3.6*10^9 , 3.6*10^9 , 3.6*10^9 , 3.6*10^9 ];

% Additional input parameters hh = 0.3 ; % rotor height n = 10000; % [rpm] rotational speed n_ = 5000; % Minimal speed

% Settings step = 0.000001 ; % [m] Radial step size used in calculations % Must be same as in Main_calc

% Preallocating vectors, mostly different constants used in loops m = length(ri); r = min(ri):step:max(ro); % radial vector

Page 87: Using advanced composite materials Tobias Kamf - …555551/FULLTEXT01.pdf · TVE-12052 Examensarbete 30 hp September 2012 High speed flywheel design Using advanced composite materials

% Fill idat with input data for easy transport into subroutines % Scaled to mm, diameters and MPa idat(1,1:1:m) = ri*2000; idat(2,1:1:m) = ro*2000; idat(3,1:1:m) = Ec/10^9; idat(4,1:1:m) = Er/10^9; idat(5,1:1:m) = v; idat(6,1:1:m) = p; idat(7,1:1:m) = uu; idat(9,1:1:m) = G_rz/10^9; idat(8,1) = length(r); idat(8,2) = hh*1000; idat(8,3) = n; idat(8,4) = n_; idat(8,5) = 9;

end

Page 88: Using advanced composite materials Tobias Kamf - …555551/FULLTEXT01.pdf · TVE-12052 Examensarbete 30 hp September 2012 High speed flywheel design Using advanced composite materials

2.10 Split_indata.m

Below is the code from the split_indata function. This file is called from the GUI and

takes a raw data matrix, generated by for example import_default_iso, and splits it into

two separate parts that can be handled by the GUI tables.

function [ geomdat, setdat ] = split_indata( senddat ) % Syntax: % [Geometrical data, Settings data] = % split_indata(Input raw data)

% Pre allocate variables geomdat = zeros(8,length(senddat(1,:))); setdat = zeros(1,5);

% Extract geometrical data from input for i=1:1:7 for k=1:1:length(senddat(1,:)) geomdat(i,k) = senddat(i,k); end end

for k=1:1:length(senddat(1,:)) geomdat(8,k) = senddat(9,k); end

% Extract settings data from input i = 8; for k=1:1:5 setdat(1,k) = senddat(i,k); end

end

Page 89: Using advanced composite materials Tobias Kamf - …555551/FULLTEXT01.pdf · TVE-12052 Examensarbete 30 hp September 2012 High speed flywheel design Using advanced composite materials

2.11 Merge_indata.m

Below is the code from the merge_indata function. This file is called from the GUI and

takes two data sets from the GUI tables and merges them into a single matrix that can be

passed on to other functions, like Main_clac.

function [ senddat ] = merge_indata( geomdat, setdat ) % Syntax: % [Output matrix] = % merge_indata(Geometrical data, Settings data)

% Merges geometrical and settings data into a singel matrix % for easy transport between subfunctions

% Pre allocate matrix senddat = zeros(9,length(geomdat(1,:)));

% Copy geometrical data into output matrix for i=1:1:7 for k=1:1:length(geomdat(1,:)) senddat(i,k) = geomdat(i,k); end end

for k=1:1:length(geomdat(1,:)) senddat(9,k) = geomdat(8,k); end

% Copy settings data into output matrix i = 8; for k=2:1:4 senddat(i,k) = setdat(k,1); end

% Insert number of active shells into output matrix senddat(i,5) = setdat(1,1);

end

Page 90: Using advanced composite materials Tobias Kamf - …555551/FULLTEXT01.pdf · TVE-12052 Examensarbete 30 hp September 2012 High speed flywheel design Using advanced composite materials

2.12 ReadFile.m

Below is the code from the ReadFile function. This file is called from the GUI and, by the

help of the uigetfile command, reads an old log file generated by Main_calc. It then

searches the file for timestamps and marks the beginning of each run.

function [texten, Dat_line] = ReadFile(infile) % Syntax: % [Loaded text, Beginning of run line marks] = % ReadFile(File name of old log file)

% Check if file name was passed on correctly % Return -1 if load failed if infile == 0 texten = -1; Dat_line = -1; else

% Open and read file fid = fopen(infile); k = 1;

% Scan each line from file and save while ~feof(fid) tline = fgetl(fid); texten(k,1) = cellstr(tline); k=k+1; end

% Close file fclose(fid);

% Scan for 'Date and time of run:' string and mark each hit with % corresponding line number al = 'Date and time of run:'; i = 1; for k=1:1:length(texten) A = sscanf(char(texten(k)), '%c', [1 21]); if strcmp(A, al) Dat_line(i) = k; i =i+1; end end

%Swap Dat_line direction Dat_line(length(Dat_line):-1:1) = Dat_line; end

end

Page 91: Using advanced composite materials Tobias Kamf - …555551/FULLTEXT01.pdf · TVE-12052 Examensarbete 30 hp September 2012 High speed flywheel design Using advanced composite materials

2.13 Import_n_format.m

Below is the code from the import_n_format function. This file is called from the GUI and

is used to format the data imported by ReadFile into the correct format for use in the rest

of the Spin2Win program.

function [ idat ] = import_n_format( impraw, begline ) % Syntax: % [Formated output data] = % import_n_format(Imported raw data, Beginning of run line markers)

% Format raw data into idat format for the GUI tables

% Read first eight lines after run marker % Containing geometrical data for i=1:1:8 k=1; [curr, rest]=strtok(impraw(begline+1+i)); [curr, rest]=strtok(rest); while ~isempty(cell2mat(curr)) idat(i,k) = str2double(cell2mat(curr)); k=k+1; [curr, rest]=strtok(rest); end end

% Shear modulus fix idat(9,:)=idat(8,:); idat(8,:)=0;

% Read next five lines contaning settings data for i=1:1:5 [~ , rest]=strtok(impraw(begline+9+i)); [curr]=strtok(rest); idat(8,i)=str2double(cell2mat(curr)); end

% Scaling to mm, diameters and MPa idat(1,:)=idat(1,:)*2000; idat(2,:)=idat(2,:)*2000;

idat(3,:)=idat(3,:)/10^9; idat(4,:)=idat(4,:)/10^9; idat(9,:)=idat(9,:)/10^9;

idat(8,2)=idat(8,2)*1000; end

Page 92: Using advanced composite materials Tobias Kamf - …555551/FULLTEXT01.pdf · TVE-12052 Examensarbete 30 hp September 2012 High speed flywheel design Using advanced composite materials

3 Data structure explanations

3.1 Raw import / export data

Type: Matrix

Generated by: import_n_format, load_default_iso/ort and merge_indata

Used for: Geometrical and settings data transport.

Example creation:

m = length(inner_radius)

idat(1,1:1:m) = inner_radius idat(2,1:1:m) = outer_radius idat(3,1:1:m) = Youngs_Modulus_hoop idat(4,1:1:m) = Youngs_Modulus_radial idat(5,1:1:m) = Possions_ratio idat(6,1:1:m) = Material_density idat(7,1:1:m) = Static_friction_coefficient idat(8,1) = Length_of_radial_vector idat(8,2) = System_height idat(8,3) = Maximal_rotational_speed idat(8,4) = Minimal_rotational_speed idat(8,5) = Number_of_active_shells

Example for a seven shelled geometry, m: 1-7: 200 250 300 350 400 450 500

250,5 300,5 350,5 400,5 450,5 500,5 550,5

72 72 72 72 72 72 72

72 72 72 72 72 72 72

0,33 0,33 0,33 0,33 0,33 0,33 0,33

2800 2800 2800 2800 2800 2800 2800

0,61 0,61 0,61 0,61 0,61 0,61 0,61

22501 300 8000 3000 9 0 0

Page 93: Using advanced composite materials Tobias Kamf - …555551/FULLTEXT01.pdf · TVE-12052 Examensarbete 30 hp September 2012 High speed flywheel design Using advanced composite materials

3.2 Geometrical data

Type: Matrix

Generated by: split_indata

Used for: Geometrical data for GUI table

Example creation: % Extract geometrical data from raw input data for i=1:1:7 for k=1:1:length(raw_data(1,:)) geom_data(i,k) = raw_data(i,k); end end

Example for a seven shelled geometry, generated from the example in 3.1: 200 250 300 350 400 450 500

250,5 300,5 350,5 400,5 450,5 500,5 550,5

72 72 72 72 72 72 72

72 72 72 72 72 72 72

0,33 0,33 0,33 0,33 0,33 0,33 0,33

2800 2800 2800 2800 2800 2800 2800

0,61 0,61 0,61 0,61 0,61 0,61 0,61

3.3 Settings data

Type: Matrix

Generated by: split_indata

Used for: Settings data for GUI table

Example creation: % Extract settings data from raw input data i = 8; for k=1:1:5 settings_data(1,k) = raw_data(i,k); end

Example for a seven shelled geometry, generated from the example in 3.1: 22501 300 8000 3000 9 0 0

Page 94: Using advanced composite materials Tobias Kamf - …555551/FULLTEXT01.pdf · TVE-12052 Examensarbete 30 hp September 2012 High speed flywheel design Using advanced composite materials

3.4 Output structure

Type: Structure

Generated by: Main_calc

Used for: Saving all generated data, for both immediate plotting and later use. Data is saved in

mout.mat.

Example creation: % Plotter data out.Ten_c = Ten_c ; % Save hoop stresses out.Ten_r = Ten_r ; % Save radial stresses out.intf = intf ; % Save displacements out.r_mark = r_mark ; % Save shell positions out.r_mark2 = r_mark2 ; % Save shell positions out.r = r ; % Save radial vector, for plotter out.ri = ri ; % Save inner radius, for plotter out.stamp = stamp ; % Save timestamp of run

% General data out.P_standstill = Pd_still ; % Save pressures in standstill out.P_rotating = Pd ; % Save pressures while rotating out.Energy = Energy ; % Save system energy out.Mass = Mass ; % Save system mass out.Ten_c_max = Ten_c_max ; % Save max hoop stress out.Ten_c_min = Ten_c_min ; % Save min hoop stress out.Ten_r_max = Ten_r_max ; % Save max radial stress out.Ten_r_min = Ten_r_min ; % Save min radial stress

Example output for a two shelled geometry from the 30th

of March 2012:

mout =

Ten_c: [3x3001 double] Ten_r: [3x3001 double] intf: [2x3001 double] r_mark: [501 3000] r_mark2: [1 503] r: [1x3001 double] ri: [0.0600 0.0650] stamp: '30-Mar-2012 13:58:04' P_standstill: 5.0647e-005 P_rotating: 5.7734e+007 Energy: [2.6695e+005 2.6628e+005] Mass: [0.3240 0.5843 0.9083] Ten_c_max: [3x2 double] Ten_c_min: [3x2 double] Ten_r_max: [3x2 double] Ten_r_min: [3x2 double]

Page 95: Using advanced composite materials Tobias Kamf - …555551/FULLTEXT01.pdf · TVE-12052 Examensarbete 30 hp September 2012 High speed flywheel design Using advanced composite materials

3.5 Output log file

Type: Text file and command window display

Generated by: Main_calc

Used for: Saving important data and logging events.

Example output for a three shelled geometry, with added comments:

Date and time of run: 05-Apr-2012 13:29:10, No name Input data: Ri: 0.1 0.125 0.15 Ro: 0.12525 0.15025 0.17525 Ec: 72000000000 72000000000 72000000000 Er: 72000000000 72000000000 72000000000 v: 0.33 0.33 0.33 p: 2800 2800 2800 µ: 0.61 0.61 0.61 lr: 7526 h: 0.3 n: 8000 n_: 3000 sh: 3

These first lines contain all the geometrical data and settings, as well as the timestamp and run

name. These lines are used when importing old output files in order to get a hold of all input

data that was used in that run. Results: -------------------------------------------------- Centrifugal only: Maximal tension, hoop: 57.6466 [MPa] Minimal tension, hoop: 21.5869 [MPa] Maximal tension, radial: 0.52152 [MPa] Minimal tension, radial: -6.7007e-015 [MPa] -------------------------------------------------- Press-fit, standstill: Maximal tension, hoop: 132.0258 [MPa] Minimal tension, hoop: -152.1421 [MPa] Maximal tension, radial: 1.5495e-014 [MPa] Minimal tension, radial: -27.576 [MPa] Interference pressures: Shell 1-2: 27.5797 [MPa] Shell 2-3: 20.3778 [MPa] -------------------------------------------------- Press-fit, rotating: Maximal tension, hoop: 165.4994 [MPa] Minimal tension, hoop: -98.5535 [MPa] Maximal tension, radial: -5.134e-015 [MPa] Minimal tension, radial: -23.1102 [MPa] Interference pressures: Shell 1-2: 23.1145 [MPa] Shell 2-3: 16.6467 [MPa]

The lines under “Results” show maximal material stresses and interference pressures, both in

the rotating and standstill case. The centrifugal only section is often not of much interest

unless a system with just a single shell is considered.

Page 96: Using advanced composite materials Tobias Kamf - …555551/FULLTEXT01.pdf · TVE-12052 Examensarbete 30 hp September 2012 High speed flywheel design Using advanced composite materials

-------------------------------------------------- Maximal assembly force needed for shell press-fit mounting: Shell 1-2: 3971.9038 [kN] Shell 2-3: 3520.4837 [kN] -------------------------------------------------- Maximal transferable torque between shells, at standstill: Shell 1-2: 497.4809 [kNm] Shell 2-3: 528.9527 [kNm] -------------------------------------------------- Maximal transferable torque between shells, at max rpm: Shell 1-2: 416.9369 [kNm] Shell 2-3: 432.1048 [kNm] -------------------------------------------------- Shell and system mass: Shell 1: 15.0091 [kg] Shell 2: 18.3408 [kg] Shell 3: 21.6724 [kg] Total: 55.0223 [kg] -------------------------------------------------- Stored energy: in total: 109.1463 [Wh] in rpm interval: 93.7976 [Wh] -------------------------------------------------- End of output

The final set of lines contains data on forces, masses and energies. The assembly force is the

force needed to force the shells onto each other given the interference. The torques is both

given in the rotating and standstill case. Each shells mass is individually displayed and also

their total sum. Lastly the stored energy in the rotating mass is presented, both in total and in

the allowed machine speed interval.

Page 97: Using advanced composite materials Tobias Kamf - …555551/FULLTEXT01.pdf · TVE-12052 Examensarbete 30 hp September 2012 High speed flywheel design Using advanced composite materials

4 Explanation of output graphs Each output figure contains three graphs; one for the hoop stresses, one for radial stresses and

one for the radial displacement. Bellow is an example output from a simple three shelled

geometry consisting of one inner layer in aluminium followed by a glass-fibre composite

layer and lastly a carbon-fibre composite layer.

Figure 2: Output graph for a generic geometry with three shells, rotating with 30k rpm.

The Spin2Win program always presumes all materials to be perfectly linear and follow

Hook’s Law regardless of material strain and stress. This means that the program does not

detect when materials start to reach into the non-linear deformation area which leads to plastic

deformations and probably also irreversible system damage. So make sure all values are

below the tensile strength of the material before evaluating the results.

Page 98: Using advanced composite materials Tobias Kamf - …555551/FULLTEXT01.pdf · TVE-12052 Examensarbete 30 hp September 2012 High speed flywheel design Using advanced composite materials

The first plot, Hoop Stress, shows the circumstantial stress as a function of system radius.

Three lines are present, each showing the circumstantial stress in a different system state,

where negative values indicate compressive stress.

The blue line shows the stress for each shell independent of each other, this is usually

not of interest unless the study considers a single shell or if the shells are designed to

not touch each other.

The red line shows the stresses induced by the press-fit when the system is standing still. If no interference exists between the shells or of it is very small this curve will be

close to zero

The black line shows a combination of the press-fit and centrifugal induced stresses at maximum speed. This line in combination with the red line will tell if the system will

survive both while rotating and while standing still.

The middle graph, Radial Stress, shows the radial stresses, again as a function of radius. The

colour code remains the same as in the first graph. With black being the most important one

when the risk of delimitation is to be evaluated. Usually compressive stresses are preferred in

order to avoid delimitation.

Finally the “Radial Displacement” graph shows how much each shell will expand in the radial

direction. The red line shows the displacements when the system is at standstill and hence

only shows the displacements induced by the press-fit interference pressures. The blue line

shows the displacement at maximum speed as a combination of press-fit and centrifugal

displacement.

Page 99: Using advanced composite materials Tobias Kamf - …555551/FULLTEXT01.pdf · TVE-12052 Examensarbete 30 hp September 2012 High speed flywheel design Using advanced composite materials

Appendix B: Flywheel drawings

Page 100: Using advanced composite materials Tobias Kamf - …555551/FULLTEXT01.pdf · TVE-12052 Examensarbete 30 hp September 2012 High speed flywheel design Using advanced composite materials

��

��������� ���

�����

�����������

���������������

� ��!��"

��#$����

������

%�����&

'�

%(������)

����&�

������

��*�%�&�

�&�&�%(����������

+��������

(�,-�

��, �.

%�����$��

#���,%����

����

���*-�

+'�

/��

��+�

�!

����%

���$��

���0����

$���%%&

������%�%��(�'����

��+

��%�&�%�����+

����+����%

%$�'�

(�'���%��

�&�����(�%�

��

���+�&�

�����$+#��

������+�

/�1�

�������

%2�����

"�!����

�����

�!

�"�!��

�+#3�����

"4

�"����

�+#3%� ���

"

! 4 "

%�(��&����

Page 101: Using advanced composite materials Tobias Kamf - …555551/FULLTEXT01.pdf · TVE-12052 Examensarbete 30 hp September 2012 High speed flywheel design Using advanced composite materials

�����

���������

�������

���

�������

�����������

�������

��!"#�$��"�$%

&�

�����&

#���� �

��

� �!���"&�"�'

��

������

#�$� � !� �!���

(�����)*� ��� �

��

������

�+���,�)���&' �-.�!�%$/

0,�����#�

�1��0

02�(�)�)�

1+���

���(�)

��3�0���

1����02�(�1��+���

������()

1���

0��������

1��+�

� 4�%5

1������1

����40,���

���

�-������

2,461

���361

0�778!�

����(��)*9�� �

� �

#�

��(�00��,��+�0�0��2�#��1)

1���0���0������((�����0

0��#�2�#���0,)

��(����2�0)

��

Page 102: Using advanced composite materials Tobias Kamf - …555551/FULLTEXT01.pdf · TVE-12052 Examensarbete 30 hp September 2012 High speed flywheel design Using advanced composite materials

���������������������������� ��

������������

��������

� �

������������ �!�"��#$

% � �

��

&'�������

(����)�

������

��*�&�)�

()��)��&'

����(������

+��������

(���

&�����,��

-���.�&�����

(����

(�-,����(�

��.��/

��+�

�(��&

'�.0(

���*0(

&�������)1��

������,��

������������2 ���

3��

+1�

,���&&�)

������&��&��'�1��(�

(�+

��&�)�&�������

�+����+����&

&,�1�

'��1���&��

�)�����'�&�

��4�����#

-

�5 ��

&�'��)��+

+�

&'���������

��6�

���

��6� �

7�

�%�

(���

�����

&'���������

8�9�+

�� �%��

�����

��9�+

�� �%�

���67��

(���

���-�

&'��������

��5�

� �9�+

%� �%�

��:�

��6 7��

���887;;�

��:�

���;��

�%:�

�%�9� 8� �

7�

%�9�

���7�

%�9�+

%� �%��

++

Page 103: Using advanced composite materials Tobias Kamf - …555551/FULLTEXT01.pdf · TVE-12052 Examensarbete 30 hp September 2012 High speed flywheel design Using advanced composite materials

������������

������

��������������������

���������������������

��������

���� �������

������������

������

��������������������

���������������������

��������

���� �������

�����

����� ��

!��

�""�

""#���������������$�

�$�������

���%&'#�()�������������� ���������

�������

*�+,����+���

�-������

.#&/01)����2�2��3����4

��

50##1���6,��

57�%#)�)�

8./�'6�

1&1%#)

(#�&5&6'

86�'61�57

�%#�8(�.&'/

9�1#(&�%)

8�1#

*(#�:�50�(;�

1�:���

'�9#

8(�.'

5&/'�1<(#

70:=8

�;;�=8

9,/

8#*<(��'8�

#8/#5

����'/<%�()���������� >�����

?��

<'%#55�610#(.&5#�5;#7&,&#8)

8&9#'5&6'5��(#�&'

�9&%%&9#1#(5

5<(,�

7#�,&'&50)

16%#(�'7#5)

��

&1#9�'6�

;�(1�'<9*#(

;�(1�'�9#

?1@�

�������

*�

��

������

,������

A

��

������������$������

8#1�&%���

����������������� ��

57�%#���)��

������������$������

����������������� ��

Page 104: Using advanced composite materials Tobias Kamf - …555551/FULLTEXT01.pdf · TVE-12052 Examensarbete 30 hp September 2012 High speed flywheel design Using advanced composite materials

��������������

����� � �����

���������������������

������������

�������

��

������

� ������

!�"#�$�����%& ��'� �()

����$���*+��

�,�-�����

.!#��*&

$"$-��

��/"�"*�

.*��*$��,

�-��.��!"�#

0�$��"�-�

.�$�

$&��1

,��2.

��0�

.��!�

�"#��$3��

.��3����.�

���/2.

0+#

���-"�������������������4�&�����&�

�.#��

�����#3-�

������������45���&�

6&�

3�-����*

$���!"������,"+"�.�

."0

���"*�������"�

�0"--"0�$���

�3�+�

,��+"�"���

$*-����,���

+7 8��( 9

��

�%:��

��

.�$�

"-���

�,�-�������

4�

���;:��

;:��

�;�:� �;�:

��:�

��;:��

��<�����;���

.�$�

"-���

�,�-�������

;:�

��:�

�=:�

��:�

�;��

�;�:

;:��

�;�:�4

���

��;:��

��<��

�<<;:��

Page 105: Using advanced composite materials Tobias Kamf - …555551/FULLTEXT01.pdf · TVE-12052 Examensarbete 30 hp September 2012 High speed flywheel design Using advanced composite materials

���������������������������� ��

�����

� �

��������

� � ��

����������������� �!

��

"�������#���

"$�������

%����#�

������

��&�"�#�

%#��#��"$����%������

'��������

%���

(���)�"���*�

��)� +

��'�

%����

"�����,��

$�)-%

�**&-%

'��

%�(,����%�

�%��"

������,��������������. ���

/��

,���""�#������"��"*�$����%�

%�'��"�#�"��������'����'����"

",���$������"��

�#�����$�"�

&0�1�2��3��

���

��

���

��4�

Page 106: Using advanced composite materials Tobias Kamf - …555551/FULLTEXT01.pdf · TVE-12052 Examensarbete 30 hp September 2012 High speed flywheel design Using advanced composite materials

����������

��� ��������

������������������

����

����

���

����

����

����

��������� �

� !"#

$%�&!�� &%'�

�����

&�

��(��

������

) ����

*��+ �,��������-���./

� �������)��

��&0�,�,�

#*+����

���0�,

%�1�����

#��������&0��#%&*��+

�&��%�&0,

#%&*�

��!�2

��+�&�3%�

���0���&%,��������������4��������

#&��

&''1"#

�)+

5�&

�&��

#�$3%�&�#�

�#+��

���&�+30&%,����������46����

3�0������ �%*�����'���)��#,

#����������&%�������00�����%�

�3%)&���)���� ,

��0�%&����,

&0���7�

��

�%�78���

���9��:���;

����

������

���;�

��

Page 107: Using advanced composite materials Tobias Kamf - …555551/FULLTEXT01.pdf · TVE-12052 Examensarbete 30 hp September 2012 High speed flywheel design Using advanced composite materials

����������

���� ������

��������

����

����

���

�����

����

��

������

����

��� �� !��"#��$������$$

����

�����

�%��&�'�(�)

�*���

��

���+���*������������������������

��,�

�����

-�!�����.���#�

�%���&

/��01����&����2 ��$!3

�1�������-��

��+��&��

4/0����

���+��

*�������

4��������+��4*/��0

5��*�+�

4��

.*�6��1*7�

��6�$8

�5�

4*/�

��0��9*�

�16:4

77�:4

5-0

4�.9*��4�

�40��

����09+*������������;����

<�

9�+������1�*/�����7���-��4�

4�5��������*�����5�++�5���*�

�9*-���-����1�

��+�*�����

+�%��&

��

Page 108: Using advanced composite materials Tobias Kamf - …555551/FULLTEXT01.pdf · TVE-12052 Examensarbete 30 hp September 2012 High speed flywheel design Using advanced composite materials

��

�����

��

��

���

����

�����

�����

������

��

�!��

���

��

��

"���

��

#�

��$

%�

���"

��

&�'�

�%$

#%

�$%

���

�"�

�#&�

��$

��

��&��

"�

#�

���

�$

��(

&�

$�

��

��)��

*

#��(&��

$#

�����

��%

+��

���"

�$��

&���������������,

���

����

��

�&��

)�

��

&-�

#&�

�$

�#

��

��).#

����

$�

("�

&�����������,

/���

��

0��

�+�

�--'.#

($

"�

�%��

�&�

���

-��

�+��

#�

#��

�$

�%

$�

�&���$

���""��

���

&

(&+�

���+

�$�

��

�%"�

&�

$�

��

��

����

�$%

�-�

&��

$(�

��&

-�

&��

$�

��

0�1

��

����

��

� 2�34�

��

����

��

"��

34��5

����

��

� ����36

7�8��

9:8�

�;

<�

�2��5�8�

�9:8�

�;

<

��

��%

$��

��

#���

�"��

��

"���

����

Page 109: Using advanced composite materials Tobias Kamf - …555551/FULLTEXT01.pdf · TVE-12052 Examensarbete 30 hp September 2012 High speed flywheel design Using advanced composite materials

��

����

����

���

������

��

�����

����

���

����

� ��

����

����

����

���

������

����

����

������

���

�����

����

���

����

����

��

����

���

���

���

����

����

��

!"#

$%

&'

(�)

&��

���

))

���

�����

����

����

��*�

��

����

���

����

����

��

����

�+��

�����, �

���

����

��

�-

.%(/$

����

���

0��1

���

������+

+�2$

&)

%3

��

�����

���

4��

����

��

�0

1��

��

����

��

���

���

��

���

���

����

��

0��

1

��

�����

��

��

���

1�

��5

��

��

��

"6

/$

����

����

����������������,

���

����

��

��

1�

����

7�

��

�8�

���5

���

��

��7&

)9

���

0�

7:�

����

�1

5��

������������,

;���

��

<��

�41

�88�

:�

5�

��

����

��0

���

8�

�4��

��

���

��

��

��

������

����

���

���

5�4�

��4

���

��

����

��

��

���

����

��

Page 110: Using advanced composite materials Tobias Kamf - …555551/FULLTEXT01.pdf · TVE-12052 Examensarbete 30 hp September 2012 High speed flywheel design Using advanced composite materials

�����������

�����

���������������������

������

��

� �������

! ��"#�

������

$�%���#"

!#�"#��� ����!$� �"�

&���$����

!���

���"��'$�

"�&�

��(��)

!�*'$��"!�

��������#+��

�����"��$���������������,��������

*$��(����$-�

!$� "

�!���

�(.!

����"�'��$�����������,/����

0��

&+�

�--%.!

'"�����#���$ �����-� �+��!�

!�&�"��#"���$���"�&����&���$�

�'$+� ��+�"����

�#��$�" ���

��

���&�"#�

-�$��"'&*�$

-�$��"�&�

0�1�

������

�234

��

����5

��������

��

�����

�234678���

��

��2��*��34�9���:89�&5

�5

�4�;<9�-����9�&5

� 5

==�)����8�7����

����==�

���==�

Page 111: Using advanced composite materials Tobias Kamf - …555551/FULLTEXT01.pdf · TVE-12052 Examensarbete 30 hp September 2012 High speed flywheel design Using advanced composite materials

���������������������������� ��

��������

� �����

� � ��

���������������� !"�#$

��

%�������&'��

%(�������

)����&�

������

��*�%�&�

)&��&��%(����)������

+��������

)���

,���-�%�����

��-"�.

��+�

)����

%�����/��

(�-0)

���*0)

+'�

)�,/����)�

�)��%

������/��������������1 ���

2��

/���%%�&������%��%��(�'��)�

)�+��%�&�%��������+����+����%

%/�'�(��'���%��

�&�����(�%�

���"���3#

+"�4!5"��6����4������

��7�

8�9�

����

�:7�

�����

�;�

�����

;��

Page 112: Using advanced composite materials Tobias Kamf - …555551/FULLTEXT01.pdf · TVE-12052 Examensarbete 30 hp September 2012 High speed flywheel design Using advanced composite materials

�������

����

� ���

� ������ � ������� ���������

�������� ��� �������������������� ���

!�"�#$�!%�

���&'(�!)��������������*�����+���

��������,-

�,+���

&����� �

�.+�-+�,

/'0$1)��23����4

�-

#$1���56��

#��&),)�

7/0�(5�

1'1&)

!8'#'5(

75�(51�#�

�&�7!�/'(0

��1!'�&)

1�"��9

7!�/(

#'0(�1:!

�$";7

7�1

�%%8;7

�60

<��

(��

7 :!��(7�

70#

����(0:&�

!)����������*=+����

:(&##�51$!/'#�#%�'6'7)

7'�(#'5(#��!�'(

��'&&'�1!#

#:!6�

��6'('#$)

15&!�(�#)

# � >�?�� �� �@�

��

�-�A�

�����B��

�!����

�!���

,��

����

�!B,�

Page 113: Using advanced composite materials Tobias Kamf - …555551/FULLTEXT01.pdf · TVE-12052 Examensarbete 30 hp September 2012 High speed flywheel design Using advanced composite materials

������

������������������

����

��

���

����

��

�����

���

��

����

� ���!"

#��

$%

&

� ��

��

'(���

����

)�

���

*�

� �

��

��+�'�*

�)*��

* �'(

���

�)���

���

,� �

���

��

)� �

'��

�� -

��

.���/�'�����

)���

)�.-���

�)�

�/��

0

��,

�)�

�'

(�/1)

���+1)

'��� ���*2��

����

��

-��

������������

3 ���

4��

,2�

-���

''�*

����

�'��'��(�2��)�

)�,

��'�*�'�������

�,����,

� �

�'

'-�2�

(��2��

�'��

*��

���(�'�

������

�5$

,���

#6���7�

���������

8�

�&�

��9��

�:;�

��;�

�����

<�=�,

�� �&��

��

'�( �*

���

��:�=�>�

Page 114: Using advanced composite materials Tobias Kamf - …555551/FULLTEXT01.pdf · TVE-12052 Examensarbete 30 hp September 2012 High speed flywheel design Using advanced composite materials

�����

�����

��� �

������

��������

������������������ !"

������

#$ %�����

&���'(�

���%��

��)�#�('

&(�'(��#$ %��&� ��'�

� ���� %�

& ��

#��' �*��

' ��

��+� ,

&��*�� '&�

#�������(-��

���%�'� ����������������.���������

��� +�#� �/�

&� �'

�&��#

$�+0&

��� '�*% ������������.1�����

2�

�-�

//)0&

*'%�##�(������#��#/�$�-��&�

&���'#�('#� ����'���%%������#

#*�- $��-�'�#��

�(%�� '$�#�

��

�����'(�

/ ���'*����

/ ���' ��

2�3�

�#4�567�/ �7���

#������894�7�#�:;7���

��

�5��<�7�#�:;7���

������

����<�-;�=�<�����

��

������

����<�%� 8=��

������

����<�-;�=�<��>

���,�<��!;8>=8=�

Page 115: Using advanced composite materials Tobias Kamf - …555551/FULLTEXT01.pdf · TVE-12052 Examensarbete 30 hp September 2012 High speed flywheel design Using advanced composite materials

���

���

��

���

� �

����

��

����

����������

��

����

������

���

� �

����

��

���

����

���

��

��

� �

!�

!�

���

!��

"���

� �

�#�$

�$��

���

����

�#��

������

�����

���%

���

#&���������������

�"�

���

"�

��'

��

���

�� �

��(

����

�)*

��*

����

��

+��,

-�&

����"�

��.�

��

/0

�-����

���

(��

��

%�&�

&�

1+

,��

�"

���%

�&

#�2

����

�1

���

���

��

%��1

#

+��

,

3

��#�

%&

1

��

)#�

4��

-

#5�

�"4�

�6

3�

1#

+�

��,

�7#�

�-

481

552

81

3(,

1�)7

#�

�1

�1

,��

���

�,

7%

#&�����������

9��

"�

:"

7�

%���

���-

�#+

�����

5��

�(��

1&

1�3

��

���

���

#����

�3�%

%�3

���

#�

�7#(

���(

����

-&

��%�

#

��

��&

%�

��;�

��

Page 116: Using advanced composite materials Tobias Kamf - …555551/FULLTEXT01.pdf · TVE-12052 Examensarbete 30 hp September 2012 High speed flywheel design Using advanced composite materials

����

����

����������������

��

��

��

��

��

����

���

� �

����

���

��

����

� �

����

����� �

���

�!

��

"�����

��#

$��

"%�

����

��

&�

���

#�

����

��

��'�"

�#�

&#

��#

��"%

���

�&��

���

(�

�����

��

&�

��

)���

*�"

��

�+�

��*��

,

��

(�

&��

��

"��

��

�-��

%�*.&

�++'.&

($�

&�)-���

�&

�&

��"

����

��

-��

������������

/ �

��

0��

-�

��""

�#��

���

�"��"

+�%

�$��

&�

&�(

��

"�#

�"�

������

�(����(

���

�"

"-�$�

%��$

���"

��

�#��

��

�%

�"�

"���1

�234

����

�56

����

��78� ��

��9��

�����

:��

��9�

Page 117: Using advanced composite materials Tobias Kamf - …555551/FULLTEXT01.pdf · TVE-12052 Examensarbete 30 hp September 2012 High speed flywheel design Using advanced composite materials

�����������

��

���� ��

��������������������������������

������

��

����������

������������

� �������

�!"����

������

��#�����

�������� �������!��"

$��������

����

��%�

���!�

��$�

���&�'

��"������

�&()*���&+)*�,-

�#%�

$�"

!��"����.����/)(&�01

��"��

�����"����������������2����

3��

������������!������ ������

��$���������������$����$�����

����� ���������

������� ���

��4&��50

��� �

��6 �

��

�7�

�����

��8� 7

� �

Page 118: Using advanced composite materials Tobias Kamf - …555551/FULLTEXT01.pdf · TVE-12052 Examensarbete 30 hp September 2012 High speed flywheel design Using advanced composite materials

��

���������������������������� ��

� �����

�� � ��

����

�������

�����

��

���������

��

�!���

����

"����

��

������

��#����

�"���

����!���

�"������

$��������

"���

%���&�����'�

��&��(

��$�

"����

���

���)

��

!�&*"

�''#*"

$ �

"�%)���

�"�

�"���

����

��)��

������������+ ���

,��

)���

����

����������'�!� ��"�

"�$

�����

����

������$

����$�����

�)� �

!�� ������

����

���!���

���$��

��

'�����)$%��

'������$�

,�-

��

� �

�./0

��

� �

�1�0

��/

��

� �

�220� 0

�3

� 3

/�2�0�

��!������

3

Page 119: Using advanced composite materials Tobias Kamf - …555551/FULLTEXT01.pdf · TVE-12052 Examensarbete 30 hp September 2012 High speed flywheel design Using advanced composite materials

�����

��

�����

��

��

��

��

����

������

��

����

��

������ ��!��

��

�"��#�

��

��$

��

�����

�$�

�����

���%�

������

&

���

���

�'����

����

��'��

�����

�� �

��

&

�'����

�$��

�$�

����

����

&

����

& �

� ����

���

���������

���

���'�

���%�

� �

����

��

���

������

�#�

�"��

�( (

��

��

��(�(

��

���

������

��"�)

����*

����

%�

������

��+���������������&

�#�����

#�

�,���

�"�

����

���"��

�*��

���

-��.

� ���

�'�#/

��0���

� 1

��

��� ���

�2��

����

����

-

.��

�#

� �

��

+�3���

��

���

��

���

�+�-

��.

)� �

+��

��

� �

4+��5���+6�

#5��

7

��)

+�-

�.

�� 8

+�

��59

�6639

)2.

�48+��

��

�.

����

�.

8��

+�����������&

:���

#�

;#�

8���

��

��+-

���6��

�2���

�)

����

���+����

�)����)

� �

+

8+2�

���2��

���

���

+���

��

��!��

��<��

��

�=��

�������

�>,��

?������!

���

�@?!��A

,��

"��?

�>����?��B

��?��A

,��

���

�?��

�=��

�"�

�? �C�?��B�

#�)

@���7�,

?��

"��?

�������

���@

��>,��

?�A

= ���=?���

!��D�

@��

7�,?�>

,��

� �C

�?��B�

E���#�

��

��?�7�,

?�7�,

?��

"��?

�@?!��#

�,��

?�@

�����

�7<� FGB��

���?��

=������

?!��

#=

����.

�?=�

�,�?!���

@?����)

Page 120: Using advanced composite materials Tobias Kamf - …555551/FULLTEXT01.pdf · TVE-12052 Examensarbete 30 hp September 2012 High speed flywheel design Using advanced composite materials

��

���������������������������� ��

� �

�������

� � ��

������������������ !"#

��

$��������%��

$&�������

'������

������

��(�$���

'������$&����'������

)��������

'���

*���+�$���,�

��+ !-

��)�

'����

$�����.��

&�+/'

�,,(/'

)%�

'�*.����'�

�'��$

������.��������������0 ���

1��

.���$$��������$��$,�&�%��'�

'�)��$���$��������)����)����$

$.�%�&��%���$��

�������&�$�

������ ���

��2!�3��! �4�� 3��!�3�5

$�&������ �

6��4�7�"� 38��

$ !��8�

59��� 3 "��:

) ;����!!

$ !��8� �4 <��������;�=�

59��� 3 "��:

�9�

��9��

�����

�����

����

��� 9�

��>��

����9�� 9�

9��

����

Page 121: Using advanced composite materials Tobias Kamf - …555551/FULLTEXT01.pdf · TVE-12052 Examensarbete 30 hp September 2012 High speed flywheel design Using advanced composite materials

� �

����

������

��

� ��

������

���

�����

� ��

�������

��

���

� ��

!"�

#���

$�

��%

&�

���#

��

'�(

�!�&

%$

&�%

&��

!"�

#��$

'�

��%

)�

��'��

#�

$�

��!�

�%

��*

'�

%�

)�

��+��

,

$�-

*'��

%$

!���

����

&��

���#

�%��

'���

������������.���

����

��

-'��

+�!

��

'/�

$'�

�%

�$�

�!

"�+0$

����

%�

*#�

'���

��������.1�

����

2��

)��

�//(0$

*%

#�!!

�&��

�'�

�!��

!/�"

����

$�

$�)

�%!�

&%

!��

'��

�%�)

�##�)

���'

!!*

'��

"��

��%

�!��

�&#�

'�

%"

�!�

3�

����4�

��

!�"

��&

%��

��!�

�567

���8

��5�

����

���

�� �

� ��

� ��

����

��

���

���

��

���

��

� �

�����

��� ��

���

���

!��

567��

9��8

5:����;7�

�)

��

��

��

Page 122: Using advanced composite materials Tobias Kamf - …555551/FULLTEXT01.pdf · TVE-12052 Examensarbete 30 hp September 2012 High speed flywheel design Using advanced composite materials

� �

������

���

�� ��������

������

��

��������

�������

� � �!������"�#�$��%&

� ����'���

���( !�!�

�� �)'�

���( !

� *���')

�'�)'�����( ������)

+�� ���(!

���(�) ��!��������������,���������

����)

�� )��-�

� �-���)��

���

���*�

+�

.��

)�+

�/0�� � �

����) -(��!����������,1�����

-)( ���'� ���� ��� ���� �!

��+ )��')���� ��)�+�((�+ � ��

�-���� ���)��!

�'( ��)� �!

�(���2�

��

� ���')����

��3�����4��"

���/�5���6��/�$��$�3�3�

+�45����

7�$6/8�%$�35����"��

����

�9�� , ���9"��,�9��

�29"��

����

��29"�����9���9��

����

Page 123: Using advanced composite materials Tobias Kamf - …555551/FULLTEXT01.pdf · TVE-12052 Examensarbete 30 hp September 2012 High speed flywheel design Using advanced composite materials

� �

����������

���� �����������������������������

�������

��������

������������

!� "

#���$%

��&�'

��#���(

)��

*���

����

+!"��

(�

# #���

��, (

�+(��

(#�*���

�+��! �"

��#�� ���

+�#�

#���&-

*�.+

����

+��!�

"

��#/

��

+��/���

�+�

���,.+

�)"

��

�+"�

����

�"/��

�������������0�����

1��

/���

�(

#��! ����* ) �+�

+ �

�� (

���

��� ���

�� ��#��

/�)�

*��) � �

#(��

���*��

��

#����

(�

���#��/����

���#�����

1#2

��

������

�����

3�

������

�����

��

Page 124: Using advanced composite materials Tobias Kamf - …555551/FULLTEXT01.pdf · TVE-12052 Examensarbete 30 hp September 2012 High speed flywheel design Using advanced composite materials

����

���

��

��

���

����

� ���������������

���

����

��

��

��������

����

���

����

����

�� �� !

���

"#������

��$

%��

�&

��

� �

'�

���

$�

���

��(��

�$�

'$

��$

���&

��

�'��

���

)�

�����

'�

��

�����

*

&��+'

��

)�

'��

��

���

��

�,��

'��,���

�'

�(+'

)%�

�-��

��

�'

���

����

��

,�

� �����������

.���

��

/��

,�

����$

�����

�����

�&

�%��

'

'�)

��

��$

����

�����

�)��)

���

��

�,�%�

&��%

����

�$�

��

�&

��

$

)�

0�"�

12

��

��34�

��5�

���6

���

���

��33�

���

Page 125: Using advanced composite materials Tobias Kamf - …555551/FULLTEXT01.pdf · TVE-12052 Examensarbete 30 hp September 2012 High speed flywheel design Using advanced composite materials

����

����

���

������� ��

�������������������������

�����

���

���������������������������������

�����

���� ����

�!�"#��

�!$�"#��

�!%��

���

�!%&�

�!�"#��

���'�

��(���

�)����*�+����)���!%�"�����+���

,�+�-��)�+��������,�"�+����)������

�,���������)++�������*���

��

��)+

��.-��-��)+

����������(

������+������.-����

���)+��

,�+�-��)�+��(

/���&

��0!��1��

�23���

�(4��.

5��6

7� ��8+����9

����1��! ��������������:�(���3�(�

�;3�&3�#

�<��������

!��4��7�!/�

�7������=>��

���� � �

�56�1=(

����

!�?���=1

�=�1=����

����!�5�16

�!�51

�&

����

�//?@�

����!��

�>6

A(�

����160�

! ����������:B3��(�

��61��0!�

1���

�74@�

��6��

01����=

�7�!5�����/���>���

���

�1��=1���!���1

��������!�

�0!>�

���>�1��7

�=�!�1���

/=��/����)C

��

Page 126: Using advanced composite materials Tobias Kamf - …555551/FULLTEXT01.pdf · TVE-12052 Examensarbete 30 hp September 2012 High speed flywheel design Using advanced composite materials

���

���

��

�� �

���

�����

���

����

�����

����

���

�����������������

���

���

��

���

���

���

� �

��

���

��

���

� !"

���#��

!#$

%��&

���

��'(

)��

�*��

����

���

+��

��

����

��

,%

&��

��

����

��

��-

����

�,

���

���

��

���,

%��

&

.

����

��

���/,

,�

%�

��&

�0��

,��0��

�,

,

��

��-

/,

.+&

1�

.�

� 2$(�

,&

��

���

�&

0�

�������������

3��

��

0�

����

����

��%

�����

���

�+��

,�

,�.

��

���

���

�����

�.����.

���

��

�0�+

���+

����

��

����

��

���

��

.

��