9-Bit Absolute Singletrack Gray Code Rotary Encoder by atzensepp 3d model
3dmdb logo
Thingiverse
9-Bit Absolute Singletrack Gray Code Rotary Encoder by atzensepp

9-Bit Absolute Singletrack Gray Code Rotary Encoder by atzensepp

by Thingiverse
Last crawled date: 3 years, 4 months ago
Rotary Encoder for absolute angle measurement based on a 9-Bit Single Track Graycode (STGC) [1]. I used the pattern from [2]. The resolution is 1 Degree. In a Single track gray code encoder all sensor elements can sit at the same radius. The cylindircal encoder geometry allows a flat design in contrary to the more common disk-based encoders.
The device is modular. Sensor blocks can be exchanged if one wants to change the slit widths or a print went wrong. Instead of a 3d printed encoder cylinder another idea is to use a laserprinted encoder pattern on transparent foil and wrap it around the upper disk.
My expectation is that due to the higher resolution of the laserprinter higher angular resolutions with more sensors could be achieved.
The structural elements of this device consist of
A lower disk with a pocket for a ball bearring, 9 holes for 3mm-LED, a grove for the encoder cylinder and pockets to host 9 sensor blocks. The sensor block has openings for mounting screws and smaller holes for electrical connections of the inner LEDs.
A upper disk wheel that is connected to the inner rotating part of the bearring.
The disk has a pocket at the top for installation of an axis adapter
An encoder cylinder that is mounted on the upper disk wheel
9 sensor blocks with openings for 3mm photo transistors and an optic slit
In order to build the device you need:
A 19mm ball bearring
3 x Worm screws to fix the ball bearring (not necessary)
9 x 3mm - LEDs with 1k resistors
9 x 3mm - Phototransostors (E.g. SFH309 ) with 47k resistors
1 x 3 mm Screw (you can use other diameters but the hole in the upper disk must be widened)
1 x 3 mm counter nut for the screw
2 x Washers
For Readout and Angle-Decoding a Microcontroller (e.g. Arduino)
Hints for building:
print the sensor blocks with the slits on the print bed. Print each block separate.
(Attempts with my 3D printer to print multiples at once led to obstructed slits)
The centering of the wheel with the encoder is important
(I had no success with prints with an axis fitting the inner of the bearring)
One Washer under the bearring another one above
Grinding might be necessary if parts contact each other.
[1] STGC - Single Track Gray Codes: https://en.wikipedia.org/wiki/Gray_code#STGC
[2] Gary Williams: 9-Bit Graycode at:https://www.experts-exchange.com/questions/23594359/'single-track-gray-code'-sought-for-encoding-360-degrees-with-9-sensors.html

Tags