Started 25th March 2017
I wanted to discover how linear the movement of my 3D printer was, I had a mechanical dial gauge (or indicator) but I couldn't be bothered to start writing down values - instead I bought a digital dial gauge. These are common and low cost, they appear to use the same capacitive sensor hardware and software interface that digital calipers (aka scales) use.
My aim was to get software to record the printer position. The dial gauge has a socket for a digital interface, but it uses a proprietary connector. Interfacing to the hardware is simple and is well covered by the links below.
My innovation is to use an ATMega 328p with no other hardware. The clock and data signals from the dial gauge go to two analogue pins, the built in analogue comparator is used to look at the two pins in turn, the other comparator input comes from the on chip voltage reference. This is 1.1 V and a good enough value to find transitions on the dial gauge signal lines.
The page 3D Printer Motion Accuracy contains example data from this type of dial gauge - the accuracy of the particular digital dial gauge I have turns out to be poor. Resolution may be 0.01 mm, but accuracy is of the order of 0.2 mm.
Photos. The moving pcb is about 33 mm long (it contains 64 tracks - around 3 tracks per mm), the static one 20 mm .
For comparison, photos of a cheap digital caliper. The claimed resolution is 0.1 mm, and on the pcb there are around 16 tracks in 10 mm.
- First project - a dial indicator reader
- Using the Data (Part 1) A project log for Digital Dial Indicator CNC Surface Probe
- Interfacing Dial Indicator to Computer (using PIC Chip)
- The Digital Dial Indicator and How to Read From It
- Reading digital calipers with an Arduino
- Chinese Scales