
Robot code for searching an object and charging at it.
Dependencies: HCSR04 Motor mbed
Revision 21:42c0db071a7f, committed 2015-06-07
- Comitter:
- abdsha01
- Date:
- Sun Jun 07 14:59:23 2015 +0000
- Parent:
- 20:37a89edd1cde
- Child:
- 23:07b3c12800a6
- Commit message:
- Added default values for speed and range for functions
Changed in this revision
functions.cpp | 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 Sun Jun 07 14:18:00 2015 +0000 +++ b/functions.cpp Sun Jun 07 14:59:23 2015 +0000 @@ -122,25 +122,25 @@ } } -void reverse(float speed) { +void reverse(float speed = move_forwardspeed) { printf("Reverse\n"); MotorLeft.speed(-(speed)); MotorRight.speed(-(speed)); } -void turn(float speed) { +void turn(float speed = move_forwardspeed) { printf("Turning\n"); MotorLeft.speed(speed); MotorRight.speed(-(speed)); } -void reverseandturn(float speed) { +void reverseandturn(float speed = move_forwardspeed) { printf("Reverse and turn\n"); MotorLeft.speed((speed-0.3)); MotorRight.speed(-(speed-0.1)); } -void move_forward(float speed) { +void move_forward(float speed = move_forwardspeed) { MotorLeft.speed(speed); MotorRight.speed(speed); } @@ -186,7 +186,7 @@ MotorRight.speed(0.0); } -int detect_object(int range, float speed) { +int detect_object(int range_t = range, float speed = move_forwardspeed) { // Start a timer - finds an object for 5 seconds // if it doesn't find anything returns 0 Timer usensor_t, inner_t; @@ -205,7 +205,7 @@ dist = usensor.get_dist_cm(); // If an object is detected based on out set range return 1 - if (dist <= range && dist >= 1) { + if (dist <= range_t && dist >= 1) { sense = 1; stop(); flash_leds();
--- a/main.cpp Sun Jun 07 14:18:00 2015 +0000 +++ b/main.cpp Sun Jun 07 14:59:23 2015 +0000 @@ -23,7 +23,7 @@ // move in a circle to find an object and // return 1 if it finds something and return // 0 if it does not find anything - the search -// will be carried out for 10 seconds. +// will be carried out for 15 seconds. // // detect_line () // - used to detect a line, it returns the following @@ -41,6 +41,11 @@ // stop() // - stops the robot // +// moverandom(speed) +// - used to move the robot randomly, the robot will either +// move forward, move backward, or turn around. The movement +// will be carried out for a random time +// // Libraries for using the above functions and more ... #include "mbed.h"