hi i'm creating a project with arduino for which i need four motors, each one of these can withstand a maximum of 6 volts according to the manufacturer ,the arduino board, however, does not give off enough power to make them all work , so what should I do?
I read on a forum that using batteries in series you can also use 20 volts but it seems strange, so I can use this method or not?
Generally, when controlling motors from an Arduino, there is a motor controller board/shield involved. There is an official [Arduino Motor Shield Rev3 — Arduino Official Store](https://Arduino Motor Shield) which can drive 2 DC motors.
I had a quick look, and Adafruit have a shield that can drive 4 DC motors.
If you have motors you will need a motor driver chip or transistor/MOSFET - the motors will not share supply with the logic (5V in this case I presume).
So the motor voltage is independent of the logic supply voltage. The driver provides the control of the power to the motor from inputs that are logic signals (often via PWM).
The 20V thing is probably the maximum input voltage of a regulator - but as you have given no details as to which Arduino boards you are talking about, this is a blind guess. Details always matter in electronics, so please identify things precisely.
I'm using the arduino board uno r3 and i have 2 npn transistors if they can be useful
So identify the transistors and motors precisely please
I have an stepper motor driver module but I don't think it's the right one
the full name of the transistors is : npn transistor PN2222, on the transistor it says 2n2222a-1726.
the engines are these: https://www.amazon.it/Angeek-motori-giocattoli-Arduino-modello/dp/B07VCMZCCY/ref=sr_1_8?__mk_it_IT=ÅMÅŽÕÑ&dchild=1&keywords=motori+arduino&qid=1628853387&sr=8-8
Well the 2N2222 can handle 0.6A if driven with 30mA, which should be enough for tiny motors like yours (just).
Use 120 or 150 ohm base resistors from the Arduino pin to the transistor - don't forget free-wheeling diodes, these are never optional with inductive loads.
Look at the circuit here: https://learn.adafruit.com/adafruit-arduino-lesson-13-dc-motors/transistors
But use 120 or 150 ohm resistor, not 270 ohms.
ok i'll try Thank you very much
And don't forget the motor supply (presumably around 6V) should be separate from the Arduino 5V supply - don't mix logic and noisy inductive loads on the same supply. The motor supply should be able to handle the current from 3 motors (ie 1.8A or more would be good).
ok, how can I have 1.8 A?
Which is significantly outside the operating limits of the Atmega328P that lines on the Uno R3. So that's a non-starter. A more sensible approach of course is to use MOSFETs instead of NPN's.
Use a logic level MOSFET instead of an NPN transistor. It's the most straightforward solution.
Btw, I'm confused. You want 1.8A, but your motors are specified at 200mA constant current when running. 3 motors would be 600mA total. Stall current may be significantly higher, of course.
- Tensione nominale: 3-6 V CC.
- Corrente nominale: 0,2 A.
...
Corrente di riferimento: 0,35-0,4 A
I wonder what the difference between "nominal" and "reference" current is here? I would not expect the seller to be able to explain! Neither figure is the stall current, I think.
The stall current is what the motor will draw for a moment when it starts up from zero, and also the current that will be drawn if the motor is jammed and cannot turn. You need to use a driver and batteries that can withstand that current without being damaged. I would guess this will be around 1A for these small motors.
So your 2n2222 is not really suitable. A MOSFET such as stp16nf08l or similar would be better. But this will only allow control of the motor's speed, not direction. If you are building a vehicle, you will need to control speed and direction of each motor. This is why a motor driver module is a good idea.
No it's not.
The 20mA is the current draw at which the voltage outputs, and other things are measured. The absolute current limit is 40mA so 30mA is perfectly acceptable. I know that running at 40mA for periods is not recommended, but 30mA is fine.
You're right, I thought the maximum rating was 20mA per pin, not 40mA. So it would work, although I never really like sourcing significant current from a uC pin.
It depends a lot on the processor, but the ATmega range of processors is as tough as old boots.
And a lot tougher than the boots we now get from China!
Keep in mind that by the time you get 30 mA from a 5 V (classic) Arduino, the voltage has dropped to 4 V or less.
You can connect the Arduino to 500 Megavolts. Just don't try connecting the ground.
Well that's provably not true, the 328 has an abs maximum pin current of 40mA, if you look at the datasheet, which is why I suggested a smaller value (yet large enough to drive the 2222 enough for a small motor).
If you read back, you see I was already corrected on this.
I would still prefer (and hence recommend) not to draw significant current from a uC pin unless there's a compelling reason to do so. But that's more a matter of preference than of necessity, I admit.