Robot code for searching an object and charging at it.

Dependencies:   HCSR04 Motor mbed

Files at this revision

API Documentation at this revision

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

functions.cpp Show annotated file Show diff for this revision Revisions of this file
functions.h Show annotated file Show diff for this revision Revisions of this file
main.cpp Show annotated file Show diff for this revision Revisions of this file
--- 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