## Implementasi Moving Average dan Kalman Filter pada Wireless Odometer untuk Informasi Service Kendaraan Bermotor
Fajar Alif Chalifatullah, Wahyu Setyo Pambudi * , Ilmiatul Masfufiah
Fakultas Teknik Elektro dan Teknologi Informasi, Jurusan Teknik Elektro, Institut Teknologi Adhi Tama Surabaya, Surabaya, Indonesia
Email: 1 fajaralifc535@gmail.com, 2,* wahyusp@itats.ac.id, 3 i.masfufiah@itats.ac.id Email Penulis Korespondensi: wahyusp@itats.ac.id Submitted: 26/09/2022 ; Accepted: 29/09/2022 ; Published: 30/09/2022
Abstrak –Perawatan rutin merupakan salah satu langkah agar mobil Anda tetap terlihat bagus, namun banyak orang yang masih menyepelekan  pentingnya  perawatan  rutin.  Telah  dibuat  alat  bernama Wireless  Odometer yang  dapat  memberi  notifikasi kepada pemilik kendaraan bermotor melalui aplikasi jika jarak tempuh kendaraan sudah masuk kriteria yang dianjurkan untuk dilakukan  servis  berkala.  Berdasarkan  dari  penelitian  sebelumnya Wireless  Odometer masih  mempunyai  kelemahan  yaitu pembacaan  sensor  pada  alat  ini  masih  memiliki  error  sebesar  13,2%  sehingga  masih  kurang  akurat  jika  di  terapkan  untuk mengukur jarak tempuh pada kendaraan bermotor. Perlu adanya filter digital yang harus ditambahkan pada pembacaan sensor agar  sensor  tahan  terhadap  noise  yang  terjadi  karena  mekanikal  ataupun  elektrikal.  Pada  penelitian  ini  mengimplementasi metode Moving  Average  Filter dan Kalman  Filter untuk  pembacaan  sensor  pada Wireless  Odometer .  Setelah  dilakukan beberapa pengujian didapatkan bahwa presentase error pembacaan saat diberi filter mencapai 0,80% menggunakan metode kalman filter dan 1,81% menggunakan metode Moving Average Filter . Dapat disimpulkan filter yang cocok digunakan pada Wireless Odometer ini adalah kalman filter.
Kata Kunci: Kalman Filter; Moving Average Filter; Pengukuran jarak ; Wireless Odometer.
Abstract– Regular maintenance is one step to keep your car looking good, but many people still underestimate the importance of  regular  maintenance.  A  tool  called  Wireless  Odometer  has  been  created  which  can  notify  vehicle  owners  through  the application if the vehicle mileage has entered the recommended criteria for periodic servicing. Based on previous research, Wireless Odometer still has weaknesses. sensor readings on this tool still have an error of 13.2% so it is still less accurate if applied to measure mileage on vehicles. It is necessary to have a digital filter that must be added to the sensor readings so that the sensor is resistant to noise that occurs due to mechanical or electrical. In this research, we implement the Moving Average Filter and Kalman Filter methods for sensor readings on the Wireless Odometer. After several tests were carried out, it was found that the percentage of reading errors when filtered reached 0.80% using the Kalman filter method and 1.81% using the Moving Average Filter method. It can be concluded that the filter that is suitable for use on this Wireless Odometer is the kalman filter.
Keywords : Kalman Filter; Mileage measurement; Moving Average Filter; Wireless Odometer

