Posted by Sameer on 3:49 AM
Labels:


Recently, I attended a robotic workshop from Technophilia institute, Mumbai. The workshop covered modules of microcontroller programming. While learning about IR(Infra Red) standards, I understood the idea of an obstacle detector bot. I bought 2 obstacle detectors and the ATMEGA16 microcontroller from the institute and made my bot:



Building materials are:

1. Two DC-motors
2. Two wheels
3. ATMEGA16 microcontroller
4. IR obstacle detectors
5. 12V lead-acid battery

Steps followed:

1. This time, I needed a stronger body than the nokia box since I had to mount the PCB(Printed Circuit Board) as well as the obstacle detctors on it. So I made one using ply-wood.


2. Then, I fixed 2 DC motors in the body and one supporting wheel in a same way as I have done previously in my movement bot.





3. In the next step, The microcontroller PCB and the obstacle detectors got their place and my bot was ready. This process took a one and half day.

4. The next part was vital but very easy and less time consuming and that was to program my robot. Using a software called WinAVR I programmed the IC ATMEGA16 to work as an obstacle detector.


Functioning:

1. The IR obstacle detector mounted on my bot has a transmitter and a receiver.

2. It has one IC which continuously sends logical 1 to transmitter pin. This causes the transmitter to emit infra-red rays in forward direction. The IR ways travel upto a certain distance and then die off.



3. If any obstacle comes within that distance the rays are reflected and are received by the transmitter.

4. When the transmitter receives waves, Logical 1 appears at that pin. My job is to detect this 'Logical 1' at regualr intervals.

5. When my program founds that IR rays have reached the transmitter, it orders the bot to turn. i.e. I move one motor backward and the other in forward direction.

It's a simple if_else structure within an infinte while loop.

while(1)
{
if('Logical 1 is detected')
Order the bot to turn
else
Order the bot to go straight.
}

6. The second obstacle detector on the right is used to control the direction of the turn. If 'Logical 1' is detected at receivers of both detectors, imply that there is an obstacle to the right as well as in the front. In such a case, I order my bot to turn to the left instead of right.



De-merits:

1. Only those obstacles can be detected which are in front of the transmitter since IR rays travel in nearly straight forward direction.

------------------------------------------------------------------------------------
Thanks to all for helping. Programming is done is language C.

Posted by Sameer on 7:48 AM
Labels:



While searching some stuff on the net, I found this design of the robot. The thing which attacted me was the mechanism of driving wheels using rubber bands. I loved this idea since it enables one to rotate those wheels which don't have the diameter of their central hole equal to the axle of the motor.


I decided to make a similar robot. Here's the bot I've made:




Building materials used are:

1. DC Motors
2. Two driven wheels(Or something which looks like a wheel), I've used a part of a sewing machine(Unknown to me). I found it in Tailor's shop.
3. Supporting wheels
4. 9V Batteries.
5. A pipe(as the path)


Steps followed:

1. First step was to make the actual functioning body of my robot. I tied 2 DC motors and driven wheels together using a tape. It looked like this:




2. The gap between the two wheels was adjusted so that the pipe easily fits in between.



3. Then I made the holder for supporting wheels using a copper wire and mounted them on it.

4. The holder is designed with a gap in the middle for the pipe.

Function:

1. When the motors are connected to battery they start rotating.

2. Since a rubber band is passed over the axle of the motor and the wheel, Rotation of motor also drives the wheel.

3. The rubber band acts as a belt. Thus the energy is transmitted from the motor to the wheel.



4. Note that the wheel will only rotate if the rubber band is streched tight over the axle and the wheel. If the rubber band is loose the wheel will not rotate. The reason is, The energy is transmitted only when the rubber band is under tension and there is friction present is between the wheels and the rubber band.

5. If the pipe is put in the gap between the two wheels, the bot pulls or draws out the pipe depending on the terminals of the battery.

6. If the pipe is stationary(fixed), the bot travels along the pipe forward or backward .

7. The gap between two driven wheels can be adjusted for different diameters of the pipe. In a way, we can call him simple line-tracker bot made without use of any sensors.



---------------------------------------------------------------------------------------------

Thanks to all for helping.