Electronic Projects, forums and more.

Go Back   Electronic Circuits Projects Diagrams Free > Electronics Forums > Electronic Projects Design/Ideas/Reviews


Electronic Projects Design/Ideas/Reviews Are you building an electronic project or want to? Maybe you need some assistance? Come and submit your electronic questions here and let our experienced members find a solution.

Reply
 
LinkBack Thread Tools Display Modes
Old 19th December 2007, 06:06 PM   (permalink)
Default DC motor position control (not speed/direction)

Hi,

I have a question, is it possible to control the position of a DC motor? Meaning, I want it to rotate a few degrees only each time I supply power (when using gears to reduce speed and increase torque) ? Kind of like the operation of an open loop stepper motor. If open loop is not possible, what about closed loop operation ? I am using the PIC16F877A.


I have seen a lot about speed/direction control using h-bridge, etc but I cant seem to find any info on this.

Thanks for the info.
rngd is offline  
Old 19th December 2007, 08:44 PM   (permalink)
Default

Of course. THe primary difference is that you use an absolute position encoder (or an incremental encoder with a reference point) as feedback to the driver.

The control scheme wher eit rotates only a few degrees each time you supply power more has to do with the code used to control the driver than the driver itself.
dknguyen is offline  
Old 19th December 2007, 09:44 PM   (permalink)
Default

You're looking at either a stepper, or a servo controlled DC motor system - but you don't give enough information to suggest which would be best?.
__________________
PIC programmer software, and PIC Tutorials at:
http://www.winpicprog.co.uk
Nigel Goodwin is offline  
Old 20th December 2007, 08:19 AM   (permalink)
Default

Quote:
Of course. THe primary difference is that you use an absolute position encoder (or an incremental encoder with a reference point) as feedback to the driver.

The control scheme wher eit rotates only a few degrees each time you supply power more has to do with the code used to control the driver than the driver itself.
Can u pls elaborate on this ? What kind of driver do you mean ? It goes in between the PIC and motor I assume ? I'm hoping that I won't have to use those expensive dc motor driver ICs.

Quote:
You're looking at either a stepper, or a servo controlled DC motor system - but you don't give enough information to suggest which would be best?.
Actually, I mean just a DC motor, not servo or stepper because I want to reduce the cost of my project.

Thanks.
rngd is offline  
Old 20th December 2007, 10:07 AM   (permalink)
Default

Quote:
Originally Posted by rngd
Hi,
I have a question, is it possible to control the position of a DC motor? Meaning, I want it to rotate a few degrees only each time I supply power (when using gears to reduce speed and increase torque) ?
Your question is not clear.

If you want the final drive *after* reduction gear to rotate a few degree, then it is possible if the gear ratio is high.

If you want the DC motor rotor shaft to rotate a few degrees, then no. Most DC motors uses two brushes separated at an angle of 180 degrees and cannot be made to rotate just a few degree.
__________________
L.Chung
eblc1388 is offline  
Old 20th December 2007, 10:55 AM   (permalink)
Default

Quote:
Originally Posted by rngd
Actually, I mean just a DC motor, not servo or stepper because I want to reduce the cost of my project.
But you're still telling us nothing about what's needed?, or what it has to do?.
__________________
PIC programmer software, and PIC Tutorials at:
http://www.winpicprog.co.uk
Nigel Goodwin is offline  
Old 20th December 2007, 12:16 PM   (permalink)
Default

Quote:
Originally Posted by eblc1388
Your question is not clear.

If you want the final drive *after* reduction gear to rotate a few degree, then it is possible if the gear ratio is high.

If you want the DC motor rotor shaft to rotate a few degrees, then no. Most DC motors uses two brushes separated at an angle of 180 degrees and cannot be made to rotate just a few degree.

Yes, I want the final drive to rotate a few degrees. My question is, let's say I have connected the reduction gears, can I set the motor to accurately rotate a few degrees (for example 10 degrees) each time I want it to operate ? For example, each time I send a current pulse of predetermined length, it will rotate 10 degrees.

I am building a 2 axis solar tracker with two motors, with a PIC.
rngd is offline  
Old 20th December 2007, 12:25 PM   (permalink)
Default

