Fixed formula's
Fixed the formula's as the markuplanguage seems to dislike certain constructs
This commit is contained in:
parent
88a6d0fef7
commit
9e80bef1ee
|
|
@ -117,13 +117,13 @@ In theory, there are two threats here:
|
|||
|
||||
The traditional approach [[1]](#1), [[8]](#8), [[13]](#13) suggeste a numerical approach to Angular Velocity ω:
|
||||
|
||||
> $$ ω = {Δθ \over Δt} $$
|
||||
$$ ω = {Δθ \over Δt} $$
|
||||
|
||||
This formula is dependent on Δt, which is suspect to noise, making this numerical approach to the calculation of ω volatile. From a more robust perspective, we approach ω as the the first derivative of the function between *time since start* and the angular position θ, where we use a robust regression algorithm to determine the function and thus the first derivative.
|
||||
|
||||
The traditional numerical approach [[1]](#1), [[8]](#8), [[13]](#13) Angular Acceleration α would be:
|
||||
|
||||
> $$ α = {Δω \over Δt} $$
|
||||
$$ α = {Δω \over Δt} $$
|
||||
|
||||
Again, the presence of Δt would make this alculation of α volatile. From a more robust perspective, we approach α as the the second derivative of the function between *time since start* and the angular position θ, where we use a robust regression algorithm to determine the function and thus the second derivative.
|
||||
|
||||
|
|
@ -135,37 +135,37 @@ In the recovery phase, the only force exerted on the flywheel is the (air-/water
|
|||
|
||||
A first numerical approach is presented by through [[1]](#1) in formula 7.2a:
|
||||
|
||||
> $$ k = - I \* {Δω \over Δt} * {1 \over Δω^2} $$
|
||||
$$ k = - I \* {Δω \over Δt} * {1 \over Δω^2} $$
|
||||
|
||||
Where the resulting k should be averaged across the rotations of the flywheel. The downside of this approach is that it introduces Δt in the divider of the drag calculation, making this calculation potentially volatile. Our practical experience based on testing confirms this volatility. An alternative numerical approach is presented by through [[1]](#1) in formula 7.2b:
|
||||
|
||||
> $$ k = -I \* {Δ({1 \over ω}) \over Δt} $$
|
||||
$$ k = -I \* {Δ({1 \over ω}) \over Δt} $$
|
||||
|
||||
Where this is calculated across the entire recovery phase. Again, the presence of Δt in the divider potentially introduces a type of undesired volatility. Testing has shown that even when Δt is chosen to span the entire recovery phase reliably, reducing the effect of single values of *CurrentDt*, the calculated drag factor is more stable but still is too unstable to be used as is: it typically requires averaging across strokes to prevent drag poisoning (i.e. a single bad measurement of *currentDt* throwing off the drag factor significantly, and thus throwing off all dependent linear metrics significantly).
|
||||
|
||||
To make this calculation more robust, we again turn to regression methods (as suggested by [[7]](#7)). We can transform formula 7.2 to the definition of the slope of a line, by doing the following:
|
||||
|
||||
> $$ { k \over I } = {Δ({1 \over ω}) \over Δt} $$
|
||||
$$ { k \over I } = {Δ({1 \over ω}) \over Δt} $$
|
||||
|
||||
Thus k/I represents the slope of the graph depicted by *time since start* on the *x*-axis and ${1 \over ω}$ on the *y*-axis, during the recovery phase of the stroke. However, this formula can be simplified further, as the angular velocity ω is determined by:
|
||||
|
||||
> $$ ω = {({2π \over Impulses Per Rotation}) \over currentDt} $$
|
||||
$$ ω = {({2π \over Impulses Per Rotation}) \over currentDt} $$
|
||||
|
||||
thus making:
|
||||
|
||||
> $$ { k \over I } = {Δ({1 \over {({2π \over Impulses Per Rotation}) \over currentDt}}) \over Δt} $$
|
||||
$$ { k \over I } = {Δ({1 \over {({2π \over Impulses Per Rotation}) \over currentDt}}) \over Δt} $$
|
||||
|
||||
removing the division, results in
|
||||
|
||||
> $$ { k \over I } = {Δ(currentDt \* {Impulses Per Rotation \over 2π}) \over Δt} $$
|
||||
$$ { k \over I } = {Δ(currentDt \* {Impulses Per Rotation \over 2π}) \over Δt} $$
|
||||
|
||||
Since we are multiplying *currentDt* with a constant factor (i.e. ${Impulses Per Rotation \over 2π}$), we can further simplify the formula by moving this multiplication outside the slope-calculation. Effectively, making the formula:
|
||||
|
||||
> $$ {k \* 2π \over I \* Impulses Per Rotation} = {ΔcurrentDt \over Δt} $$
|
||||
$$ {k \* 2π \over I \* Impulses Per Rotation} = {ΔcurrentDt \over Δt} $$
|
||||
|
||||
As the left-hand of the equation only contains constants and the dragfactor, and the right-hand a division of two delta's, we can use regression to calculate the drag. As the slope of the line *currentDt* over *time since start* is equal to ${k \* 2π \over I \* Impulses Per Rotation}$, the drag thus can be determined through
|
||||
|
||||
> $$ k = slope \* {I \* Impulses Per Rotation \over 2π} $$
|
||||
$$ k = slope \* {I \* Impulses Per Rotation \over 2π} $$
|
||||
|
||||
As this formula shows, the drag factor is effectively determined by the slope of the line created by *time since start* on the *x*-axis and the corresponding *CurrentDt* on the *y*-axis, for each recovery phase.
|
||||
|
||||
|
|
@ -175,11 +175,11 @@ This slope can be determined through linear regression (see [[5]](#5) and [[6]](
|
|||
|
||||
The torque τ on the flywheel can be determined based on formula 8.1 [[1]](#1):
|
||||
|
||||
> $$ τ = I \* ({Δω \over Δt}) + D $$
|
||||
$$ τ = I \* ({Δω \over Δt}) + D $$
|
||||
|
||||
As ${Δω \over Δt}$ = α and D = k \* ω<sup>2</sup> (formula 3.4, [[1]](#1)), we can simplify this further by:
|
||||
|
||||
> $$ τ = I \* α + k \* ω^2 $$
|
||||
$$ τ = I \* α + k \* ω^2 $$
|
||||
|
||||
As α and ω have been derived in a robust manner, and there are no alternative more robust approaches to determining instant τ that allows for handle force curves, we consider this the best attainable result. Testing shows that the results are quite useable.
|
||||
|
||||
|
|
@ -283,21 +283,21 @@ As the only source for adding energy to the rotational part of the rower is the
|
|||
|
||||
We can calculate the energy added to the flywheel through [[1]](#1), formula 8.2:
|
||||
|
||||
> $$ ΔE = I \* ({Δω \over Δt}) \* Δθ + k \* ω^2 \* Δθ $$
|
||||
$$ ΔE = I \* ({Δω \over Δt}) \* Δθ + k \* ω^2 \* Δθ $$
|
||||
|
||||
The power then becomes [[1]](#1), formula 8.3:
|
||||
|
||||
> $$ P = {ΔE \over Δt} $$
|
||||
$$ P = {ΔE \over Δt} $$
|
||||
|
||||
Combining these formulae, makes
|
||||
|
||||
> $$ P = I \* ({Δω \over Δt}) \* ω + k \* ω^3 $$
|
||||
$$ P = I \* ({Δω \over Δt}) \* ω + k \* ω^3 $$
|
||||
|
||||
Although this is an easy technical implementable algorithm by calculating a running sum of this function (see [[3]](#3), and more specifically [[4]](#4)). However, the presence of the many small ω's makes the outcome of this calculation quite volatile, even despite the robust underlying calculation for ω. Calculating this across the stroke might be an option, but the presence of Δω would make the power calculation highly dependent on both accurate stroke detection and the accurate determination of instantanous ω.
|
||||
|
||||
An alternative approach is given in [[1]](#1), [[2]](#2) and [[3]](#3), which describe that power on a Concept 2 is determined through ([[1]](#1) formula 9.1), which proposes:
|
||||
|
||||
> $$ \overline{P} = k \* \overline{\omega}^3 $$
|
||||
$$ \overline{P} = k \* \overline{\omega}^3 $$
|
||||
|
||||
Where $\overline{P}$ is the average power and $\overline{\omega}$ is the average angular velocity during the stroke. Here, the average speed can be determined in a robust manner (i.e. ${Δθ \over Δt}$ for sufficiently large Δt).
|
||||
|
||||
|
|
@ -330,17 +330,17 @@ Given these advantages and that in practice it won't have a practical implicatio
|
|||
|
||||
In [[1]](#1) and [[2]](#2), it is described that power on a Concept 2 is determined through (formula 9.1):
|
||||
|
||||
> $$ \overline{P} = k \* \overline{\omega}^3 = c \* \overline{u}^3 $$
|
||||
$$ \overline{P} = k \* \overline{\omega}^3 = c \* \overline{u}^3 $$
|
||||
|
||||
Where c is a constant (2.8 according to [[1]](#1)), $\overline{\omega}$ the average angular velocity and $\overline{u}$ is the average linear velocity, making this formula the essential pivot between rotational and linear velocity and distance.
|
||||
|
||||
However, in [[1]](#1) and [[2]](#2), it is suggested that power on a Concept 2 might be determined through (formula 9.4, [[1]](#1)):
|
||||
|
||||
> $$ \overline{P} = 4.31 \* \overline{u}^{2.75} $$
|
||||
$$ \overline{P} = 4.31 \* \overline{u}^{2.75} $$
|
||||
|
||||
Based on a simple experiment, downloading the exported data of several rowing sessions from Concept 2's logbook, and comparing the reported velocity and power, it can easily be determined that $\overline{P}$ = 2.8 \* $\overline{u}$<sup>3</sup> offers a much better fit with the data than $\overline{P}$ = 4.31 \* $\overline{u}$<sup>2.75</sup> provides. Therefore, we choose to use formula 9.1. Baed on this, we thus adopt formula 9.1 (from [[1]](#1)) for the calculation of linear velocity u:
|
||||
|
||||
> $$ \overline{u} = ({k \over C})^{1/3} * \overline{\omega} $$
|
||||
$$ \overline{u} = ({k \over C})^{1/3} * \overline{\omega} $$
|
||||
|
||||
As both k and ω can change from cycle to cycle, this calculation should be performed for each cycle. It should be noted that this formula is also robust against missed strokes: a missed drive or recovery phase will lump two strokes together, but as the Average Angular Velocity $\overline{\omega}$ will average out across these strokes. Although undesired behaviour in itself, it will isolate linear velocity calculations from errors in the stroke detection in practice.
|
||||
|
||||
|
|
@ -348,7 +348,7 @@ As both k and ω can change from cycle to cycle, this calculation should be
|
|||
|
||||
[[1]](#1)'s formula 9.3 provides a formula for linear distance:
|
||||
|
||||
> $$ s = ({k \over C})^{1/3} * θ $$
|
||||
$$ s = ({k \over C})^{1/3} * θ $$
|
||||
|
||||
Here, as k can slightly change from cycle to cycle, this calculation should be performed at least once for each cycle. As θ isn't dependent on stroke state and changes constantly, it could be recalculated continously throughout the stroke, providing the user with direct feedback of his stroke. It should be noted that this formula is also robust against missed strokes: a missed drive or recovery phase will lump two strokes together, but as the angular displacement θ is stroke independent, it will not be affected by it at all. Although missing strokes is undesired behaviour, this approach isolates linear distance calculations from errors in the stroke detection in practice.
|
||||
|
||||
|
|
@ -356,15 +356,15 @@ Here, as k can slightly change from cycle to cycle, this calculation should be p
|
|||
|
||||
Given the distance travelled by the handle can be calculated from angular distance θ traveled by the sprocket during the Drive Phase. During the drive, the angular distance travelled by the flywheel is identical to the angular distance θ travelled by the flywheel during the drive phase. Thus
|
||||
|
||||
> $$ s_{Handle} = \text{number of rotations of the flywheel} \* \text{circumference of the sprocket} $$
|
||||
$$ s_{Handle} = \text{number of rotations of the flywheel} \* \text{circumference of the sprocket} $$
|
||||
|
||||
As the number of rotations of the flywheel = ${\theta \over 2\pi}$ and the circumference of the sprocket = r * 2π, where r is the radius of the sprocket that is connected to the flywheel, we can translate this formula into:
|
||||
|
||||
> $$ s_{Handle} = {\theta \over 2\pi} * r * 2\pi $$
|
||||
$$ s_{Handle} = {\theta \over 2\pi} * r * 2\pi $$
|
||||
|
||||
Which can be simplified into:
|
||||
|
||||
> $$ s_{Handle} = θ * r $$
|
||||
$$ s_{Handle} = θ * r $$
|
||||
|
||||
Where r is the radius of the sprocket in meters and θ the angular distance travelled by the flywheel during the drive.
|
||||
|
||||
|
|
@ -372,7 +372,7 @@ Where r is the radius of the sprocket in meters and θ the angular distance
|
|||
|
||||
As the distance travelled by the handle is ${u_{Handle} = θ * r}$, we can decuct:
|
||||
|
||||
> $$ u_{Handle} = ω \* r $$
|
||||
$$ u_{Handle} = ω \* r $$
|
||||
|
||||
Here, ω can be the instantanous or average angular velocity of the flyhweel in Radians, and r is the radius of the sprocket (in meters).
|
||||
|
||||
|
|
@ -380,7 +380,7 @@ Here, ω can be the instantanous or average angular velocity of the flyhwee
|
|||
|
||||
From theory [[12]](#12)) and practical application [[7]](#7), we know the handle force is equal to:
|
||||
|
||||
> $$ F_{Handle} = {τ \over r} $$
|
||||
$$ F_{Handle} = {τ \over r} $$
|
||||
|
||||
Where r is the radius of the sprocket in meters.
|
||||
|
||||
|
|
@ -388,7 +388,7 @@ Where r is the radius of the sprocket in meters.
|
|||
|
||||
From theory [[13]](#13)), we know that the handle Power is
|
||||
|
||||
> $$ P_{Handle} = τ * ω $$
|
||||
$$ P_{Handle} = τ * ω $$
|
||||
|
||||
## A mathematical perspective on key metrics
|
||||
|
||||
|
|
@ -446,11 +446,11 @@ We determine the Angular Velocity ω and Angular Acceleration α based
|
|||
|
||||
The power calculation is the bridge connecting the linear and rotational energy systems of an ergometer. However, from a robustness perspective, we optimised this formula. The complete formula for power throughout a stroke can be deduced from formulae 8.2 and 8.3 [[1]](#1), which lead to:
|
||||
|
||||
> $$ P = I \* ({Δω \over Δt}) \* ω + k \* ω^3 $$
|
||||
$$ P = I \* ({Δω \over Δt}) \* ω + k \* ω^3 $$
|
||||
|
||||
A simplified formula is provided by [[1]](#1) (formula 9.1), [[2]](#2) and [[3]](#3):
|
||||
|
||||
> $$ \overline{P} = k \* \overline{\omega}^3 $$
|
||||
$$ \overline{P} = k \* \overline{\omega}^3 $$
|
||||
|
||||
Open Rowing Monitor uses the latter simplified version. As shown by academic research [[15]](#15), this is sufficiently reliable and accurate providing that that ω doesn't vary much across subsequent strokes. When there is a significant acceleration or decelleration of the flywheel across subsequent strokes (at the start, during acceleration in sprints or due to stroke-by-stroke variation), the calculated power starts to deviate from the externally applied power.
|
||||
|
||||
|
|
|
|||
Loading…
Reference in New Issue