Hello fellow fiddlers.
Let me start by saying I don't know what to call what I want I think it may use gyros magnetometer accelerometers or any combination of the three. What I want to be able to achieve is to put my project on the work top and press a button so that the LCD shows zero degrees. I then want to put the project in my pocket and drive around the block then put it back on the work top and the LCD screen displays the angular difference in the projects placement. I'm only interested in the rotation of the project I don't care if it's further to the right or the left or higher/ lower just the angular displacement. A magnetic compass would show me what I need to know but I need it as data and to 10th of a degree and not effected by lumps of metal nearby. Could anyone tell me what I'm talking about or better still an Idea how I could achieve it with a good level of repeatability/reliability?
I was worried that may indeed be the case. A Solid state compasss with tilt compensation could achieve degree resolution (so the blurb states) but I would need 10th of a degree and ideally minutes (ie 1/60 degrees). Back to the drawign board then .
If you're outdoors and moving relatively quickly, then a GPS unit can give you tenths of a degree heading.
If you're indoors in a controlled environment, you could place infrared LED "beacons" that would help your device orient itself to its environment within a tenth of a degree.
The IR beacons would be difficult but not impossible. They would have to be pretty far away for accuracy. 1/10 degree at 10 meters is only 1 cm if my math is right. You need at least two, preferably three or four in a known pattern.
You'd need a high resolution CCD image device to capture and then analyze the image.
Perhaps not something the 'duino could do in real time....
If you wanted the 'duino to do it, you might have to create some kind of rotary scanner with a precision servomotor. If you had three beacons in your room at 0°, 90° and 180°, then you do could a 360° scan and figure out your position in relation to the beacons. Again, some floating point math unless you can assume you're in the center of the beacons.
Beacons would work using time domain or phasing but my environment will be different every time I use it. Thus someone may actually be standing in front of a beacon when I go to use it. Radio frequency beacons may be better in this respect but even then could suffer from bounce as something got in the path. A 1 mm dot at 2m will still give a bigger error than 1/60 th degrees (a minute).
With IR becons, I doubt that the gizmo could be put in a pocket. That being said, optics allows for some precise measurment, or at least detection of small changes, that would be difficult with totally mechanical devices. A razor slit in the side of an instrumented cake tin might get sub degree detection. My test with a standard hobby servo indicate the servo is capable of repeatable .5 deg step movement.
Light can be used to get far greater accuracy that I'm after but I'm agreeing with you Mr Grumpy it would be unworkable in my project due to a whole host of reasons but given Lab conditions and the right kit light could do the job.
If a laser beam could be guaranteed to be un obstructed then by using a stepper motor and an optical sensor 1.8 degrees would be easy and using micro stepping at .18 should also be possible going much more than that ie 0.0166 of a degree would start to be problematic. Many steppers will micro steep more than 100 micro steps per step but would possibly run in to problems with stickshun and this coupled with the normal open loop control could give rise to unknown errors. As mentioned above if you had a 1mm spot size from a lazer 2 meters away then this alone could give you greater error in degrees from one side of the spot to the other than I require. This can be programmed out by finding the start of the spot then continuing to rotate to find the other side then dividing by 2 to get the centre and possibly assisted by making the radius of the detecting device larger. I know even less about precision servos so couldn't comment on if these could achieve 0.016 degrees resolution or even a moving coil controlled mirror.