torque sensor for BB ?

curious said:
Apparently most of these solutions are covered by patents. Although I do not think it is a big deal for a DIY project.
I have not looked at their specific implementation but on the surface I like the Polar idea a lot. In fact it should be possible to measure even static chain tension if one drives the coil with periodic pulse train (say 10 pulses/s) and measure ringing response between the pulses ! All it needs is a U-shaped coil pickup mounted on the chainstay with some protection on top plus some electronics. Adding it to the list of projects to do.


Oh, that's dead clever! Simplifies the whole system. Something akin to an electric guitar pickup is likely what's needed. Not unheard of though, acoustic tension meters for belts and cables have been around for a while now.

Marty
 
http://biketechreview.com/archive/pm_review.htm said:
Polar took an interesting path to solve the power measurement problem. Polar uses chain tension and chain speed to calculate power. At the heart of this system is what is essentially an electric guitar pickup mounted to the chainstay.

This sensor allows the frequency of vibration of the chain to be monitored by generating a voltage that is proportional to the up and down velocity of the chain. Position of this sensor is important, since better results will be had when the change in up and down velocity of the chain is the greatest (point of largest deflection or the middle span of the chain). Signal processing of the data collected will allow the frequency of vibration to be determined. Converting this measured chain frequency to the all-important chain tension requires knowing some fundamental vibration theory. Vibration of a flexible, massive, string is described by the equation:

image020.gif


This equation illustrates the reason why users must measure and input the mass per unit length of the chain and the separation distance between centers of the hub and crank. Without this information, the chain tension cannot be determined based on the measured chain frequency. These extra bits of user-measured data add to the uncertainty of the measurement. This is one of the fundamental reasons why the Polar has a lower claimed accuracy on its power measurement device.

As I understand it, on an ebike there's no need for it to be precise at all, just needs to be somewhat predictable. And being only concerned with torque it only needs to raise the throttle signal as chain vibration speed increases, combined with a current based throttle it should feel like having bionic legs. The assist level could be changed with a dial to change the throttle signal : vibration speed ratio. If you have multiple chain rings and go one smaller, say going up a hill, then chain tension/vibration speed increases and you're more likely to get full assist for the whole climb. No mushyness like on crank torque sensors, no increased resistance from idlers bending the chain. This sounds so sweet, I can really see something like this on my upcoming build.
 
