Continue to Site

Welcome to EDAboard.com

Welcome to our site! EDAboard.com is an international Electronics Discussion Forum focused on EDA software, circuits, schematics, books, theory, papers, asic, pld, 8051, DSP, Network, RF, Analog Design, PCB, Service Manuals... and a whole lot more! To participate you need to register. Registration is free. Click here to register now.

Mega Project: Robotic Land Mine Detector

Status
Not open for further replies.

purifier

Full Member level 4
Joined
Nov 30, 2004
Messages
220
Helped
9
Reputation
18
Reaction score
8
Trophy points
1,298
Activity points
2,570
informacion sobre servomotores sanwa srm-102

I'm planning to make a land mine detector for a competition. Can i get some suggestions for this?

A playfield of 240 x 240x 5 cm (5 cm being the width, the base plywood and another plywood at 5cm height). The playfield will have a boundary of 5 cm height. There will be sand patches (5 cm x 5 cm) around the field, into which the mines will be hidden. The mine is laid throughout the playfield (at the intersection of grid lines) in the form of iron discs (of diameter 3cm and thickness 0.5cm, maximum weight 100 gm). The mines will be at a maximum depth of 3cm. The field has two homes. The two autonomous bots will start from their respective homes and will have to detect mines in the field and then dig the mine out of the sand and place it outside the pit within a time limit of 5mins. The bot has to have an indicator, electric or mechanical (e.g. - led bulbs) that will be used to indicate the detection of a mine. Each mine will have an alphabet associated with it, so that the judges can note down the alphabet. The Gaming arena will have 2 cm thick white lines forming a grid. The mines will be placed on the intersections of the lines.

YOU ARE NOT ALLOWED TO USE ANY PRE-MANUFACTURED COMPONENTS EXCEPT ICs and BASIC ELECTRONIC COMPONENETS.

Planning to use the following:

1. Wheel system for the movement of the robot.

2. Use a microcontroller to move along a pre defined path. Once it starts along a corner. Using the microcontroller, i'll ask it to move 68cm to the left diagonally until it arrives at the intersection of the grid line and then rotate 45 degrees and then start moving in a straight way. Problem is i don't know how to program a microcontroller to carry out the required job. Can someone advice me where to start?

3. I want to use a metal detector to detect if the coin is under the sand or not. Then switch on a driller that can dig out the sand. The problem is which type of driller has to be used so that when it starts digging it brings out the sand at the same time?

4. Once the drilling is obstructed, i detect the stop of the motor and them convert the driller into an electromagnet and then pickup the metal object. So the driller's shape should be suitable to lift up things. I don't have any idea about the shapes because i'm an Electronics Student.

5. How do I avoid collision between two robots?

6. How do i detect if the metal piece was picked up by and electromagnet. If it picked it, i want it to drop it somewhere nearby.

This is my first robotics project. I don't know a thing about the field. I'll keep this thread active. I'd be really grateful if someone could help me out with this project. Please help...
 

I'm stuck with another question. Can i make the robot trace a single path that is only a white line on a black board?

I request someone to atleast give me a boost so that i can continue with this project. I'm completely new to robotics so if no one gives me any help, then i'll have to quit this project. Please help.
 

This project may be too advanced for just one person. It takes teams of people to make a mechanical mouse that can run through a maze.

One possibility is an electromagnet that is strong enough to lift the mine directly to the surface without drilling.
 

I think you should start with line-following robot and then concentrate on a small metal detector/magnet.
Here you have some examples of robots (incuding line follower):
http://www.james.vroman.com/javbot1a.htm
**broken link removed**
Regards,
IanP
 

purifier said:
I'm stuck with another question. Can i make the robot trace a single path that is only a white line on a black board?

I request someone to atleast give me a boost so that i can continue with this project. I'm completely new to robotics so if no one gives me any help, then i'll have to quit this project. Please help.


i've been in a robotic competition before in last year. it was the same method. there is a sensor that may give logic 0 or 1 whenever it detects white color. this sensor can be adjusted to detect the colour u specified(means if u choose white than it will detect white). u are lucky to have the board in black. in my competition the board was green. the sensor detect the green as white too if u dont correctly adjust the colour depth and the height of the sensor correctly.
so to start, u may need 3 of the sensor. unfortunately i forgot the name of the sensor. but its black in colour and in almost triangular shaped(except the sensor head was flat). it is about 4 cm height, 5cm wide and 1 cm thick. i'll refer back the sensor with my friends and tell u next time.

