You are on page 1of 2

//ROBOT ANTI PENGHALANG

// sensor ultrasonic

const int pingPin = A1;


const int echoPin = A0;

//motor DC

int kiriA = 9;
int kiriB = 6;
int kananA = 5;
int kananB = 3;

void setup()
{
Serial.begin(9600);
pinMode(kiriA,OUTPUT);
pinMode(kiriB,OUTPUT);
pinMode(kananA,OUTPUT);
pinMode(kananB,OUTPUT);
}

void loop()
{

long duration, inches, cm;

pinMode(pingPin, OUTPUT);
digitalWrite(pingPin, LOW);
delayMicroseconds(2);
digitalWrite(pingPin, HIGH);
delayMicroseconds(10);
digitalWrite(pingPin, LOW);

pinMode(echoPin, INPUT);
duration = pulseIn(echoPin, HIGH);

// konversi waktu ke jarak


inches = microsecondsToInches(duration);
cm = microsecondsToCentimeters(duration);

// SERIAL DEBUG
Serial.print(inches);
Serial.print("in, ");
Serial.print(cm);
Serial.print("cm");
Serial.println();
delay(100);

if (cm <=50)
{
analogWrite(kiriA,255);
analogWrite(kiriB,0);
analogWrite(kananA,0);
analogWrite(kananB,255);
}
else
{
analogWrite(kiriA,0);
analogWrite(kiriB,255);
analogWrite(kananA,0);
analogWrite(kananB,255);
}

long microsecondsToInches(long microseconds)


{
return microseconds / 74 / 2;
}
long microsecondsToCentimeters(long microseconds)
{
return microseconds / 29 / 2;
}

You might also like