Membuat electric drum ternyata tidak susah, hanya membutuhkan piezo transducer, pad, breadboard, serta tentunya Arduino.
Mau tau cara bikinnya? Silahkan membaca link berikut : http://code.google.com/p/ardrumo/
// Motor shield ini menggunakan pin 4,5,6,7 untuk mengontrol 2 motor // Sambungkan motor DC ke M1+, M1-, M2+, M2- // Upload sketch ke Arduino // Via serial monitor, ketikkan "a", "s", "d", "w", dan "x" // untuk mengontrol kedua motor // Last Modified : 24 Feb 2010, GERAI CERDAS #define leftMotor_Dir 4 // arah putar (Motor 2 / Kiri) #define leftMotor_Vel 5 // kontrol kecepatan (Motor 2 / Kiri) #define rightMotor_Vel 6 // kontrol kecepatan (Motor 1 / Kanan) #define rightMotor_Dir 7 // arah putar (Motor 1 / Kanan) void rightMotor(int pwm, boolean reverse) { analogWrite(rightMotor_Vel, pwm); if (reverse) digitalWrite(rightMotor_Dir, HIGH); else digitalWrite(rightMotor_Dir, LOW); } void leftMotor(int pwm, boolean reverse) { analogWrite(leftMotor_Vel, pwm); if (reverse) digitalWrite(leftMotor_Dir, HIGH); else digitalWrite(leftMotor_Dir, LOW); } void setup() { int i; for(i=4;i<=7;i++) //set pin 4,5,6,7 to output mode pinMode(i, OUTPUT); Serial.begin(9600); } void loop() { int x,delay_en; char val; while(1) { val = Serial.read(); if(val!=-1) { switch(val) { case 'w':// Maju rightMotor(100,true); leftMotor(100,true); break; case 'x':// Mundur rightMotor(100,false); leftMotor(100,false); break; case 'a':// Kiri rightMotor(100,false); leftMotor(100,true); break; case 'd':// Kanan rightMotor(100,true); leftMotor(100,false); break; case 's':// Stop rightMotor(0,false); leftMotor(0,false);Upload sketch di atas, lalu aktifkan mode Serial Monitor. Ketikkan "a", "s", "d", "w", dan "x" untuk mengatur arah putaran motor DC. Program di atas dapat diaplikasikan untuk robot beroda dua. Selamat mencoba
break; } } } }
/*------------------------------------------------------------------ SENSOR SUHU LCD Author : Insan Sains Date Created : Last Modified : 17 April 2011 Language : English for script Indonesia for Comments Descriptions : Sketch ini menampilkan nilai suhu di LCD 4884 pin data LM35DZ (tengah) dihubungkan ke Analog 1 ------------------------------------------------------------------*/ #include <LCD4884.h> #include <stdlib.h> #define pinDataLM35 1 // pin tengah LM35 ke port Analog 1 float temperature; // variable untuk menyimpan data suhu // float berarti hasilnya akan ada koma // kalau int hasilnya berupa pembulatan char buffer[8]; // untuk menyimpan float -> string void setup() { lcd.LCD_init(); lcd.LCD_clear(); } void loop() { /* Baca output dari LM35 yang masuk ke pin analog Data yang terbaca sudah dalam bentuk konversi ADC Konversi ADC = Vout/Vref*1023 Jadi bukan dalam bentuk besaran tegangan lagi Jika ingin tahu tegangan output LM35 gunakan rumus di atas : Tegangan terbaca = Konversi ADC * tegangan referensi / 1024 Ukur pin 2 dan 3 pd LM35 dengan multimeter untuk memastikan */ temperature = analogRead(pinDataLM35); // Ubah data konversi ADC diatas menjadi besaran suhu // menggunakan rumus konversi ADC temperature = temperature * (5.0 * 100.0/1024.0); // Kirim hasil pembacaan via serial port lcd.LCD_write_string(0,0," Suhu saat ini (Celcius) : ", MENU_NORMAL); lcd.LCD_write_string_big(15,2, dtostrf(temperature, 5,2, buffer), MENU_NORMAL); // Berikan pewaktuan agar tidak langsung berubah delay(500); }