place these three sensors together in a straight line under ur robot(u may place it anywhere...front middle or back....depends on ur program). try to imagine this...
let's say the sensor give logic 1(light on) whenever it senses white line.

so, when the line was straight....the middle sensor is on while the left and right is off. when the line turns right....the right sensor will be on and the middle and left is off....when the line goes left...the left sensor will be on and the middle and right is off.....so to write the program is easy.....put a switch on both the wheel(that is controlled by motors.....each wheel controlled by a motor each) that connects to a voltage source....to go straight(only middle sensor on) turn on both the switches......to turn right.....off the right wheel switch and only on the left switch...to turn left....off the left switch and on the right switch.....


for the robot to move for 68 seconds before it turn...

u may make program delays for 68 seconds and then execute the turn.....
 

@flatulent
I'm doing the project in a team of four.
One possibility is an electromagnet that is strong enough to lift the mine directly to the surface without drilling.

In the rules it is mentioned that the coin has to be taken out of the sand without the use of permanent magnets or strong electromagnets. But it think after drilling inside the sand i can convert the same driller into an electromagnet. But now i've changed my plan. I'm planning to pickup the coin mechanically using some sort of action. I'll have to design a structure that can lift up the coin completely yet slide easily inside the coin.

@IanP
Thank you very much. Your links are simply superb. I searched a lot but couldn't come across such links.

@nafaiz
I think you are a boon to me. Your explanation is marvellous. Though i am a beginner i could understand a great deal of logic from it. I'd be grateful to you if you could recollect the name of the sensor.

I always get a doubt at this point. What so you mean place the sensorrs at the bottom of the robot? How should i connect the sensors? One end to the microcontroller and the other end grounded or any other method. I'm sorry if it is a dumb question but i don't have any idea about how to get these sensors working.

for the robot to move for 68 seconds before it turn...
What is that number? I mean the robot speed is not yet decided... so what is the significance of that number.

And finally, how do i avoid collision between the two bots? Any special circuitry to be implemented?

Please help...

Added after 12 minutes:

Also, before getting the robot to follow the path... i'll have to get it onto the white lines first. How do i do that? Can i just ask the microcontroller to enable the robot wheels until one of the sensors senses a white line? And that too, using the abouve logic how will it follow the line? It can only sense right? or am i not getting something?
 

actually in robotics u dont put the whole 8051 circuit on the robot. u write the hex code on a single chip using a chip burner that is connected to ur computer and put it on a circuit containing relays(to control ur motor). u'll have to make ur own pcb circuit. the program u'll write into the chip will continue looping and doesnt stop. this will make the robot moves whitout stopping. this is called the auto robot.

Added after 4 hours 42 minutes:

i'm sorry about that 68seconds.....u wrote 68cm and i mistakenly wrote 68 seconds......


to move 68 cm is the same method.....

1. program to execute straight movement.
2. make the delay for the robot to move 68cm.
u can do this by manually make the robot move straight(without any program)
and check how many seconds it takes to reach 68 cm.
3. after the delay execute another program to turn.



as for example



DELAY: PUSH B
MVI B,255
LOOP: MVI C,255
LOOP1: DCR C
JNZ LOOP1
DCR B
JNZ LOOP
POP B
RET


this is the delay for 8085
u may refer here for the calculations of delay

http://www.e-shikshalaya.com/chapter10_files/Chap10(part-2).htm
 

Thank you very much for your reply... Coming to the movementof the robot i thought i'll do it using sensors that three sensor technique. But i still have a problem. How will it know when to take right and when to take left? Do i have to program even that? I've attached a drawing of the board. Should i go for 5 sensors instead? Front Back Middle Left Right? Or is there any other method?

And is there any other way to detect a metal other than using Ultrasonics... ? I want something which is practical because i don't think i can get Ultrasonic Tx and Rx here in India...Please help.
 

Hi,

You can avoid collision by using either IR, ultrasonic or switches.

If you will check the website of Parallax Inc., **broken link removed**, they have lots of robotics kits performing the said functions.

IR detection is applicable if the objects you want to avoid is not dark colored, else the objects will just absorb most of the IR and your robot will collide or bump.

Ultrasonic is the best choice, but as you said, your resources will not be able to supply the said devices.

Switches is also good, but this one needs physical contact to detect collision.

As for the detection of the mines, the best to use is a metal detector, to dig the mines, you can use a robotic arm, check the website and you can get many ideas how to it.
 

purifier said:
Thank you very much for your reply... Coming to the movementof the robot i thought i'll do it using sensors that three sensor technique. But i still have a problem. How will it know when to take right and when to take left? Do i have to program even that? I've attached a drawing of the board. Should i go for 5 sensors instead? Front Back Middle Left Right? Or is there any other method?

And is there any other way to detect a metal other than using Ultrasonics... ? I want something which is practical because i don't think i can get Ultrasonic Tx and Rx here in India...Please help.

it doesn't matter how many sensors u wanna use. the matter was 1 sensor cost about 30-40 US dollars. if u think u can afford 5 then its better for ur robot. more sensor makes ur robot movements better. in my times we dont have enough budget to buy many sensors as we only had about 3000 dollars to make 3 robots. u have to think about dc motors and components about ur robot too. if u can afford then go ahead.

for the movement of the robot. can u tell me what's the black line in ur diagram is and are the white squares(what colour it will be in ur real game). was it the white line. in my times, the black line was the white. if in this case, let's say that ur starting grid will be at the second box at bottom. the sensor most left sensor should be far enough to detect the horizontal line. so ur program should be every time it detects the white horizontal line it will count 1. so all u need to do is execute a program to turn left when it reaches count 4. to stop u need to tell me 1st what is the colour of ur white box in real game.

about detecting metal using ultrasonic u have to ask someone else better.


...
 

for the movement of the robot. can u tell me what's the black line in ur diagram is and are the white squares(what colour it will be in ur real game). was it the white line. in my times, the black line was the white. if in this case, let's say that ur starting grid will be at the second box at bottom. the sensor most left sensor should be far enough to detect the horizontal line. so ur program should be every time it detects the white horizontal line it will count 1. so all u need to do is execute a program to turn left when it reaches count 4. to stop u need to tell me 1st what is the colour of ur white box in real game.

Thank you very much for your concern.

Actually the black line is the actual line the robot has to trace. In the real game it is white in color And then the cells(squares) are black in color. The white squares in the picture are the intersection points of the white lines and the location where the hole is dig to place a coin inside it. This hole after being placed with a coin is filled with coin. My bot will be placed in the extreme bottom right square and the other bot will be placed at the extreme top left sqare.
 

u may refer here for the sensor:

**broken link removed**

so, u did get the idea how to move ur robots right. just use count program. good luck to u and all the best.
 

@glenjoy
Thank you for the reply but we're not allowed to use any premanufactured component. As for the robotic arm its too complex to make a robotic arm that small. Anyways thank you for the suggestion.

@nafaiz
Thats really a good sensor. I need some more help if possible. This is regarding the movement of the robot. I'll somehow detect the white line first using one of the three methods:

1. Using a bend sensor and detecting if the robot is nearer or farther from the wall and steer it accordingly.
2. Using a micro switch to make the robot stay with the wall...
3. Just ask the robot to travel straight until it detects the line.

Problem is i thought of choosing the third method. Can i have some opinion on it?

And now, once it starts travelling... I'll use the already said 3 LED Detector system mounted at the bottom of the robot. When all the three LEDs glow it means that the bot has encountered a line. I'll ask the bot to stop. And then i'll ask it to turn 90 degrees. This is where i have a problem, i just can't ask it to rotate 90 degrees because then it would collide with the wall. I want to know if there is any other method...

Once it has rotated. I thought of creating a virtual array of pits in the microcontroller so that... If the middle LED is giving a 0 and the other two LEDs are giving a 1 it means that the bot has reached an intersection point. And i'll enable the first location of the array so that i'll know what pits the robot has gone through and which were are still left. I could get till here. Now the problem is what to do when the bot predicts a collision. I've attached an image to make everything clear... Is there any method which requires less coding and is the best? Please help...
 

purifier said:
@glenjoy
Thank you for the reply but we're not allowed to use any premanufactured component. As for the robotic arm its too complex to make a robotic arm that small. Anyways thank you for the suggestion.

@nafaiz
Thats really a good sensor. I need some more help if possible. This is regarding the movement of the robot. I'll somehow detect the white line first using one of the three methods:

1. Using a bend sensor and detecting if the robot is nearer or farther from the wall and steer it accordingly.
2. Using a micro switch to make the robot stay with the wall...
3. Just ask the robot to travel straight until it detects the line.

Problem is i thought of choosing the third method. Can i have some opinion on it?

And now, once it starts travelling... I'll use the already said 3 LED Detector system mounted at the bottom of the robot. When all the three LEDs glow it means that the bot has encountered a line. I'll ask the bot to stop. And then i'll ask it to turn 90 degrees. This is where i have a problem, i just can't ask it to rotate 90 degrees because then it would collide with the wall. I want to know if there is any other method...

Once it has rotated. I thought of creating a virtual array of pits in the microcontroller so that... If the middle LED is giving a 0 and the other two LEDs are giving a 1 it means that the bot has reached an intersection point. And i'll enable the first location of the array so that i'll know what pits the robot has gone through and which were are still left. I could get till here. Now the problem is what to do when the bot predicts a collision. I've attached an image to make everything clear... Is there any method which requires less coding and is the best? Please help...

it's very dangerous to ask the robot to turn when all 3 leds glow as sometimes ur motors(right and left wheel) speed and power are not the same. when this happens, ur robot will not go perfectly straight and when this happens, there might be a problem that the 3 led wont glow at once(maybe only 2). this will result into ur robot wont turn 90 degrees at all and will go straight all the way. so i suggest just make it 2 or more leds glow and it will turn. but as for ur case i think there wont be any possibility that the 3 sensor wont glow at once as the white line is 5 cm. mine last time was only 2 cm.

do u have to start there(as shown in ur algorithm file) or u can start anywhere else?

i suggest u use 3 sensors that is attached side by side for the line follower and 1 more sensor further than the 3 about >7cm for detecting the horizontal line. the sensor should be in straight row with the 3 sensors but further. use this sensor as the counter for the horizontal line.

why u need to go in that kind of way when u already know where the coin is( as shown in ur diagram before it was at patch 12) or u dont know where the coin is and the diagram shown before was just an example where the coin is hidden.

i dont think it's a good idea to go in that direction(as shown in ur algoritm). it will be better if u follow the white line as shown with the red line in file below. make a robot with the wheel and the horizontal line sensor(as mentinoed above) can get pass through the patches.
[/img]
 

purifier said:
@glenjoy
Thank you for the reply but we're not allowed to use any premanufactured component. As for the robotic arm its too complex to make a robotic arm that small. Anyways thank you for the suggestion.

@nafaiz
Thats really a good sensor. I need some more help if possible. This is regarding the movement of the robot. I'll somehow detect the white line first using one of the three methods:

1. Using a bend sensor and detecting if the robot is nearer or farther from the wall and steer it accordingly.
2. Using a micro switch to make the robot stay with the wall...
3. Just ask the robot to travel straight until it detects the line.

Problem is i thought of choosing the third method. Can i have some opinion on it?

And now, once it starts travelling... I'll use the already said 3 LED Detector system mounted at the bottom of the robot. When all the three LEDs glow it means that the bot has encountered a line. I'll ask the bot to stop. And then i'll ask it to turn 90 degrees. This is where i have a problem, i just can't ask it to rotate 90 degrees because then it would collide with the wall. I want to know if there is any other method...

Once it has rotated. I thought of creating a virtual array of pits in the microcontroller so that... If the middle LED is giving a 0 and the other two LEDs are giving a 1 it means that the bot has reached an intersection point. And i'll enable the first location of the array so that i'll know what pits the robot has gone through and which were are still left. I could get till here. Now the problem is what to do when the bot predicts a collision. I've attached an image to make everything clear... Is there any method which requires less coding and is the best? Please help...

I am not suggesting you to buy from Parallax Inc., I am mere telling you to look at there websites for you to have an idea on what to do, there PICBASIC manuals for robotics are free for download, there you can see examples on how to implement line following, collision avoidance using switches and IR reflection and control of servo motors, there are also other applications that can be helpful to you.

It is better for you to check that site, then you will have an idea on what to do.

Btw, if a post helped you, you can always say thanks by pressing the HELPED ME button.
 

    purifier

    Points: 2
    Helpful Answer Positive Rating
@glenjoy
I'm not able to access the site. I tried **broken link removed** Is it the right one or did i commit any mistake?


@nafaiz
Thank you for the reply...

i think there wont be any possibility that the 3 sensor wont glow at once as the white line is 5 cm. mine last time was only 2 cm.
I found this from the question.
"The Gaming arena will have 2 cm thick white lines forming a grid"
So do i have to alter anything else?

do u have to start there(as shown in ur algorithm file) or u can start anywhere else?
The position of the bot is fixed. Even the opponents is fixed...

i suggest u use 3 sensors that is attached side by side for the line follower and 1 more sensor further than the 3 about >7cm for detecting the horizontal line. the sensor should be in straight row with the 3 sensors but further. use this sensor as the counter for the horizontal line.

Can you please explain why this would be more useful?

why u need to go in that kind of way when u already know where the coin is( as shown in ur diagram before it was at fix 12) or u dont know where the coin is and the diagram shown before was just an example where the coin is hidden.

I'm sorry. That was just an example. I placed it on the diagram to show where exactly the coin is placed.

i dont think it's a good idea to go in that direction(as shown in ur algoritm). it will be better if u follow the white line as shown with the red line in file below. make a robot with the wheel and the horizontal line sensor(as mentinoed above) can get pass through the patches.
Not my fault this time. Its my drawing ability. I meant the same path. But while drawing i thought i shouldn't cover those pits...

I'm putting the pictures with more detailed information this time. I've enclosed how i plan to move the bot initially.

The problem is the bot first goes straight and then after it detects a white line... It has to turn... but how will it turn? There is no space left for it to turn. Is there a solution for this? Please help...
 

purifier said:
i think there wont be any possibility that the 3 sensor wont glow at once as the white line is 5 cm. mine last time was only 2 cm.
I found this from the question.
"The Gaming arena will have 2 cm thick white lines forming a grid"
So do i have to alter anything else?

i'm getting confused here. in ur post before u wrote that the white line is 5 cm. i think this 2 cm really means the thickness. so u must arrange ur sensor to be 3 cm from ground as the sensor needs 1 cm minimum to detect the white lines. just to remind u that the sensor will be very sensitive to light and 3 cm from ground is very high for the sensor. it might just detect light from surroundings and give logic high same as it detects white line. so u must adjust the sensitivity of the sensor very accurate before going into the game. another thing, i think that ur real game will have very bright surrounding. so u need to test ur robot in a surrounding that is also bright. these are for the sensor parts.

about the 3 sensor wont glow at a same time, refer to diagram 1. the robot on the left will get 3 sensor glow at the same time while robot in the left will only have 2 sensors glow at a time. later it will be 1 and after that no sensor will glow. this will make ur robot movement fail as u want it to turn after 3 sensors glow at a time.

for a line follower, ur robot movement should be like in the diagram 2. it will always steer left and right to find 3 sensors glow at a time.

about the 4th sensor, i've put it in the diagram 2. did u get the idea why i said the 4th should be further than the 3. the 4th is only used for detecting horizontal white line while the 3 is used for detecting only the straight line. this will make ur program easier and more accurate.

i'm sorry about my drawings.

for ur knowledge, it's better if u build ur own game field. there u may test ur robot till it will be perfect. spend some money on building the field. to win the game, u need a very fast and perfect robot. u need to run it on the field and u'll see all the mistakes it will make. trust me ur robot wont run like u want during the game day if u didn't try it on ur own field before. it will not run like u have imagined. there are always mistakes that will happen. and one more thing, during the game day, u will find out that opponents will always come with better ideas and u'll regret that u didn't use the same methods as they were. so, start building ur own field and apply ur robot on ur field. dont wait till last minute. learn from experience.
 