## 1. PENDAHULUAN
Indonesia berpenduduk kurang lebih 268 juta jiwa. Negara ini memiliki 146 juta kendaraan yang terdiri dari 120 juta sepeda motor dan 26 juta mobil. Pasar otomotifnya mencatat penjualan 6,5 juta sepeda motor dan 1 juta mobil di 2019. Berdasarkan data tersebut, Indonesia merupakan pasar otomotif terbesar di Asia Tenggara, dengan pangsa pasar 32%[1]. Dengan banyaknya mobil atau kendaraan bermotor lainnya yang beredar di indonesia tentu banyak hal yang harus diperhatikan oleh masing – masing pemilik kendaraan tersebut tidak terkecuali yaitu servis berkala. Preventive  maintenance  ataupun  servis  berkala  merupakan  kegiatan  pemeliharaan  dan  perawatan  mesin  yang dilakukan dengan tujuan agar tidak terjadi loss time penggunaan akibat terjadinya kerusakan. Perawatan rutin pada kendaraan merupakan salah satu  langkah agar kendaraan terhindar dari kerusakan yang parah pada saat  sedang digunakan dimana dapat menimbulkan biaya yang besar pula[2].
Pada kendaraan bermotor terutama mobil dengan tahun keluaran lama belum memiliki system informasi untuk  dilakukannya  jadwal  preventive  maintenance,  dimana  system  ini  seharusnya  bisa  memberikan  indikasi bahwa  mobil  sudah  memasuki  waktu  dilakukannya  perawatan  rutin.  Sehingga  pengguna  bisa  mengetahui  dan dapat mencegah agar tidak terjadi kerusakan yang serius pada kendaraan akibat terlambat dilakukannya prefentive maintenance pada mobilnya. Berdasarkan penelitian monitoring kondisi jalan menggunakan sensor accelerometer, sensor  ini  dapat  digunakan  untuk  mengukur  akselerasi  dan  kecepatan  pergerakan  mobil  di  setiap  sumbunya sehingga dapat mendeteksi kondisi jalan ketika bergelombang ataupun datar[3].
Menurut referensi tersebut dapat di rancang sebuah alat bernama Wireless Odometer yang dapat mengukur jarak  menggunakan  sensor  accelerometer  dimana  nilai  jarak  didapatkan  dari  hasil  pengukuran  kecepatan  dan percepatan dari sensor tersebut. Alat ini akan memberikan informasi berupa pesan yang akan di teruskan kepada pengguna  agar  pengguna  mengetahui  kapan  harus  melakukan  perawatan  rutin  pada  kendaraannya.  Namun penggunaaan  sensor  accelerometer  ini  masih  mempunyai  banyak  kelemahan.  Salah  satunya  yaitu  dikarenakan noise elektrikal maupun mekanikal yang dihasilkan dari output sensor yang berupa ADC[4].
Perlu adanya filter digital yang harus ditambahkan pada pembacaan sensor agar sensor tahan terhadap noise yang  terjadi  karena  mekanikal  ataupun  elektrikal  yaitu  dengan  menerapkan  Kalman  Filter  dan  juga  Moving Average  Filter.  Menurut  penelitian  tentang  sensor  loadcell  pada  pengisian  depot  air  minum  terbukti  bahwa
penerapan metode Kalman Filter mampu meredam kesalahan pengukuran yang ditimbulkan oleh getaran akibat tekakanan air dari output kran [5]. Berdasarkan kajian sensor pendeteksi gelombang seismik (gempa bumi) dengan menggunakan  moving  average  filtering,  dijelaskan  bahwa  penerapan  moving  average  filtering  memiliki kemampuan  untuk  menghilangkan  frekuensi  noise  yang  berada  di  luar  frekuensi  terestrial  [6].  Pada  kedua penelitian tersebut noise yang timbul kebanyakan disebabkan oleh getaran sehingga dapat menjadi solusi untuk mengatasi noise yang terjadi pada sensor accelerometer yang digunakan pada penilitian ini.
Pada  penelitian  ini  akan  mengimplementasi  metode  Moving  Average  Filter  dan  Kalman  Filter  untuk pembacaan sensor pada Wireless Odometer. Harapannya dengan menerapkan metode Moving Average Filter dan Kalman  Filter  dapat  memperbaiki  akurasi  pembacaan  sensor  pada  Wireless  Odometer  sehingga  nilai  kilometer yang dihasilkan menjadi akurat dan tepat sasaran.

## 2. METODOLOGI PENELITIAN

## 2.1 Sensor Accelerometer (MMA7361)
Acceleration atau percepatan memiliki definisi yaitu perubahan kecepatan terhadap perubahan waktu. Sedangkan, percepatan dapat dikaitkan dengan nilai perubahan jarak atau nilai perubahan posisi seperti pada persamaan (1)
a =  ∂V/∂t=  (∂^2 x)/(∂t^2 ) (1)
Pada persamaan (1) dapat dilihat bahwa a adalah percepatan (m/s2), V adalah kecepatan (m/s), t merupakan waktu (s), dan x adalah jarak atau posisi. Satuan dari acceleration juga menggunakan g. Satuan percepatan g ini adalah sebanding dengan grafitasi bumi di atas permukaan laut yaitu sebesar 32,2 ft/s2 atau 9,81 m/s2. Akselerasi atau percepatan merupakan salah satu besaran fisis yang dapat dideteksi oleh sensor.
Sensor  adalah  perangkat  yang  berfungsi  mengubah  suatu  besaran  fisis,  seperti:  paparan  cahaya,  panas, jarak, magnet, getaran, listrik, dan lain - lain, ke bentuk besaran listrik. Salah satu contoh dari sensor yang akan dipakai  dalam penelitian ini adalah accelerometer yang berfungsi  untuk mendeteksi  percepatan, kecepatan, dan jarak atau posisi[7].
Sensor  accelerometer  MMA  7361  terlihat  pada  gambar  1  adalah  sensor  yang  di  produksi  oleh Freescale.Sensor  ini  mempunyai  beberapa fungsi  seperti  untuk  mengukur  getaran  (vibration),benturan  (shock), jatuh (fall),gerakan (movement), posisi (positioning) dankemiringan (tilt).

## Gambar 1. Sensor Accelerometer MMA7361

