Jumat, 13 November 2015

Knock Sensor mengggunakan Microcontroller Arduino

Assalamualaikum wr.wb
Dalam kesempatan kali ini saya akan membahas tutorial bagai mana menggunakan micro controller jenis arduino uno untuk mengoprasikan knock sensor. Sebelum masuk ke tutorial alangkah baik nya kita pertama-tama mengetahui apa itu Knock sensor ? Bagaimana prinsif kerja dari knock sensor itu ?
Nah pertama-tama saya mencoba memperkenal kan dulu apa itu Knock Sensor ? Knock Sensor adalah sebuat alat elektronik yang dapat mendeteksi ketukan/ledakan dari sebuah mesin dari pra ledakan campuran dan bahan bakar.
Dari prinsif kerja Knock Sensor sendiri adalah sensor yang dapat mendeteksi ketukan dan dapat mengirimkan sinyal ke ECM atau mendeteksi pembakaran tidak normal pada mesin. Sensor ini menghasilkan tegangan listrik ketika getaran di deteksi oleh sensor tersebut, memanfaatkan efek Piezoelektrik yang menghasilkan tegangan listrik sebanding ke pemecutan sehubungan dengan getaran tersebut. Efek Piezoelektrik di temukan oleh dua orang ahli yang bernama Piere dan Jecque Curie di akhir abad ke-19.
Tanpa basa-basi setelah kita tahu mengenai Knock Sensor dan prinsif kerja nya, mari kita masuk ke tutorial nya, disini saya menggunakan Piezoelektrik untuk mendeteksi ketukan, kenapa harus menggunakan Knock Sensor karena saya mengambil keuntungan dari kemampuan prosesor untuk membaca sinyal analog untuk mengkorversi ke sinyal digital.

Konverter ini membaca nilai tegangan dan mengubahnya menjadi nilai secara digital. Dalam kasus papan Arduino, kita mengubah tegangan menjadi nilai dalam kisaran 0..1024. 0 mewakili 0 volts, sedangkan 1024 merupakan 5 Volts pada masukan dari salah satu dari enam pin analog.
Sebuah Piezo tidak lain hanyalah sebuah perangkat elektronik yang keduanya dapat digunakan untuk memainkan ketukan dan mendeteksi ketukan. Dalam contoh kita kita mencolokkan Piezo pada analog pin masukan angka 0, yang mendukung fungsi membaca nilai antara 0 dan 5Volts, dan bukan hanya polos TINGGI atau RENDAH.
Hal lain yang perlu diingat adalah bahwa piezos memiliki polaritas, perangkat komersial biasanya memiliki merah dan kabel hitam menunjukkan bagaimana pasang ke papan. Kami menghubungkan hitam ke tanah dan satu merah untuk input. Kami juga harus menghubungkan resistor di kisaran Mega ohm secara paralel untuk elemen Piezo, dalam contoh kita telah terpasang langsung di konektor perempuan. Kadang-kadang adalah mungkin untuk memperoleh elemen Piezo tanpa perumahan plastik, maka mereka hanya akan terlihat seperti disk logam dan lebih mudah untuk digunakan sebagai sensor masukan.
Contoh kode akan menangkap ketukan dan jika itu adalah lebih kuat dari batas tertentu, ia akan mengirim string "knock!" kembali ke komputer melalui port serial. Untuk melihat teks ini kamu bisa menggunakan program terminal, yang akan membaca data dari port serial dan menunjukkannya di jendela, atau membuat program Anda sendiri di misalnya Pengolahan. Kemudian dalam artikel ini kami mengusulkan sebuah program yang bekerja untuk perangkat lunak yang dirancang oleh Reas dan Fry.
Contoh koneksi dari Piezo ke analog pin 0 dengan resistor
* Knock Sensor
* Program using a Piezo element as if it was a knock sensor.
*
* We have to basically listen to an analog pin and detect
* if the signal goes over a certain threshold. It writes
* "knock" to the serial port if the Threshold is crossed,
* and toggles the LED on pin 13.
*
* (cleft) 2005 D. Cuartielles for K3

Setelah Arduino dan sensor telah di rakit maka, buatlah program pada softwere Arduino seperti di bawah ini :

int ledPin = 13; // Sebagai pengenalan ke mesin bahwa ledpin ada di pin 13
int knockSensor = 0; // Sebagai pengenalan ke mesin bahwa ledpin ada di pin 0
byte val = 0;
int statePin = LOW;
int THRESHOLD = 100;
void setup()
{
pinMode(ledPin, OUTPUT); // Sebagai pengenalan ke mesin bahwa ledpin sebagai      
                        // outputnya
beginSerial(9600);
}
void loop()
{
val = analogRead(knockSensor);
if (val >= THRESHOLD)
{
statePin = !statePin;
digitalWrite(ledPin, statePin);
printString("Knock!");
printByte(10);
printByte(13);
}
delay(100); // di gunakan untuk memberika delay pada program setiap satuan
            // waktu (second)
}

 Setelah selesai membuat program, tinggal kita upload program tersebut ke Arduino dengan mengklik menu bar upload seperti pada gambar di bawah ini :

Sekian tutorial mengenai pengoprasian knock sensor menggunakan micro controller, mohon maaf apabila tutorial saya tidak sempurna. Selamat mencoba dan semoga bermanfaat terimakasih..

Sumber : https://www.arduino.cc/