I have an idea for a project, but I'm kind of in a haze about it. I have a scooter, which is limited to a certain top speed. What I'm aiming for is to increase the top speed a little (it's capable of a pretty high top speed with the limitation wire detached, but that is not my goal).
The limitation is done by a signal that is fed to the CDI unit from the rear wheel, where there is what I assume is a magnetic coil, that picks up the revolutions of the wheel when a small raise in the rear clutch flywheel passes the coil.
My first problem is that I don't know what kind of signal this generates. I'm guessing it's a PWM type of signal, but I've not been able to measure it using a multimeter, I guess it's too slow or lacks features. So I'm hoping someone could point me in the right direction as to how to read this signal...next step will then be the issue on how to emulate it in a slightly decreased voltage and/or duty cycle, but I hope to have learned enough about it to discover that myself when the time comes
blimpyway:
The wheel sensor may be either a reed switch or hall sensor like bicycle speedometers have.
If this is the case, the interface is quite simple - one of the wires coming from sensor will provide a single pulse every rotation of the wheel.
But I might be wrong since I'm just guessing here. I can't tell out of a computer terminal without a schematic of that scooter's circuitry.
Sounds like good kung-fu to try and find some schematics in any case. But I'm fairly sure it's not a reed switch, if so I believe I could have made my meter go "beep" when hand turning the wheel. Only reaction I can get is swiftly rising resistance when the engine starts to turn the wheel, no change in VAC or VDC.
EDIT: resistance is stable at around 36 ohms when the wheel is not turning, if that's any help.
So I'm hoping someone could point me in the right direction as to how to read this signal.
You really need an oscilloscope for this job.
There are two basic types of magnetic speed sensors used in this type of application Variable Reluctance and Hall Effect sensors. Do a Google search on these terms.
If you can't see any signal with the multimeter, you may have a variable reluctance sensor, and the voltage produced is a function of speed, and you will see very little when slowly turning the motor.
Can you measure a signal on the line when the motor is at speed?
A lot of golf carts use a wheel speed sensor to limit the speed. Google golf cart speed sensor mod and you will see some of the ways the speed sensors are defeated.
A lot of the golf carts use a hall sensor and a magnet, so you first need to determine what kind of sensor you are dealing with.
cattledog:
Can you measure a signal on the line when the motor is at speed?
No, There's no voltage of any kind, even when I rev the rear whel up...only change is that the meter has around 150(not 36 as I said at first) ohms at standstill, which changes very quickly into infinite(or beyond my meter at least) once the wheel starts turning.
New things have come to light! I went and took out the sensor for closer inspection. When I put my meter on it, it actually can make it go beep for continuity. It seems to trigger when a metal object is moving away from the magnet. What kind of coil would that make it then?
Now I have a cheap meter, that may not be fast enough for this application...I have counted the clutch flywheel to go about 13 revs pr turn of the rear wheel, which comes down to a target value of the sensor to cut of engine revs at about 6900 rpm, or hz.
detown:
A lot of golf carts use a wheel speed sensor to limit the speed. Google golf cart speed sensor mod and you will see some of the ways the speed sensors are defeated.
A lot of the golf carts use a hall sensor and a magnet, so you first need to determine what kind of sensor you are dealing with.
Well, after removing it and trying to get some data from it by hooking it up to the arduino more or less arbitrarily I'm not closer to determining it yet...perhaps a picture of it may help others recognizing it?
How many wires are coming out of the sensor? It is hard to determine by your picture.Where is this sensor measuring the speed and what is on it to trigger the sensor.
detown:
There are two wires, or one wire and ground, as bluejets wrote. It's measuring the rear wheel speed, reading the revolutions of the clutch bell which spins 13 times for each revolution of the wheel. Its a metal bell with a small rise, or bump that passes close to the pickup.
bluejets:
Yeah, after I found that it would beep I thought it might be a reed switch, but I have some doubts still. It only makes a short beep, and only when the metal is removed from it, it won't stay on if metal is left on it.
And furthermore, I haven't been able to read anything useful from it when set up into analogReadSerial, and a motor with a neodymium magnet on the rotor spinning nearby it. There is a rise in the input below the noise level that consists with the motor revs, but it seems to fluctuate in amplitude. Could that mean that I'm measuring it the wrong way, or do I need to clean the signal somehow...I was thinking maybe a Schmitt trigger? In any case I think I'll need to be able to read the signal precisely, to get some idea on how to modify it and feed it back into the CDI/ECU unit.
Is the sensor itself magnetic? I would almost guess that it is a VR sensor. This will output an ac voltage. What do you have your meter set on while reading the sensor? Needs to be on ac at the lowest voltage.
Also the amplitude of the signal is so small and quick that it will not register on a digital meter.
Sometime you need an old fashioned meter with a dial to pick them up, or a scope.
detown:
Is the sensor itself magnetic? I would almost guess that it is a VR sensor. This will output an ac voltage. What do you have your meter set on while reading the sensor? Needs to be on ac at the lowest voltage.
Also the amplitude of the signal is so small and quick that it will not register on a digital meter.
Sometime you need an old fashioned meter with a dial to pick them up, or a scope.
I'd agree, to be sure some heavier artillery is required to read it. My meter shows some vague and useless voltage shifts, even on the low settings. Assuming it's a VR sensor, what would be my best chance of picking up some useful stuff when hooked up to othe arduino? And should I try to hook it up while it's sitting in it's natural environment, that is on the moped and revving the engine?
And yes, the sensor is magnetic, not the rotating part.
allanhurst:
It sounds to me as if it is a simple coil wound rouns magnet - like a car ABS sensor.
In which case it will give a pulse every time the indent on the flywheel passes it. How much ?- a few tenths of a volt I guess.
An oscilloscope would confirm my guesses..
Can you read this directly with an arduino ? .. perhaps..
The flywheel, you say, turns 13x faster than the wheel - perhaps 14" diameter?
so 30mph would be 44 fps ,or 14/12 X pi or 12 revs/ second, so there woould be 13x12 => 156 pulses /second...
The arduino a/d input can sample at up to 10,000 times / second, so if you monitored the signal looking for peaks and timing them it could be done
regards
Allan.
Well, pretty close. It's a 12" wheel, and the vehicle is set to limit the engine revs when it hits 30 km/h. I made it to be 0,94 meter circumference going at 30 km/h, that would make for 115-116 pulses/second. I guess I'll try and put back the sensor and rev the engine until cutoff while trying to pick up something on the arduino. I could use A0 and the basic code AnalogReadSerial for that right?
If that yields anything, here's my next question...will I then be able to, codewise, intercept the signal, modify it by for example dampening the timing by 10-15 % and then feed it back to the ECU using one of the PWM out pins? I'd say that could do what I'm aiming for.