## 2.2 Kalibrasi sensor MMA7361
Nilai sensitivitas akselerometer sangat dipengaruhi oleh tegangan supply sensor dan karakteristik dari masing  – masing  sensor  sehingga  perlu  dilakukannya  proses  kalibrasi  di  setiap  sensor  [8].  Dengan tidak  adanya  eksitasi eksternal, tegangan keluaran akselerometer kira-kira setengah dari tegangan suplai sensor, yang disebut  tegangan offset. Nilai offset sensor adalah nilai tegangan atau  ADC sensor tanpa eksitasi eksternal. Ketika sensor diberi energi, output sensor bertransisi menuju nilai offset, sehingga akuisisi data terjadi setelah output sensor mencapai nilai offset. Perhitungan nilai offset akselerometer dilakukan satu kali sebelum menggunakan sensor. Perhitungan dapat dilakukan ketika sensor stasioner dan membentuk sudut 90° atau -90 ° terhadap vertical [8]. Penentuan nilai offset  dilakukan  dengan  mencari  data  rata-rata    pada  saat  sensor  dalam  keadaan  stasioner.  Nilai  ADC    saat berakselerasi –g dan +g dapat ditentukan dengan menempatkan sensor secara vertikal (arah sensor ke atas) dan memutarnya 180°.
Gambar 2. Ilustrasi arah percepatan sensor accelerometer
Untuk menentukan ekivalensi nilai ADC dan percepatan gravitasi, hitung nilai ADC pada  offset dan nilai ADC  saat  percepatan gravitasi  -g atau +g. pada gambar 2 dapat  dilihat bahwa yang dimaksud 0g adalah nilai percepatan  yang  keluar  saat  posisi  sensor  aceelerometer  dalam  keadaan  diam  dan  berada  ditengah  sehingga menghasilkan nlai offset. Sedangkan untuk  +1g adalah nilai  percepatan yang keluar saat  posisi  sensor berjalan kearah  posistif  dari  sumbu  x,  begitu  juga  sebaliknya  untuk  -1g  adalah  nilai  percepatan  yang  keluar  saat  posisi sensor berjalan kearah negative dari sumbu x.

## 2.3 Konversi ADC Accelerometer
Percepatan  adalah  keadaan  perubahan  kecepatan  terhadap  waktu.  Pertambahan  kecepatan  dalam  selang  waktu tertentu disebut juga percepatan. Ketika kecepatan turun di bawah kecepatan sebelumnya, itu disebut perlambatan. Karena percepatan adalah perlambatan yang merupakan besaran vektor, maka percepatan juga bergantung pada arah/orientasi [9]. Mengubah arah gerak suatu benda juga menyebabkan percepatan. Mendapatkan data jarak dari akselerometer memerlukan proses integrasi ganda pada keluaran sensor. Proses perhitungan pada persamaan (2) dipengaruhi  oleh  waktu  pengambilan  sampel  data,  sehingga    waktu  tunda  data  pengambilan  sampel  (dt)  harus selalu konstan dan  sekecil mungkin.
𝑠 =   ∫(∫(𝑎)𝑑𝑡)𝑑𝑡
(2)
Untuk  lebih  mengoptimalkan  hasil  integrasi,  kita  dapat  menggunakan  metode  Runge-Kutta  dengan pendekatan trapesium, seperti pada Persamaan (3).
𝑥 𝑘 =   𝑥 𝑘−1 + ℎ 2 [𝑓(𝑥 𝑘 , 𝑡 𝑘 ) + 𝑓(𝑥 𝑘−1 , 𝑡 𝑘−1 )] (3)
Dari  persamaan  (3)  dapat  dilihat  bahwa  hasil  integrasi  sekarang  (xk)  dipengaruhi  oleh  hasil  integrasi sebelumnya (xk – 1), input sekarang (f(xk,tk)), input sebelumnya, serta Waktu sampel antara data input (h )[10]. Penerapan  rumus  persamaan  kedalam  mikrokontroler  dapat  menggunakan  persamaan  (4)  untuk  mencari percepatan, persamaan (5) untuk mencari kecepatan, dan persamaan (6) untuk mencari jarak.
𝑎 = ( 𝐴𝐷𝐶−𝑛𝑖𝑙𝑎𝑖 0𝐺
𝑛𝑖𝑙𝑎𝑖 1𝐺−𝑛𝑖𝑙𝑎𝑖 0𝐺 ) 𝑥 9,8
(4)
dimana : a             = percepatan m⁄s^2 ADC      = nilai output sensor berupa data analog Nilai 0G = nilai adc hasil kalibrasi saat diberi gravitasi 0G Nilai 1G = nilai adc hasil kalibrasi saat diberi gravitasi +1G
𝑣 = 𝑣0 + ( 𝑤𝑎𝑘𝑡𝑢 𝑠𝑎𝑚𝑝𝑙𝑖𝑛𝑔 2 ) 𝑥(𝑎0 + 𝑎1 )
(5)
dimana: v0 = kecepatan awal. a0 = percepatan awal. a1= percepatan sekarang
𝑠 = 𝑠0 + ( 𝑤𝑎𝑘𝑡𝑢 𝑠𝑎𝑚𝑝𝑙𝑖𝑛𝑔 2 ) 𝑥(𝑣0 + 𝑣1 )
(6)
dimana : s0 = jarak awal. v0 = kecepatan awal. v1= kecepatan sekarang