chain tension: human = 0-150Nm, real long crank 190mm & 28tooth cog 11.5cm (0-150Nm(190mm/11.5cm)) so 0 to 250Nm
chain weight: 200-310g/100 links
BB-hub distance 33-48-100cm (small child's bike - large 27" road bike - guesstimated extracycle)

Max frequency = short lenght, light weight, high tension.
On the child's bike the lenght is 13 inches X2 = 26 links, so 52g with a very light chain.
So sqrt(250Nm/52g)/(2*33cm)= 0.02288

I must be doing it wrong, thought this would give max frequency?
 
You need to use consistent SI units.

Force should be in N
Mass should be in kg
Length should be in m
Frequency is in Hz

Assuming that the chain mass per unit length is 0.2kg/m, the chain tension is 250N and the span length is 0.33m:

((250/0.2)^-0.5)/(2*0.33) = 53.5Hz, which seems reasonable.

Jeremy
 
I think 250 Nm is a reasonable figure for the absolute maximum torque at the cranks.

Chain tension will be 250/(chainring radius) * 1

Say: 250/.16 = 1562.5N for chain tension.

Or not....?

Breaking strength of a bike chain is around 2000N - 2500N
 
250N-m seems high, as it implies a rider exerting about 1500N on the crank. I'm not sure that the rider can exert much more than his weight (as a force) on the crank, so 1500N equates to a rider weight of about 153kg, or 337lbs. Assuming that the rider can exert a more reasonable 750N max force on a pedal crank that's 170mm, then the BB peak torque will be 127.5N-m. A 60 tooth chainring has an effective diameter of about 0.24m, so the chain tension will be the torque acting at the radius of the chainring, 0.12m. 127.5N-m gives a chain tension of 1062.5N.

Assuming that the chain mass per unit length is 0.2kg/m, the chain tension is 1062.5N and the span length is 0.33m:

((1062.5/0.2)^-0.5)/(2*0.33) = 110 Hz

Jeremy
 
Jeremy,

I'm not saying I could exert 250Nm :lol:

That was the figure given me by a BMX technician when I expressed surprise that they regularly broke chains.

I don't disagree with your more moderate estimate, though perhaps a 48t chainring might be nearer the norm.

Breaking strength of bike chain is about 2000N , or so, I think.
 
Jeremy Harris said:
You need to use consistent SI units. [...]
Ah, thanks Jeremy, I appreciate.


I took 150Nm because the graph on this page stops around there:
http://biketechreview.com/archive/pm_review.htm

I know at least one guy, Andy Lamarre, who can give >1kw for a few secs on his bike (road bike), at probably >120rpm. Not sure how that translates to how much force on the chain. I do know I'm not even close and he's about twice my age.
 
BTW I done frocked up about the 28t chainring, I measured the diameter, so it should be divided by two.


From wiki:

On Earth's surface, a mass of 1 kg exerts a force of approximately 9.81 N [down] (or 1 kgf). The approximation of 1 kg corresponding to 10 N is sometimes used as a rule of thumb in everyday life and in engineering.

So that would be ~5KN

((5000/0.2)^-0.5)/(2*0.33) gives .009582 on my calculator. Guess it does not want.
sqrt(5000/0.2)/0.66 gives 239.57, seems credible


However google seems to confirm bike chains tend to break around 2000-2500N.
Somehow I doubt one would get that much tension in normal use.
 
Mathurin said:
However google seems to confirm bike chains tend to break around 2000-2500N.
Somehow I doubt one would get that much tension in normal use.
I've seen bottom brackets break-off from the tubes, but not chains break. I've only seen drive chains break on gassers.
 
Ok, well plugging in 2500 Gives 169.399. I guess that's about as high as it can ever be expected to get, so ideally the chain torque throttle should be able to understand 0-170hz.


Wiki says guitar pickups give 0.1 to 1v rms

I tried to make a guitar pickup using a bolt, nut, some plastic, an SI fuckton (See, I'm using SI units, an SI fuckton is equivalent to 1.275 Imperial shitloads) of magnet wire and a drill to spin it, and the result shows life when a magnet is passed near it. Can stand it up with a bit of metal, but not lift it, when an AA battery is connected to it. But when I tried it next to a bike chain the result was 0. AC range on my multimeter starts at 10v though. I've read about adding a magnet to guitar pickups to boost them? Dunno. Guess I'll try a diode bridge or something.

pickup.jpg
 
To make a good pickup you need to wind a coil of fine wire around a powerful magnet, rather than a bit of ferrous metal. The more wire you wind, the higher the output voltage, provided you don't load it down, as more wire also gives a greater impedance. A strong magnet will increase the effective distance the pickup can be from the chain and still work OK.

The easiest way to make one might be to break up a small mains transformer (maybe one from an old wall wart type power unit) and remove the low voltage secondary winding and the core. This should give you just the neat "mains" coil on a bobbin. Inserting a suitable bar magnet into this should give a reasonably good pickup (although I haven't tried it!).

Jeremy
 
Jeremy Harris said:
You need to use consistent SI units.

Force should be in N
Mass should be in kg
Length should be in m
Frequency is in Hz

Assuming that the chain mass per unit length is 0.2kg/m, the chain tension is 250N and the span length is 0.33m:

((250/0.2)^-0.5)/(2*0.33) = 53.5Hz, which seems reasonable.

Jeremy


your units are almost right. Since I don't see any factors of "pi" in the equation the units of frequency are Radians per second. 2*pi radians per second to each hertz. (@#$*!&# unit less numbers...)

Marty


P.S. http://www.kjmagnetics.com/ decent vendor of STRONG magnets
 
I've double checked and that formula for frequency does give the the result in Hz, not rads/sec, so the original calcs I did were right.

It looks like we need a pickup that is optimised for only moderately low frequencies, up to maybe 200Hz or so, which means a coil with lot's of turns and a powerful magnet.

It's a neat idea though, as a non-contact chain tension sensor would be a very neat way to drive an intelligent pedelec system. My guess is that it might be possible to filter out chain speed from this signal as well, so enabling one simple sensor to detect cadence and crank force.

I'm tempted to experiment with this by making a sensor and trying to record some live data. I have a small USB data logger, so might be able to set that up with a laptop strapped to the bike and see just what the signal looks like.

Jeremy
 
The frequency to voltage chips I've seen seem to start at 10hz though, and they're not cheap. EG: TC9400
 
The old LM2917 tacho chip might work, but it would need some input filtering to try and reduce all the spurious signals that will inevitably come off the pickup along with the wanted signal. The datasheet is here: http://cache.national.com/ds/LM/LM2907.pdf

I think the best approach might be to digitise the signal and do some basic signal processing to get a meaningful control term. Ideally this would be done with a DSP, but as the signal frequency is pretty low I think a simple microcontroller with a reasonably fast A/D port might just do it.

If I can get a pickup made over the weekend I'll try and see if I can find out what the signal from the chain looks like using the datalogger, as until we know that we're really shooting in the dark a bit. It may be that the signal is pretty clean, with an obvious chain resonant frequency that can be filtered out and processed via something like that tacho chip. On the other hand, it may be that the signal is buried in loads of random crap, which might need some nifty correlation techniques to pull out.

I'm off to see what I have in the way of small transformers I have lying around that I can rob to get a decent coil.................

Jeremy
 
Pickup coil must either have a permanent magnet or have a DC bias current to work properly. I do not see low frequency as a big problem - just boost the gain of a conditioning amp.

There are two possibilities for an active pickup - one is to use short pulse to excite the chain oscillations before measuring it's response, the other is to create an oscillator by adding positive feedback into the coil. The problem with the second approach is that it can excite second and higher harmonics of the string so the oscillator must have a rather sharp roll-off in gain yet cover the usable tension range - tricky but probably doable.

As far as processing goes I 100% agree that a simple micro with A/D doing basic signal processing is the best solution. It can be tweaked easily for any non-linear response of tension to throttle conversion and such. Also it is possible to measure speed by sampling the higher frequency signal generated by individual chain links passing the detector.
 
I've just double checked that tension/mass/frequency formula (which is the same one used to determine the frequency of stringed instruments) and it does give a result in Hz, rather than rads/sec, so all the original frequencies I gave were correct.

It looks like the fundamental chain frequency is going to be in the 20Hz to 200Hz range.

Jeremy
 
An update on the experiment to try and get some data from the chain, using a simple "guitar pickup" type sensor.

I made a crude pickup, using a coil taken from an old electro mechanical time switch. The coil had lots of turns of fine wire and measured about 3500 ohms. I fitted a magnet and iron slug through the coil and found that I needed a pretty big area of iron under the chain to get a good signal, as the chain moves sideways a fair bit. After much adjustment (read "application of duct tape......") I managed to get something that at least gave a reasonable signal (about 200mV peak to peak). I hooked this up to a USB Instruments datalogger, connected to my little Asus Eee miniature laptop and went for a short ride.

The data looks like rubbish. It's very difficult to see the chain fundamental frequency on a time-domain plot. There's lots of random-looking stuff, big variations in amplitude as the chain goes tight and slack and lots of higher frequency stuff that might be the chain link passing frequency.

To make any sense of this it needs some serious processing. My guess is that converting it to the frequency domain via a Fourier transform would seem to be needed. Looking at the frequency bins would then allow some sort of simple processing to be done to try and extract both the chain speed and the fundamental frequency that is proportional to chain tension. One things for sure, this method is not going to give a simple solution to the pedal force measurement problem.

As my bike is a 'bent, it has an idler wheel on the chain power side, just under the front of the seat. The chain always tends to pull this down, more so when the front chain ring is set to the lower gears. I'm looking at replacing the shaft for this idler with a hollow one with a couple of strain gauges fitted inside. This may give me a better signal to use for "intelligent" pedelec control.

For interest, here's a picture of my 'bent, in ebike "stealth" mode:

2270804819_f0036d5af3.jpg


Jeremy
 
Back
Top