Would it be possible?Has anyone tried it yet?Apparently,regular sensor IC's in cheap optical mice boost enough resolution for using in a homemade CNC design which suffers from backlash or nonlinearity of leadscrew thread.Adding a simple microcontroller electronic interface for processing the data would adapt it to any design needs.
If anyone has tried it,or knows any important drawback in using them I would appreciate your feedback.
I thnk its been discussed before in some depth, if not here on another CNC site. You might want to Google it.
At any rate, it is pretty much a non-runner, though I don't remember precisely why. I do know there were a few good reasons it didn't work well.
What about those Agilent/HP made HEDS encoders? I see them all the time on Ebay for nothing. I keep buying new steppers for like 15 bucks with them already installed on top, and I see them new by themselves for 5-15 bucks all the time. I just can't see building anything cheaper than that. Even new retail they are only like 35-50 bucks I think.
I especially love the idea of using old HDD's and VCR's for the bearing/shaft assembly - genius
Though I cannot think of where to get any old VCR's, its been years since I have seen a working one... dead HDD's appear all the time, and thinking about it, a CDROM may have something useful inside as well...now where did I leave my hammer !
Thx 2 everyone for the replies.I've studied the links but unfortunately I can't find anything practical about using the sensor IC of an optical mouse ( not the rotary encoders of ball mice).In the meantine I found something else that would be perfect for my needs...some old HP inkjet printers 660C,690C which seem to use optical encoders.There's a pretty nice scale in there (about 6 lines / mm ~30cm long) and of course the reader.Anyone tried them ?
I have been watching the various diy mouse projects.
This morning I played with it out of curiosity
I am using the kiss principle.
1) Plug an old serial mouse into com1 of newer XP pc
2) Write a simple VB form to monitor the comm port. Display the mouse activity to a text box.
I run my cnc thru lpt port, and use a ps2 mouse. If I don't want to add more hardware, there are more 2 more options. Comm port or USB port. As I still have a few serial mice around, it seemed easier to plug that in. Also, XP wants to recognize the USB mouse, while ignoring the serial mouse (as long as it is not plugged in at boot). I picked the serial mouse to avoid getting forced to use a specific Windows mouse driver. (any mouse should work)
My thinking is that I can monitor the tracking accuracy thru the serial port, via DRO. Once the details are worked out for accurate, current position... Then use VB to send the data, as my encoder feedback for the CNC. This would give me an independent DRO and/or a closed loop stepper system.
No problem monitoring the mouse feedback. I don't have a clue how to decode it though. I am able to isolate the button feedback, but not the XY data. It's there, I just don't have enough VB experience (yet) to make sense of it.
Not too sure what you are after, do you want a linear scale or rotary ?
That strip off the printer will be a linear encoder, the sensor will still read quadrature from it to calculate the print head's position, this coupled with the little DC motor forms a servo system with linear encoder instead of rotary.
I'm not too sure about using an optical mouse pickup, I have thought of this but I can't see how to get it accurate, or even how to use it, I believe they are basically a 16*16 pixel CCD element, I have heard of people using them as basic camera sensors, but for positioning...dunno
I see the appeal of using an old serial mouse for a 2 axis encoder.
No other electronics are required to safely plug into any computer.
Most have 200 counts per revolution.
Using a ¼" gear (6 teeth) on the wheel shaft, mated to a 1" gear (48 teeth) yields .0005 inches per linear inch return. This ratio is at the design ratio of serial mouse electronic response speeds. (printer cannabilizing for gears!)
For most DIY routers...
Rapid/feed will never out run the mouse tracking ability (inches per second)
More accuracy than the frame work flex/tolerances can hold.
Could easily be upgraded to any 5v logic Quad encoder.
the problem a guy can face with this type of setup is dust ,
everything needs to be kept very clean which means everything needs to be sealed fairly tightly , also from what i have gathered in reading up on using mice is that they are prone to inaccuracy
@ epineh: Maybe I haven't given enough details.What I needed and I think would help a lot of DIY CNC people was a cheap way to feedback a "not so accurate" mechanical 3 axis table using stepper motors and leadscrews.Main problems would be the backlash of the screws and the non-linearity of the thread.So I thought that linear encoder feedback would be a neat way to solve these.Unfortunately commercial encoders are not quite cheap,so I had to go for the DIY.My 1st thought was using a sensor IC of an optical mouse which would move with the table,but close to a static surface (~2.3 mm) like the frame of the machine.It could be very accurate(at least 400 DPI) in a dust-free environment but that's not quite the case...so I guess it wouldn't work as expected.Still curious if someone obtained resonable results.As I wrote earlier,meantime I found the complete solution in old HP Inkjet printers but still haven't tested it.
As long as everyone understands we are not talking about industrial applications here...
I think most of the mouse conversion failures have been due to trying to make the mouse do something it wasn't designed to handle. To put it another way, they took the mouse out of the "box". The theory of "mouse" operation hasn't changed. Detection methods have improved, but XY is still XY.
That being true, the mouse is by design going to provide a stream of XY data, and provide click data (limit switches!). By only using the mouse in the speed ranges it is designed to operate in, it should be dependable. If air is controlled by filtering an incoming fan (thus providing positive atomspheric pressure), then dirt/dust should not be an issue.
If he actual position detection is based from the carriage (not the screw), then you eliminate nut backlash readings. This is convenient as it is also an intersection of 2 axis.
And as far as accuarcy, if you reverse the gears (1" on Screw, ¼" on Mouse).
Using ¼/20 thread screw, thats 20 rpi
Mouse is 200 cpr
Screw turns 4 times for one Mouse turn
Thats .2" outputing 200 counts, or a resolution of .001
The Mouse rpm is at ¼" the Screw rpm