## 2.4 Kalman filter
Kalman mempublikasikan penelitiannya pada tahun 1960, yang menjelaskan sebuah persoalan penyaringan linier data diskrit. Sejak mempublikasikan penelitiannya, Kalman  Filter menjadi topik penelitian dan terapan yang luas, terutama di bidang navigasi otomatis atau terpandu.Persoalan umum untuk Kalman Filter diskrit adalah mencoba untuk  mengestimasi  state  x ∈ R^ndari  sebuah  proses  waktu  diskrit  yang  dinyatakan  oleh  persamaan  (7)  beda stokastik linier [11].
𝑥 𝑘 = 𝐴𝑥 𝑘−1 +  𝐵𝑈 𝑘−1 +  𝑤 𝑘−1 (7)
Dengan pengukuran z ∈ R^m yang dinyatakan pada persamaan (8).
𝑧 𝑘 = 𝐻𝑥 𝑘 +  𝑣 𝑘 (8)
wk dan vk merupakan variabel acak yang mewakili noise pengukuran dan noise proses, keduanya independen dan berjenis white noise, dengan probabilitas berdistribusi normal.
Pada proses komputasi filter didefinisikan 𝑥̂ − 𝑘 ∈   ℜ 𝑛 sebagai pra-estimasi state pada step k berdasarkan data dari proses (7) sebelum step k, dan 𝑥̂ 𝑘 ∈   ℜ 𝑛 sebagai pasca estimasi state pada step k berdasarkan nilai 𝑧 𝑘 . Lalu, kita  definisikan  pra  dan  pasca  estimasi  untuk  error  sebagai 𝑒 − 𝑘 =   𝑥 𝑘 − 𝑥̂ − 𝑘 dan 𝑒 𝑘 =   𝑥 𝑘 − 𝑥̂ 𝑘 .  Kovarian  pra- estimasi error terdapat pada persamaan (9)
𝑃 − 𝑘 = 𝐸[𝑒 − 𝑘 𝑒 −𝑇 𝑘 ] (9)
dan kovarian pasca error terdapat pada persamaan (10).
𝑃 𝑘 = 𝐸[𝑒 𝑘 𝑒 𝑇 𝑘 ] (10)
Dalam menurunkan peramaan untuk kalman filter, kita mulai dengan persamaan yang menghitung pasca- estimasi state 𝑥̂ 𝑘 yang dibangun dari kombinasi pra-estimasi 𝑥̂ − 𝑘 dan selisih antar nilai ukur aktual 𝑧 𝑘 dan prediksi nilai ukur 𝐻𝑥 ̂ − 𝑘 seperti pada persamaan (11).
𝑥̂ 𝑘 = 𝑥̂ − 𝑘 + 𝐾(𝑧 𝑘 − 𝐻𝑥̂ − 𝑘 ) (11)
selisih (𝑧 𝑘 − 𝐻𝑥̂ − 𝑘 ) di  persamaan  (2.9)  disebut  perbaikan  atau  selisih  pengukuran.  Selisih  ini  mewakili ketidaksesuaian  antara  nilai  ukur  yang  diprediksi 𝐻𝑥̂ − 𝑘 dan  nilai  ukur  sebenarnya 𝑧 𝑘 .  Selisihnol  berarti  nilai keduanya sama persis. Matrix K pada persamaan (11) akan dipilih sebagai faktor penguat (gain) yang berfungsi meminimumkan  kovarian  setelah  estimasi  error  seperti  pada  persamaan  (10).  Salah  satu  fromulasi  yang meminimumkan ada pada persamaan (12).
𝐾 𝑘 = 𝑃 − 𝑘 𝐻 𝑇 𝐻𝑃 − 𝑘 𝐻 𝑇 +𝑅 (12)
Pada persamaan (9) dapat dilihat bahwa kovarian error pengukuran dari R mendekati nol, sehingga gain K mengakibatkan  selisih  pengukuran  berpengaruh  lebih  besar.  Sedangkan,  jika  kovarian  pra  estimasi  error 𝑃 − 𝑘 mendekati nol, maka gain K membuat selisihpengukuran berpengaruh lebih kecil. Cara lain untuk memahami peran gain K adalah apabila kovarian error pengukuran R mendekatinol, nilai ukur aktual 𝑧 𝑘 jauh lebih dipercaya kebenarannya,  sedangkan  prediksi  nilai  ukur 𝐻𝑥̂ − 𝑘 semakin  tidak  dapat  dipercaya  kebenarannya.  Bila  kovarian pra-estimasi error 𝑃 − 𝑘 mendekati nol, nilai ukur aktual 𝑧 𝑘 semakin tidak dapat dipercaya, sedangkan prediksi nilai ukur 𝐻𝑥̂ − 𝑘 semakin dapat dipercaya kebenarannya [11].
Kalman filter bekerja dengan cara melakukan estimasi pada suatu proses melalui mekanisme kontrol umpan balik.  Kalman  filter  akan  melakukan  estimasi  keadaan  dari  proses  lalu  didapatkan  feedback  berupa  hasil pengukuran yang bercampur dengan noise. Persamaan dalam proses Kalman filter dibedakan menjadi dua bagian kelompok yaitu yang pertama persamaan update waktu dan yang kedua persamaan update pengukuran. Persamaan update waktu berfungsi mendapatkan nilai sebelum estimasi untuk digunakan pada waktu step selanjutnya.
Persamaan update pengukuran digunakan untuk umpan balik dan dipadukan dengan hasil nilai pengukuran terbaru dengan nilai sebelum estimasi untuk menghasilkan nilai terbaik setelah estimasi. Persamaan update waktu biasanya  disebut  juga  persamaan  prediksi,  sedangkan  persamaan  update  pengukuran  disebut  juga  persamaan koreksi. Kalman filter memiliki algoritma estimasi yang menyerupai algoritma prediksi koreksi yang digunakan untuk mengatasi masalah numerik.
Persamaan spesifik untuk update waktu dan pengukuran di tulis pada persamaan (10) sampai (17): Persamaan Update Waktu:
𝑥̂ − 𝑘 = 𝐴𝑥̂ 𝑘−1 + 𝐵𝑢 𝑘−1 (13)
𝑃 − 𝑘 = 𝐴𝑃 𝑘−1 𝐴 𝑇 + 𝑄 (14)
Persamaan Update Pengkuran:
𝐾 𝑘 = 𝑃 − 𝑘 𝐻 𝑇 𝐻𝑃 − 𝑘 𝐻 𝑇 +𝑅 (15)
𝑥̂ 𝑘 = 𝑥̂ − 𝑘 + 𝐾(𝑧 𝑘 − 𝐻𝑥̂ − 𝑘 ) (16)
𝑃 𝑘 = (1 − 𝐾 𝑘 𝐻)𝑃 − 𝑘 ( 17)
Setelah  siklus  pembaruan  waktu  dan  pembaruan  pengukuran  selesai,  siklus  diulang  menggunakan  nilai perkiraan ulang sebelumnya untuk memprediksi nilai prediksi baru. Sifat rekursif adalah properti penting dari filter Kalman,  membuatnya lebih  praktis  dan  lebih  sederhana  untuk  diterapkan  daripada  implementasi  filter  Wiener, yang dirancang untuk bekerja dengan secara langsung memasukkan semua data dalam setiap perkiraan.

