Development board for processing IO?

I am Interested in finding a development board that would be well suited for I/O programming. I looked at several boards like the Raspberry PI and others, but they all seem to talk highly of their Bluetooth and web capabilities along with home automation. Those things I don't really care about so much.

I am more interested in machine automation/robotics. A board that is good to run real-time commands to servos from encoder inputs and such. I thought perhaps the Arduino Mega would be a good candidate for this sort of thing, but I am not sure. I understand that Arduino is highly supported by a myriad of shields which would probably guarantee me something I can cobble together for my needs.

Any ideas on this?

What are your doubts?

I am not sure if the Arduino Mega is able to support multiple servos and handle commands to each of them simultaneously without buffering. I see people all the time running little stepper motors and even big ones with amplifiers pushing the current. But, If multiple servos are needed, then I am not sure if the Mega can handle that. Encoders would need to be wired in and a closed-loop feedback system established. I am not sure having the Mega handle the error correction on the fly for several servos is even something it can handle.

jake2465:
I am not sure if the Arduino Mega is able to support multiple servos and handle commands to each of them simultaneously without buffering. I see people all the time running little stepper motors and even big ones with amplifiers pushing the current. But, If multiple servos are needed, then I am not sure if the Mega can handle that. Encoders would need to be wired in and a closed-loop feedback system established. I am not sure having the Mega handle the error correction on the fly for several servos is even something it can handle.

it can. maybe not everything is fast enough over convenient Arduino functions, but it is possible if needed to use direct MCU peripheral control in Arduino sketch

A Mega can control 48 servos (Servo library). It can also read many encoders (depending on speed).

A Mega cannot power the servos. You will need an external supply capable of supplying the voltage and current requirements of the servos. A good rule of thumb is 1A per servo for the usual hobby servos.

Thanks for the information :).

I know that the usual way an industrial servo is powered is through its amplifier/drive. The control board is in charge of reading and interpreting the encoder pulses and in turn, sending out signals either an analog or digital signal to the amplifier so it can drive the servo. Something I would be very interested in learning about is the position integral derivative (PID) loop used for error correction. I do not believe the Arduino needs to worry about that particular thing because the PID loops are normally tuned at the amplifier.

I talk so much about that because I feel that the ideal way to go is with a closed-loop system that actually knows where its position is. couple that concept with a differential quadrature encoder and that could make for one sweet little setup. I have a CNC mill that runs all servos with those encoders and they are an order of magnitude better than steppers. Steppers have max torque at 0 RPM and start to drop off as RPM increases, whereas the servos can produce a much better RPM/torque graph. I digress.