As suggested, either a stepper or a servo system, there's no other way.

It doesn't have to be a commercial 'all in one' servo, you could build your own external servo - you need to arrange for mechanical position feedback indicating the solar panel position - you could use a potentiometer for this (as small RC servos do). I would also suggest you add limit switches at either end of travel.

So basically, feedback potentiometer on the panel, read this position with a PIC, compare it to where it needs to be, then move the panel using an H-bridge until it's in the right place.

BTW, there's no need for two axis tracking, check how satellite dishes track using a single axis and copy that!.

A quick extra thought though, now you've actually told us what it's for, you could use two LDR's as sensors either side of the panel (in angled tubes), and simply adjust the panel for equal light falling on them - plus limit switches as before.
__________________
PIC programmer software, and PIC Tutorials at:
http://www.winpicprog.co.uk

Last edited by Nigel Goodwin; 20th December 2007 at 12:30 PM.
Nigel Goodwin is offline  
Old 20th December 2007, 12:35 PM   (permalink)
Default

The only alternative would be a solenoid operating a ratchet mechanism.
__________________
C:\WHUT ?
Beware the asterisk *
ClydeCrashKop is offline  
Old 21st December 2007, 06:46 AM   (permalink)
Default

Quote:
Originally Posted by Nigel Goodwin
BTW, there's no need for two axis tracking, check how satellite dishes track using a single axis and copy that!.
Hi Nigel,

very much to my surprise the sun doesn't behave like a geostationary satellite. It moves in two directions, one azimuth and the other elevation. Living far in the north, the elevation changes very little. I'm living at 10deg north latitude and during "summer" the sun appearantly moves over the top and reaches its zenith from 13.5deg north at noon. Even in GB you can observe the sun "moving" upwards at the sky.

Kind regards

Hans


BTW, my suntracker takes care of that too.
Boncuk is offline  
Old 21st December 2007, 06:56 AM   (permalink)
Default

Rather than use 2 LDR's just use 2 green led's and hook them up to 2 AD pins. I'm currently trialling out this method for my PV tracker and the first tests are proving quite good. As far as the drive for my tracker I'll be using a 56:1 worm drive gearbox with a standard DC motor rated for 24 volts, when the unit needs to move simply providing a pwm to the motor will move it to the required position. Redrock.com have some circuit based around the led's so that can give you a starting point but their circuits do seem to hunt a fair bit so by using a pic to controll things hunting shouldn't be a problem.

Cheers Bryan
__________________
" The only way to avoid human error is to avoid the use of humans"
bryan1 is offline  
Old 21st December 2007, 09:22 AM   (permalink)
Default

Quote:
Originally Posted by bryan1
Rather than use 2 LDR's just use 2 green led's and hook them up to 2 AD pins. Cheers Bryan
Hi Bryan,

I'm using four (two for each axis, antiparallel) 10mm red LEDs with clear domes. Their voltage output at bright sunlight is about 300mV, easily to be amplified to the desired level. Using a PIC or an ATMEL seems to me like wasted engineering.

Regards

Hans
Boncuk is offline  
Old 21st December 2007, 09:49 AM   (permalink)
Default

Quote:
Originally Posted by Nigel Goodwin
As suggested, either a stepper or a servo system, there's no other way.

It doesn't have to be a commercial 'all in one' servo, you could build your own external servo - you need to arrange for mechanical position feedback indicating the solar panel position - you could use a potentiometer for this (as small RC servos do). I would also suggest you add limit switches at either end of travel.

So basically, feedback potentiometer on the panel, read this position with a PIC, compare it to where it needs to be, then move the panel using an H-bridge until it's in the right place.

BTW, there's no need for two axis tracking, check how satellite dishes track using a single axis and copy that!.

A quick extra thought though, now you've actually told us what it's for, you could use two LDR's as sensors either side of the panel (in angled tubes), and simply adjust the panel for equal light falling on them - plus limit switches as before.
Nigel,

Actually I'm currently thinking of using the same concept above, except I'm using 4 LDRs, 2 for each axis.

Do you mean that when equal light falls on the LDRs, the LDRs signal my PIC and the PIC cuts off the motors ?