## 2.5 Moving Average Filter
Moving average  adalah filter yang digunakan untuk menyaring dan  memperhalus data yang diterima dengan cara merata-rata dengan banyaknya data yang diambil[6]. Nilai yang akan diperoses nantinya merupakan jumlah nilai
yang dibagi dengan jumlah sample yang diambil. Proses filter harus terus dilakukan agar tehindar dari noise yang timbul karena mekanik[6].
Hal  ini  dilakukan  karena  data  tidak  akan  selalu  bebas  dari  noise  pembacaan  oleh  karena  itu  dibutuhkan filter  digital  unutk  menyaring  saat  ada  sinyal  masuk.  Meskipun  dengan  penyaringan  sebelumnya,  data masihbisaerror  karena  adanya  noise  mekanik.  Sehingga  perlu  di  implementasikan  beberapa  filter. Berdasarkan pada jumlah data yang diambil untuk difilter, akselerasi sebenarnya bisa menggunakan beberapa nilai untuk dirata – rata sesuai persamaan (18). Proses kalibrasi membutuhkan kondisi diam untuk mendapatkan data yang akurat.
Out = ( 𝐷𝑎𝑡𝑎 𝑛 + 𝐷𝑎𝑡𝑎 𝑛−1 +⋯. 𝑚 ) (18)
Dari persamaan (18) dapat diketahui bahwa n adalah nomor sample dari data yang diambil, m adalah range data atau jumlah data yang ingin di rata – rata dan digunakan untuk setiap proses moving average selanjutnya, dan out  merupakan hasil atau output dari proses moving average [6]. Proses pengambilan data dapat di ilustrasikan pada gambar.

