Вы находитесь на странице: 1из 21

CREATING A CONTINUOUS AND INTERACTIVE

SIMULATION USING BICYCLE DYNAMICS AND


ACCURATELY MODELLED ENVIRONMENTAL FACTORS
SEAN ROBINSON

Abstract Following on from the work


completed in a previous paper, where the
specific dynamics and mechanics of
particular problems were investigated, this
paper sets out to compile these results and
demonstrate the significant steps needed to
be taken in order to develop a coherent
model.
Each stage required will be
introduced and explained before a
demonstration that shows the solution in
practice is given. These demonstrations and
experiments show how it is possible to
model a bicycles dynamics to a high degree
of accuracy in a limited scope and then
interact with the model using accurately
modelled environmental factors. This paper
will document the logical enhancements that
could be taken in order to extend the project
and then conclude with a summary of the
work.

TABLE OF CONTENTS
1.

Introduction .................................................. 2

2.

Defining Constants ........................................ 2

3.

Calculating Velocity ....................................... 3


I.

Power........................................................ 3

II.

Surface Friction ......................................... 3

III.

Braking ...................................................... 3

IV.

Slopes ....................................................... 4

V.

Watts to Overcome Gravity ...................... 4

VI.

Watts to Overcome Surface Friction ........ 4

VII.

Watts to Overcome Air Resistance ...... 4

VIII.

Final Power Output .............................. 5

IX.

Calculating Acceleration ........................... 5

4.

Integrating Velocity ....................................... 7

5.

Calculating Lean .......................................... 10

6.

Calculating Steering Angle .......................... 14

7.

Integrating and Mapping Movement.......... 17

8.

Enhancements ............................................ 19

9.

Conclusions ................................................. 19

Bibliography ......................................................... 20

1. INTRODUCTION
Whereas the previous report was focussed
almost exclusively on finding solutions to
problems, this paper documents the timeline
that was taken in order to pipe those
solutions together. In some respects it is
more difficult to concatenate solutions
together as there is not usually an existing
perfect solution, the solution needs to be
developed dynamically for the particular
problem.
This paper takes a linear format as that is the
way in which the experiments were
completed. As each experiment is reliant on
previous work completed, it is necessary that
problems are accurately solved before moving
on. Some issues that were solved were found
to be simply too complicated or costly and it is
recommended that these are avoided in
favour of more simple solutions.
The experiments were simply completed in a
Microsoft Excel Workbook as this provided
immediate and clear results that could be
plotted to give a visual representation of
exactly what was happening. This workbook
can also form a core component of any testing
modules for work that expands on the basic
demonstrations given here.
Each experiment takes place over 30 steps
using a randomised delta based on 0.1
seconds. Using a randomised delta allows the
experiment to mimic to difference in screen
refresh rates if the model was developed for a
computer.

2. DEFINING CONSTANTS
To provide a more interactive and dynamic set
of experiments, a single page in the workbook
was created to house the constants used
throughout the work. These constants range
from fundamental constants such as
acceleration due to gravity on earth, to more

technical data such as the bicycles wheelbase


length, to more arbitrary factors such as an air
resistance coefficient.
As this paper progresses, it will becomes clear
what each of these constants represent.
It is also important to note that by having a
single cell that is used throughout, it is easy to
modify certain factors to see immediate
changes in results. It would be the work of
seconds to see how doubling the riders
weight affects acceleration on a slope or how
much wind resistance would be required to
bring the rider to a complete stop.
Wheelbase
Caster Angle
Gravity
Centre of mass height
Tyre Thickness
Velocity
Dt
Randomise
Weight of Object
Maximum
Deceleration
Air Resistance

115
18
9.82
66
2.5
10
0.1
1
80

cm
Degrees
m/s/s
cm
cm
m/s
s
Boolean
kg

0.5 G
0.7 Coefficient

3. CALCULATING VELOCITY
I.

POWER

The first item to consider when modelling the


propulsion of an object is the amount of
power that is being fed into it. On a bicycle
this is the amount of watts generated by the
cyclist pedalling. It would easy to simply forgo
this and use an arbitrary value for
acceleration but in order to accurately model
and allow for hardware integration, a power
output should first be defined. Based on
research by Coggan (1), a value of 100 watts
for an experienced cyclist has been used. This
is achieved through 25 watt increases initially

Page 3 of 21

to approximate a build up as pedalling


commences.

II.

SURFACE FRICTION

Surface friction is a difficult thing to model in


a limited example as each surface will have a
very different coefficient for the friction
applied. In this limited experiment, a value of
0.1 has been used for a flat road based on
work by May (2).
In a more developed project, this value can
easily be changed to reflect the surface
currently being used. This could either be an
arbitrary value that seems to give an
appropriate feel or something more accurate
that has been researched.

III.

BRAKING

Braking can be modelled in many different


