1 It is not that you must input 12 volt there. You can supply a bit less. It is just about the maximum limit where the voltage regulator does not succumb to thermal issues. With linear regulators the voltage difference, above the output voltage (like 5 volt) will be burned away as heat. The more current that passes through it, the more heat it has to transfer to the surrounding air. Therefore heatsinks are usually attached. But in the simple Arduino boards this is often not done. (cheaper, less weight, less bulky, microcontrollers are usually not so current hungry to need them) So, the less surplus voltage that you input, the less heat it generates. (current times voltage difference= watts) Also, some powersupplies are of the unregulated sort. As you draw more current out of them(like with motors, magnetic coils or high power leds or heating elements), the voltage they output can drop a few volts. Or even collaps completely when shorted. Once this goes below 8 volt (atleast your basic 7805 linear voltage regulator) the 5 volt output cannot be maintained. So you want some surplus voltage to allow for this. But also simply because not all powersupplies are created equally. Some are 8 volt, others 10 volt, even others 12 volt. You do not want to force your customers to one single type of powersupplies, as it limits how many buys your products. Or the amount of support requests you will have to handle as their supply might not make it work. Basically, you have some freedom in what you can attach.
2: You can power a motor directly from the battery, as wel as power the Arduino 12 volt input from it. Then the Arduino board and the motor is connected in parallel. As you no doubt-ably want to control the motor, you need some kind of electrical switch too in the circuit (relais, transistor, mosfets, or a group of 4 of them in a H-bridge topology). How exactly you want to do this depends on how you want the motor to function in your application. Does it need to change direction , rpm or torque?
[EDIT] Motors can cause quite some disturbances to the power-supply voltage and other attached circuits, due to their relative large current consumption. Generally the voltage regulator in the board is enough to filter out the noise on the output supply voltage. But sometimes when the other sensitive circuits need a really steady and quiet voltage supply level, a separate power-supply is used. As it is not easy to filter out such supply noises adequately.
yes – i’ll power the dc motor through the uno but need 9V input to the breadboard – see “motorized pinwheel” (project 09 in arduino projects book – aka – beginner’s cookbook) – right now i power uno through my pc and dc motor through 9V battery – what a mess
codelink – thanks – i understand the diagram – what i’m trying to do is replace the batteries with a 9VDC Wall Adapter power supply – and also use the same power supply for the uno – kinda like a mini power strip – now I only have to find the parts that will make this happen
Since I don’t know what’s inside the Arduino Cookbook I had to search around. I did find a video about the motorized pinwheel chapter, but it is shown as chapter 6. I suspect you made a typing error. If so, no worries. Easy mistake to make.
Now, as the nice gentleman says. You cannot control the motor directly from the Arduino pins (D# or A#). They source not enough current, and if they did get the motor running, turning it of again could create a voltage spike burning the Arduino pin. So you need an electrical switch with a bipolar transistor, or a mosfet as in the circuit of this video.
As for powering it with a common battery that also powers the arduino. Yes this is possible, IF !!! you connect the red wire of the motor (which should also have a protection diode across it, suppressing the turn-off voltage spike) to the Vin (or on some boards called RAW) pin of the connector rail of the Arduino. This is also connected to the powerplug jack. But switchin on and of the motor will cause small disturbances to the power input of the voltage regulator of the Arduino. And so also some on the output of the regulator going into the Arduino microprocessor. If you also want to do analog voltage measuring with it, this may cause problems getting correct values.