Object Avoidance Program

Dependencies:   4DGL-uLCD-SE Motordriver mbed

Committer:
rokash000
Date:
Tue Apr 29 22:06:35 2014 +0000
Revision:
3:8af20d0242b2
Parent:
2:d38a5f767527
Child:
4:1c83cabcd6f8
Sensor testing with LEDS

Who changed what in which revision?

UserRevisionLine numberNew contents of line
rokash000 0:eb26279eeb24 1
rokash000 0:eb26279eeb24 2 #include "mbed.h"
rokash000 0:eb26279eeb24 3 #include "motordriver.h"
rokash000 0:eb26279eeb24 4 //#include "SHARPIR.h"
rokash000 0:eb26279eeb24 5 #include "uLCD_4DGL.h"
rokash000 0:eb26279eeb24 6
rokash000 0:eb26279eeb24 7 Motor mA(p22, p6, p5, 1); // pwm, fwd, rev
rokash000 0:eb26279eeb24 8 Motor mB(p23, p8, p7, 1); // pwm, fwd, rev
rokash000 0:eb26279eeb24 9
rokash000 0:eb26279eeb24 10
rokash000 0:eb26279eeb24 11 Serial pc(USBTX, USBRX); // tx, rx
rokash000 0:eb26279eeb24 12 DigitalOut led_back(p16); // test led for Back_sensor
rokash000 0:eb26279eeb24 13 DigitalOut led_left(p15); // test led for Back_sensor
rokash000 0:eb26279eeb24 14 DigitalOut led_right(p14); // test led for Back_sensor
rokash000 0:eb26279eeb24 15 DigitalOut led_front(p13); // test led for Back_sensor
rokash000 0:eb26279eeb24 16
rokash000 0:eb26279eeb24 17 AnalogIn irBack_ain(p18);
rokash000 0:eb26279eeb24 18 AnalogIn irFront_ain(p17);
rokash000 0:eb26279eeb24 19 AnalogIn irLeft_ain(p20);
rokash000 0:eb26279eeb24 20 AnalogIn irRight_ain(p19);
rokash000 0:eb26279eeb24 21
rokash000 0:eb26279eeb24 22 //SHARPIR sensor_back(p18); //the output of the sharpIR sensor is connected to the MBEDs pin 10.
rokash000 0:eb26279eeb24 23
rokash000 0:eb26279eeb24 24 //uLCD_4DGL uLCD(p28, p27, p29); // create a global lcd object
rokash000 0:eb26279eeb24 25
rokash000 0:eb26279eeb24 26 //speed => 1 = forward, -1 = reverse ... range from -1 to 1
rokash000 0:eb26279eeb24 27
rokash000 0:eb26279eeb24 28 int main() {
rokash000 0:eb26279eeb24 29 //uLCD.cls();
rokash000 0:eb26279eeb24 30 float backsensor = 0.0;
rokash000 0:eb26279eeb24 31 float frontsensor = 0.0;
rokash000 0:eb26279eeb24 32 float leftsensor = 0.0;
rokash000 0:eb26279eeb24 33 float rightsensor = 0.0;
rokash000 0:eb26279eeb24 34 int sensor = 0;
rokash000 0:eb26279eeb24 35 while(1){
rokash000 0:eb26279eeb24 36
rokash000 0:eb26279eeb24 37
rokash000 0:eb26279eeb24 38
rokash000 0:eb26279eeb24 39
rokash000 0:eb26279eeb24 40
rokash000 0:eb26279eeb24 41 //float backsensor = sensor_back.cm();
rokash000 0:eb26279eeb24 42
rokash000 0:eb26279eeb24 43 backsensor = irBack_ain * 100;
rokash000 0:eb26279eeb24 44 // pc.printf("FRONT Sensor is: %f \n", backsensor);
rokash000 0:eb26279eeb24 45 frontsensor = irFront_ain * 100;
rokash000 0:eb26279eeb24 46 leftsensor = irLeft_ain * 100;
rokash000 0:eb26279eeb24 47 rightsensor = irRight_ain * 100;
rokash000 0:eb26279eeb24 48 //pc.printf("Front Sensor is: %f \n", frontsensor);
rokash000 0:eb26279eeb24 49 // pc.printf("Left Sensor is: %f \n", leftsensor);
rokash000 0:eb26279eeb24 50 // pc.printf("Right Sensor is: %f \n", rightsensor);
rokash000 0:eb26279eeb24 51 //
rokash000 0:eb26279eeb24 52 if((frontsensor > 52)&&(frontsensor < 100)){
rokash000 3:8af20d0242b2 53 //mA.stop(0.5);
rokash000 3:8af20d0242b2 54 // mB.stop(0.5);
rokash000 3:8af20d0242b2 55 //mA.speed(-.6);
rokash000 3:8af20d0242b2 56 //mB.speed(-.8);
rokash000 3:8af20d0242b2 57 //led_front = 1;
rokash000 3:8af20d0242b2 58 // led_back = 0;
rokash000 3:8af20d0242b2 59 // led_left = 0;
rokash000 3:8af20d0242b2 60 // led_right = 0;
rokash000 3:8af20d0242b2 61 // mA.stop(0.5);
rokash000 3:8af20d0242b2 62 //mB.stop(0.5);
rokash000 3:8af20d0242b2 63 led_front = 1;
rokash000 3:8af20d0242b2 64 }
rokash000 3:8af20d0242b2 65 else {led_front= 0;}
rokash000 3:8af20d0242b2 66
rokash000 3:8af20d0242b2 67 if((backsensor > 52)&&(backsensor < 100)){
rokash000 2:d38a5f767527 68 led_back = 1;}
rokash000 3:8af20d0242b2 69 else {led_back = 0;}
rokash000 3:8af20d0242b2 70
rokash000 3:8af20d0242b2 71 if((leftsensor > 52)&&(leftsensor < 100)){
rokash000 2:d38a5f767527 72 led_left = 1;}
rokash000 3:8af20d0242b2 73 else {led_left = 0;}
rokash000 3:8af20d0242b2 74
rokash000 3:8af20d0242b2 75 if((rightsensor > 52)&&(rightsensor < 100)){
rokash000 2:d38a5f767527 76 led_right = 1;}
rokash000 3:8af20d0242b2 77 else {led_right = 0;}
rokash000 3:8af20d0242b2 78
rokash000 3:8af20d0242b2 79
rokash000 3:8af20d0242b2 80
rokash000 1:ab45b552644b 81 }
rokash000 0:eb26279eeb24 82 }