ways. In bicycles, the brake force applied to a
machine is the result of friction generated
between the brake pad and tyre of the wheel.
In a simplistic model, the velocity could simply
be reduced by a fraction of a certain value
defined as maximum brake.
In a more complex model, the brake force
could be modelled in a specific measure
relative to the actual physics, such a G
(gravity) or Newtons. In this model, the brake
force if modelled in gravities.
Should a user be allowed to apply excessive
braking then it will be quite likely that a crash
will occur at some point as the bicycle will
decelerate too quickly. As this is not a
concern of the basic model described here, a
maximum safe brake value has been defined
as 0.5g has been used based on a report by
Whitt and Wilson (3). Any brake measure
applied will be considered a fractional value of
its maximum, which is then applied to the
0.5g value in order to determine a brake force

Sean Robinson 2012

in gravities that need to be used to reduce the


velocity.

VI.

IV.

Surface friction has already been discussed


and explained. Similarly to gravity, a formula
has been used to identify the amount of watts
required to overcome this friction. Provided
again by May, the formula is:

SLOPES

In this experiment, a slope was defined simply


by specifying a percentage; this percentage is
a fraction of angle defined on a road ranging
from 0 with a horizontal plane to 100 with a
fully vertical surface. Conversely, the value
can also be defined as a negative which is
indicative of a slope that is being travelled in a
downward direction. In order to output a
visual representation, this slope was tallied in
a separate column that provided a general
overview of how the landscape changed
within the experiment.

V.

WATTS TO OVERCOME GRAVITY

Following on from the slope definition is


something that directly affects the velocity
because of it. Gravity is apparent from any
cycling situation but it begins to affect the
machine and rider depending on the
steepness of the hill currently being traversed.
Travelling up a hill will increased the
gravitational pull, travelling downwards will
do the inverse and the rider will find himself
being pulled forwards. In this model, the
force isnt actually calculated but a value of
watts is given in the calculation below. This is
the amount of watts that should be
subtracted from the initial power in order to
compensate for the effect of gravity. Positive
and negative values are both used. The
formula, given by May (2) is:

 =  

WATTS TO OVERCOME SURFACE


FRICTION


= . 
Where:
0.1: Friction coefficient
V: Current velocity in m/s
P: Weight of object is kg

VII.

WATTS TO OVERCOME AIR


RESISTANCE

The final subtraction of power in the model


comes in the form of air resistance. Air
resistance plays a huge role in cycling and is
an important factor to consider when
attempting to model accurately. It would be
outside the scope of this project to determine
a truly valid coefficient for wind resistance so
0.7, a value based on work by May (2) has
been used in addition to the rest of the
formula for calculating the watts required to
overcome the resultant force. This formula
has been simplified as wind is not being
considered in this project, the referenced
website has further information that can be
used for an expanded model.

 = ( )
Where:
: Air resistance coefficient
V: Current velocity in m/s

Where:
G: Standard acceleration due to gravity
P: Weight of object is kg
: Slope Percentage
V: Current velocity in m/s

Page 4 of 21

Sean Robinson 2012

VIII.

FINAL POWER OUTPUT

 =

The final power if what remains once all


subtractions for environmental factors have
been applied. The formula is simply:

Where:
f: Force
m: Mass

 =   


With regard to propulsion of an object, this is


the final step of the section. If a basic
integration method was being used, then this
acceleration could be simply added to the
existing velocity, which then could be used to
calculate the new position using an Euler
integration (5). As a runge-Kutta4 method is
going to be used, there is much more work to
be done in order to fully utilise the results so
far so this will be covered in the next section.
Below is the final datasheet from the excel
workbook that shows how user modified data
in the left columns propagate throughout the
rest.

Where:
w: Power output in watts
p: Initial power output from pedalling
: Watts to overcome gravity
wf: Watts to overcome friction
wa: Watts to overcome air resistance

IX.

CALCULATING ACCELERATION

Acceleration was the goal of this section of


experimentation, a value that could be used
throughout further experiments that allowed
for the propulsion of an object.
The
acceleration is calculated using the mass of an
object and a force acting upon it. Using the
following formula (4), this can be calculated:
Power

Friction

Brake

Slope%

Veloc (m/s)

Gravity w

Friction w

Air Res w

Final P (w)

Accel (m/s)

0.1

25

0.1

25

0.3125

50

0.1

0.3125

2.5

0.021362305

47.4786377

0.593482971

75

0.1

0.905982971

7.24786377

0.520544838

67.23159139

0.840394892

100

0.1

1.746377864

27.43908899

13.97102291

3.728315818

54.86157228

0.685769654

100

0.1

2.432147517

38.21390179

19.45718014

10.07088828

32.2580298

0.403225372

100

0.1

2.83537289

44.54937884

22.68298312

15.95616754

16.81147051

0.210143381

100

0.1

3.045516271

47.85115165

24.36413017

19.77337543

8.01134275

0.100141784

100

0.1

3.145658055

49.42457936

25.16526444

21.78876296

3.621393228

0.045267415

100

0.1

3.190925471

50.13582099

25.52740377

22.74301417

1.59376107

0.019922013

100

0.1

3.210847484

50.44883567

25.68677987

23.17165592

0.692728541

0.008659107

100

0.1

3.219506591

151.7546627

25.75605273

23.35963193

-100.8703473

-1.260879342

100

