Continue to Site

Welcome to our site!

Electro Tech is an online community (with over 170,000 members) who enjoy talking about and building electronic circuits, projects and gadgets. To participate you need to register. Registration is free. Click here to register now.

  • Welcome to our site! Electro Tech is an online community (with over 170,000 members) who enjoy talking about and building electronic circuits, projects and gadgets. To participate you need to register. Registration is free. Click here to register now.

need help on motor driver and rotaion counting

Status
Not open for further replies.

arjunbais

New Member
hellow friends...
m a new bee here...
but i m doing my engineering in elecronics and telecommunication frm pune india..
well i have 2 make a relay race running automated robot.. so just wanted sme help in some of the folling topics...
i wanna ask what type of driver i should use for my moters while interfacing it with atmel's 89c52...
and other is can i fit the track in robots memory without using a camera of other hard ware...
one possibility which i think of is in the preleminary run when the robot passes through the given track by sensing then at that time it should count the clock pulses and see after what period it has to take turn etc..
then in the second run it can run without the help of sensors and that 2 with quite good speed....
can n e 1 give n e suggestions...
it would be highly helpful.....
 
Robots are pretty bad at knowing where they are. You can spend millions on odometry (measuring wheel rotations), GPS, accerometers, gyroscopes, laser rangers and the robot still might know where it is very well. Most of these things are completely beyond a school project. The only one listed that you can probably do is odometry and a distance ranger, and if the track has any markers to let you know where the tracks is, then that is best. I would program a rough linear piece wise approximation of the track and with the appropriate lengths and turns degrees into my microcontroller (which should fit), and use odometry to make the turns when needed.

BUT since wheels slips and odometry is not accurate I'd another sensor to help correct for odometry errors and track errors in memory. Like if the track had walls, I'd use a ranger so that if my robot got too close to a wall, it would turn along the track and use the detection of the wall to correct where it is on its internal map. Or maybe the track has lines at it's edges and no walls so a ranger wouldn't work. In this case, I would use a line detector except it wouldn't be as effective as the ranger since my robot would only turn when it was right at the track's edge. They probably give you something on the track so your robot knows where it is or stays inside it- use that.

I would not count on them letting you run the robot once around the track though, or even seeing it. Then the odometry and internal maps would do no good and you woudl have to rely on the ranger or line detector or whatever tells you where the track is (and hopefully the track is in a circle so you are only ever turning right, or left whenever you hit the edge of the track).

So you woudl basically use odometry to try and turn ahead of time to minimize your travel time. And you woudl use some other sensor when your odometry failed so get you back on the track. There are very simple cheap methods for ranging (like IR or ultrasonic). THere are also very simple methods for line detection (like an IR diode and photodetector). I would only use a camera for very advanced line detection (like seeing the line from far away before you are on top of it so you can turn early and get better timing like you would with a ranger.

Do you ever need to go backwards? If you don't, then all you need is an NMOS transistor and gate driver beign controlled by the microcontroller for each motor (and a fast, low forward voltage diode like a schottky diode in anti-parallel with the motor to protect the transistor from inductive flyback (these are voltage spikes generated when cutting off current flow through the motor's inductance).

Just like the way M1 and Q1 are connected this picture here:

You would need a gate driver that accepts an digital input (for on/off only control) or PWM (for variable speed control) from the microcontroller and outputs a current pulse large enough to charge the gate capacitance on the NMOS transistor to turn it on fast enough for PWM. The diagram doesn't show the diode in anti-parallel with the motor to protect the transistor from inductive flyback.

If you do need to go backwards, then you need an H-bridge for each motor which is much more complicated compared to the first solution.
 
Last edited:
Hello
I have just finished up with Final Year Project which uses GPS as a position sensor and used it to control the motion of the robot. I was successful some how but many difficulties were faced.
such as the robot cannot sense where the coordinates (target) will be located means u have to place it in such a direction where it would find that one or else search for it.
I used Ultrasonic sensors for obstacle detection. Target coordinates were provided from PC through RF communication and the robot is able to calculate the difference and can carry out its motion.
As far as tracks are concerned, i sent the current coordinates to the PC (tracking) where it was saved in a text file and can be again send to the robot if required.
for motor control you can use relays which even i used and was able to move in forward and reverse direction also. its simple if you want i can send you all the neccessary details.
Keep hard working.
Discuss alot and u will definately find great idea to tackle these problems.
Best of Luck
 
i have used i r sensors for detection of tracks as the track is simply a white line in black background...
its a simple line detector ckt..
but the prolem can occur while taking the turn... i think if the speed is increased the bot will slip.. well the competetors are providing a preliminary run . so it might be possible to trace the track in bot (its only a possibility , i have not worked on it yet now)..
can any more suggesions be given 2 lessen the time required for the bot to complete the track and also sme measures so that the bot should not slip...
and any inead to trace the track ... thanx a lot guys for the replies and help....
 
As far as i understand u r trying to make a Line Follower Robot which should be fast in following track.
I have also experienced this type of task last year. In this what i saw is that an array of sensors is used and this improves turning capability in a way that when the second last or third last sensor senses the line that motor should be made slow using pulses from 89c52 to the motor.

********
L1234 4321R

for example the above are sensors array and if sensor 2R detects line u can slow down the right motor and vice versa.

I think u can get the idea through it.
any way best of luck.

P S if track recognition is concerned then y use sensors just move the robot using timers.
 
Status
Not open for further replies.

Latest threads

Back
Top