Hej Angel Vilaseca. Tack fšr ditt meddelande 23:12 1999-09-30 +0200 enligt nedan: >Hi, > >I want to display an angular position in degrees, from 0 to 360, with a >.1 degree precision, using a synchro. > >Now, considering that there is some redundancy in the three synchro >outputs, >If I digitize each of the three synchro outputs with a 4-bit ADC and >feed the 3 x 4 lines into an EPROM with a suitable table, can I expect >to have a 12-bit precision at the output of the EPROM? No way! >Or should all three outputs have at least an 8-bit ADC, >Or are three 12-bit ADCs a necessity? More like it. I think the simplest solution is: (if the "synchro" is a three phase sine output device) 1) read all phases and select the one which is closest to zero crossing; that phase will have the highest resolutio of angle per volt 2) Take the absolute value of that phase to point to a 0-60¡ output table 3) if phase input was negative; negate the table output (now the result is in the range -60 to +60 ¡) 4) depending on what phase we selected in 1), add 0, 120, or -120 ¡, that will give us a range of -180 to +180 ¡ A more thorough solution would be to read all three angles, maybe based on the idea above, convert to X and Y rect values, add them all, then convert back to one polar. This will enhance resulution, reduce error in the syncro, and we will have no glitch as the solution above when changing what pase to decode, as we always calculate all phases. Also, we might improve it by weighing the phases according to errr deviaiton probability; a phase voltage that is high has unreliable X value, but reliable Y value. Another idea is to use a 2-phase incremental encoder (discussed in a parrallel thread), but then you need a sync signal too, which is not reliable if ypu have an application that does not turn enough to get to sync posiiton. Is this a compass, btw? Regards /Morgan Morgans Reglerteknik, HŠllekŒs, 277 35 KIVIK, SWEDEN tel +46(0)414-446620, fax -70331, mrt@iname.com