0.1

1.958627249

92.32185402

15.66901799

5.25960848

-13.2504805

-0.165631006

100

0.1

1.792996243

84.51467091

14.34396994

4.034931616

-2.893572474

-0.036169656

100

0.1

1.756826587

82.80977801

14.0546127

3.795637475

-0.660028183

-0.008250352

100

0.1

1.748576235

82.42088941

13.98860988

3.742413358

-0.151912643

-0.001898908

100

0.1

1.746677327

82.33138248

13.97341861

3.730234105

-0.035035196

-0.00043794

100

0.1

1.746239387

82.31073974

13.96991509

3.727428992

-0.008083826

-0.000101048

100

0.1

1.746138339

13.96910671

3.726781956

82.30411133

1.028801392

100

0.1

-6

2.774939731

-130.7995591

22.19951785

14.95748945

193.6425519

2.420531898

Page 5 of 21

Sean Robinson 2012

100

0.1

25

-6

5.070471629

-239.0017507

40.56377303

91.25215113

207.1858265

2.589822832

100

0.1

25

-6

7.535294461

-355.1836397

60.28235568

299.5013087

95.39997532

1.192499692

100

0.1

25

-6

8.602794152

-405.5013052

68.82235322

445.6733175

-8.994365601

-0.11242957

100

0.1

50

-6

8.240364582

-388.4178249

65.92291666

391.685343

30.80956527

0.385119566

100

0.1

50

-6

8.375484148

-394.7868208

67.00387318

411.2707309

16.51221671

0.206402709

100

0.1

25

-6

8.456886857

-398.6238189

67.65509485

423.3792808

7.589443211

0.09486804

100

0.1

8.551754897

68.41403918

437.7879212

-406.2019604

-5.077524505

100

0.1

3.474230392

27.79384313

29.35444578

42.85171108

0.535646389

100

0.1

4.00987678

32.07901424

45.13267992

22.78830584

0.284853823

100

0.1

4.294730603

34.35784483

55.45054522

10.19160995

0.127395124

100

0.1

4.422125728

35.37700582

60.53287459

4.090119592

0.051126495

This data was mapped to several graphs in order to obtain an overview of the output. Some of the
more significant show the correlation between velocity and the height of a slope or the amount of
acceleration given by certain amounts of power in watts.

Height
60
50
40
30

Height

20
10
0
1

11 13 15 17 19 21 23 25 27 29

Velocity (m/s)
10
9
8
7
6
5

Velocity (m/s)

4
3
2
1
0
1

Page 6 of 21

9 11 13 15 17 19 21 23 25 27 29

Sean Robinson 2012

Final Power (w)


300
200
100
0
1

9 11 13 15 17 19 21 23 25 27 29

-100

Final Power (w)

-200
-300
-400
-500

Acceleration (m/s)
3
2
1
0
-1

5 7

9 11 13 15 17 19 21 23 25 27 29
Acceleration (m/s)

-2
-3
-4
-5
-6

4. INTEGRATING VELOCITY
Using a base velocity calculated by adding the
acceleration to the previous velocity and
subtracting the deceleration due to braking,
the distance an object moves can be
calculated by integrating the velocity using
the Runge-Kutta 4 method developed by
The RK4 method works by taking several
derivatives of a value in a given time step and
then summing them using weights. This then

Runge (6) and then modified by Kutta (7) .


RK4 is usually used to integrate a position but
can become very complex when using
multiple variables; a good balance can be
achieved by using RK4 to integrate the
velocity based on a differing delta time and by
then using a simple Euler to calculate the
distance moved.
gives a good approximation of what the
velocity will be (8).

The first step is to calculate the derivatives.


Each derivative has a slightly different formula
but the one used here is as follows:

D4: Derivative 4
e: Constant
The derived velocity can now be calculated
using the following formula

D1:

*+ =  + ,

(2 +   )
D2:

