Fibusi (JoF) Vol. 3 No. 2, September 2015
RANCANG BANGUN SCANNER 3D MENGGUNAKAN SENSOR ULTRASONIK DENGAN TAMPILAN REALTIME BERBASIS MIKROKONTROLER Edy Junaidi, Waslaluddin*, Lilik Hasanah* Jurusan Pendidikan Fisika, Fakultas Pendidikan Matematika dan Ilmu Pengetahuan AlamUniversitas Pendidikan Indonesia (UPI), Jl. Dr. Setiabudhi 229, Bandung 40154, Indonesia
[email protected] ABSTRAK Scanner 3D adalah sebuah sistem untuk membuat model 3D dari suatu bidang atau benda. Scanner 3D terdiri dari dua jenis, yaitu scanner yang menggunakan laser dan scanner yang menggunakan sensor ultrasonik. Scanner 3D yang menggunakan laser memiliki kelemahan yaitu membutuhkan banyak biaya karena sistem scanner ini juga menggunakan kamera, serta pengolahan data hasil scan yang masih cukup rumit. Oleh karena itu, pada penelitian ini, peneliti akan membuat sistem scanner 3D yang tidak membutuhkan banyak biaya, pengolahan data yang tidak rumit dan hasil pemindaian dengan akurasi tinggi. Scanner 3D yang dibuat adalah menggunakan sebuah sensor ultrasonik dan dua buah motor stepper serta akan menampilkan hasil scan dari benda secara realtime. Semua sistem scanner 3D pada penelitian ini dikontrol secara otomatis menggunakan mikrokontroler. Setelah dilakukan pengujian scan pada lima botol, diperoleh lima model botol dengan akurasi botol 1 96,50 %, botol 2 87,28 %, botol 3 59,54 %, botol 4 78,88 %, dan botol 5 92,77 %. Berdasarkan akurasi model hasil pemindaian, sistem scanner pada penelitian ini hanya untuk memindai benda silinder yang tidak terdapat banyak lekukan. Kata kunci: Scanner 3D, ultrasonik, tampilan realtime , mikrokontroler. ABSTRACT 3D scanner is a system to create a 3D model of a field or object. 3D scanners are consists of two types, namely scanner that uses laser and scanner that uses ultrasonic sensors. 3D scanners that use laser has the disadvantage of requiring a lot of costs because the scanner system also uses a camera, and the scanned data processing is still quite complicated. Therefore, in this study, researchers will create a 3D scanner system that does not require a lot of costs, simple data processing and high accuracy of results of scanning. 3D scanner is made using an ultrasonic sensor and two stepper motors and will display the results of the scan of objects in realtime visualization. All 3D scanner system in this study is controlled automatically using a microcontroller. After testing scan on five bottles, obtained five models of bottles with an accuracy 96.50% of bottle 1, 87.28% of bottle 2, 59.54% of bottle 2, 78.88% of bottles 4, and 92.77% of bottles 5. Based on the accuracy of models, the scanner system in this research only to scan the cylindrical objects are not there a lot of curves. Keywords: 3D Scanner, ultrasonic, realtime visualization, microcontroller. *Penanggung Jawab
Edy Junaidi, dkk Rancang Bangun Scanner 3D Menggunakan Sensor Ultrasonik Dengan Tampilan Realtime Berbasis Mikrokontroler
PENDAHULUAN Sensor ultrasonik adalah sensor yang memanfaatkan prinsip gelombang ultrasonik. Gelombang ultrasonik merupakan gelombang akustik yang memiliki frekuensi mulai 20 kHz hingga sekitar 20 MHz (Arief, 2011). Sensor ultrasonik biasanya digunakan untuk mengukur jarak suatu benda yang berada di hadapan sensor tersebut. Adapun beberapa aplikasi dari sensor tersebut adalah sebagai pengukur level ketinggian dan volume air (Arief, 2011; Saleh, dkk. 2013), detektor jarak (Prawiroredjo & Asteria, 2008), pengukur tinggi badan (Salam & Yohannes, 2011), otomatisasi keran dispenser (Danel & Wildian, 2012), sistem navigasi mobile robot (Nurmaini & Zarkasih, 2009), dan 3D scanner (Fenster, dkk. 2013; Nelson, 2006). Pada penelitian ini, sensor ultrasonik akan dimanfaatkan sebagai bagian dari sistem scanner tiga dimensi. Dari jenis sensor yang digunakan, scanner 3D ada dua macam yaitu scanner dengan menggunakan laser (Tornslev, 2005) dan yang menggunakan gelombang ultrasonik (Fenster, dkk. 2013; Nelson, 2006). Scanner laser biasanya digunakan untuk memindai patung dan benda-benda lain serta digunakan untuk memindai manusia untuk membuat karakter animasi. Sedangkan Scanner ultrasonik sering digunakan dalam bidang medis seperti ultrasonography (USG) (Fenster, dkk. 2013; Nelson, 2006) dan untuk mendeteksi dasar laut seperti sistem Sound Navigation And Ranging (SONAR). Pada penelitian pembuatan scanner 3D menggunakan laser yang dilakukan (Tornslev, 2005) benda dipindai tidak hanya menggunakan laser, tetapi juga menggunakan kamera sehingga akan menambah biaya. Selain itu pengolahan data hasil scan juga cukup rumit.
Sedangkan pada scanner 3D menggunakan ultrasonik masih menggunakan banyak sensor yaitu empat buah sensor. Dengan adanya kelemahan-kelemahan dari sistem scanner 3D yang telah dibuat, pada penelitian ini peneliti akan membuat sebuah sistem scanner 3D menggunakan sensor ultrasonik yang tidak membutuhkan banyak biaya, pengolahan data yang tidak rumit, dan hasil scan yang ditampilkan secara realtime. METODE Gelombang ultrasonik adalah jenis gelombang mekanik yang memiliki frekuensi di atas 20 kHz. Gelombang ini biasanya digunakan beberapa hewan seperti kelelawar dan lumba-lumba untuk mengetahui benda-benda yang ada dihadapannya. Sensor ultrasonik adalah sensor yang memanfaatkan gelombang ultrasonik untuk mengetahui jarak antara sensor dan benda yang ada di hadapannya. Sensor ini bekerja dengan memancarkan gelombang ultrasonik dan akan berbalik ketika ada benda dihadapannya dan akan diterima oleh receiver dalam bentuk pulsa. Dalam penelitian ini sensor ultrasonik akan digunakan untuk mengetahui bentuk dari benda yang ada dihadapannya. Sensor digunakan untuk memindai beberapa titik dari benda. Untuk memindai beberapa titik tersebut, digunakan dua buah motor stepper yaitu untuk memutar benda dan menggerakan sensor secara otomatis. Data yang diperoleh saat pemindaian dapat langsung ditampilkan dalam bentuk model tiga dimensi melalui komunikasi serial antara komputer dan mikrokontroler. Scanner 3D adalah sebuah sistem untuk membuat model 3D dari suatu bidang atau benda [9]. Untuk membuat suatu model 3D dibutuhkan koordinatkoordinat dari benda yang akan
Fibusi (JoF), Vol. 2 No. 1, Agustus 2015
dimodelkan. Fungsi dari sistem scanner 3D adalah untuk mendapatkan koordinatkoordinat tersebut. Model 3D dari suatu benda biasanya ditampilkan dalam koordinat kartesian yaitu x, y, dan z. Namun pada penelitian ini, sistem scanner 3D hanya bisa mendapatkan koordinat silinder dari benda yang dipindai. Sistem scanner pada percobaan ini diprogram untuk mendapatkan koordinat silinder dari benda yaitu sudut (π½), jari-jari (r), dan ketinggian (z). Setiap benda pasti memiliki titik pusat, dan jika titik pusat tersebut dijadikan sumbu rotasi maka setiap benda akan memiliki koordinat silinder. Salah satu contoh koordinat silinder pada suatu bidang sembarang dapat dilihat pada Gambar 1.
Gambar 1 Koordinat silinder dari bidang sembarang. Agar dapat diplot pada koordinat kartesian, maka koordinat-koordinat silinder harus diubah ke koordinat kartesian. Koordinat silinder dapat diubah ke koordinat kartesian menggunakan persamaan trigonometri sebagai berikut: π₯ = π cos π
π¦ = π sin π
(1) (2)
Sensor ultrasonik adalah suatu alat yang digunakan untuk mengukur seberapa jauh jarak suatu benda dengan jangkauan
2 cm sampai 3 meter. Sensor ultrasonik yang digunakan dalam penelitian ini adalah HC-SR04. Sensor HC-SR04 bekerja dengan memancarkan gelombang ultrasonik (di atas jangkauan pendengaran manusia) dan menyediakan pulsa output yang sesuai dengan waktu yang dibutuhkan untuk gelombang gema kembali ke sensor. Dengan mengukur lebar pulsa gema, jarak target dapat dengan mudah dihitung. Sensor HC-SR04 memiliki 4-pin male header yang digunakan untuk power supply (5 VDC), trigger, echo, dan ground. Bentuk fisik dari sensor HC-SR04 dapat dilihat pada Gambar 2.
Gambar 2 Sensor HC-SR04. Cara kerja sensor ini adalah transmiter ultrasonik memancarkan sebuah gelombang dalam satu arah dan timer dimulai saat itu diluncurkan. Ultrasonik menyebar di udara, dan akan berbalik ketika bertemu halangan dalam jalannya. Terakhir, receiver ultrasonik akan menghentikan timer ketika menerima pantulan gelombang. Kecepatan ultrasonik menyebar di udara adalah 340m/s atau 1 cm /29,034Β΅s, berdasarkan perekam waktu t, jarak (s) antara halangan dan transmitter dapat dihitung, yaitu: s=340t/2 dalam meter dan s=t/58,068 dalam centimeter. Untuk mengoperasikan modul in adalah dengan mengeset LOW pada Trig dan Echo saat inisiasi modul, pertama,
Edy Junaidi, Rancang Bangun Scanner 3D Menggunakan Sensor Ultrasonik Dengan Tampilan Realtime Berbasis Mikrokontroler
kirimkan setidaknya 10 Β΅s pulsa HIGH level ke pin Trig (modul secara otomatis mengirimkan 40K gelombang kotak), dan selanjutnya tunggu untuk penangkapan output gelombang naik oleh port echo, pada waktu yang sama, buka penghitung waktu untuk memulai timer. Selanjutnya, sekali lagi tangkap output gelombang turun oleh port echo, pada waktu yang sama, baca waktu pada penghitung, yang mana itu adalah waktu tempuh ultrasonik di udara. Berdasarkan rumus: jarak = (waktu HIGH level * kecepatan rambat ultrasonik di udara) / 2, maka jarak ke halangan dapat ditentukan. Cara kerja sensor ultrasonik dapat dilihat pada Gambar 3.
Gambar 4 Sistem mekanik scanner 3D.
Gambar 3 Cara kerja sensor ultrasonik. Sistem scanner dibuat dari beberapa komponen seperti sebuah sensor ultrasonik, 2 buah motor stepper, v-belt, gear, dan triplek yang dibangun menjadi sebuah sistem mekanik seperti yang terlihat pada Gambar 4. Seluruh pergerakan dari sistem mekanik dikontrol oleh arduino. Sebelum dapat dikontrol, bagian dari sistem mekanik yang terdiri dari arduino uno, dua motor stepper, IC ULN2003A dan sensor ultrasonik harus dirangkai seperti yang ditunjukan pada Gambar 5.
Gambar 5 Rangkaian sistem mekanik scanner 3D.
Fibusi (JoF), Vol. 2 No. 1, Agustus 2015
Selain sistem mekanik, pada penelitian ini juga dibuat sistem digital untuk beberapa fungsi seperti: menggerakan dua buah motor stepper secara otomatis, menjalankan sensor ultrasonik, mengambil data dari sensor, serta mengolah data dan menampilkannya dalam bentuk gambar tiga dimensi secara realtime. Sistem ini terdiri dari dua buah software yaitu Arduino IDE dan Matlab. Arduino IDE digunakan untuk membuat bahasa pemrograman Arduino untuk mengatur gerakan dua buah motor stepper dan menjalankan sensor ultrasonik. Sedangkan Matlab digunakan untuk membuat bahasa pemrograman untuk mengambil data dari arduino menggunakan serial komunikasi, mengolahnya, dan menampilkannya dalam bentuk gambar tiga dimensi secara realtime. Skema dari sistem scanner 3D pada penelitian ini dapat dilihat pada Gambar 6.
botol yang sebenarnya. Untuk mengukur volume botol yang sebenarnya cukup dengan mengisi penuh botol tersebut dengan air dan mengukur volume air tersebut dengan gelas ukur. Sedangkan untuk menghitung volume model adalah dengan menggunakan rumus. Model yang diperoleh berbentuk kerucut tegak terpancung, yaitu bentuk yang menyerupai silinder namun berbeda jarijari dari ketinggian satu dengan ketinggian berikutnya seperti yang terlihat pada Gambar 7.
Gambar 7 Kerucut tegak terpancung. Maka dari itu rumus yang digunakan untuk menghitung volume model adalah rumus volume kerucut tegak terpancung. Rumus dari volume kerucut tegak terpancung adalah sebagai berikut (Purcell & Varberg, 1987): 1
ππππππ = π(π 2 + ππ + π
2 )β 3
(3)
dimana r adalah jari-jari lingkaran atas, R adalah jari-jari lingkaran bawah, dan h adalah ketinggian kerucut tegak terpancung tersebut. Volume model dihitung dengan menjumlahkan volume model persuku. HASIL DAN PEMBAHASAN
Gambar 6 Skema sistem scanner 3D dengan tampilan realtime. Cara untuk mencocoknya adalah dengan mecocokan volume model dengan
Pada sistem scanner 3D pada penelitian ini, langkah pertama yang dilakukan adalah membuat sistem mekanik. Sistem mekanik ini terdiri dari dua buah motor stepper sebagai alat penggerak dari sensor dan benda yang akan dipindai. Sistem mekanik berhasil dibuat seperti yang terlihat pada Gambar 4. Setelah
Edy Junaidi, Rancang Bangun Scanner 3D Menggunakan Sensor Ultrasonik Dengan Tampilan Realtime Berbasis Mikrokontroler
sistem mekanik berhasil dibuat, langkah selanjutnya adalah membuat program arduino untuk mengontrol gerakan sistem mekanik. Setelah program dibuat, hal selanjutnya adalah melakukan pengujian menggerakan sistem mekanik berbasis mikrokontroler dengan program yang telah dibuat. Pengujian pertama adalah menggerakan motor stepper 1 yang diberi tegangan 5 volt dan hasilnya adalah motor stepper bergerak sesuai dengan apa yang diprogramkan. Hal yang sama dilakukan pada motor stepper 2 dan hasilnya motor stepper 2 juga bergerak sesuai dengan yang diprogramkan. Pengujian selanjutnya adalah mengontrol kedua motor stepper secara bersamaan. Hasilnya adalah kedua motor stepper tidak berputar dikarenakan tegangannya kurang besar. Maka tegangan dinaikan hingga kedua motor stepper berputar, yaitu 8 volt. Pada tegangan tersebut kedua motor stepper bergerak sesuai dengan yang diprogramkan, akan tetapi kedua IC ULN2003A yang digunakan menjadi sangat panas karena menerima arus lebih dari 500 mA. Untuk mengatasi masalah ini, maka digunakan dua buah power supply yang memberikan tegangan 5 volt untuk masing-masing motor stepper. Cara tersebut terbukti ampuh karena dua motor stepper bisa bergerak secara bersamaan dan tidak menimbulkan panas pada IC drivernya. Kendala selanjutnya yang dihadapi saat pembuatan sistem mekanik adalah kesulitan untuk menempatkan titik pusat dari alas benda dengan titik pusat rotasi motor stepper 1. Hal ini menjadi masalah karena jika titik pusat dari alas benda tidak pas pada titik pusat rotasi motor stepper, maka benda tidak akan berputar secara baik (tidak pada sumbu rotasi), yang akan menyebabkan peningkatan kesalahan pada saat pemindaian. Untuk mengatasi masalah ini adalah dengan melakukan penempatan dan pengujian rotasi secara berulang-ulang hingga dirasa rotasi dari benda sudah cukup baik (mendekati sumbu rotasi). Walaupun rotasi benda tidak bisa mutlak tepat pada sumbu rotasinya, teknik ini setidaknya bisa meminimalisir kesalahan pada saat pemindaian.
Setelah sistem mekanik dan sistem digital berhasil dibuat, langkah selanjutnya adalah melakukan pengujian pemindaian benda. Benda yang dipindai pada penelitian ini adalah benda silinder dengan bentuk dan ukuran yang berbeda seperti yang ditunjukan pada Gambar 8. Model yang terbentuk dari hasil scan kelima botol tersebut dapat dilihat pada Gambar 9 sampai dengan Gambar 13.
Gambar 8 Botol yang dipindai, dari kiri kekanan, botol 1 s.d. botol 5.
Gambar 9 Model botol 1, (a) plot 3D dengan plot3, (b) plot 3D dengan surf, (c) tampak samping, (d) tampak atas, (e) tampak bawah.
Fibusi (JoF), Vol. 2 No. 1, Agustus 2015
Gambar 10 Model botol 2, (a) plot 3D dengan plot3, (b) plot 3D dengan surf, (c) tampak samping, (d) tampak atas, (e) tampak bawah.
Gambar 11 Model botol 3, (a) plot 3D dengan plot3, (b) plot 3D dengan surf, (c) tampak samping, (d) tampak atas, (e) tampak bawah.
Gambar 12 Model botol 4, (a) plot 3D dengan plot3, (b) plot 3D dengan surf, (c) tampak samping, (d) tampak atas, (e) tampak bawah.
Gambar 13 Model botol 5, (a) plot 3D dengan plot3, (b) plot 3D dengan surf, (c) tampak samping, (d) tampak atas, (e) tampak bawah. Tingkat kemiripan kelima model dengan benda yang sebenarnya berbedabeda. Pada penelitan ini, tingkat akurasi
Edy Junaidi, Rancang Bangun Scanner 3D Menggunakan Sensor Ultrasonik Dengan Tampilan Realtime Berbasis Mikrokontroler
model diperoleh dengan membandingkan volume model dengan volume botol yang sebenarnya seperti yang ditunjukan pada Tabel 1. Tabel 1 Akurasi model. Benda
Volume Benda (cm3)
Volume Model (cm3)
Akurasi (%)
Botol 1
74,00
71,41
96,50
Botol 2
438,00
382,27
87,28
Botol 3
324,00
192,90
59,54
Botol 4
512,00
403,88
78,88
Botol 5
1466,00
1360,05
92,77
Dari pengujian scan pada kelima botol, diperoleh lima model botol yang berbeda-beda. Kelima model tersebut memiliki tingkat kemiripan yang berbedabeda dengan botol sebenarnya. Model botol 1, 2, dan 5 terlihat sudah hampir menyerupai bentuk botol yang sebenarnya. Akan tetapi model botol 3 dan 4 terlihat belum terlalu mirip dengan bentuk botol yang sebenarnya. Ini dikarenakan adanya lekukan-lekukan pada botol tersebut yang mengakibatkan sensor tidak bisa menentukan jari-jari sebenarnya dari botol pada saat rmemindai lekukan tersebut. Inilah yang menjadi kelemahan dari sistem scanner 3D pada penelitian ini. Sensor tidak mampu memindai lekukan dengan baik, karena pada saat sensor memindai lekukan, gelombang suara yang digunakan sensor akan memantul kesegala arah, sehingga jarak yang terbaca oleh sensor terkadang tidak menunjukan jarak benda yang dipindai.
KESIMPULAN Sistem scanner 3D menggunakan sensor ultrasonik dengan tampilan realtime berhasil dibuat. Setelah dilakukan pengujian scan pada lima botol, diperoleh lima model botol dengan akurasi botol 1 96,50 %, botol 2 87,28 %, botol 3 59,54 %, botol 4 78,88 %, dan botol 5 92,77 %. Berdasarkan akurasi model hasil pemindaian, sistem scanner pada penelitian ini hanya untuk memindai benda silinder yang tidak terdapat banyak lekukan seperti botol 1, 2, dan 5. DAFTAR PUSTAKA Arief, U. M. (2011). Pengujian sensor ultrasonik ping untuk pengukuran level ketinggian dan volume air. Jurnal Ilmiah βElektrikal Enjiniringβ UNHAS, 9 (2), hlm. 72-77. Danel, G. & Wildian (2012). Otomatisasi keran dispenser berbasis mikrokontroler at89s52 menggunakan sensor fotodioda dan sensor ultrasonik ping. Jurnal Fisika Unand, 1 (1), hlm. 60-65. Fenster, A., Bax, J., Neshat, H., Kakani, N. & Romagnoli, C. (2013). 3D Ultrasound Imaging in ImageGuided Intervention: InTech. Nelson, T. R. (2006). Three-dimensional ultrasound imaging. Uia Annual Meeting, hlm. 1-5. Nurmaini, S. & Zarkasih, A. (2009). Sistem navigasi non-holomic mobile robot menggunakan aplikasi sensor ultrasonic. Jurnal Ilmiah Generic. 4 (1), hlm.1-11. Prawiroredjo, K. & Asteria, N. (2008). Detektor jarak dengan sensor ultrasonik berbasis mikrokontroler, JETri, 7 (2), hlm. 41-52.
Fibusi (JoF), Vol. 2 No. 1, Agustus 2015
Purcell, E. J. & Varberg, D. (1987). Calculus with analytic geometry, 5th edition. Prentice-Hall, inc Salam, A. E. U. & Yohannes, C. (2011). Pengukur tinggi badan dengan detektor ultrasonik. Prosiding Jurusan Teknik Elektro Fakultas Teknik Universitas Hasanuddin, 5. Saleh, K., Fauziyah, Hadi & Freddy. (2013). Sistem pemantauan ketinggian permukaan air berbasis mikrokontroler basic stamp-2 menggunakan memory stick sebagai penyimpan data. Prosiding Semirata FMIPA Universitas Lampung, hlm. 511515. Tornslev, K. (2005). 3D scanning using multibeam laser. (thesis), Technical University of Denmark, Denmark.