## 2.6 Perancangan Software
Software dirancang berdasarkan kebutuhan input dan output yang akan digunakan pada sistem serta spesifikasi sensor  yang  digunakan.  Ada  dua  alur  program  yang  akan  dibuat  yang memiliki  perbedaan  hanya  pada  metode yang digunakan, seperti pada gambar 3.
Mulai Inisialisasi Program Selesai Baca Sensor Accelerometer Baca Sensor Accelerometer Pengolahan Moving Average Filter Pengolahan Kalman Filter Konversi Data Sensor Ke Percepatan Konversi Data Sensor Ke Percepatan Kalman Filter Moving Average Filter Konversi Percepatan ke Kecepatan Konversi Percepatan ke Kecepatan Konversi Kecepatan ke Jarak Konversi Kecepatan ke Jarak Simpan ke EEPROM Simpan ke EEPROM Jarak > 10.000km Jarak > 10.000km ya ya Tidak Kirim Notifikasi ke Telegram Mulai Inisialisasi Program Kirim Notifikasi ke Telegram Selesai Tidak
Gambar 3. Flowchart Program
Pada tahap inisialisasi Program semua variable dan library yang digunakan akan dideklarasikan agar saat dipanggil  kedalam  program  variable  sudah  terdaftar.  Pada  tahap  pembacaan  Sensor  accelerometer  adalah membaca output sensor accelerometer yang berupa data X, Y, dan Z. Data tersebut akan diolah kembali menjadi kecepatan dan jarak. Pada pengambilan data yang pertama menggunakan metode Moving  Average Filter. Pada siklus ini output sensor berupa nilai ADC  akan di sampling dengan interval tertentu dan dirata – rata, sehingga jika  ada  perubahan  pembacaan  yang  signifikan  akan  dikurangi  agar  menghasilkan  nilai  perubahan  yang  halus. Baru  setelah  itu  nilai  dikonversikan  ke  percepatan.  Berdasarkan  gambar  4  proses Moving  Average  Filter menggunakan rumus seperti pada persamaan (18). Setelah mendapatkan nilai  dari proses filter maka data akan dikonversi  ke  percepatan  menggunakan  rumus  yang  sudah  dijelaskan  pada  persamaan  (4).  Data  hasil  konversi percepatan akan digunakan untuk proses selanjutnya yaitu dikonversi ke kecepatan engan menggunakan rumus persamaan  (5).  Data  kecepatan  inilah  yang  bisa  dikonversi  untuk  menghasilkan  data  nilai  jarak  menggunakan persamaan (6) dan nantinya akan disimpan di eeprom arduino.
Gambar 4. Flowchart Proses MAF
Selain menggunakan Moving Average Filter , pada alat ini juga akan dilakukan pengambilan data menggunakan metode Kalman Filter. Metode ini juga akan menggunakan data output sensor yang sudah di konversi ke dalam satuan percepatan. Kalman Filter akan memprediksi  output sensor berdasarkan nilai output sensor sebelumnya. Nilai output sensor yang memiliki noise akan di bandingkan dengan hasil prediksi sehingga menghasilkan nilai error. Jika nilai error semakin mendekati nol maka pembacaan akan lebih percaya terhadap hasil prediksi tersebut daripada hasil pengukuran aktual. Sehingga jika terjadi perubahan pembacaan sensor yang signifikan secara tiba – tiba tidak akan di tampilkan pada output Kalman Filter.
Gambar 5. Flowchart Proses Kalman Filter
Pada gambar  5  terlihat bahwa flowchart proses kalman filter menggunakan persamaan (13) sampai (17) yang sudah di sesuaikan dengan syntax di Arduino IDE agar bisa diopreasikan. Setelah itu data akan dikonversikan ke percepatan, kecepatan, dan jarak dengan cara yang sama seperti proses Moving  Average Filter sebelumnya. Pada  tahap  selanjutnya  yaitu  Simpan  ke  EEPROM,  program  akan  menyimpan  data  yang  sudah  diperoleh  dari sensor dan perhitungan kedalam memori EEPROM pada mikrokontroler. Tahap ini dilakukan dengan tujuan agar ketika sistem mati, data yang sudah diperoleh tidak akan hilang karena tersimpan di EEPROM. Kemudian pada tahap Evaluasi jarak akan mengevaluasi data berupa jarak apakah sudah sesai yang ditentukn atau tidak. Jika tidak program akan kembali ke pembacaan data, dan jika iya maka program akan lanjut ke proses selanjutnya. Setelah evaluasi  dan  dinyatakan  iya,  maka  program  akan megirimkan  notif  beruba  himbauan  untuk  melakukan  servise kendaraan bermotornya melalui aplikasi telegram.

## 2.7 Perancangan Hardware
Setelah  proses  perancangan  software  tahap  selanjutnya  adalah  tahap  perancangan  hardware  dari  alat  Wireless Odometer. Dalam perancangan hardware terdapat blok diagram yang menjelaskan alur kerja atau cara kerja dari alat tersebut.
Gambar 6. Blok Diagram Hardware
Pada gambar 8 diagram blok dapat dilihat sensor yang digunakan adalah sensor accelerometer yang di baca melalui Analog input pada arduino. Setelah dilakukan pembacaan sensor maka akan dilakukan pengolahan data berupa filter digital moving average dan kalman filter. setelah melalui proses filter, output sensor akan ditampilkan melalui LCD Display. Jika output sensor melebihi batas yang sudah ditetapkan maka akan dikirimkan ke aplikasi telegram pada smartphone melalui modul wifi ESP8266.

## 3. HASIL DAN PEMBAHASAN

## 3.1 Pengujian sensor Accelerometer MMA7361
Tujuan dilakukannya pengujian pada sensor Accelerometer MMA7361 adalah untuk mengetahui apakah output dari sumbu x pada sensor sudah sesuai dengan output yang ditetapkan pada datasheet dari sensor tersebut. Output yang  dibandingkan  berupa  tegangan  dari  output  sumbu  x  sensor  MMA7361  dengan  output  sensor  MMA7361 menurut  datasheet. Setelah mendapatkan hasil bahwa output sensor sudah sesuai  makan akan dilakukan proses kalibrasi  pada sensor accelerometer MMA7361 tepatnya di  sumbu  yang akan digunakan yaitu sumbu x. Untuk melakukan kalibrasi  seharusnya dilakukan pada masing  –  masing  sumbu  sensor yaitu sumbu  x, y, dan z. Akan tetapi pada penelitian ini hanya menggunakan satu sumbu saja yaitu sumbu x sehingga yang menjadi focus utama untuk  dilakukannya  kalibrasi  adalah  pada  sumbu  x.  Hasil  pengujian  output  sensor  accelerometer  MMA7361 hasilnya  ditunjukkan  pada  table  I.  Berdasarkan  hasil  table  I  tersebut  bahwa  output  sensor  sudah  sesuai  dan mendekati hasil output yang sudah diterntukan dalam datasheet sensor accelerometer MMA7361.

