Originally Posted by
Jebarus
A 2000kv motor will spin at about 230Hz with no load. 1k might be a bit low, but it might just do it. The wire that goes from the ESC to the motor usually has 6 wires. What kind of encoding is used?
I guess that timing is implemented using interrupts in the ESC microcontroller. Instead of fast analog sampling, the microcontroller monitors a digital pin. There is a comparator in the microcontroller, and as soon as the comparator is activated (either by a up, down, or up or down signal), a piece of code is executed.
1 kHz sampling would capture all of the transitions on a sensor output from a 17.5T car motor (which runs at about 300 Hz), but the resolution would be insufficient; 30 kHz would give 1% resolution in the measured period.
Here's a diagram of the sensor outputs and motor drive:
A comparator isn't needed, since the Hall sensor outputs have digital levels.
I have tapped into one of the sensor signals with a 100K-ish series resistor to reduce loading and attenuate the signal going into the microphone input of my laptop, which is what the SimpleDyno freeware program uses for speed sensing. The mic input can be sampled at 44.1 kHz, so the resolution is pretty good.