Sports Biomechanics Lab > Blog > Bicycle parameter measurements final round results
Personal tools

Bicycle parameter measurements final round results

by Jason Moore — last modified Jun 07, 2011 11:20 PM

I've measured the physical parameters (geometry, mass, mass location and distribution) for nine different bicycles and have finally gotten it all pretty much tied together. Here are some updates.

This all started when I was at TU Delft with Arend and Jodi and I helped finish up Jodi's instrumented bicycle. We took it out for experiments in streets and on the giant treadmill at the Vrije Universitiet in Amsterdam. We came back with tons of data but to actually connect it to the bicycle model we needed the accurate measurements of the bicycle's physical properties (geometry, mass, mass center and moments of inertia) to be able to use our model to make any comparisons. I volunteered to measure the bike using Jodi's setup and techniques from his thesis. This went pretty well and I just followed Jodi's instructions out of the book and I wrote this conference paper to detail Jodi's methods some more and show how I added the rigid rider's physical properties to that of the bicycle using a basic rider inertia model.

After writing the paper and talking with Mont, I realized how inaccurate my methods had been and ways that could improve the experiments. So around the beginning of summer while I was in Delft I got the itch to measure more bikes. I realized that there were only a handful, if that, of complete sets of bicycle parameters that came from real measurements. Most people used fictitious ones, albeit good estimates I'm sure (although Bill Patterson might have a bunch of good data from his hands on bicycle dynamics class). So I went to measuring seven different bicycles in the basement of the 3Me building (it was the only place with stout column to hang the bikes now that the original space was converted into a laboratory). I got into a rhythm and could measure all the parts of a single bike in about 6 hours and it took me about two weeks to get through them all. I was much more careful this time about how the measurements were taken so that I could take the accuracy into account much like the Roland and Rice group did back in the 70's.

The data sat stagnant for a while because I moved back to Davis and had tons more stuff to do, but I got back to it around the end of winter last year. Arend prodded me to write up what I did and I thought it would be a good paper for the upcoming Single Track Vehicle conference he was hosting in Delft the upcoming October. I had a little bit of Matlab code I had written at the end of the summer to do all the computations that was incomplete, but I'd also just learned Python (Luke's had been trying to get me to learn it for a while). I decided to write the code for the computations in Python.

The first hiccup I came across was calculating the error propogation throughout the computations. I started to theorize how to write some functions that could calculate the error for a general set of computations. This was looking a bit tough, but I quickly came across Eric Leigbot's uncertainties package for python. It was exactly what I needed!

The code I wrote worked pretty well. It was my first attempt at having all of the table and figure generation automated for a paper. I finished the code, paper and poster just in time for the conference. I thought it was pretty good stuff, but it wasn't really a show stopper in terms of ground breaking research. It was just some solid work that provided some long needed parameter sets for folks to work with in their models. Needless to say, I only got a poster at the conference with a short 10 minute poster session and my paper didn't get accepted for the journal that published from the conference.

With the help of various undergraduate interns, we setup similar measurement apparatus at Davis in anticipation of measuring the two bicycles we are working on. Finally, after the first experiments with the instrumented bicycle I started measuring the physical parameters of the rigid rider instrumented bicycle. This took a lot longer than it did the previous time even though it was only somewhat more complex (I measured the fork and handlebar properties separate).

We really got the protocol down this time with a nice data collection sheet with consistent variables names and measurements to take, including a better way to measure the bicycle geometry based on the dimension parameterization that we prefer.

I also took this opportunity to rewrite the code for the bicycle parameter measurements so that is more user friendly. It is now object orientified and allows one to easily enter the raw data and compute the bicycle parameters. It also generates several basic plots such as one with the geometry, center of mass, inertia ellipsoids and others such as the eigenvalues versus speed. Here are the current example plots:

Rigid Rider Instrumented Bicycle Geometry
The geometry, center of mass and inertia of the rigid rider instrumented bicycle.
Rigid Rider Eigenvalues
Eigenvalues versus speed of the rigid rider instrumented bicycle.

I'm happy with the way the code is structured now and think that is quite reusable by others. I plan to clean it up a bit including adding more documentation and features. I also am planning to tie it together with some software that calculates the inertia of a human in a particular orientation, either what I already have or a better design based on Yeadon's inertia model. We have a summer intern showing up soon who may work on that very task. One other thing that will be coming out of this is the parameter set for at small childs bike that has a gyrowheel installed. Another undergraduate intern, Steven Yen, has measured the bike and is currently working on computing the parameters. We plan to make some plots showing how the stable speed range of the bicycle changes with respect to angular velocity of the flywheel.

Document Actions
Add comment

You can add a comment by filling out the form below. Plain text formatting.

(Required)
Please enter your name.
(Required)
(Required)
(Required)
Enter the word