## Tabel 1. Data Output Sensor
Data Ouput sensor pada sumbu X Gravitasi Aktual Teori (datasheet) ADC  Volt ADC Volt -1G 178 0,86 174 0,85 0G 357 1,74 337 1,65 +1G 517 2,52 501 2,45
Setelah  mengetahui  bahwa  output  sensor  seudah  sesuai  maka  proses  selanjutnya  adalah  mengkalibrasi sensor tersebut untuk mencari nilai sensor saat di beri nilai gravitasi +1G, 0G, dan juga -1G. kalibrasi dilakukan dalam keadaan diam dengan cara mengambil hasil data sebanyak 1024 data melalui interface lalu dirata – rata agar menghasilkan nilai adc yang tetap disetiap gravitasi

## 3.2 Pengujian Moving Average Filter
Pengujian  Moving  Average  Filter  dilakukan  dengan  tujuan  untuk  mengetahui  apakah  filter  tersebut  sudah  bisa berjalan sesuai yang diharapkan atau tidak. Parameter yang dapat dirubah dari filter ini adalah seberapa  banyak data yang disampling. Pada pengujian pertama ini untuk menentukan berapa banyak data yang harus disampling agar data output yang dihasilkan terbebas dari noise secara optimal.
Gambar 8. Grafik Output Filter Dan Sensor Saat Jumlah Sampling Data = 5
Dari data gambar 12 dan 13 Semakin sedikit data yang disampling maka noise akan tetap ada tetapi jika terlalu banyak data yang disampling noise akan hilang tetapi data sensor juga akan tereduksi sehingga data yang transferkan bukan data realtime dari sensor. Dari beberapa percobaan yang dilakukan, ditemukan bahwa jumlah sampling  data  yang  paling  bagus  hasilnya  adalah  5  data  disetiap  penyamplingan.  Setelah  paremeter  Moving Average Filter sudah ditentukan maka proses selanjutnya akan dilkukan pengujian untuk mengambil  data jarak berupa  kilometer.  Pengujian  kedua  ini  dilakukan  dengan  tujuan  untuk  mengetahui  tingkat  akurasi  pembacaan sensor  Accelerometer  MMA  7361  jika  menggunakan  metode  Moving  Average  Filter  sebagai  filter  pembacaan sensor pada sumbu x.
Tabel 2. Ouput sensor dengan metode Moving Average Filter No Jarak dari wireless odometer (Km) Jarak dari mobil (Km) Prosentase kesalahan pembacaan (%) Moving Average Filter Moving Average Filter 1 5,2 5,1 1,96 2 11,4 11,6 1,72 3 14,7 15,1 2,65 4 18,7 19,1 2,09 5 26 26,6 2,26 6 29,3 29,8 1,68 7 34,5 35 1,43 8 39,6 40 1,00 9 45,2 46,1 1,95 10 49,3 50 1,40 Rata-Rata Prosentase Kesalahan (%) 1,81
Dari  tabel  2.  dapat  dilihat  bahwa  pengukuran  jarak  dengan  menggunakan  metode moving  average filter mempunyai nilai error pembacaan rata – rata adalah 1.81 %. Data jarak tersebut diambil sampai jarak 50km dengan pengambilan data setiap 5km dengan melakukan perjalanan dari Dupak Rukun Surabaya sampai ke Sedati Sidorajo pulang pergi.

## 3.3 Pengujian Kalman Filter
Pengujian  ini  ditujukan  untuk  mengetahui  kinerja  serta  dampak  dari  penggunakaan  metode  kalman  filter  pada sensor accelerometer MMA7361 sebagai filter. Parameter yang dapat dirubah adalah parameter qa dan ra. Semakin jauh perbedaan keduanya maka noise akan hilang dan jika terlalu jauh data akan juga ikut menghilang. Jadi output sensor tidak akan berubah walaupun sensornya berubah. Sebaliknya jika qa dan ra selisihnya terlalu dekat maka noise akan tetap ada karena data output sensor akan masih sama dengan output kalman filter.
Gamar 9. Grafik Output Filter Dan Sensor Saat Qa = 0,0001 Ra= 0,01
Gambar 10. Grafik output filter dan sensor saat qa = 1 ra= 0,0001
Pada gambar 14 dan gambar 15 terdapat grafik yang membandingkan antara respon data output sebelum di filter dan sesudah difilter menggunakn kalman filter dalam keadaan diam.  Berdasarkan hasil ini  terlihat  bahwa dengan  parameter  qa  =  0,0001  dan  ra  =  0,01 noise dapat  teredam  dengan  baik.  Pengujian  selanjutnya  setelah menemukan parameter yang tepat adalah menguji data output sensor berupa jarak dengan satuan kilometer yang sudah menerapkan metode kalman filter.
Tabel 3. Ouput Sensor Dengan Metode Kalman Filter
No Jarak dari wireless odometer (Km) Jarak dari mobil (Km) Prosentase kesalahan pembacaan (%) Kalman Filter Kalman Filter 1 5,2 5,1 1,96 2 11,5 11,6 0,86 3 14,8 15,1 1,99 4 18,8 19,1 1,57 5 26,5 26,6 0,38 6 29,8 29,8 0,00 7 35,1 35 0,29 8 40,2 40 0,50 9 45,9 46,1 0,43 10 50 50 0,00 Rata-Rata Prosentase Kesalahan (%) 0,80
Pada tabel 3 dijelaskan bahwa dengan pengujian sejauh 50 km output data sensor accelerometer memiliki nilai  error  sebesar  0,80%  dengan  pengambilan  data  di  setiap  5  km.  pengujian  ini  dilakukan  di  rute  yang  sama dengan dilakukannya pengujian MAF, yaitu dari Dupak Rukun Surabaya hingga Sedati Sidoarjo bolak – balik.

