I have a Lynxmotion hexapod which uses hobby servos for each of its 18 degrees of freedom (DOF).
The basic problem with this is that I cannot get data on the joint angles. I have modified the servos so that I can measure their orientation via the signal from the pot. For each DOF I want to read in the orientation of the servo via ADC and use a PID controller to generate the appropriate PWM signal. This works simply enough with an Arduino for one servo.
Unfortunately I have not found any microcontrollers with 18 10 bit (or higher) timers capable of generating PWM and 18 ADC. As such I am exploring the idea of using an FPGA. Specifically I'm considering the Papilio Pro FPGA. In reading about it I see that it has around 500,000 logic elements. While I'm new to FPGA I'm guessing this is the most crucial metric for my needs (if I'm wrong, please feel free to correct me).
The question in my mind is, how many logic elements do I need for my application? Are there any good rules of thumb for such calculations?

I have looked at the OpenServo project. In fact I have a SparkFun OpenServo. Unfortunately it doesn't fit into the servos and I can't find size specs for the v3.
– DaemonMaker Jul 08 '13 at 15:20