#define ftrig_pin 5
#define fecho_pin 4
#define ltrig_pin 3
#define lecho_pin 2
#define rtrig_pin 6
#define recho_pin 7
#define lmotor 10
#define rmotor 9
void setup()
{
Serial.begin(9600);
pinMode(ftrig_pin,OUTPUT);
pinMode(fecho_pin,INPUT);
pinMode(ltrig_pin,OUTPUT);
pinMode(lecho_pin,INPUT);
pinMode(rtrig_pin,OUTPUT);
pinMode(recho_pin,INPUT);
}
void loop(){
analogWrite(lmotor,255);
analogWrite(rmotor,255);
digitalWrite(ftrig_pin,HIGH);
digitalWrite(ltrig_pin,HIGH);
digitalWrite(rtrig_pin,HIGH);
delayMicroseconds(10);
digitalWrite(ftrig_pin,LOW);
digitalWrite(ltrig_pin,LOW);
digitalWrite(rtrig_pin,LOW);
int duration_f,duration_l,duration_r;
duration_f=pulseIn(fecho_pin,HIGH);
duration_l=pulseIn(lecho_pin,HIGH);
duration_r=pulseIn(recho_pin,HIGH);
Serial.print("forward distance:\n");
Serial.println(duration_f/58);
Serial.print("left distance\n");
Serial.println(duration_l/58);
Serial.print("right distance:\n");
Serial.println(duration_r/58);
if((duration_f/58)<20)
{
analogWrite(lmotor,0);
analogWrite(rmotor,0);
delay(5000);
}
if((duration_l/58)>12 && (duration_r/58)>12)
{
analogWrite(lmotor,0);
analogWrite(rmotor,255);
delay(10000);
}
else if((duration_l/58)>12 && duration_f>30)
{
analogWrite(lmotor,125);
analogWrite(rmotor,255);
delay(1000);
}
else if(duration_r>12 && duration_f>30)
{
analogWrite(lmotor,255);
analogWrite(rmotor,255);
delay(1000);
}
else if(duration_l>12)
{
analogWrite(lmotor,125);
analogWrite(rmotor,255);
delay(1000);
}
else{
analogWrite(lmotor,255);
analogWrite(rmotor,125);
delay(1000);
}
}
uno:A5.2
uno:A4.2
uno:AREF
uno:GND.1
uno:13
uno:12
uno:11
uno:10
uno:9
uno:8
uno:7
uno:6
uno:5
uno:4
uno:3
uno:2
uno:1
uno:0
uno:IOREF
uno:RESET
uno:3.3V
uno:5V
uno:GND.2
uno:GND.3
uno:VIN
uno:A0
uno:A1
uno:A2
uno:A3
uno:A4
uno:A5
ultrasonic1:VCC
ultrasonic1:TRIG
ultrasonic1:ECHO
ultrasonic1:GND
ultrasonic2:VCC
ultrasonic2:TRIG
ultrasonic2:ECHO
ultrasonic2:GND
ultrasonic3:VCC
ultrasonic3:TRIG
ultrasonic3:ECHO
ultrasonic3:GND
led2:A
led2:C
led3:A
led3:C