Do you want to build a Magnetostrictive Position Sensor as described in: https://de.wikipedia.org/wiki/Magnetostriktiver_Wegaufnehmer
Working principle
In short: A current pulse will initiate a torsion wave along a magnetostrictive wire at the position of a moving cursor magnet. The travelling torsion wave generates a signal in a receiver coil. From the time between current pulse and the signal pulse the position of the magnet (the distance between receiver coil and magnet) can be determined.
Resources
On Thingiverse is a set of parts to build a Magnetostrictive Position Sensor. With this sensor you can measure the position of a magnet sliding along a PVC tube surrounding a magnetostrictive Nickel wire. You can use it to build a linear servo with a DC motor. The sensor is scalable as working range depends on the length.
The proposed 3D fittins are compatible with fischertechnik construction system. It consists of following parts:
- Magnet Holder for Ring magnet
- End clamps (you need 4 pieces)
- Coil body
- Connector block for coil
- Wire guide (print it upright with 0.1mm resolution, supports from build plate and large brim)
- Coil holder block for Fsichertechnik (part that can be used to mount coild to the Fischertechnik system if no tube is used)
To build this sensor followng additional parts and components are needed:
- Nickel or NiFe wire (for heating applications) , Diameter: 0.8mm, Length: 60cm (for a 50cm sensor, but longer wires should be possible)
- Nd Ring Magnet: Outer diameter: 12 mm, inner diameter, 8.5 mm, height: 4mm (I used: fix-o-moll Neodym Magnete Ringe 12mm silber )
- PVC housing tube, Outer diameter: 7mm, Inner diameter: 5mm, Length 50cm (You can chose your desired length; It might be possible to use Aluminium tubes)
- 12 x M3-Screws with sink head:, Length 10-15mm
- Power Supply for excitation puilse: 10-20V
- Separate Power Supply for analog electronics: 5-10V (Deriving Voltage from excitation power supply with an additional regulator should be possible)
- Cu-Wire: 0.1-0.3 mm, for 800 Windings
- Exciter-Circuit with a good Power-Mosfet (*)
- Analog Circuit (*)
- Gate Circuit
- Selector-Circuit
- Arduino Uno (*)
- Arduino Software
*: The princible and the sensor electronics is described in ft-pedia 2024/4: https://ftcommunity.de/ftpedia/2024/2024-4/ftpedia-2024-4.pdf
FreeCAD-File to adjust the fittings and an experimental Arduino-Sketch are included
Receiver Coil
Wind 700-800 Windings of Cu-Wire onto the Coil holder. Snap and glue the Connector block onto the coil body. Place 2 blank solid wires (diameter 0.4-0.5mm) through the connector holes and solder the Coil wire onto it. The solid wires will make a clamp connection to the 2.5mm mini-banana plugs. It is e a good idea to secure the tiny wire with hot glue.
In the Coil holder is a bore in which you can cut a M3 thread for a worm screw to fixate Coil holder on the PVC tube.
End clamping blocks
The end blocks clamp the Nickel wire and the PVC rod. 4 clamping blocks are needed: 2 Lower and 2 Upper blocks. Cut M3 threads for the 2 Lower Blocks and drill l 3mm holes in the other 2 Upper blocks.
Nickel-Wire Installation
Straighten the Nickel wire as good as possible. The wire should not have contact with the interior of the PVC tube. The Nickel wire has to be fed through the PVC tube and will be clamped in the End blocks. The End blocks will not clamp the wire directly. There is deliberately a gap to put some material in between to achieve different effects:
For damping connection: (receiver coil side) Clamp Nickel wire by surrounding with paper tissue (e.g. toilet paper) or wrap a thin rubber band around the wire and clamp it between upper and lower part of the end blocks. Before mounting place a drop of hot glue at the wire just after the clamp. The glue drop should slide into the PVC tube.
Note: if you provide damping connections at both ends you will get a pretty good single or doublet signal. The first peak will give you the position. Bud you...
Read more »