Program Pembacaan dan Pengolahan Sensor FSR Program Pengiriman Data Dari ATmega 8535 ke Raspberry Pi

didapatkan data proses selanjutnya adalah mengirimkan data tersebut ke Raspberry Pi dengan komunikasi paralel. Selanjutnya program akan dieksekusi di Raspberry dengan melihat kondisi selector switch yang dipilih. Jika mode slendro yang dipilih program akan memanggil sample nada slendro untuk dimainkan. Begitu juga sebaliknya jika yang dipilih mode pelog maka program akan memanggil sample nada pelog untuk dimainkan. Setelah proses memainkan nada maka program akan melihat kondisi push button switch. Jika push button ditekan maka akan menghentikan suara rekaman yang sedang dimainkan dan sensor akan kembali membaca pukulan untuk memainkan nada selanjutnya dan begitu seterusnya.

3.4.1. Program Pembacaan dan Pengolahan Sensor FSR

Keluaran dari sensor FSR berupa sinyal tegangan analog, oleh karena itu nilai keluaran tersebut harus dihubungkan dengan ADC karena pin GPIO pada Raspberry Pi hanya bisa membaca masukan data digital. Resolusi bit ADC pada ATmega 8535 adalah 10 bit. Ini berarti bahwa ADC akan mengubah masukan analog dalam rentang 0V – 5V menjadi nilai digital 0 - 1023. Besarnya nilai ADC dapat dihitung dengan persamaan 2.2. Program pembacaan sensor FSR dimulai dengan mendeklarasikan port ATmega 8535 yang digunakan dalam proses ini. Selanjutnya proses pembacaan sensor dimulai dengan membaca nilai ADC FSR 1 sampai dengan FSR 7. Setelah melakukan proses pembacaan maka dilakukan proses pengolahan data sensor dengan merata-rata data nilai ADC yang terbaca dengan metode moving average seperti Persamaan 2.3. untuk kemudian didapatkan nilai ADC yang benar-benar mewakili kuatnya pukulan yang diberikan. Setelah didapatkan nilai rata-rata selanjutnya adalah mengelompokan nilai rata-rata tersebut yang dijadikan acuan dalam memainkan suara demung pada Raspberry Pi. Pembagian range nilai ADC dilakukan berdasarkan level suara yang akan dimainkan seperti pada Tabel 3.11. Diagram alir pembacaan sensor FSR dapat dilihat pada Gamabar 3.11. Tabel 3.11. Perbandingan nilai ADC dalam menentukan tingkatan volume No Nilai Pukul ADC Kondisi 1 threshold A 0b01 2 =A B 0b10 3 =B 1023 0b11 PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI Besarnya nilai pukul ADC berkisar antara 0-1023 karena pada penelitian ini menggunakan ADC 10 bit. A dan B merupakan variabel yang berfungsi sebagai batas tiap tingkatan volume berdasarkan nilai ADC. Besarnya nilai A,B, dan threshold akan dibahas lebih lanjut saat implementasi pada Bab IV. Gambar 3.11. Diagram alir pembacaan dan pengolahan sensor FSR PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

3.4.2. Program Pengiriman Data Dari ATmega 8535 ke Raspberry Pi

Setelah proses pembacaan dan pengolahan sensor FSR maka selanjutnya data akan dikirim dari ATmega 8535 ke Raspberry Pi dengan komunikasi pararel dengan jumlah data 5 bit. Komunikasi pararel dipilih karena proses pengiriman data bisa berlangsung lebih cepat. Data akan dikirimkan secara bersamaan dalam satu waktu bersamaan sehingga untuk 5 bit data diperlukan 5 jalur untuk transmisi data. Chanel merupakan bit data yang menunjukkan sensor FSR yang dipilih. Karena pada penelitian ini menggunakan 7 buah sensor FSR jadi diperlukan 3 bit data untuk mewakilkan setiap sensor FSR 0b000 – 0b111. Sedangkan untuk kondisi pengelompokan level suara diperlukan 2 bit data 0b00 – 0b11 yang mewakili Level 1 – Level 3. Diagram alir pengiriman data dari ATmega 8535 ke Raspberry pi dapat dilihat pada Gambar 3.12. Gambar 3.12. Diagram alir pengiriman data sensor data sensor PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI Setelah mendapatkan data dari chanel dan kondisi selanjutnya adalah menggeser data chanel sebanyak 2 kali sehingga data chanel dan kondisi tidak tertumpuk. Setelah dilakukan penggeseran maka kedua data tersebut di jumlahkan operasi or sehingga didapat 5 bit data yang mewakili masing-masing chanel dan kondisi. Selanjutnya ketika en berlogika high 1 maka data siap dikirim. Setelah selesai pengiriman en kembali berlogika low 0. Sehingga dalam komunikasi pararel ini menggunakan 6 jalur komunikasi. 5 jalur sebagai bit data dan 1 jalur sebagai pemicu atau penanda untuk proses pengiriman data.

3.4.3. Program Memainkan Nada