The aduino is one of the most popular microcontrollers, and has been used in almost any imaginable scenario.  Its one of the easiest ways to make software with physical interactions.  It has done to microcontrollers what 3D printers did to mechanical manufacturing, and is, in fact, commonly used to control such printers.  But what about makers/instructablers who need part that can't be made on a printer, or made of unprintable materials?  This is where mills hold the high seat, but mills are expensive, and unless they're CNC, counting revolutions and converting units to make accurate parts can be a pain, and commercial DRO systems cost hundreds of dollars.  Enter Ardudro, a simple and cheap system that allows for easy milling with high accuracy and repeatibility.     

Step 1: What Is Ardudro?

The ardudro, or ARDUino Digital ReadOut is a simple system which displays the exact position of a mill, and will soon be able to do basic milling functions (such as pockets, profiles, circles, position drilling, etc), all while using parts you probably already have, or that can be bought at a certain "telecommunications hut".  All you need is:
Small TV: any kind, any size you want, must have an NTSC/PAL input, or the little yellow plug for video.  This is what will display everything, so match the size to your mill.  Most thrift stores will have an old portable TV at some time or another, I got mine for about $5.   
Arduino: any flavor with an atmega328, 32u4, or more powerful.  I used an UNO.
1k ohm resistor: any wattage
330-470 ohm resistor: also any wattage
two momentary switches/buttons: optional, but used for zeroing X and Y axes. 
RCA jack: one of those yellow-red-white plugs for a TV, or a willingness to solder directly to the TVs rca jack. 
rotary encoder: this is probably the only part you dont already have.  These are avaliable at almost all electronics stores/sites except radioshack.  A 32 cycle encoder is avaliable here: http://www.sciplus.com/p/QUESTEK-POSITIONSENSING-ENCODER_50792
this determines the accuracy of the readout.  Divide one by the revolutions per inch on your mill axes times four times the number of encoder cycles per revolution.  This is the distance of each "step", which is the increment (and therefore accuracy) of the readout.  In my case, it was 1/(20*4*32)=1/2560=0.000390625.  This will give me about 1/1000 accuracy, which should be more than accurate enough for anyone who would use this instead of a commercial DRO system. 

Something to connect your encoders to the mill's axes: I used rubber stopper that I cut a slot in.  
<p>thanks dude I have been wanting a DRO thing for long now never knew rotary encoder will work for dro thanks a lot </p>
<p>Built this, and after some head scratching, got it working. Did not have the decimal point in the X and Y values.... small detail. Having a slow roll down on the LCD screen haven't solved and it seems only good to 9.999 inches plus or minus. I really need the 10's digit on both my mill and lathe. Sadly I am not versed in programming the Arduino, Copy and Paste guy here. </p>

About This Instructable




Bio: Currently a student at Iowa State University in Electrical Engineering. I'm participating in several clubs, helping with research, and working, so I probably won ... More »
More by jduffy54:One Night Battery Monitor For Wireless Headphones Attiny Chronograph $4.5 better stepper driver 
Add instructable to: