
Robot code for searching an object and charging at it.
Dependencies: HCSR04 Motor mbed
Revision 20:37a89edd1cde, committed 2015-06-07
- Comitter:
- abdsha01
- Date:
- Sun Jun 07 14:18:00 2015 +0000
- Parent:
- 19:67ea4e8be9e1
- Child:
- 21:42c0db071a7f
- Child:
- 22:e808fb71847d
- Commit message:
- Cleaned the code by adding global variables and removing unnecessary code.
Changed in this revision
--- a/functions.cpp Sat May 30 19:08:26 2015 +0000 +++ b/functions.cpp Sun Jun 07 14:18:00 2015 +0000 @@ -151,7 +151,6 @@ int fwd_bck; int fwd; float random_time; - float random_speed; printf("Moving randomly\n"); counter = rand() % 5; @@ -161,15 +160,6 @@ random_time = rand() % 1000 + 1000; fwd_bck = rand()%2; - //random_speed = (float)rand()/(float)(RAND_MAX); - - //if (random_speed < 0.6) { - //random_speed = 0.5; - //} else if (random_speed >= 0.8) { - //random_speed = 0.8; - //} - - random_speed = 0.5; // If fwd_back == 1 move forward or backwards if (fwd_bck == 1) { @@ -177,16 +167,16 @@ // If fwd == 1 move forward if (fwd == 1) { printf("Moving forward\n"); - move_detect(random_speed, fwd_bck, random_time); + move_detect(move_forwardspeed, fwd_bck, random_time); // If fwd == 0 move bacward } else { printf("Moving bacwards\n"); - move_detect(-random_speed, fwd_bck, random_time); + move_detect(-move_forwardspeed, fwd_bck, random_time); } // Turn } else { printf("Turning\n"); - move_detect(random_speed, fwd_bck, random_time); + move_detect(move_forwardspeed, fwd_bck, random_time); } } } @@ -260,14 +250,14 @@ if(detect == 1) { stop(); turn_leds_on(); - move_detect(-0.5,1,1000); + move_detect(-move_forwardspeed,1,1000); stop(); break; // If line is detected from back just keep on moving forward } else if (detect == -1) { stop(); turn_leds_on(); - move_detect(0.5,1,1000); + move_detect(move_forwardspeed,1,1000); stop(); break; }
--- a/functions.h Sat May 30 19:08:26 2015 +0000 +++ b/functions.h Sun Jun 07 14:18:00 2015 +0000 @@ -1,5 +1,16 @@ // Header file for functions.cpp +// Global parameters +// Speed at which it move_forwards an object +// optimum value: 0.4 to 0.8 +extern float move_forwardspeed; +// Speed at which it rotates to find an object +// optimum value: 0.3 to 0.5 +extern float searchspeed; +// Range of detection +// optimum value: 30 to 50 +extern unsigned int range; + void flash_leds(); void turn_leds_on(); int read_line1();
--- a/main.cpp Sat May 30 19:08:26 2015 +0000 +++ b/main.cpp Sun Jun 07 14:18:00 2015 +0000 @@ -34,10 +34,13 @@ // // reverse(speed) // - reverses the robot with move_forwardspeed in same position - +// // reverseandturn(speed) // - reverses whie moving in a circular direction // +// stop() +// - stops the robot +// // Libraries for using the above functions and more ... #include "mbed.h" @@ -49,7 +52,6 @@ // Example: pc(TX, RX) //Serial pc(USBTX, USBRX); - // Global parameters // Speed at which it move_forwards an object // optimum value: 0.4 to 0.8