(2( + 0.5"1)$ +  (%&.'() )


D3:

(2( + 0.5"2)$ +  (%&.'() )


D4:

(2( + "2)$ +  (%&.'() )


Where:
t: Delta Time
T: Current Time
V: Current velocity in m/s
D1: Derivative 1
D2: Derivative 2
D3: Derivative 3
dt
0.119469
0.015962
0.075284
0.037452
0.146287
0.139759
0.079715
0.076205
0.176485
0.16561
0.181669
0.103211
0.136179
0.121356
0.115821
0.12158
0.157394
0.082432

Time

Position

0
0.119469
0.135431
0.210715
0.248167
0.394454
0.534213
0.613928
0.690133
0.866618
1.032229
1.213898
1.317109
1.453288
1.574643
1.690464
1.812044
1.969438

1
1.010457734
1.010577262
1.124207402
1.872906372
3.364996098
5.670564296
9.7632255
14.40583602
16.77196004
19.33180658
21.63840049
25.6630501
27.38580863
29.01672769
30.64073508
32.20963235
33.54231542

Page 8 of 21

"1
"2
"3
"4
.+, .+, .+, .
6
3
3
6

This integrated velocity is now used in a basic


Euler by multiplying the current distance
moved by the derived velocity squared.
In this manner, thought slightly convoluted in
parts, it is possible to obtain the accuracy of
using RK4, keep the cost of the program down
by using more basic approaches where
possible and obtain a solid value of distance
moved that can be used to accurately indicate
where the object is going to be at the next
step.
Below is the datasheet used to calculate the
integration during the experiment.

Velocity
0
0
0.3125
0.905983
1.746378
2.432148
2.835373
3.045516
3.145658
3.190925
3.210847
3.219507
1.958627
1.792996
1.756827
1.748576
1.746677
1.746239

d1
0.119469
0.011154
0.003095
-0.04796
-0.44146
-0.63703
-0.43599
-0.45209
-1.08806
-1.0446
-1.15841
-0.66187
-0.53083
-0.43363
-0.40593
-0.42442
-0.54915
-0.28767

d2
0.099016
0.010889
0.029943
-0.03945
-0.6252
-1.21403
-1.07795
-1.2008
-2.37198
-2.34921
-2.51006
-1.72004
-0.77871
-0.60169
-0.55843
-0.57332
-0.68163
-0.42312

d3
d4
0.099283 0.097513
0.010889 0.010886
0.028646 0.02727
-0.04002 -0.03735
-0.54566 -0.36602
-0.8964 -0.62454
-0.8265 -0.62915
-0.90042 -0.69053
-1.33843 -1.13575
-1.33699 -1.12883
-1.3836 -1.20688
-1.14687 -0.88443
-0.66858 -0.45113
-0.53911 -0.38031
-0.50489
-0.3622
-0.51904 -0.36696
-0.62162
-0.3979
-0.38809
-0.3039

dv
0.102263
0.010933
0.337091
0.865274
1.221511
1.51841
2.023033
2.154672
1.538221
1.599952
1.518747
2.006153
1.312539
1.277074
1.274365
1.252556
1.154419
1.377238

Sean Robinson 2012

0.086196
0.172084
0.093859
0.047556
0.140591
0.053788
0.042478
0.114501
0.035488
0.188078
0.183596
0.195959
0.142212

2.05187
2.138066
2.31015
2.404009
2.451565
2.592156
2.645943
2.688421
2.802922
2.83841
3.026488
3.210084
3.406043

35.43910112
37.29940996
39.45501925
46.51701066
67.2604288
67.34025614
87.30281102
113.0938629
115.0140314
145.7179848
148.0187054
150.4721404
152.5640436

1.746138
2.77494
5.070472
7.535294
8.602794
8.240365
8.375484
8.456887
8.551755
3.47423
4.009877
4.294731
4.422126

Graphing this data can give a clear indication


of what is happening over time. The following
graphs indicate the movement of an object
over the steps based on the velocity shown.
The derived velocity is also given for

-0.30084
-0.95476
-0.95173
-0.71666
-2.41886
-0.88644
-0.71153
-1.9366
-0.60696
-1.30681
-1.47238
-1.68317
-1.25775

-0.4388
-1.81656
-3.96273
-4.89909
-15.3699
-6.54006
-5.46399
-12.8421
-4.82873
-2.99306
-3.9352
-4.6733
-4.0925

-0.40167
-1.199
-1.79124
-2.46003
-0.23682
-2.65754
-2.70574
-0.94909
-2.67346
-1.47123
-1.5315
-1.50263
-1.60551

-0.31145
-0.85455
-2.01853
-2.4499
-19.6798
-3.35287
-2.73098
-12.9081
-2.4525
-1.50911
-2.2554
-3.05531
-2.25642

1.363931
1.468199
2.657441
4.554494
-0.28254
4.467948
5.078489
1.385701
5.541115
1.516813
1.566344
1.446341
1.937094

comparison. A correlation can be mapped


here that shows a higher velocity will push the
position of an object further from the origin at
a greater speed.

Position
160
140
120
100
80

Position

60
40
20
0
1

Page 9 of 21

9 11 13 15 17 19 21 23 25 27 29 31

Sean Robinson 2012

Velocity
10
9
8
7
6
5
4
3
2
1
0

Velocity

9 11 13 15 17 19 21 23 25 27 29 31

dv
6
5
4
3
2
1

dv

0
-1

11 13 15 17 19 21 23 25 27 29 31

-2
-3
-4

5. CALCULATING LEAN
The lean, or Yaw, of an object is the amount
of angle by which it is rotated about a virtual
line drawn along the Z axis at the lowest part
of the plane.
For humans, this would
represent the angle our bodies make to the
perpendicular when swaying to either side.
The lean of a bicycle can be thought of in the
same way. As a machine goes around a
corner, a certain degree of leaning is
inevitable and this can be calculated.

Page 10 of 21

To provide some level of interactivity and


dynamism, functionality allowing users to
alter the angle of steering was provided. This
meant that at each step, or row, a certain
amount of steering could be applied either
left or right. These angles referred to a
change in steering, not the actual angle. From
here, the new angle was calculated. The
workbook that details the steering is quite
large so each section will be displayed
individually in order to provide easier viewing.

Sean Robinson 2012

Left
Turn

Right
Turn
0
5
5
0
15
5
8
0
0
0
0
0
0
0
6
8
11
5
9
6
0
0
0
0
0
0
0
0
0
0
0

Change in
Steering
0
0
0
3
0
0
0
14
10
10
5
5
10
3
0
0
0
0
0
0
9
0
4
0
9
2
0
3
0
6
2

Steering
Angle
0
-5
-5
3
-15
-5
-8
14
10
10
-3
-5
-10
-3
6
8
5
-5
-9
-6
9
0
4
0
9
0
0
-3
0
-6
-2

In order to calculate the lean, something


called the radius of the turn needed to be
known. The radius of the turn is the radius of
an imaginary circle drawn based on the angle
of the steering. With the steering at a certain
angle and with a flat plane to experiment
with, riding a bicycle while maintaining the
angle will eventually lead the rider back to the
origin. This can visualised by imagining the
rider leaving a mark from the tyres wherever
Page 11 of 21

0
-5
-10
-7
-22
-27
-35
-21
-11
-1
4
9
19
22
16
8
-3
-8
-17
-23
-14
-14
-10
-10
-1
1
1
4
4
10
12
they go.
When the radius of a circle is
mentioned in relation to steering in this
paper, metres is the measurement being
considered.
The upright turn radius of a circle is the radius
that would be made based on a bicycle with
no lean. This is simply a starting point and
gives a base to work with for refinement. The
formula, given by Sharp (9) is:
Sean Robinson 2012

1 =


345 ()

Where:
: Caster Angle
t: Tyre thickness in cm
h: Centre of mass height

Where:
r: Radius
w: Wheelbase in cm
: Steering Angle
: Caster Angle
The ideal lean can now be calculated. Ideal
here means ideal tyres and centre of mass,
infinitely slim and low respectively. As this is
never the case, a more developed solution is
required. This is a modification of the answer
given by the ideal lean formula given by
Fajans (10).
:;

= 1389( )
1

Where:
: Caster Angle
v: Velocity
g: Acceleration due to gravity
r: Upright turn radius
The modification mentioned previous is a way
of giving the increase the lean should take as
a result of tyre and centre of mass
considerations. The output of this formula is
added to the ideal lean in order to give a more
accurate representation. The formula, given
by Cossalter (11), is:

135<9 ( . =8
Upright Turn Radius
0
34.83177044
17.41588522
24.87983603
7.916311464
6.450327859
4.975967206
8.293278676
Page 12 of 21

5<9()
)
> . =8
Ideal Lean
0
0
0.000571009
0.003359537
0.039212037
0.093116958
0.163063977
0.113400991

For the sake of this demonstration, the tyre


thickness has been given as 2.5cm. This was
simply the output from a brief averaging of
several tyres and types. The centre of mass,
given by h, was decided upon using a similar
measure.
The value now given is the amount of lean, or
yaw, which the object being modelled will
need to be rotated by in order to map closely
to real world dynamics. A final value was
calculated that was to be an experiment in
how far it is realistically possible to pursue
accuracy in a limited model such as this. The
lean of a bicycle affects the radius of its
turning circle by a small amount. The new
radius was calculated using a formula given by
Cossalter (11).

1 =

 345(?)
345 ()

: Caster Angle
w: Wheelbase in cm
: Steering Angle
a: Lean

The relevant sections of the data sheet are


included below:
Lean Increase Lean
Final Radius
0
0
0
0
0 34.83177044
-2.3402E-05 0.000547607 17.41588261
-0.000137686 0.003221851
24.8797069
-0.00160664 0.037605398 7.910714635
-0.003810765 0.089306193 6.424622346
-0.006653422 0.156410555 4.915224511
-0.004637643 0.108763348 8.244274485
Sean Robinson 2012

15.83262293
174.1588522
43.53971305
19.35098358
9.166255379
7.916311464
10.88492826
21.76985653
58.05295074
21.76985653
10.24463837
7.572124009
12.43991801
12.43991801
17.41588522
17.41588522
174.1588522
174.1588522
174.1588522
43.53971305
43.53971305
17.41588522
14.51323768

0.063558452
0.005953483
0.024107832
0.05449215
0.042592919
0.041331104
0.028866895
0.0143012
0.005351622
0.014263006
0.03029816
0.103188813
0.207431862
0.435097909
0.408403976
0.377953275
0.040993918
0.04179372
0.042735516
0.028223109
0.037588967
0.107433427
0.136358722

-0.002603104
-0.000243994
-0.00098793
-0.002232182
-0.001745085
-0.001693416
-0.001182905
-0.000586095
-0.000219328
-0.00058453
-0.001241538
-0.004221561
-0.008440571
-0.017275416
-0.016277156
-0.015124305
-0.001679609
-0.00171236
-0.001750923
-0.001156531
-0.001540169
-0.004394558
-0.005571199

0.060955348
0.00570949
0.023119902
0.052259968
0.040847835
0.039637688
0.02768399
0.013715105
0.005132294
0.013678476
0.029056622
0.098967252
0.198991291
0.417822493
0.392126819
0.36282897
0.039314309
0.040081361
0.040984592
0.027066577
0.036048798
0.103038869
0.130787524

15.80321855
174.1560136
43.52807693
19.32456481
9.158609285
7.910093436
10.88075741
21.76780906
58.05218617
21.76781998
10.24031396
7.535071618
12.19443463
11.36977004
16.09399126
16.28205025
174.0242783
174.0189765
174.0126022
43.52376544
43.51142584
17.32351469
14.38928732

200
180
160
140
120
Upright Turn Radius

100

Final Radius

80
60
40
20
0
1

Page 13 of 21

11 13 15 17 19 21 23 25 27 29 31

Sean Robinson 2012

0.5
0.45
0.4
0.35
0.3
Ideal Lean

0.25

Lean

0.2
0.15
0.1
0.05
0
1 2 3 4 5 6 7 8 9 10111213141516171819202122232425262728293031
200
150
100
50

Change In Radius
Change in Steering

0
1

11 13 15 17 19 21 23 25 27 29 31

-50
-100
-150

From the visual representation, it is very clear


that the difference between ideal and actual
lean is very small, as is the difference between
the initial radius and the final radius. These
changes are very small and will go unnoticed
in almost every application using these
equations. Unless a very high degree of
accuracy is required, there is little point in
making use of the full set.

6. CALCULATING STEERING
ANGLE
As the radius of the turn changed slightly due
to the lean of the bicycle, it is apparent that
the angle of rotation will also be different. In
order to calculate this new angle, an
Page 14 of 21

experiment was devised. The aim of the


experiment was to derive a new point on the
virtual circle based on the distance travelled
in the step. By taking the angle between this
new point and the origin, which would be the
top point of the circle at X = 0, Y = Radius, it
would be possible to accurately model the
slight change.
Despite several days of experimentation, this
method was never conclusively proved.
Discrepancies between the new derived angle
and the original steering angle were too large
to ignore. This coupled with the vast amount
of time being tunnelled into the solution and
with the possibility of a very small return but
huge costs associated meant that the pursuit
of the solution was abandoned. The method
Sean Robinson 2012

used to arrive at the results shown later will


not be detailed.
The first step in completing this was to derive
a new point based on the distance travelled;
the new point would be a new point on the
circumference of the virtual circle. The new
point was derived using formula from
MathWarehouse (12).

5 = 1@
A: Arc length
r: Radius
: Inner angle between both points in radians
With this inner angle, the new point could be
derived using the parametric equation of a
circle. An offset was then applied in order to
ensure the point had moved in the correct
direction around the circumference. The two
x1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0

points now represented a coord across the


virtual circle and a tangent was given by the
original point. The coord tangent equation
given by Warendorff (13), states that the
angle between a coord and an angle is half of
the inscribed angle between the points. This
means that by halving the angle already
calculated, the angle between the points
could be obtained.
At this point, the new angle showed large
differences to the original and could not be
consolidated despite attempting several
tweaks and rebuilds. There is no doubt a way
to realise this solution, but considering the
extra cost and complexity for such a small
reward in a small project indicates that the
matter should not be pursued further.
The relevant data is given below.

y1

Distance

In Angle

x2

y2

Angle

0
34.83177044
17.41588261
24.8797069
7.910714635
6.424622346
4.915224511
8.244274485
15.80321855
174.1560136
43.52807693
19.32456481
9.158609285
7.910093436
10.88075741
21.76780906
58.05218617
21.76781998
10.24031396
7.535071618
12.19443463
11.36977004
16.09399126
16.28205025

0
2.72365E-06
0.007671051
0.129164651
0.748529241
3.007668784
1.903198808
3.097967283
2.505435053
8.917113432
7.996715297
5.326940935
4.016425364
1.383989933
1.854653751
2.169375502
1.236323776
1.393239209
2.500530828
1.140764954
5.988721
2.865699468
0.189352234
1.803351402

0
4.48249E-06
0.025249469
0.297605718
5.424202687
26.8364621
22.19645682
21.54106847
9.08825408
2.935139
10.53137339
15.8019621
25.13929105
10.02984391
9.771170056
5.71298218
1.220833672
3.669049812
13.99786492
8.678639387
28.15238985
14.44846862
0.674449643
6.349128663

0
-2.7237E-06
-0.00767105
-0.12916523
-0.74964572
-3.11633219
-1.95040058
-3.17036212
-2.51591747
-8.92100915
7.951808532
5.259734204
3.888919047
1.376939439
1.845685906
2.165786218
-1.23641723
-1.39419027
-2.52530642
-1.14511771
-6.22656322
-2.89594476
-0.1893566
-1.80703613

0
34.83177044
17.41588092
24.87937162
7.875327307
5.733370743
4.55134123
7.669026873
15.60502893
173.927777
42.79558648
18.59499937
8.291949872
7.789327054
10.72307443
21.65979874
58.03902182
21.72324838
9.93653189
7.448883917
10.75321483
11.01053452
16.09287737
16.18228539

0
2.24124E-06
0.012624735
0.148802859
2.712101343
13.41823105
11.09822841
10.77053424
4.54412704
1.4675695
5.265686694
7.900981052
12.56964553
5.014921957
4.885585028
2.85649109
0.610416836
1.834524906
6.998932459
4.339319693
14.07619493
7.224234311
0.337224821
3.174564332

Page 15 of 21

Diff
0
4.999998
9.987375
6.851197
19.2879
13.58177
23.90177
10.22947
6.455873
0.46757
1.265687
1.099019
6.430354
16.98508
11.11441
5.143509
2.389583
6.165475
10.00107
18.66068
0.076195
6.775766
9.662775
6.825436

Sean Robinson 2012

0
0
0
0
0
0
0

174.0242783
174.0189765
174.0126022
43.52376544
43.51142584
17.32351469
14.38928732

17.67808631
6.62304149
0.762456583
1.493802479
11.89277748
12.81166186
4.241694814

5.823287949
2.181743661
0.251175499
1.967476581
15.66833452
42.39477319
16.89829901

-17.7084749
6.621442682
0.762454144
1.493509221
11.74525113
11.67532036
4.180530049

173.1271446
173.8929575
174.0109318
43.49813316
41.89622005
12.79808797
13.76861497

2.911643975
1.09087183
0.12558775
0.983738291
7.83416726
21.19738659
8.449149507

1.911644
0.090872
0.874412
3.016262
3.834167
11.19739
3.55085

15
10
5
0
-5

11 13 15 17 19 21 23 25 27 29 31
x1
x2

-10
-15
-20
-25
-30
200
180
160
140
120
100

y1

80

y2

60
40
20
0
1

Page 16 of 21

11 13 15 17 19 21 23 25 27 29 31

Sean Robinson 2012

40
35
30
25
Angle

20

Original

15
10
5
0
1

9 11 13 15 17 19 21 23 25 27 29 31

Despite there being a very close correlation


between the derived Y values and a broad
correlation between the original angle and
the angle considering lean, it is recommended
to use the angle of steering for these
calculations.

dt
0.068843953
0.074739419
0.022569843
0.021356104
0.076438383
0.014518368
0.025705863
0.114520799
0.06889548
0.127438314
0.023090648
0.180005126
0.029316446
0.118324639
0.025785655
0.10360612
0.100718349
Page 17 of 21

Time
0
0.068843953
0.143583373
0.166153216
0.18750932
0.263947703
0.278466071
0.304171934
0.418692733
0.487588213
0.615026526
0.638117175
0.818122301
0.847438747
0.965763386
0.991549041
1.09515516

Angle
0
-5
-10
-7
-22
-27
-35
-21
-11
-1
4
9
19
22
16
8
-3

7. INTEGRATING AND MAPPING


MOVEMENT
The final stage in this process is to actually plot
some points to demonstrate the movement.
Movement is considered to be the distance and
direction travelled to the next point. The angle of
the turn and distance travelled in the current dt is
already known so the new point can be calculated
using the parametric equation of a circle and then
adding the previous position, which will act as the
origin.

Movement

0
0.003972623
0.003054153
0.102812872
0.781158696
2.045595522
5.255263349
6.339302551
3.544323525
5.182484641
3.371261219
8.06788396
2.354997378
3.146233466
1.667161222
2.630018933
1.717853055

0
-0.000346062
-0.000876144
-0.013399561
-0.305885767
-1.234131248
-4.247093188
-6.517796338
-7.193746519
-7.284147499
-7.04909923
-5.78763868
-5.021300878
-3.843268943
-3.383963912
-3.018120376
-3.107980321

0
0.003957521
0.006965322
0.109012618
0.833347296
2.65620806
6.962001044
12.88067184
16.35994197
21.54163809
24.90469541
32.87335081
35.10017344
38.01753968
39.62018294
42.22463262
43.9401338
Sean Robinson 2012

0.002857348
0.044747185
0.188248492
0.065680894
0.169819225
0.120381681
0.107851001
0.126320329
0.077535861
0.087319371
0.19686197
0.051299809
0.064542392

1.19587351
1.198730858
1.243478042
1.431726534
1.497407428
1.667226654
1.787608334
1.895459335
2.021779665
2.099315526
2.186634897
2.383496867
2.434796677

-8
-17
-23
-14
-14
-10
-10
-1
1
1
4
4
10

1.736843071
2.993869404
2.327484513
1.9700843
9.998422682
0.161225934
0.852591764
3.554743207
0.617145321
11.20717209
8.015844019
2.160636998
8.62022407

-3.349580411
-4.22447245
-5.133457079
-5.609826812
-8.027462416
-8.055444957
-8.203421671
-8.265429046
-8.254663835
-8.059170859
-7.500296855
-7.349654721
-5.853519662

45.66009114
48.52327432
50.66592014
52.57754354
62.27926989
62.43804892
63.27770099
66.83190334
67.44895477
78.65442168
86.65075929
88.80613842
97.29553433

Angle
30
20
10
0
1

9 11 13 15 17 19 21 23 25 27 29

Angle

-10
-20
-30
-40

X
1
0
1

11 13 15 17 19 21 23 25 27 29

-1
-2
X
-3
-4
-5
-6

Page 18 of 21

Sean Robinson 2012

Y
140
120
100
80
Y

60
40
20
0
1

11 13 15 17 19 21 23 25 27 29

The graphs above clearly show the movement


between data points based on the criteria
previously explained. By comparing the X and
Angle graphs, it becomes apparent that altering
the angle of the steering has an effect on
movement, but even a sudden alteration still
describes a smooth curvature. This is an ideal
result as it satisfies many criteria with regard to
accuracy of dynamics but also outputs a model
that is highly indicative of what would be
expected.

8. ENHANCEMENTS
Despite overall success in the experiments detailed
here, there have been some sections that
presented substantial difficulty.
A complete
solution would be providing proof of the improved
turning equations. Despite the differences being
too large, there is still something to be gained for
truly accurate models if the problem can be solved
or conclusively proved.
Although the transition of the object can be clearly
tracked over the graphs, there are issues that limit
the model. The Z axis has been completely
ignored in this paper as the values for it have no
bearing on the research. Converting to three
dimensions requires the alteration of the current Y
axis becoming the new Z component and a new Y
set being established to hold vertical data. At
every point in this model, the vertical component
will just be the height of the terrain currently being

Page 19 of 21

used. As the equations are calculated using the


slope before any integration occurs, the propulsion
of the object has already factored the
modifications required by the terrain. The object
is then moved by the specified amount in the
indicated direction. Improving on this would mean
a substantial overhaul to much of the system but
would allow the bicycle to potentially leave the
ground in moments of severe terrain by utilising
equations of inertia and momentum.
A final point to make is that a second run of RK4
could be used to integrate the actual movement
more accurately. Although the velocity is already
integrated, as demonstrated by the smooth
curvature, further refinement could be achieved
with little added cost.

9. CONCLUSIONS
This paper detailed the pipeline of equations and
calculations necessary to model the core features
of a bicycle. Power is the first thing needing to be
calculated, this is a value determined by the power
being put in to something minus the power being
taken out. These factors are usually the riders
pedal power and any environmental factors.
It was then shown how this power gave an
acceleration, which could then be integrated using
RK4 to give a measure of distance that would be
traversed during the current delta time step.

Sean Robinson 2012

The third stage was steering. The lean of the


bicycle was demonstrated to be easily calculable
but the addition of further equations and
complexity meant that choices should be made
with regard to specific problems. This paper
recommends that unless a very high level of
accuracy to real world dynamics is paramount,
more basic measures will easily suffice. The Yaw
of a bicycle should be calculated based on an
upright position and any small increase can be

safely ignored as the difference is infinitesimal and


will be unseen by any users. Furthermore, any
change in radius from lean should be avoided in all
but the most important cases. The closest
approximation to a solution shown here clearly
demonstrates a very high cost and minimal return.
Finally, the movement of the object was plotted in
two dimensional space in order to prove the
accuracy and workings of the solutions provided.

BIBLIOGRAPHY
1. Coggan A. Training Peaks. [Online]. [cited 2012 01 05. Available from:
http://home.trainingpeaks.com/articles/cycling/power-profiling.aspx.
2. May Q. MayQ. [Online].; 2010 [cited 2012 01 05. Available from:
http://www.mayq.com/Best_european_trips/Cycling_speed_math.htm.
3. Whitt FR, G WD. Bicycling Science. 2nd ed. Massachusetts: Massachusetts Institute of technology; 1982.
4. Newton I. Philosophiae Naturalis Principia Mathematica. 1st ed. London; 1687.
5. Euler L. Institutionum calculi integralis volumen secundum St. Petersburg: Imperial Academy of Science;
1769.
6. Encyclopedia.com. Encyclop. [Online].; 2008 [cited 2011 11 02. Available from:
http://www.encyclopedia.com/doc/1G2-2830903781.html.
7. GAP. http://www-gap.dcs.st-and.ac.uk. [Online]. [cited 2011 11 02. Available from: http://www-gap.dcs.stand.ac.uk/~history/Biographies/Kutta.html.
8. Fiedler G. gafferongames.com. [Online].; 2006 [cited 2011 11 02. Available from:
http://gafferongames.com/.
9. Sharp RS. Motorcycle Steering Control by Road Preview. Journal of Dynamic Systems, Measurement and
Control (ASME). 2007 July;(129).
10. Fajans J. Steering in Bicycles and Motorcycles. American Journal of Physics. 2000 July; 68(7).
11. Cossalter V. Motorcycle Dynamics. 2nd ed.: Lulu; 2006.
12. Math Warehouse. Math Warehouse. [Online]. [cited 2012 01 05. Available from:
http://www.mathwarehouse.com/trigonometry/radians/s=r-theta-formula-equation.php#.
13. Warendorff J. Wolfram Demonstrations project. [Online].; 2012 [cited 2012 01 05. Available from:
http://demonstrations.wolfram.com/TangentChordAngle/.

Page 20 of 21

Sean Robinson 2012

Page 21 of 21

Sean Robinson 2012

Вам также может понравиться