i'm getting confused here. in ur post before u wrote that the white line is 5 cm.
I'm sorry Sir... I meant that the pits or cues were having a 5 cm side. That means the dimensions of the pit are 5x5x5 cm.

i think this 2 cm really means the thickness. so u must arrange ur sensor to be 3 cm from ground as the sensor needs 1 cm minimum to detect the white lines.
So will that be the height of the sensor from the ground?

about the 3 sensor wont glow at a same time, refer to diagram 1. the robot on the left will get 3 sensor glow at the same time while robot in the left will only have 2 sensors glow at a time. later it will be 1 and after that no sensor will glow. this will make ur robot movement fail as u want it to turn after 3 sensors glow at a time.

for a line follower, ur robot movement should be like in the diagram 2. it will always steer left and right to find 3 sensors glow at a time.

about the 4th sensor, i've put it in the diagram 2. did u get the idea why i said the 4th should be further than the 3. the 4th is only used for detecting horizontal white line while the 3 is used for detecting only the straight line. this will make ur program easier and more accurate.


Actually i'll detect the white line only once that is the first time.. After that, i'll just ask the robot to follow the line till the middle LED gives a 1 and the other two LEDs Left and Right give a zero. This will be achieved using this fashion of arrangement.

If the robot is assumed to have a length of 30 cm and breadth of 20 cm and it is so arranged such that the length is parallel to the board's bottom edge, i'll put the middle sensor at a distance of 24 from length and 24 from breadth. The other sensors such that they won't give a one when the robot is moving on a white line... Will this work? Once the robot approaches a pit, the middle LED gives a 0 and the other two will give a 1... So that we can detect a pit has been approached...


for ur knowledge, it's better if u build ur own game field. there u may test ur robot till it will be perfect. spend some money on building the field.
Thats a really wise idea... I'll do that as soon as possible...[/quote]
 

So will that be the height of the sensor from the ground?.

yes that'll be the height.


Actually i'll detect the white line only once that is the first time..

i think u should refer back to diagram 1 that i've attached earlier. the diagram need to be downloaded as it was not viewable in the earlier post.
(in reference to diagram 1)if the robot movement was like the left robot in the diagram, than ur program will work. but if suddenly ur robot moves like the right robot in the diagram, then u will have a problem during the game.

After that, i'll just ask the robot to follow the line till the middle LED gives a 1 and the other two LEDs Left and Right give a zero. This will be achieved using this fashion of arrangement.

If the robot is assumed to have a length of 30 cm and breadth of 20 cm and it is so arranged such that the length is parallel to the board's bottom edge, i'll put the middle sensor at a distance of 24 from length and 24 from breadth. The other sensors such that they won't give a one when the robot is moving on a white line... Will this work? Once the robot approaches a pit, the middle LED gives a 0 and the other two will give a 1... So that we can detect a pit has been approached...

i think ur idea is great, but for safety use 2 or more sensors for detecting straight line. as i mentioned earlier, the movement of the robot should be like in diagram 2.

can i know how long u still have before the game starts.

for ur information, assembling the robot takes more time than programming it. so start assembling the robot now. divide groups by 2 for game field and 2 for assembling. game field wont take long, so later the other two may join u assembling the robot.

by the way, how many robots u can have or how much is the weight restrictions for all robots?


[/quote]
 

i think ur idea is great, but for safety use 2 or more sensors for detecting straight line. as i mentioned earlier, the movement of the robot should be like in diagram 2.

I'll implement that change...

can i know how long u still have before the game starts.
Exactly 45 days from now, i'll have to submit it...

for ur information, assembling the robot takes more time than programming it. so start assembling the robot now. divide groups by 2 for game field and 2 for assembling. game field wont take long, so later the other two may join u assembling the robot.
I'll take your advice and start on the board right away...

by the way, how many robots u can have or how much is the weight restrictions for all robots?
I can have only one bot... I don't think there is any weight restriction but we do have a size restriction 20x30xunlimted height...
 

Status
Not open for further replies.

Similar threads

Part and Inventory Search

Welcome to EDABoard.com

Sponsor

Back
Top