Cara Memprogram Sensor Getar Piezo Pada ESP32

Cara Memprogram Sensor Getar Piezo Pada ESP32

Sensor Getar Piezo adalah jenis sensor yang menggunakan efek piezoelektrik untuk mendeteksi getaran, guncangan, atau tekanan mekanis.Berikut ini adalah code untuk memprogramnya :

#include <Arduino.h>


int port_piezo = A0;




void setup()
{
Serial.begin(9600);
pinMode(port_piezo, INPUT);

}
void loop(){
int piezo = analogRead(port_piezo);
Serial.println("Piezo : " + (String)piezo);


}

Berikut ini adalah penjelasan dari kode di atas :

1. Inklusi Library

C++

#<strong>include</strong> <Arduino.h>
  • #include <Arduino.h>: Ini adalah library standar yang wajib ada di setiap program Arduino. Ia menyediakan fungsi-fungsi dasar yang kita gunakan, seperti Serial.begin(), pinMode(), dan analogRead().

2. Deklarasi Variabel Global

C++

int port_piezo = A0;
  • int port_piezo = A0;: Baris ini mendeklarasikan sebuah variabel bertipe integer (int) bernama port_piezo dan memberikan nilai A0 padanya. Variabel ini digunakan untuk menyimpan nomor pin analog Arduino yang terhubung ke pin output dari sensor getar piezo. Jadi, dalam kasus ini, sensor piezo Anda diharapkan terhubung ke pin analog A0 pada papan Arduino.

3. Fungsi setup()

C++

void setup()
{
  Serial.begin(9600);
  pinMode(port_piezo, INPUT);
}
  • Serial.begin(9600);: Fungsi ini menginisialisasi komunikasi serial pada baud rate 9600. Ini penting agar Arduino bisa mengirimkan data pembacaan sensor ke komputer Anda, yang kemudian bisa Anda lihat melalui Serial Monitor di Arduino IDE.
  • pinMode(port_piezo, INPUT);: Fungsi ini mengkonfigurasi pin analog yang telah kita definisikan (port_piezo, yaitu pin A0) sebagai INPUT. Ini memberitahu Arduino bahwa pin ini akan digunakan untuk membaca sinyal tegangan yang datang dari sensor piezo.

4. Fungsi loop()

C++

void loop(){
  int piezo = analogRead(port_piezo);
  Serial.println("Piezo : " + (String)piezo);
}
  • int piezo = analogRead(port_piezo);: Ini adalah inti dari pembacaan sensor.
    • analogRead(port_piezo): Fungsi ini membaca nilai tegangan analog dari pin yang ditentukan (port_piezo, yaitu pin A0). Mikrokontroler Arduino (seperti pada Uno) memiliki ADC (Analog-to-Digital Converter) 10-bit. Ini berarti ia akan mengkonversi tegangan input (biasanya dari 0V hingga 5V) menjadi nilai digital dalam rentang 0 hingga 1023.
    • Nilai yang dibaca ini (antara 0-1023) kemudian disimpan dalam variabel integer piezo. Semakin tinggi nilai ini, semakin kuat getaran yang terdeteksi.
  • Serial.println("Piezo : " + (String)piezo);: Baris ini mencetak status sensor piezo ke Serial Monitor.
    • "Piezo : " adalah teks literal yang akan dicetak.
    • (String)piezo: Ini mengkonversi nilai integer dari piezo (antara 0-1023) menjadi tipe data String, sehingga bisa digabungkan dengan teks.
    • Serial.println(): Mencetak teks dan kemudian menambahkan baris baru, sehingga setiap pembacaan akan muncul di baris terpisah di Serial Monitor.

Cara Kerja Keseluruhan

Secara sederhana, kode ini melakukan hal berikut:

  1. Persiapan (setup): Mengaktifkan komunikasi serial dan mengatur pin analog A0 Arduino sebagai pin input untuk sensor getar piezo.
  2. Pengulangan (loop): Terus-menerus membaca nilai tegangan dari sensor piezo.
    • Ketika tidak ada getaran, nilai yang dibaca akan mendekati 0 atau nilai baseline yang kecil.
    • Ketika ada getaran atau sentuhan, sensor piezo akan menghasilkan tegangan yang proporsional dengan intensitas getaran, dan nilai yang dibaca oleh analogRead() akan meningkat (mendekati 1023 untuk getaran yang sangat kuat).
    • Setiap kali nilai dibaca, nilai tersebut (antara 0-1023) akan dicetak ke Serial Monitor dengan awalan “Piezo : “.

Kode ini memberikan cara dasar untuk memantau aktivitas sensor piezo. Anda bisa menggunakannya untuk melihat bagaimana sensor bereaksi terhadap ketukan, guncangan, atau getaran yang berbeda. Untuk aplikasi yang lebih canggih (misalnya, untuk mendeteksi ambang batas getaran tertentu), Anda bisa menambahkan logika if pada nilai piezo yang dibaca.

untuk diskusi bisa kontak dibawah ini :

Sosial media :

Apa itu ESP32?