konversi data ke nilai percepatan (g)eprints.umm.ac.id › 39638 › 4 › bab iii.pdf ·...
TRANSCRIPT
18
BAB III
METODOLOGI / PERANCANGAN SISTEM
Kajian yang diterapkan pada skripsi ini bersifat analisis dan aplikatif, yaitu
tentang penentuan faktor kalibrasi sensor accelerometer ADXL345 pada ketiga
sumbu sebagai deteksi posisi/jarak. Dalam proses penentuan faktor kalibrasi sensor
ADXL345 digunakan beberapa metodologi untuk mendukung skripsi ini. Adapun
metodologi yang digunakan dalam penyelesaian skripsi ini adalah sebagai berikut:
Gambar 3.1 Diagram Alir Metodologi
Mulai
Selesai
Pengambilan data (bit)
Konversi data ke nilai percepatan (g)
Implementasi, Perhitungan
dan Analisa perbandingan
hasil perhitungan
Pengambilan kesimpulan
dan saran
19
3.1 Pengumpulan Data
Data-data yang digunakan dalam menyusun skripsi ini berupa data primer dan
data sekunder.
a. Data primer adalah data yang didapatkan dari perhitungan secara manual dan
hasil implementasi alat.
b. Data sekunder adalah data yang didapatkan dari studi literatur (buku, jurnal-
jurnal ilmiah, internet). Data sekunder yang diperlukan pada skripsi ini antara
lain:
Mencari spesifikasi dari alat-alat yang digunakan:
Sensor yang digunakan adalah sensor accelerometer ADXL345.
Mikrokontroller yang digunakan adalah Arduino ATMega 2560.
Sebagai penampil digunakan LCD 2x16 karakter.
Alat ukur sebagai pembanding yang digunakan adalah Laser Distance
Meter.
3.2 Perancangan Perangkat Keras
Secara umum perancangan perangkat keras dari sistem instrumentasi
accelerometer meliputi perancangan sensor accelerometer ADXL345,unit
masukan dan keluaran pada Arduino ATMega 2560. Secara umum perancangan
perangkat keras dapat dilihat pada gambar dibawah :
Gambar 3.2 Diagram Blok Perancangan Instrumentasi Accelerometer.
ArduinoAtmega
2560 Laptop
Sensor
Accelerometer
ADXL345
LCD
20
Penjelasan dari diagram blok sistem pada Gambar 3.2 dapat dijelaskan
sebagai berikut :
1. Sensor accelerometer ADXL345 digunakan untuk mengetahui besarnya
percepatan suatu benda yang kemudian akan dikirim ke mikrokontroller yang
digunakan.
2. Arduino Mega 2560 digunakan untuk menerima data dari sensor, memproses
data secara digital, dan melakukan komunikasi serial antara mikrokontroler
dengan LCD.
3. LCD digunakan untuk menampilkan data posisi/jarak dengan menggunakan
visual C#.
Sensor accelerometer beroperasi pada tegangan 2,0 – 3,6 volt dengan
tegangan tipikal 2,5 volt (Vdd). Keluaran sensor accelerometer berupa tegangan
analog yang merepresentasikan data percepatan dalam satuan gravitasi (g).
Sensor accelerometer ADXL345 memiliki tingkat sensitivitas yang dapat
dipilih yaitu 2 g/ 4 g/ 8 g/ 16 g.
Mikrokontroler ATMega 2560 digunakan untuk membaca sinyal digital dari
sensor accelerometer, kemudian mengubahnya menjadi data digital 8 bit dan
mengolahnya dengan algoritma yang telah ditentukan kemudian mengirimkan hasil
akhir data ke LCD. Secara umum diagram alir pemrograman pada sistem pendeteksi
jarak dapat dilihat pada Gambar 3.3.
21
Gambar 3.3 Diagram Alir Pemrograman Utama Sistem Pendeteksi Jarak.
3.2.1 Rangkaian Perancangan Instrumentasi Accelerometer
Gambar 3.4 Rangkaian Perancangan Instrumentasi Accelerometer
Mulai
Selesai
Menerima data keluaran
sensor (Bit)
Konversi ke nilai percepatan
(g)
Progam utama
(Double integral)
Tampilkan
hasil
RX Serial
TX To
USB
USB
- - - - - - - - - - - - - -
Save grafik dlm
format excel Matlab Jarak
22
Uraian proses pengambilan data :
Gambar rangkaian sensor accelerometer ADXL345 dan arduino mega 2560
dapat dilihat pada gambar 3.4 . Pin SDA dan SCL pada sensor dihubungkan pada
pin SDA dan SCL pada arduino , untuk VCC dan CS pada sensor dihubungkan
dengan sumber +3.3 V pada aduino. ini sebagai supply tegangan yang dibutuhkan
sensor untuk dapat beroperasi. Untuk GND pada sensor dan arduino juga saling
tehubung.
Serial to USB digunakan sebagai interface antara arduino mega dengan
laptop/computer yang digunakan. Dan pin yang dihubungkan adalah Rx pada
arduino dengan Rx pada serial komunikasi ,juga Tx pada arduino dengan Tx pada
serial. Laptop/computer yang digunakan dapat terhubung dengan menggunakan
perantara USB.
Menggunakan software Visual Studio 2015 untuk pembuatan program dan
menampilkan tabel data percepatan. Pada visual studio 2015 tabel yang ditampilkan
adalah tabel data percepatan sensor accelerometer yang akan diuji. tabel data
percepatan sensor accelerometer disimpan dalan format Excel agar mudah dalam
proses analisa.
Setelah mendapatkan data percepatan dari pengujian sensor accelerometer,
kemudian data percepatan dapat dianalisa dengan menggunakan bantuan sotware
Matlab R2017a. Maltab R2017a digunakan untuk mengdukung proses analisa data
percepatan sensor yang telah diuji dan mengubahnya menjadi data Jarak. Pada
software matlab menggunakan metode try and error untuk menganalisa dan
mendapatkan grafik data kecepatan, dan menggunakan metode Runge-Kutta untuk
mengolah data kecepatan menjadi data Jarak.
23
3.2.2 Sensor Accelerometer ADXL345
3.2.2.1 Bagian-bagian Accelerometer ADXL345
Gambar 3.5 Pin-out Accelerometer ADXL345
Penjelasan fungsi setiap pin accelerometer ADXL345 dapat dilihat pada
tabel 3.1 .
Tabel 3.1 Fungsi Pin Accelerometer ADXL345
Pin No Pin Name I/O Details
1. GND Power GND Ground
2. VCC Power IN Positive Power Supply, 5V
Regulated Power
3. CS O/P Chip Select
4. INT1 O/P Interupt 1 Output
5. INT2 O/P Interupt 2 Output
6. SDO O/P Serial Data Output
7. SDA I/O Serial Data Input & Output
8. SCL I/P Serial Communication Clock
24
3.2.3 Mikrokontroler ATmega 2560
3.2.3.1 Komponen Utama Arduino Mega 2560
Gambar 3.6 Pin-out Arduino Mega 2560
Spesifikasi sederhana dari Arduino Mega2560 dapat dilihat pada Tabel 3.2
Tabel 3.2 Spesifikasi Arduino Mega 2560
No. Spesifikasi Keterangan
1 Tegangan Operasi 5V
2 Input Voltage
(disarankan)
7-12V
3 Input Voltage (limit) 6-20V
4 Pin Digital I/O 54 (yang 15 pin
digunakan sebagai output
PWM)
5 Pins Input Analog 16
6 Arus DC per pin I/O 40 mA
7 Arus DC untuk pin
3.3V
50 mA
8 Flash Memory 256 KB (8 KB digunakan
untuk bootloader)
9 SRAM 8 KB
10 EEPROM 4 KB
11 Clock Speed 16 MHz
25
3.2.3.2 Fungsi Tiap Pin Arduino Mega 2560
Serial: 0 (RX) dan 1 (TX); Serial 1: 19 (RX) dan 18 (TX); Serial 2:17 (RX)
dan 16 (TX); Serial 3: 15 (RX) dan 14 (TX). Digunakanuntuk menerima
(RX) dan mengirimkan (TX) data serial TTL. Pin 0 dan 1 juga terhubung ke
pin yang sesuai dari chip Serial USB-to-TTL.
Interupsi Eksternal: 2 (interupsi 0), 3 (interupsi 1), 18 (interupsi 5), 19
(interupsi 4), 20 (interupsi 3), dan 21 (interupsi 2). Pin ini dapat
dikonfigurasi untuk memicu interupsi pada nilai rendah, tepi naik atau turun,
atau perubahan nilai. Lihat fungsi attachInterrupt () untuk rinciannya.
PWM: 2 sampai 13 dan 44 sampai 46, berikan output PWM 8 bit dengan
fungsi analogWrite ().
SPI: 50 (MISO), 51 (MOSI), 52 (SCK), 53 (SS). Pin ini mendukung
komunikasi SPI dengan menggunakan perpustakaan SPI. Pin SPI juga
terputus pada header ICSP, yang secara fisik kompatibel dengan Uno,
Duemilanove dan Diecimila.
LED: 13. Ada LED built-in yang terhubung ke pin digital 13. Bila pin
bernilai HIGH, LED menyala, bila pinnya RENDAH, tidak menyala.
I2C / TWI: 20 (SDA) dan 21 (SCL). Dukungan I2C alias IIC alias
komunikasi TWI menggunakan pustaka Wire. Perhatikan bahwa pin ini
tidak berada di lokasi yang sama dengan pin TWI / I2C pada Duemilanove
atau Diecimila.
26
3.2.4 DISPLAY LCD
3.2.4.1 Skematik LCD M1632
Gambar 3.7 Interface 4 Bit Data Ke PORT.A
Fungsi tiap pin LCD M1632 dapat dilihat pada tabel 3.3
Tabel 3.3 Fungsi Pin LCD M1632
27
3.2.4.2 Fungsi Pin LCD (Liquid Cristal Display) Dot Matrix 2×16 M1632
DB0 – DB7 adalah jalur data (data bus) yang berfungsi sebagai jalur
komunikasi untuk mengirimkan dan menerima data atau instruksi dari
mikrokontrooler ke modul LCD.
RS adalah pin yang berfungsi sebagai selektor register (register sellect)
yaitu dengan memberikan logika low (0) sebagai register perintah dan
logika high (1) sebagai register data.
R/W adalah pin yang berfungsi untuk menentukan mode baca atau tulis dari
data yang terdapat pada DB0 – DB7. Yaitu dengan memberikan logika low
(0) untuk fungsi read dan logika high (1) untuk mode write.
Enable (E), berfungsi sebagai Enable Clock LCD, logika 1 setiap kali
pengiriman atau pembacaan data.
3.3 Perhitungan Algoritma dan Metode
3.3.1 Kompensasi Derau Mekanik
Ketika sensor dalam kondisi tidak bergerak sejumlah error kecil masih
tampak pada sinyal keluaran sehingga nantinya sejumlaherror tersebut
akan terjumlahkan. Pada kondisi ideal, ketika sensordalam kondisi tidak
bergerak maka sinyal keluaran akan konstan pada tegangan offset. Oleh
karena itu dibutuhkan metode yang dapat mengasumsikan sejumlah
error kecil tadi sebagai tegangan offset yang konstan.
Gambar 3.8 Metode Discrimination Window Sinyal Keluaran Sensor.
28
Beberapa algoritma yang dapat digunakan pada metode discrimination window,
yaitu :
1. Algoritma 1
Dengan menganggap derau yang terjadi sama dengan tegangan offset,
sehingga derau tersebut tidak tampak.
2. Algoritma 2
Algoritma ini hampir sama dengan algoritma yang pertama. Perbedaannya
terletak pada data referensi yang digunakan sebagai acuan dalam perhitungan
selisih tegangan. Data percepatan sebenarnya adalah data diluar batasan noise.
Berikut untuk metode gambar 3.5 adalah flowchart discrimination window :
Gambar 3.9 Flowchart Metode Discrimination Window
29
3.3.2 Pengecekan Akhir Pergerakan / Pembatasan Integral Pertama Pada kondisi ideal, suatu benda yang menempuh jarak tertentu, pada awalnya
kecepatannya akan semakin bertambah, kemudian kecepatan akan mencapai nilai
maksimal, dan pada akhirnya kecepatan akan kembali ke nilai nol. Pada
kenyataannya, ketika benda sudah mencapai akhir pergerakan, hasil integral 1 dari
percepatan (kecepatan) tidak mencapai nilai nol kembali.
Ada 2 metode yang dapat digunakan untuk pengecekan akhir gerak benda :
1. Metode batas akhir integral pertama
Kecepatan merupakan hasil integral pertama dari percepatan. Untuk
memastikan kecepatan bernilai nol ketika benda berhenti, maka hasil integral
pertama perlu dibatasi pada nilai akhir tertentu.
2. Metode batas akhir integral pertama dengan pencuplikan
Metode ini hampir sama dengan metode 1, yaitu dengan menggunakan batas
akhir integral 1. Setelah integral 1 mencapai batas yang ditentukan, akan dilakukan
penambahan 2 pencuplikan terhadap data percepatan.
Berikut adalah flowchart untuk metode batas integral pertama :
1. Pengambilan Data Pertama
Gambar 3.10 Metode Batas Integral Pertama 1
30
2. Pengambilan Dara ke-2
Gambar 3.11 Metode Batas Integral Pertama 2
3.4 Langkah Penentuan Kalibrasi
Faktor kalibrasi diperoleh dengan membandingkan antara jarak sebenarnya
dengan jarak hasil pembacaan sensor accelerometer. Jarak sebenarnya diperoleh
dengan menggunakan alat ukur meter digital (Laser Distance Meter) dengan tingkat
ketelitian yang lebih akurat dibanding dengan alat ukur panjang
(meteran/penggaris). Dari 2 algoritma dari metode discrimination windows pada
kompensasi derau mekanik dan 2 metode batas akhir integral pertama, maka
didapatkan 4 kombinasi perhitungan untuk masing-masing sumbu dalam
menentukan faktor kalibrasi :
1. Algoritma 1 kompensasi derau dengan metode batas akhir integral pertama.
2. Algoritma 1 kompensasi derau dengan metode batas akhir integral pertama
dengan pencuplikan .
3. Algoritma 2 kompensasi derau dengan metode batas akhir integral pertama.
4. Algoritma 2 kompensasi derau dengan metode batas akhir integral pertama
dengan pencuplikan.
31
3.5 Penentuan Faktor Kalibrasi
Faktor kalibrasi merupakan suatu konstanta yang digunakan untuk
mengkalibrasi antara hasil integral ganda dari percepatan dengan jarak sebenarnya.
Pada penelitian ini, akan dicari faktor kalibrasi hasil integral dari berbagai macam
algoritma pada kompensasi derau mekanik dan pembatasan intregal pertama yang
digunakan. Pada akhirnya, pengujian dengan berbagai algoritma tadi bertujuan
untuk menentukan kombinasi algoritma dan metode yang paling sesuai sehingga
menghasilkan data jarak yang paling mendekati jarak sebenarnya atau dengan kata
lain tingkat kesalahannya kecil.
3.6 Perancangan Software Sistem
Gambar 3.12 Gambar Tampilan Perancangan Software Sistem
x -
Sambungan Refresh
Data Logger
PORT Baudrate
Spread Sheat Grafik
Simpan
32
3.6.1 Flowchart ( Diagram alir ) Sub Rutine Timer
Gambar 3.13 Flowchart Sub Rutine Timer
3.6.2 Flowchart (Diagram Alir) Tombol Simpan
Gambar 3.15 Flowchart Tombol Simpan
Start
Waktu ++
Kirim ASCII
While
Tunggu data
Simpan di
Spread Sheat
End
Y
N
Start
Ambil data dari Spread Sheat
Jadikan dalam bentuk array
Simpan dalam bentuk xlsx
End
33
3.6.3 Flowchart ( Diagram alir ) Tombol Sambungan
Gambar 3.17 Flowchart Tombol Sambungan
N
Y
N
Y
Y
N
Start
if
Sambungka
n
End
If
Port empty
If
Baudrate
empty
Sambungkan Serial komunikasi
Teks tombol “putuskan”
Dialog window
“port or baudrate
is empty”
Putuskan Serial komunikasi
Teks tombol “Sambungkan”
34
3.6.4 Flowchart ( Diagram alir ) Interrupt Serial
Gambar 3.19 Flowchart Interrupt Serial
Y
N
Start
Ambil data
dari buffer
if terima =
ASCII A
Tanda kirim
= 1
End
Tanda kirim
= 0
35
3.6.5 Flowchart ( Diagram alir ) Program Utama
Gambar 3.21 Flowchart Program Utama
N
Start
Inisialisasi
variabel
While
loop
While
tanda kirim
= 0
Ambil data tiap
sumbu
Konversi data
percepatan
Konversi data
percepatan ke
ASCII
Kirim data
Tanda kirim
= 0
End
N
Y
Y
36
3.7 Proses Pengujian Alat
Gambar 3.23 Proses Pengujian Alat
Penjelasan dari proses pengujian alat pada Gambar 3.23 dapat dijelaskan
sebagai berikut :
1. Sensor accelerometer ditempatkan sejajar dengan alat ukur digital yang
digunakan yaitu Laser Distance Meter.
2. Laser Distance Meter digunakan sebagai alat ukur pembanding (jarak
sebenarnya) dengan tingkat ketelitian yang lebih akurat.
3. Pengambilan data dari sensor dilakukan dengan cara menggeser sensor dari
pembatas dengan varian jarak yang diinginkan.
4. Setelah mendapatkan sampel data, akan dilakukan proses perhitungan
menggunakan kombinasi perhitungan untuk masing-masing sumbu.
5. Faktor kalibrasi diperoleh dengan membandingkan antara jarak sebenarnya
(jarak dari alat ukur Laser Distance Meter) dengan jarak hasil pembacaan
sensor accelerometer setelah dilakukan proses perhitungan menggunakan
kombinasi perhitungan.
3.7.1 Tujuan Pengujian
Pengujian adalah proses mengevaluasi apakah sistem telah berjalan dengan
sesuai atau untuk menentukan perbedaan antara hasil yang diharapkan dengan hasil
yang sebenarnya. Tahap pengujiannya adalah dengan mengimplementasikan hasil
perhitungan untuk mendapatkan nilai kalibrasi dengan rancangan alat yang telah
30 50 70 90 2m
(cmm))
10
37
dibuat. Pada tahap pengujian juga akan dimunculkan peningkatan nilai jarak ketika
belum dilakukan kalibrasi dan sesudah dilakukan kalibrasi.
3.8 Faktor Kalibrasi
Faktor kalibasi diperoleh dengan membandingkan antara jarak sebenarnya
dengan jarak hasil pembacaan dari sensor accelerometer. Jarak sebenarnya
diperoleh dengan mengguanakan alat ukur laser distance meter.
Dari dua algoritma pada discrimination window dan dua metode yang dapat
digunakan untuk pengecekan akhir gerak benda (batas integral 1), maka didapatkan
empat kombinasi untuk proses perhitungan pada masing-masing sumbu dalam
menentukan faktor kalibrasi.
Faktor kalibrasi = Jarak sebenarnya (cm) ……………………………(3.1)
Jarak tercatat (cm)
3.8.1 Perhitungan Menggunakan Algoritma A1
Algoritma 1, dengan menganggap gangguan yang terjadi sama dengan
percepatan offset, sehingga gangguan tersebut tidak tampak.
Ax +1g = 1.037509 Ax -1g = -1.02001
Ay +1g = 1.050124 Ay -1g = -1.00894
Az +1g = 0.910969 Az -1g = -1.06593
Rumus Percepatan offset
𝐴𝑜𝑓𝑓𝑠𝑒𝑡 = 0.5 × (𝐴+1𝑔 + 𝐴−1𝑔).................................(3.2)
Rumus Percepatan Offset Sumbu X
𝐴𝑥𝑜𝑓𝑓𝑠𝑒𝑡 = 0.5 × (𝐴𝑥+1𝑔 + 𝐴𝑥−1𝑔) = 0.5 × (1.037509 + (−1.02001)) = 0.008749
Rumus Percepatan Offset Sumbu Y
𝐴𝑦𝑜𝑓𝑓𝑠𝑒𝑡 = 0.5 × (𝐴𝑦+1𝑔 + 𝐴𝑦−1𝑔) = 0.5 × (1.050124 + (−1.00894)) = 0.020592
Rumus Percepatan Offset Sumbu Z
𝐴𝑧𝑜𝑓𝑓𝑠𝑒𝑡 = 0.5 × (𝐴𝑧+1𝑔 + 𝐴𝑧−1𝑔) = 0.5 × (0.910969 + (−1.06593)) = -0.07748
38
Rumus Penguatan (Gain)
𝐺𝑎𝑖𝑛 = 0.5 × (𝐴+1𝑔−𝐴−1𝑔
1𝑔)…………………………..(3.3)
Rumus Penguatan (Gain) Sumbu x
𝐺𝑎𝑖𝑛𝑥 = 0.5 × (𝐴𝑥+1𝑔 − 𝐴𝑥−1𝑔
1𝑔) = 0.5 × (
(1.037509 − (−1.02001))
1𝑔) = 1.02876
Rumus Penguatan (Gain) Sumbu y
𝐺𝑎𝑖𝑛𝑦 = 0.5 × (𝐴𝑦+1𝑔 − 𝐴𝑦−1𝑔
1𝑔) = 0.5 × (
(1.050124 − (−1.00894))
1𝑔) = 1.029532
Rumus Penguatan (Gain) Sumbu z
𝐺𝑎𝑖𝑛𝑧 = 0.5 × (𝐴𝑧+1𝑔 − 𝐴𝑧−1𝑔
1𝑔) = 0.5 × (
(0.910969 − (−1.06593))
1𝑔) = 0.98845
Rumus Percepatan actual
𝐴𝑎𝑐𝑡𝑢𝑎𝑙 =𝐴𝑜𝑢𝑡−𝐴𝑜𝑓𝑓
𝐺𝑎𝑖𝑛 …………………..……………….(3.4)
3.8.2 Algoritma A2
Algoritma 2, algoritma ini hampir sama dengan algoritma yang pertama.
Perbedaannya terletak pada data referensi yang digunakan sebagai acuan dalam
perhitungan percepatan sesungguhnya. Nilai data referensi adalah 0.0081, nilai ini
ditambahkan kedalam percepatan offset yang telah diuji pada algoritma A1.
3.8.3 Metode M1
Akhir integral dengan menentukan batas akhir integral pertama Kecepatan
merupakan hasil integral pertama dari percepatan. Untuk memastikan kecepatan
bernilai nol ketika benda berhenti, maka hasil integral 1 perlu dibatasi. Hasil
percobaan penentuan batasintegral 1 pada sumbu x, sumbu y, dan sumbu z dapat
dilihat pada Tabel 3.4
39
Tabel 3.4 Hasil Pengujian Penentuan Batas Integral 1
No Sumbu x
m/𝑠2
Sumbu y
m/𝑠2
Sumbu z
m/𝑠2
1 0.0007757 0.0007258 0.001578
2 0.0007555 0.0008299 0.001592
3 0.0009921 0 0.001592
4 0.001406 0 0.001811
5 0.001356 0.0014066 0.0011161
6 0.004165 0.003749 0.001811
7 0.004165 0.003749 0.00147
8 0.003283 0.002749 0.00147
9 0.003066 0.002749 0.0008
10 0.001387 0.002749 0.0008
Data-data diatas kita dapat melihat bahwa setiap sumbu tidak ada yang benar
benar pada nilai 0, untuk mengatasi noise atau gangguna tersebut maka ditentukan
nilai atau batas dari hasil integral pertama atau kecepatan. Yaitu, nilai tertinggi dari
sekumpulan nilai tersebut, maka batas sumbu x 0.004165, sumbu y 0.003749 dan
sumbu z 0.001811.
3.8.4 Metode M2
Akhir integral dengan menambah pencuplikan Metode ini hampir sama
dengan metode 1,yaitu dengan menggunakan batas integral 1. Setelah integral 1
mencapai batas yang ditentukan, akan dilakukan penambahan 2 pencuplikan
terhadap data percepatan.