Control Small DC Motor to Turn to Position then Return to Original Position with Switch

Thread Starter

MeatySteak

Joined Jul 3, 2022
12
Hi,
I have a small project that requires a small turn of about 45 degrees that will return to the original position and it needs to be controlled with a switch. The motor I have was cheap so I'm not bothered if you recommend that I get something else, just needs to be very small. Current motor runs 3.0V 57700RPM 20mA.

I have a basic understanding of electronics so I can understand some things but can pick up things quickly as well. I know that I would probably need a drive board off some kind and to program it with an Arduino. I saw the L298N and a small outline of it so I understand how that one works, but it also seems excessive for my project to have 2 h-bridges as I only need the one motor. The smaller the better so if there is smth smaller that would work better, that would be great.

Again, I dont know loads about this sort of stuff so please be gentle. Very new to this but willing to learn.

Thanks,
 

Dodgydave

Joined Jun 22, 2012
11,341
The L298N is a stepper motor driver, which is what you need to be able to move a motor in degrees precisely,. An ordinary DC motor would just spin without control.
 

Thread Starter

MeatySteak

Joined Jul 3, 2022
12
The L298N is a stepper motor driver, which is what you need to be able to move a motor in degrees precisely,. An ordinary DC motor would just spin without control.
Okay that makes sense actually, so if I went with the L298N I would need a stepper motor. Is there something that would be able to control a regular DC motor how I want or is that smth thats generally only stepper motors can accomplish?
 

LesJones

Joined Jan 8, 2017
4,226
Your requitement is quite demanding. As you say that your motor rotates at almost 60000 RPM (1000 revs per second. ) it would only take 125 uS to rotate through 45 degrees. In practice it would not be able to accelerate to anyting close to that speed in that time. Until I re read your post I was going to suggest using limit switches on the assumption that the movement was slow.
What is the reason for needing such high speed. I dont think even the head position servo from a hard disk drive could position that fast.

Les.
 

Thread Starter

MeatySteak

Joined Jul 3, 2022
12
Your requitement is quite demanding. As you say that your motor rotates at almost 60000 RPM (1000 revs per second. ) it would only take 125 uS to rotate through 45 degrees. In practice it would not be able to accelerate to anyting close to that speed in that time. Until I re read your post I was going to suggest using limit switches on the assumption that the movement was slow.
What is the reason for needing such high speed. I dont think even the head position servo from a hard disk drive could position that fast.

Les.
Yeah I actually didnt realise that the rpm was that high until I re-read that. It doesnt need to be fast at all, not super slow but just something that is visible to see. Hence why I said I was open to different motors. I think its just the type of motor I have. Its obviously not the right motor so I'll find smth else. What should I be looking for?
 

LesJones

Joined Jan 8, 2017
4,226
You need to tell us how fast it need to move through 45 degrees. Telling us the ACTUAL aplication will probably help us to make appropriate suggestions.

Les.
 

Thread Starter

MeatySteak

Joined Jul 3, 2022
12
You need to tell us how fast it need to move through 45 degrees. Telling us the ACTUAL aplication will probably help us to make appropriate suggestions.

Les.
lets say maybe half a second? Which would be 30 rpm if my maths is correct? Its hard to explain what I'm doing without going into too much detail. And the 45 degrees is very approximate. Nothing needs to be ultra precise here
 
Hi,
I have a small project that requires a small turn of about 45 degrees that will return to the original position and it needs to be controlled with a switch. The motor I have was cheap so I'm not bothered if you recommend that I get something else, just needs to be very small. Current motor runs 3.0V 57700RPM 20mA.

I have a basic understanding of electronics so I can understand some things but can pick up things quickly as well. I know that I would probably need a drive board off some kind and to program it with an Arduino. I saw the L298N and a small outline of it so I understand how that one works, but it also seems excessive for my project to have 2 h-bridges as I only need the one motor. The smaller the better so if there is smth smaller that would work better, that would be great.

Again, I dont know loads about this sort of stuff so please be gentle. Very new to this but willing to learn.

Thanks,
You're right that the L298N might be a bit much for what you need, but don't sweat it - there are plenty of other options out there. A simple motor driver like the L9110S or DRV8833 might do the trick, and they're both pretty tiny. You'll definitely need an Arduino to control it, but that's easy enough to learn.
 

MaxHeadRoom

Joined Jul 18, 2013
28,820
I would second the use of a stepper, to accurately position an ordinary DC motor requires feedback to the controller, which can get complicated.
for a 200 step/rev stepper, that would equate to 25 steps, so you would need a way of generating that number.
 

ThePanMan

Joined Mar 13, 2020
803
My sonic tooth brush is comprised of a DC motor and its shaft is little more than a torsion bar. It's driven by a high frequency that tries to turn the brush in one direction for that part of the cycle, then when the cycle reverses it tries to turn in the other direction. No, it doesn't sweep more than a degree or two, but it's powered from an 18650 Lithium battery.

You said:
It doesnt need to be fast at all, not super slow but just something that is visible to see.
"Visible to see".
OK, here's my thoughts on that: glue a piece of cardboard to the end of the motor shaft. If visual is all you need then you don't need to limit it to a number of degrees. Just let it spin. When you see the cardboard spinning - you know it's spinning. Go with a small piece of cardboard and hot melt glue it to the shaft. The longer it is the more it will resist high RPM's. But there's a limit to that. Don't go crazy. Paint one side black and the other side white.

Better still, if all you need is an indicator why not just use an LED?
 

Jon Chandler

Joined Jun 12, 2008
1,093
Depending on the force you need, a hobby servo motor is probably the best solution. These motors are used to control steering, etc. in model planes and cars, and cost less than $10.

SmartSelect_20230418_105558_Edge.jpg

Here's a tutorial on servo motors that may be helpful. The angle of turn depends on the duty cycle of a PWM (Pulse Width Modulated) signal. In this case, where you want two fixed positions, a 555 timer chip could be set up to switch between the two duty cycles needed.
 

DickCappels

Joined Aug 21, 2008
10,245
Alternatively, you can use a DC motor (geared down is probably best) and limit switches. limit switches to tell when the motor is in the right position.
1681845699404.png
 

djsfantasi

Joined Apr 11, 2010
9,185
You mentioned an Arduino. With the Arduino Servo library, you can create simple code to turn 45° and back very simply. Even control the speed with one additional line of code. Without any extra chips or circuitry. Just an Arduino and an RC servo…
 

LesJones

Joined Jan 8, 2017
4,226
Re post #9 I do not agree that 45 degrees in half a second is 30 RPM.
360/45 = 8
8 x 0.5 seconds = 4 seconds (One revolution.)
RPM = 15 RPM.
Even though I do not agree with your calculation It gives us a much better idea than the original almost 60000 RPM.
How accurate do you require the stopping points ?
How much torque do you require ?
The model servo suggested in post #14 looks like it may be a simple solution with the very limited information you are prepared to provide.

Les.
 
Top