#include <Servo.h>
int trigpin = 12 ;
int echopin = 11 ;
long duration, cm, inches;
Servo myservo;
void setup() {
// put your setup code here, to run once:
Serial.begin(9600);
pinMode(trigpin, OUTPUT);
pinMode(echopin, INPUT);
myservo.attach(5);
}
void loop()
{
// put your main code here, to run repeatedly:
digitalWrite(trigpin, LOW);
delayMicroseconds(0);
digitalWrite(trigpin, HIGH);
delayMicroseconds(0);
digitalWrite(trigpin, LOW);
pinMode(echopin, INPUT);
duration = pulseIn(echopin, HIGH);
cm = (duration/2) / 29.1;
inches = (duration/2) / 74;
Serial.print(inches);
Serial.print("in, ");
Serial.print(cm);
Serial.print("cm");
Serial.println();
if (cm < 30 )
{
myservo.write(180);
// jika kendaraan akan keluar dari parkiran
// sensor mendeteksi kendaraan yang mendekat dan servo akan terbuka
}
if (cm > 200)
{
myservo.write(180);
// jika tidak ada kendaraan
// servo akan terbuka jika dalam 200 cm tidak terdeteksi kendaraan
}
if (cm > 30 && cm < 200)
{
myservo.write(90);
// jika kendaraan sedang parkir
// servo akan tertutup jika kendaraan berjarak lebih dari 30 cm dari sensor
}
}