If I still need the pots, can I have more info/links about it ? Where do I connect it ? I've tried Google but can't seem to find any info.


Quote:
Originally Posted by bryan1
Rather than use 2 LDR's just use 2 green led's and hook them up to 2 AD pins. I'm currently trialling out this method for my PV tracker and the first tests are proving quite good. As far as the drive for my tracker I'll be using a 56:1 worm drive gearbox with a standard DC motor rated for 24 volts, when the unit needs to move simply providing a pwm to the motor will move it to the required position. Redrock.com have some circuit based around the led's so that can give you a starting point but their circuits do seem to hunt a fair bit so by using a pic to controll things hunting shouldn't be a problem.

Hi Bryan,

That was what I have been meaning to ask, whether it is possible to use a PWM to the DC motor to rotate it a few degrees. Can you give me more information about how you drive your motor ? How much does the motor rotate after each pulse ? Nigel posted above that the only way was to diy my own external servo, so I'm a bit unsure.

About using the LEDs as sensors, I have seen them being used at that website but I'm not familiar with the concept yet (I did not know LEDs could be used for other functions other than to emit light!) so I haven't decided which type of sensor to use. Either LDRs, LEDs or even small PV cells.


Thanks for the replies guys.

Last edited by rngd; 21st December 2007 at 09:55 AM.
rngd is offline  
Old 21st December 2007, 10:03 AM   (permalink)
Default

Quote:
Originally Posted by rngd

That was what I have been meaning to ask, whether it is possible to use a PWM to the DC motor to rotate it a few degrees. Can you give me more information about how you drive your motor ? How much does the motor rotate after each pulse ? Nigel posted above that the only way was to diy my own external servo, so I'm a bit unsure.

About using the LEDs as sensors, I have seen them being used at that website but I'm not familiar with the concept yet (I did not know LEDs could be used for other functions other than to emit light!) so I haven't decided which type of sensor to use. Either LDRs, LEDs or even small PV cells.
Simply do some maths mate 56:1 worm drive gearbox, say 4:1 V-belt reduction drive to the pv frame. As you should know a DC motor's speed is controlled by voltage so depending on the condition required the voltage can be selected.
ie: 1. finding the right equal position for both led's to output the same voltage say 6-12 volts
2. Go to sunrise position at dusk pump 24 volts in for quicker travel.

By using an industrial wormdrive gearbox and further reduction with the V-belts will ensure enough rigidity to withstand huge gales.

Now for the led's do a simple test wire 2 led's up in parrallel with the output going to a gate on a fet which is connected to another led to show the circuit works. Now powerup a third led to shine directly into the 2 led array and watch the fet turn on. Simple isolated supply and a good test proving that led's DO output a voltage when exposed to light.

Hope that helps

cheers Bryan
__________________
" The only way to avoid human error is to avoid the use of humans"
bryan1 is offline  
Old 21st December 2007, 10:18 AM   (permalink)
Default

Quote:
Originally Posted by bryan1
led's DO output a voltage when exposed to light.
Especialy green LEDs. I have seen a few designs which have optical isolation AND power via a string of LED. I modified a mains timer with watch battery backup to use a small NiMh cell charged by a white LED pointing at a few SMD green LEDs. This was because the area did not have reliable mains and the watch battery did not last long. Worked great.
Gordz is online now  
Reply

Bookmarks

Thread Tools
Display Modes



Similar Threads
Title Starter Forum Replies Latest
controll ing dc motor need help norms09 General Electronics Chat 14 5th August 2008 01:37 PM
Speed Control Of Dc Motor nelson_kh Robotics Chat 25 5th January 2008 12:13 PM
Using Oscilloscopes mechie Electronic Theory 9 29th November 2007 10:49 PM
DC motor Control, Timer mitchell.s General Electronics Chat 3 6th October 2007 09:18 PM
closed loop DC motor control vuchris Electronic Projects Design/Ideas/Reviews 0 30th September 2007 12:27 PM



All times are GMT. The time now is 12:58 PM.


Electronic Circuits  |  Learning Electronics
Powered by vBulletin® Version 3.7.0
Copyright ©2000 - 2008, Jelsoft Enterprises Ltd.

eXTReMe Tracker