control of multiple Arduinos

Arduinos are mini-systems in themselves but I have not yet seen the issue of multiple controllers addressed. In a large scale system, multiple units may be needed to acquire data from several dozen sources and send control signals to several dozen servos.

This brings up the issue of how to deal with Arduinos in tandem, or parallel. Is serial daisy-chaining possible? Another way of asking the question is: can inputs and outputs be passed to other Arduinos, or perhaps, using the Arduino as a multiplexer.

Would a software program be a more efficient choice for orchestrating the many simultaneous inputs and outputs.

Is there a master controller suitable for use with the Arduino series?

In my specific case, I'm collecting data several times each second and sending control signals at approximately the same rate.

The issue I'm trying to resolve is how to use the Arduinos in a large scale data acquisition system in a cost effective and efficient way.

Depending on exactly how many several dozen is, a Mega may come close to having enough I/O for your purposes. You can further extend this using shift registers.

If it turns out that you need more processing power, you can extend your system by adding additional arduinos and communicate between them using the serial ports - the Mega will help here again as it has four.

There's no built in capability to do this though - you will need to write the software to control and communicate with each arduino.

Do you want to build a network between Arduinos? Is it wireless?

I did some developments in vehicle system. Currently two common communication protocols exist in vehicle (deal with communication between multiple ECUs).

  1. LIN protocol. This is a master-slave system that only a center node controls all the communication between nodes.

  2. CAN protocol. All nodes are equal and communication is arbitrated by their IDs.

Depends on your environment, I recommned you to use existing communication protocol, such as ZigBee, CAN, SPI etc. Using existing protocol would be easy for you to extend your network. Notice that you may need shields to enhance the ability of your arduinos.