## 4. KESIMPULAN
Menurut  data  analisa,  sudah  dibuktikan  bahwa  dengan  menambahkan  filter  pada  alat wireless  odometer dapat memperbaiki output sensor dengan mengurangi noise yang terjadi saat  dilakukan pengukuran jarak oleh sensor accelerometer MMA7361.  Jika  dalam  penelitian  sebelumnya  memiliki  error  pengukuran  hingga  13,2  %  maka dengan ditambahkannya filter pada pengukuran sensor Accelerometer , nilai error dapat berkurang hingga 1,81 % menggunakan metode Moving Average Filter dan 0,80 % dengan menggunakan metode Kalman Filter . Berdasarkan data yang sudah didapat dengan membandingkan dua metode filter yaitu Moving Average Filter dan Kalman  Filter ,  dapat  ditarik  kesimpulan  bahwa metode  filter  yang  terbaik  untuk  digunakan  pada alat  Wireless Odometer adalah metode Kalman Filter . Ketika dilakukan pengujian, hasil nilai error yang didapat dengan metode Moving  Average Filter sebesar  1,81  %  sedangkan  ketika  menggunakan  metode Kalman Filter nilai  error  yang dihasilkan  lebih  kecil  daripada  menggunakan  metode Moving  Average Filter yaitu  hanya  0,80  %. Berdasarkan hasil pengujian tersebut bahwa metode Kalman Filter memiliki hasil pengukuran mendekati nilai sesungguhnya sebesar 0,08%.

## REFERENCES
[1] A. Purwadi, “Electric Vehicle Research Implementation in Indonesia,” pp. 44–51, 2020.
[2] A.  López-Arquillos,  J.  C.  Rubio-Romero,  M.  Súarez-Cebador,  and  M.  del  C.  Pardo-Ferreira,  “Comparative  risk assessment of vehicle maintenance activities: Hybrid, battery electric, and hydrogen fuel cell cars,” Int. J. Ind. Ergon., vol. 47, pp. 53–60, 2015, doi: 10.1016/j.ergon.2015.02.005.
[3] K. Chen, M. Lu, X. Fan, M. Wei, and J. Wu, “Road condition monitoring using on-board three-axis accelerometer and GPS sensor,” Proc. 2011 6th Int. ICST Conf. Commun. Netw. China, CHINACOM 2011, no. 2009, pp. 1032–1037, 2011, doi: 10.1109/ChinaCom.2011.6158308.
[4] A.  Wahyudi,  “Rancang  Bangun  Informasi  Service  Pada  Kendaraan  Bermotor  Dengan  Wireless  Odometer Menggunakan Sensor Accelerometer.,” Institut Teknologi Adhi Tama Surabaya, 2021.
[5] W.  S.  Pambudi,  I.  Suhendra,  J.  Teknik,  E.  Universitas,  and  I.  Batam,  “Perbaikan  Respon  Output  Menggunakan Implementasi Kalman Filter Pada Simulasi,” no. October 2015, pp. 141–150, 2015.
[6] Zulharbi, Firdaus, and Y. Antonisfia, “Implementasi Moving Average Filter Pada Mikrokontroler Sebagai Peredam Noise  Sensor  Piezo  Elektrik  Untuk  Mendeteksi  Gelombang  Seismik  (Gempa  Bumi),”  Pros.  Semnastek,  no.
PROSIDING SEMNASTEK 2014, pp. 1–8, 2014, [Online]. Available:
http://jurnal.ftumj.ac.id/index.php/semnastek/article/view/300.
[7] S. Azaz, : “IMPLEMENTASI SENSOR ACCELEROMETER MMA 7361 SEBAGAI PENGAMAN PADA SEPEDA MOTOR MATIC UNTUK MEMINIMALISIR DAMPAK KECELAKAAN,” Tek. Elektro Univ. Brawijaya, pp. 1–9, 2014.
[8] J. T. Elektro and U. D. Semarang, “Kalibrasi Sensor Multigain Akselerometer Dengan Acuan Percepatan Gravitasi Bumi,” Transmisi, vol. 17, no. 3, pp. 122–128, 2015.
[9] M. Seminar and T. Akhir, “Aplikasi Sensor.”
[10] A. Susanto, S. P. Hadi, and W. Widada, “Accelerometer Mma7260Q Pada Ketiga Sumbu,” J. Tek. Elektro, vol. 1, no. 11, pp. 16–22, 2009.
[11] M.  N.  Qomarudin,  “[Terjemahan]  Pengantar  Kalman  Filter  Diskrit,”  no.  February,  2014,  [Online].  Available: https://www.researchgate.net/publication/272740539_Terjemahan_Pengantar_Kalman_Filter_Diskrit.