I want to measure the position of something that movies along a single axis over a range of 150mm at a frequency of roughly 1kHz. You can imagine that it is the piston on a shock absorber. I could attach a small magnet to the moving element. I think it should be possible to position a magnetic sensor at one end of the range of motion and then capture the magnetic field as the item moves back and forth. The problem is that most magnetic sensor that I can find are hall-effect sensors that are designed to switch from 0 to 1 over a very short distance. What I need is a gradual change in voltage output over the range of motion so that I can estimated the piston position based on the sensor voltage over the 150mm of travel.
TMR sensors seem to be inherently better suited as they have a more linear response to magnetic field, but I can't seem to find a simple sensor. They are all configured as angle sensors (would these work for my application?) or proximity sensors.
If I can just get the raw response voltage and capture that with an adc on a microcontroller I think this would be fine.