HELP! UNO REV3 + Motor Shield REV3: Brushed 12VDC Motor

I am trying to use an Arduino Uno REV3 & Motor ShieldREV3 to control a brushed 12V DC motor. If possible, I would like for the motor to operate on two separate loops that could be toggled between by using a 3-way ON-OFF-ONswitch. We will call the two ON poles on the switch "Pole A" and "Pole B" for reference:

When switched to Pole A, I want the motor to:

RUN 1.6 seconds bc CW | STOP 0.5 seconds | RUN 1.6 seconds CCW | STOP0.5 seconds

Repeat this sequence 3 times at 100% operatingcapacity

STOP 6 seconds

Repeat this loop perpetually

When switched to Pole B, I want the motor to:

RUN 4 seconds CW | STOP 2 seconds | RUN 4 seconds CCW | STOP 2 seconds

Repeat this loop perpetually at 75% operating capacity

I am told that this can be accomplished and can be handled by a single program on the Uno by connecting the 3-way ON-OFF-ON switch to two digital input pins to select between the two operating loops.

Now, all of that said- I am perfectly comfortable with admitting that I know absolutely nothing about any of this. In fact, the above statement about being handled by a single program on the UNO, etc.- I don't have a clue what any of that really means other than it sounds like we can do it. I have zero coding experience, interpreting code language, wiring components of this nature together, and I want anyone who answers to treat me as such.

Fire away.

The way to get started is to learn the basics in separate sessions. Along the way you will need to learn some C/C++ programming.

The Arduino IDE and many sites on the web offer detailed tutorials on reading a switch (you will need two digital pins to read a double pole switch), so find some of those and follow them. Use the switch to turn on and off the built in LED.

The second step is to learn how to connect the motor driver, motor and motor power supply, and control its speed and direction. Again, there are plenty of tutorials on line. A web search for "arduino motor shield rev3 tutorial" will find examples.

For timed events, use the millisecond function. Tutorial

1 Like

Could You post a picture of the motor shield? There's a risk that driver is unsuitable for DC motors because it's a stepper motor shield.

Whoever told you this should know how to do it. I suggest you consult with them for guidance.

1 Like

jremington- thanks a lot for your help! Great guidance.!

Wow Jim-p thanks for taking the time to dig deep and really give some good advice there. Super helpful!

The Motor Shield I have is supposed to be good for 4 DC or 2 stepper motors

Okey. Hard to know without the datasheet

No, only 2 DC motors, one stepper.

jim-p is correct this is the side of the packaging for the MS

For additional context: I was also told that if the motor requires more than 9v, Arduino recommends separating the powerlines of the MS and the Arduino board by cutting the "Vin Connect" jumper on the back side of the MS given that the absolute limit for Vin at tje screw terminals is 18v. - This came directly from a member of Arduino support staff.

The Arduino Support person also stated that: if you need help with coding, and dince your query is related to general Arduino project-based queries, we recommend you to post it on the Arduino forum or our Discord server since queries like this can be answered by many people and different solutions can be explored. Also, this will help the community to grow which will ultimately benefit users. So that is how i ended up here with lots of dumb, elementary questions.

That is correct.

So that is how i ended up here with lots of dumb, elementary questions.

but you have not asked any yet.

What are your questions?

Hi, @debugdoug
Welcome to the forum.

Can you please tell us what your project is?
I may help in giving you solutions.

Tom.... :smiley: :+1: :coffee: :australia:

Ok, my motor is rated for 13.5v, so beginning with cutting the Vin connect jumper- with the Vin Connect jumper removed, how will power be supplied to the board?

I am building a system that rotates a pulley forward (CW) pauses momentarily and then rotates in reverse (CCW) for the same run time. Using the 3 position switch will allow me to switch between two settings: faster speed/shorter runtime (and) slower speed/longer run time.

You connect the 12V to the screw terminals Vin and GND.
The Uno will need to be powered via the USB

How much current does your motor require?

My motor has a 6A current rating

Forget it!
You will burn out the motor shield. Even if you put the output in parallel you can only go to 4A.

1 Like

Ok here's a dumb one for sure- Are you saying that I will need to wire in external power from my 12v source through the USB port?

See post #19