NODEMCU ESP8266 + ULTRASONIC HC-SRO4


Pada tutorial kali ini kita akan menggunakan sensor ultrasonic HC-SR04 dan NodeMCU V3, sensor ultrasonic adalah sensor yang dapt mendeteksi jarak dengan memanfaatkan gelombang ultrasonic.

ALAT DAN BAHAN
1. HC-SR04
2. NodeMCU V3

SCHEMATIC RANGKAIAN
Hubungkan Ultrasonic anda dengan NodeMCU seperti berikut:

  • pin vcc ultrasonic →pin 3V NodeMCU
  • pin gnd ultrasonic →pin GND NodeMCU
  • pin trig ultrasonic →pin D4 NodeMCU
  • pin echo ultrasonic →pin D3 NodeMCU

KODING ARDUINO

const int trigPin = 2; //D4
const int echoPin = 0; //D3

long duration;
int distance;

void setup() {
pinMode(trigPin, OUTPUT);
pinMode(echoPin, INPUT); 
Serial.begin(9600); 
}


void loop() {
// Pastikan pinTrig Mati selama 2us
digitalWrite(trigPin, LOW);
delayMicroseconds(2);

// Aktifkan trigger pin selama 10us
digitalWrite(trigPin, HIGH);
delayMicroseconds(10);
digitalWrite(trigPin, LOW);

// baca pin echo
duration = pulseIn(echoPin, HIGH);
// masukkan rumus jarak dari ultrasonic
distance= duration*0.034/2;

// tampilkan jarak 
Serial.print("Distance: ");
Serial.println(distance);
delay(1000);
}

PENJELASAN KODING
const int trigPin = 2; //D4
const int echoPin = 0; //D3
Deklarasi kan pin trigger dan pin echo yaitu 2 dan 0,pada nodemcu tertera no pin seperti D4 D3 D0 dan seterusnya, 2 dan 0 pada trigPin dan echoPin adalah no pin GPIO pada nodeMCU bukan no pin yang anda lihat pada board nodemcu, untuk melihat no GPIO nodemcu anda dapat melihatnnya di internet.(D4 = 2) dan (D3 = 0)

long duration;
int distance;
Deklarasi varibael duration dan distance dengan tipe masing-masing yaitu long dan int.

pinMode(trigPin, OUTPUT);
pinMode(echoPin, INPUT);
men-set pin trigger(trigPin) sebagai OUTPUT dan pin echo (echoPin) sebagai INPUT

digitalWrite(trigPin, LOW);
delayMicroseconds(2);
Pastikan pin trigger anda tidak aktif selama 2us

digitalWrite(trigPin, HIGH);
delayMicroseconds(10);
digitalWrite(trigPin, LOW);
Aktifkan pin trigger selama 10us

duration = pulseIn(echoPin, HIGH);

Membaca panjang durasi gelombang pantul ultrasonic dari pin echo

distance= duration*0.034/2;
rumus mencari jarak menggunakan durasi gelombang pantul ultrasonic

Serial.print("Distance: ");
Serial.println(distance);
Menampilkan jarak