frequency Shifting/Transposing - How ???

Thread Starter

Napoleon

Joined Dec 21, 2008
47
Title fix: Meant "Shifting" not "Shiftin"

Hello Everyone,

So, here is another project for the bike.

Problem:
Speedometer is of by about 9% (reading high).

Goal:
Adjust it so it reads close to actual speed.

Idea:
Intercept the pulse train sent from the sensor on the transmission output shaft and change the frequency by a specific (adjustable) percent, thus obtaining an accurate speed reading on the speedometer.

The sensor seems to be some sort of inductive pickup similar to the variable reluctance magnetic pickup shown on page 8 here:
http://www.national.com/ds/LM/LM2907.pdf

If you connect an oscillator to the speedometer, set at 525Hz 50% duty cycle, 0-5v square wave, it reads 60MPH.

I am sure I missed some details, I usually do :(

Please do ask and I will try to explain as much as I can so that you may be able to help

Thanks for reading!!
 
Last edited:

hgmjr

Joined Jan 28, 2005
9,027
The bicycle speedometers that I am acquainted with have a builtin function that permits the owner to adjust the odometer measurement and so calibrate the speed measurement.

Your model does not provide this feature I gather.

hgmjr
 

Thread Starter

Napoleon

Joined Dec 21, 2008
47
The bicycle speedometers that I am acquainted with have a builtin function that permits the owner to adjust the odometer measurement and so calibrate the speed measurement.

Your model does not provide this feature I gather.

hgmjr
Hi!

Sorry...
It's a motor bike.
There is no adjustment on this.


Thanks!
 

eblc1388

Joined Nov 28, 2008
1,542
Problem:
Speedometer is of by about 9% (reading high).

Goal:
Adjust it so it reads close to actual speed.
I don't know if this will work but you can try making a counter that block the output pulse(effectively removing it from the pulse train going to the speedometer) when it reaches certain count value while letting on the next.

The counter will increment continuously and roll over when it reach the top.
 

Thread Starter

Napoleon

Joined Dec 21, 2008
47
I don't know if this will work but you can try making a counter that block the output pulse(effectively removing it from the pulse train going to the speedometer) when it reaches certain count value while letting on the next.

The counter will increment continuously and roll over when it reach the top.
Hmm,
Thanks for the suggestion.
I think there might be a more efficient way to do this.
I just dont know how exactly.

I dont know if the best approach is to intercept the pulse train, do some counting, and then re-generate a new pulse train.

Or, if it would be cleaner to simply intercept the pulse train, modify it directly, and send it on its way.

Either way, I would need a way to adjust the frequency change/shift somehow, so that it can be calibrated easily... with a trimmer, for example.

I think the speedo will take either a square or sine wave on its input.

Thanks for the help!
 

Thread Starter

Napoleon

Joined Dec 21, 2008
47
Hi,

Bump
Sorry for the bother.

Anybody have any ideas on how to go about this ?
I dont.

Thanks,
And sorry for the bump.
Not sure it this just got lost in the shuffle...
 

DrNick

Joined Dec 13, 2006
110
You could put a uC in-line with the speed signal, and tune you're pulse train via software. Or you could even add a pot, so that you CAN calibrate your instrument.

Now here is another question. Is your speedometer analog or digital? If it is analog you could always just play with the mechanical components to correct the 9% error...
 

Thread Starter

Napoleon

Joined Dec 21, 2008
47
You could put a uC in-line with the speed signal, and tune you're pulse train via software. Or you could even add a pot, so that you CAN calibrate your instrument.

Now here is another question. Is your speedometer analog or digital? If it is analog you could always just play with the mechanical components to correct the 9% error...
Well, that sounds like it would work.
But, I have no experience with micro controllers, or their programming.

How complex would the circuit need to be ?
Would the programming be easy to learn (probably not) ?

As for the Speedo... Its an analog gauge, but electronically controlled.
Doesnt have any adjustments.

But, the idea here is to create a circuit so that the speedo gauge/electronics dont have to be tampered with.
 

bertus

Joined Apr 5, 2008
22,270
Hello,

You could use the lm2907 circuit to convert it to a voltage dependend on the speed.
This voltage can drive a voltage controlled oscillator that gives the correct frequency.
You could use the VCO part of an cd4046 as the oscillator.

Greetings,
Bertus
 

Attachments

Last edited:

Thread Starter

Napoleon

Joined Dec 21, 2008
47
Hello,

You could use the lm2907 circuit to convert it to a voltage dependend on the speed.
This voltage can drive a voltage controlled oscillator that gives the correct frequency.
You could use the VCO part of an cd4046 as the oscillator.

Greetings,
Bertus
Ahh yes!
That sounds like a good idea.
Thanks!

So, pulse train to voltage, then voltage to pulse train.
Then make the adjustments on the voltage to get the desired change in frequency between input and output of the circuit.

Could this be used instead of the 4046 as the VCO ?

http://www.ecelab.com/circuit-vco-555.htm



It seems though, that the frequency decreases as voltage is increased on its input.

But, I think the LM2907, when used as a frequency to voltage converter works the other way.
Im thinking about the top circuit on page 8 here: datasheet


Some questions:

1- Would there be a benefit/downside from using the 555 VCO as opposed to the LM4046 VCO in this application ?

2- Can the 555 VCO be changed so the output frequency goes up as voltage goes up ?

3- Coult the Tachometer example circuit on page 8 of the LM2907 datasheet be directly fed to the 555 VCO circuit ? Perhaps with minimal componets.

Thanks!
 

Ron H

Joined Apr 14, 2005
7,063
Napoleon, over what range of frequency does your correction circuit need to work? I have an idea that is different from what is being discussed here, but it may not work, depending on your frequency (RPM) range.
 

Thread Starter

Napoleon

Joined Dec 21, 2008
47
Napoleon, over what range of frequency does your correction circuit need to work? I have an idea that is different from what is being discussed here, but it may not work, depending on your frequency (RPM) range.
Hi Ron,

The speedo will indicate 60 MPH at 525Hz.
So, about 1 MPH per every 8.75 Hz.

So the range would be from 0 Hz to somewhere around 1750 Hz.
50% duty cycle, 0-5v.

And, I would like to be able to decrease the output frequency to be 0% to 20% of the input frequency. This would allow the calibration of the speedo to match the actual speed.

Thanks for the help!
 

Ron H

Joined Apr 14, 2005
7,063
Hi Ron,

The speedo will indicate 60 MPH at 525Hz.
So, about 1 MPH per every 8.75 Hz.

So the range would be from 0 Hz to somewhere around 1750 Hz.
50% duty cycle, 0-5v.

And, I would like to be able to decrease the output frequency to be 0% to 20% of the input frequency. This would allow the calibration of the speedo to match the actual speed.

Thanks for the help!
For some reason, I was thinking it was a tach. I remember now that it's a speedo. I don't think my idea will work down to zero. Suppose it only worked down to 10 MPH?
This idea is sorta half-baked, so it may never come out of the pan in one piece.:D
 

Thread Starter

Napoleon

Joined Dec 21, 2008
47
For some reason, I was thinking it was a tach. I remember now that it's a speedo. I don't think my idea will work down to zero. Suppose it only worked down to 10 MPH?
This idea is sorta half-baked, so it may never come out of the pan in one piece.:D
Hehe.

Yeah, need it to work down to 0.
It is a speedo after all, and it should be able to display down to 0 MPH.

The other project I am working on involves the RPM, but not this one.

What did you have in mind ?
 

Ron H

Joined Apr 14, 2005
7,063
Hehe.

Yeah, need it to work down to 0.
It is a speedo after all, and it should be able to display down to 0 MPH.

The other project I am working on involves the RPM, but not this one.

What did you have in mind ?
I have a simulation running of a circuit that comprises two parts, connected together:
1. A period-to-voltage converter (PVC).
2. A voltage-to-period converter (VPC)

A VPC is like a VFC, except the output voltage, instead of being a linear function of frequency, is a linear function of period (hyperbolic function of frequency).

The PVC connects to the VPC, with a simple gain factor between them.

The PVC and the VPC use the same principles, so they track each other. In your case, where your speedo reads high by 9%, you simply use a gain of ≈1.1 between the two, and the output period will be 110% of the input period, meaning the output frequency will be ≈0.9 times your input frequency. The scale factor is adjustable in either direction (high or low).
The problem with measuring period, as you may have guessed, is that zero frequency equates to infinite period, which I can't measure. I think that somewhere around 20:1 period range is easily doable (a wider range is certainly possible). That's why I mentioned 10MPH. 200MPH:10MPH = 20:1.

I'm doing this with analog circuitry. A microcontroller might be able to do a better job, and would certainly be simpler, from a hardware standpoint.

The advantage of measuring period is there is almost no time lag (one cycle, or maybe 2). A frequency-to-voltage converter has lots of lag, especially if you want to work down to zero frequency.

EDIT: IIRC, most car speedos don't work well near zero MPH.
 

SgtWookie

Joined Jul 17, 2007
22,230
Thanks.

In the interest of learning, could you elaborate as to why ?
(not immediately obvious to me)
It won't work, because of what Ron_H alluded to; the frequency will not go all the way to zero. You might calibrate it to work at a couple of points, say 55MPH and 25MPH, but the response below that will be increasingly non-linear. For example, when you were completely stopped, your speedo may still indicate that you were travelling at several MPH.
 

Thread Starter

Napoleon

Joined Dec 21, 2008
47
It won't work, because of what Ron_H alluded to; the frequency will not go all the way to zero. You might calibrate it to work at a couple of points, say 55MPH and 25MPH, but the response below that will be increasingly non-linear. For example, when you were completely stopped, your speedo may still indicate that you were travelling at several MPH.
Oh got it!
Thanks.

It sort of makes sense in my slow head.

How about using a micro controller ?
How difficult would that circuit be ?
How about the programming ?
Is that something that could be done fairly easily ?
 

SgtWookie

Joined Jul 17, 2007
22,230
You know, virtually ALL speedometers have SOME method of calibration.

It sure would be easier (and more reliable) to simply calibrate the speedometer itself, than try to kludge in some makeshift circuit.

It may be simply that water or other contamination has entered the speedo housing, and is causing a lower than normal resistance in a portion of the circuit. Careful cleaning the board with 91% isopropyl alcohol may simply make your problem go away.
 
Top