Show Posts
Pages: [1]
1  Using Arduino / General Electronics / Re: Force a sealed device to restart - Ideas? on: March 31, 2013, 11:41:25 am
Create a small EMP device.  Camera flash, coil of wire smiley-wink

Only if the seal is not metal. Faraday cage smiley
2  Using Arduino / Motors, Mechanics, and Power / Re: Can an arduino uno be used to control a large amount of motors? If so, how? on: March 31, 2013, 11:35:37 am
These recent post are about controlling lots of servos:

The Arduino Mega 2560 can handle up to 48 servos:,154561.0.html
That is a simple and easy solution. A few Arduino Mega for hundreds of servos.

Sweet! I only have a UNO R3, so I did not know MEGA has such a potential. Sorry for that. And I learned I can control up to 12 on my board smiley Thanks. I should read more >_>

If your project is not permanent, buying a few MEGA boards would be the best solution IMO, because after that you will have 3-5 boards to play with. Otherwise, tying something as complex as a MEGA just to control servos is... cruel. It is overkill. Idea itself makes me cringe.

If you are an adventurous type, you can try something like or better yet, you can build your own circuit with the IC used in that one: 10 of these ICs sell for €27 (cheaper than single MEGA) at farnell. Of course, these are just examples and you should search for better ICs and better prices. But this method can be significantly harder and frustrating. Although I would go this way, I think Erdin sorted this out for you until a better approach is posted smiley

3  Using Arduino / Motors, Mechanics, and Power / Re: Can an arduino uno be used to control a large amount of motors? If so, how? on: March 30, 2013, 10:44:04 pm
The arduino IDE already supplies a servo library for easy control of R/C type servos. Arduino can easily made to control just about any DC motor. What it can't do worth a snot is power such motors, so plan on using external DC power supplies to actually supply the DC current needs of the servo/motors you plan on using.


I'd suggest you get dedicated servo control chips/boards to control the servos and use the arduino to send the appropriate commands to the servo controllers.

Totally agree. But you should consider some other issues too. Since I am not an expert of any kind, I can only provide you with some pointers:

First, the number of maximum motors (150) makes you to consider addressing issues. For example, the controller has 8 outputs, but it can be daisy-chained to control 128 servos. I am not sure, but you -may- be able to utilize more than 1 serial lines (via bit-banging, which is also a hassle). Also any I2C controller is susceptible to address conflicts, since any I2C device can be assigned quite a few selectable addresses. I don't know addressing issues with SPI or any other serial interface.

Second, timing issues. You obviously can't control those servos simultaneously, and the serial bus you use will introduce latency. The questions are: How much latency are we talking about, and if that much latency is a concern for you. For example, consider the specifications in the chart Calculate
0,1 sec/60 degree ~= 0,0017 sec/degree
and dividing this by 150, we get
~0,00001 sec/deg
that is about 11usec/degree. This (11usec) is the amount of time your arduino can take to send data (which is a multibit signal) to servos, assuming you are sending data to each of them, and assuming each of them has to move 1 degree. Bigger anglular increments, more time, less problem. Translating this number to actual time needed for, say 16 bits including overhead, it already exceeds I2C specification. Of course, these are datasheet values being manipulated by some arbitrary guy on the internet. Do your own calculations, and please correct me if I am wrong.

Finally, while your arduino controls the servos, it may (depending on your application) lack computing power. Amount depends on your application, and you should consider this too.

I hope these may be of any use to you.

Pages: [1]