Sensor adalah peranti yang menerima input berupa suatu besaran/sinyal fisik yang kemudian mengubahnya menjadi besaran/sinyal lain yang diteruskan ke kontroler. Terdapat banyak jenis sensor yang digunakan pada robot. Bahasan ini akan meliputi beberapa jenis sensor yang digunakan terutama pada mobile robot dan lebih dititikberatkan pada antarmuka dengan kontroler.
Sensor dapat diklasifikasikan berdasarkan outputnya, yaitu :
- Output biner : berupa 0 (0 V) atau 1 (5 V).
- Output analog : misal 0 V hingga 5 V.
- Output pewaktu : misal PWM, waktu RC, waktu pantul
- Output serial : misal UART (RS232), I2C, SPI, 1 wire, 2 wire, serial sinkron
- Output paralel
Sensor juga dapat diklasifikasikan berdasarkan aplikasinya seperti terlihat pada Tabel 0-1.
Tabel 0 1
| Lokal | Global |
Internal | Pasif : sensor batere, temperatur, enkoder poros, akselerometer, giroskop, inklinometer, kompas Aktif |
|
Eksternal | Pasif : kamera on-board Aktif : sensor sonar, inframerah, pemindai laser | Pasif : kamera overhead, satelit GPS Aktif : sonar GPS |
Besaran fisik yang diindra oleh sensor bisa berasal dari lingkungan di luar robot (sensor eksternal) ataupun keadaan dari robot itu sendiri (sensor internal). Sensor internal biasanya digunakan untuk memonitor posisi dan/atau kecepatan serta torsi pada sendi robot.
Dari sisi robot sensor dibedakan menjadi
- Sensor lokal (on-board) : yang terpasang pada robot
- Sensor global : yang terpasang di lingkungan yang mengirimkan data ke robot
Selain kedua hal di atas, sensor juga dibedakan menjadi :
- sensor pasif : yang memonitor lingkungan tanpa mengganggunya
- sensor aktif : yang memberikan stimulasi ke lingkungan dalam pengukurannya.
Sensor Sentuh (Tactile Sensor)
Banyak robot yang memerlukan sensor sentuh sebagai kelengkapannya. Penggunaan sensor sentuh misalnya untuk mendeteksi keberadaan suatu obyek pada tangan robot dan mencegah tabrakan antara robot dengan suatu obyek. Di industri sensor jenis ini digunakan untuk menghitung produk yang dihasilkan dan juga untuk menyesuaikan orientasi suatu obyek selain juga dapat menggunakan sensor proksimiti.
Sensor sentuh pada dasarnya adalah saklar dengan berbagai macam variasi bentuknya. Rangkaian sensor sentuh pada umumnya menggunakan resistor pull-up ataupun pull-down seperti terlihat pada Gambar 0-1. Rangkaian menggunakan resistor pull-up bersifat active low yang berarti rangkaian mengeluarkan sinyal 1 kecuali saat saklar aktif. Hal ini berkebalikan dengan rangkaian menggunakan resistor pull-down yang bersifat active low, yaitu rangkaian mengeluarkan sinyal 0 kecuali saat saklar aktif. Nilai resistor pull-up dan pull down berkisar antara 1 – 10 k. Dari kedua rangkaian tersebut, rangkaian pull-up lebih banyak digunakan dibanding rangkaian pull down.
Gambar 0 1 Dasar rangkaian saklar
Gambar 0 2 Diagram pengkabelan untuk rangkaian sungut
Contoh sensor sentuh sederhana berupa sungut (whisker) beserta diagram pengkabelannya terdapat pada Gambar 0-2. Rangkaian ini sebetulnya merupakan rangkaian pull up dengan kedua sungut berfungsi sebagai saklar. Rangkaian akan mengeluarkan sinyal 1 saat sungut tidak tertekan. Jika sungut tertekan maka sinyal output akan menjadi 0 karena sungut dihubungkan dengan ground.
Gambar 0 3 Microswitch beserta rangkaiannya.
Pilihan lain yang dapat digunakan sebagai sensor sentuh adalah microswitch yang merupakan saklar SPDT. Microswitch adalah saklar tekan yang aktif jika ada obyek menyentuh/mendorong tuas dan sering juga disebut sebagai limit switch. Gambar 0-3 menunjukkan gambar microswitch dan contoh rangkaiannya.
Hal yang perlu diperhatikan dalam penggunaan sensor sentuh adalah robot yang menggunakan sensor ini haruslah dapat berhenti secara mendadak sehingga kurang cocok untuk robot dengan kecepatan tinggi. Untuk deteksi obyek lebih lanjut dapat digunakan sensor non-kontak seperti ultrasonik ataupun inframerah.
Sensor Cahaya
Terdapat banyak peranti yang dapat digunakan sebagai sensor cahaya antara lain fotoresistor, fotodioda, dan fototransistor. Berdasarkan panjang gelombangnya sensor cahaya diklasifikasikan menjadi sensor inframerah, cahaya tampak dan ultraviolet.
Sensor cahaya mempunyai banyak kegunaan pada sistem otomasi. Beberapa contohnya antara lain deteksi kertas pada printer, penentuan banyaknya lampu yang dibutuhkan suatu ruangan, dan penentuan nyala lampu blitz pada kamera.
Pada mobile robot sensor cahaya kebanyakan digunakan untuk dua hal, yaitu penjejak garis dan deteksi obyek. Robot penjejak garis menggunakan sensor cahaya untuk menentukan garis yang berwarna gelap dengan lantai yang berwarna terang atau sebaliknya. Sensor deteksi obyek dapat dibagi menjadi :
- sensor proksimasi : biasanya berupa sensor dengan output biner. Obyek hanya diketahui jika memasuki zona tertentu di sekitar robot, di luar zona itu obyek diabaikan.
- sensor pengukuran jarak : selain mengetahui keberadaan suatu obyek, sensor juga dapat mengetahui jarak obyek dari robot dalam rentang jarak tertentu.
Selain kedua penggunaan utama tersebut, sensor cahaya dapat juga digunakan sebagai pengukur temperatur (inframerah) dan sensor api (ultraviolet).
Fotoresistor atau sering juga disebut sebagai Light Dependant Resistor adalah resistor yang mempunyai nilai resistansi yang berubah sesuai dengan intensitas cahaya tampak yang menimpanya. Elemen pada fotoresistor terbuat dari Cadmium Sulfida (CdS) yang peka terhadap cahaya tampak. Intensitas cahaya berbanding terbalik dengan nilai resistansi fotoresistor, atau dengan kata lain sebanding dengan nilai konduktansinya. Keadaan gelap menyebabkan nilai resistansi meningkat, sedangkan keadaan terang menyebabkan nilai resistansi berkurang. Nilai resistansi fotoresistor berkisar antara beberapa ohm hingga beberapa kilo ohm.
Gambar 0 4 Perbandingan karakteristik sel CdS (fotoresistor) dengan fotodioda (dan fototransistor)
Fotoresistor dihubungkan dengan resistor lain untuk membentuk rangkaian pembagi tegangan untuk diukur beda tegangannya. Gambar 0-5 menunjukkan rangkaian fotoresistor, untuk (a) tegangan output sebanding dengan intensitas cahaya, sedangkan pada (b) tegangan berbanding terbalik dengan intensitas cahaya. Nilai R dipilih sehingga nilai Vout diusahakan berada pada rentang 0 – 5 V. Untuk penggunaan umum nilai R dapat dipilih 330 atau 470 . Output dari rangkaian fotoresistor dapat dihubungkan dengan komparator untuk mendapatkan sinyal biner (on/off) ataupun ADC. Cara lain mengukur nilai resistansi fotoresistor adalah dengan mengukur waktu RC yang akan dijelaskan pada bagian pengkondisi sinyal. Fotoresistor mempunyai kelemahan dibanding fototransistor ataupun fotodioda yaitu waktu responsnya yang relatif lambat.
Gambar 0 5 Fotoresistor dan rangkaiannya
Fototransistor adalah transistor (biasanya dari jenis NPN) yang dapat meneruskan arus sesuai dengan banyaknya intensitas cahaya yang mengenainya. Berbeda dengan fotoresistor yang peka terhadap cahaya tampak, fototransistor dan juga fotodioda lebih peka terhadap cahaya pada spektrum inframerah. Cahaya pada fototransistor menggantikan peranan arus basis, semakin banyak intensitas cahaya, semakin banyak arus yang dapat dialirkan dari kolektor ke emitor.
Gambar 0 6 Rangkaian fototransistor
Contoh rangkaian fototransistor ditunjukkan pada Gambar 0-6. Rangkaian tersebut bersifat active low, yang berarti tegangan output berbanding terbalik dengan intensitas cahaya yang diterima. Output rangkaian fototransistor biasanya dihubungkan dengan pengkondisi sinyal biner seperti inverting transistor, komparator, ataupun Schmidt trigger. Fototransistor sering ditemui dalam kemasan berpasangan dengan LED (biasanya inframerah) membentuk rangkaian optokopler (atau optoisolator) dan optoreflektor.
Fotodioda merupakan dioda yang peka terhadap cahaya. Dioda pada umumnya hanya dapat mengalirkan arus dari anoda ke katoda, namun fotodioda dapat mengalirkan arus yang berarah sebaliknya (dari katoda ke anoda) saat diberi cahaya. Rangkaian fotodioda mirip dengan rangkaian fototransistor seperti terlihat pada Gambar 0-7. Jika diberi cahaya maka tegangan output akan berkurang, begitu juga jika keadaansebaliknya.
Gambar 0 7 Rangkaian fotodioda
Sensor Inframerah
Sinar inframerah adalah sinar atau gelombang elektromagnet yang mempunyai frekuensi lebih rendah (atau dengan kata lain panjang gelombang lebih besar) dari warna merah. Penggunaan inframerah yang paling populer adalah pada peranti remote control TV. Pada robot, selain untuk remote control inframerah juga dapat digunakan sebagai sensor proksimasi ataupun pengukur jarak. Untuk itu diperlukan LED inframerah dan penerima inframerah, yang memuat detektor inframerah beserta pelengkapnya seperti tapis, penguat, dan demodulator. Sinar inframerah yang dipancarkan mempunyai frekuensi 38 – 40 kHz untuk membedakan dengan pancaran sinar inframerah lain (misal dari lampu atau sinar matahari). Pada penerima demodulator digunakan mengubah sinyal tersebut menjadi sinyal biner biasa.
Gambar 0 8 Penerima inframerah
Salah satu contoh sensor inframerah untuk penentuan jarak adalah GPD2D12 dari Sharp. Sensor ini sebenarnya digunakan untuk peranti peringatan jarak pada mobil dan deteksi banyaknya kertas pada mesin fotokopi. Output dari sensor ini adalah bilangan biner 8 bit yang mewakili jarak antara 10 – 80 cm. Prinsip kerja sensor ini adalah mengukur kemiringan pantulan dari sinar inframerah yang dipantulkan oleh suatu obyek (Gambar 0-10). Semakin dekat obyek berada semakin besar pula sudut pantulan sinar inframerah.
Gambar 0 9 Sensor GPD2D12 dari Sharp beserta hubungan input-outputnya
Gambar 0 10 Prinsip kerja sensor pengukur jarak inframerah
Jenis lain sensor inframerah adalah Passive Infra Red (PIR). PIR dapat digunakan untuk mendeteksi manusia atau binatang yang ada di dekatnya melalui radiasi inframerah dari panas tubuh yang dipancarkan. Sensor ini digunakan misalnya pada pintu otomatis atau sistem alarm.
Gambar 0 11 Passive Infra Red
Sensor Ultrasonik
Suara seperti juga cahaya cenderung untuk melintas dalam lintasan garis lurus dan dapat terpantulkan oleh suatu obyek pada lintasannya. Di alam terdapat beberapa hewan yang dapat bernavigasi dengan menggunakan gelombang suara, misalnya ikan lumba-lumba dan kelelawar. Mereka memancarkan gelombang ultrasonik, yaitu gelombang suara yang mempunyai frekuensi lebih tinggi daripada frekuensi suara yang dapat didengar oleh manusia, kemudian menerima gelombang pantulan dari obyek yang ada di depan hewan-tersebut. Dengan cara seperti ini mereka dapat mengetahui keberadaan suatu obyek penghalang dan jaraknya meskipun sebagian dari mereka, yaitu kelelawar, tidak mempunyai indra pengelihatan yang baik.
Untuk menirukan ikan lumba-lumba dan kelelawar tersebut robot dapat dilengkapi dengan sensor ultrasonik atau yang dikenal juga sebagai SONAR (Sound Navigating and Ranging). Gelombang ultrasonik dipancarkan oleh transmiter dan pantulannya diterima oleh receiver. Sonar tidak terpengaruhi oleh warna dan sifat pantulan cahaya dari obyek, namun kemampuannya akan menurun jika obyek terbuat dari material tertentu yang dapat menyerap gelombang suara (peredam suara).
Gambar 0 12 Rangkaian transmitter ultrasonik (McComb & Priedko, 2006)
Gambar 0 13 Rangkaian receiver ultrasonik (McComb & Priedko, 2006)
Gambar 0-12 dan Gambar 0-13 menunjukkan contoh rangkaian transmitter dan receiver untuk sensor proksimasi ultrasonik. Gelombang suara yang digunakan mempunyai frekuensi 40 kHz yang dihasilkan oleh timer 555 pada rangkaian multivibrator astabil yang kemudian dikuatkan oleh suatu transistor untuk kemudian dipancarkan oleh transduser ultrasonik. Pantulan dari obyek diterima oleh transduser ultrasonik pada rangkaian receiver yang mempunyai dua buah opamp, masing-masing berfungsi sebagai penguat dan komparator. Semakin dekat suatu obyek dengan receiver maka semakin kuat pula sinyal yang diterima receiver (jangan lupa bahwa jenis material obyek juga bepengaruh). Output komparator akan bernilai rendah atau tinggi jika sensor dijauhkan atau didekatkan dengan obyek. Pengaturan sensitivitas sensor dilakukan dengan mengatur R2 pada rangkaian receiver. Sensitivitas sensor ultrasonik ini menyangkut seberapa dekat/jauh jarak obyek saat output sensor bernilai tinggi. Jarak maksimal sensor ini maksimal dapat mencapai 3 m.
Gambar 0 14 Prinsip kerja sensor jarak ultrasonik
Selain sebagai sensor proksimasi, sensor ultrasonik juga dapat juga digunakan sebagai pengukur jarak yang cukup akurat. Prinsip kerja sensor jarak ini adalah transmitter mengirimkan seberkas gelombang ultrasonik, lalu diukur waktu yang dibutuhkan hingga datangnya pantulan dari obyek. Lamanya waktu ini sebanding dengan dua kali jarak sensor dengan obyek, sehingga jarak sensor dengan obyek dapat ditentukan persamaan
soby = jarak sensor dengan obyek
cud = kecepatan suara pada media udara
t = waktu antara sinyal dipancarkan dan diterima pantulannya
Kecepatan suata pada media udara dipengaruhi oleh temperatur dan juga kelembaban. Untuk media udara pada temperatur 200C kecepatan suara adalah 344,8 m/s.
Gambar 0 15 Ping))) (Parallax Inc, 2006)
Salah satu contoh sensor jarak ultrasonik adalah Ping))) dari Parallax. Sensor ini mempunyai tiga buah pin yang masing-masing dihubungkan dengan ground, tegangan catu daya, dan sebuah pin I/O. Kontroler memerintahkan Ping))) untuk memancarkan seberkas sinyal ultraviolet dengan cara memberikan sinyal pulsa 10 μs melalui pin I/O. Setelah memancarkan sinyal ultraviolet Ping))) akan memberikan sinyal high ke kontroler yang akan berubah menjadi low saat Ping))) menerima sinyal pantulan dari obyek. Kontroler menghitung waktu sinyal high tersebut dan kemudian dikonversikan menjadi jarak.
Enkoder
Untuk mengukur posisi poros motor dan kecepatannya digunakan enkoder. Enkoder adalah peranti untuk mengukur gerak dengan output berupa rangkaian pulsa digital. Dengan mencacah bit tunggal atau melakukan dekoding rangkaian bit, pulsa dapat dikonversikan menjadi posisi absolut atau inkremental. Jenis enkoder yang banyak digunakan adalah enkoder magnetik dan enkoder optik.
Gambar 0 16 Enkoder
Enkoder magnetik menggunakan sensor efek Hall sebagai detektor magnet. Pada poros dipasangkan sejumlah magnet (atau dapat juga hanya berupa takikan/tonjolan pada poros), misalnya 16 buah, yang menghasilkan output pulsa dengan jumlah yang sama setiap putaran porosnya.
Enkoder optik biasanya menggunakan LED inframerah sebagai simber cahaya, fototransistor atau foto dioda sebagai detektor cahaya serta suatu piringan. Terdapat dua prinsip kerja yang dapat digunakan sebagai penghasil rangkaian pulsa. Yang pertama adalah berdasarkan warna hitam-putih (atau gelap-terang) pada piringan enkoder (Gambar 0-17a), yang kedua berdasarkan ada tidaknya lubang pada piringan enkoder (Gambar 0-17b).
Gambar 0 17 Prinsip kerja enkoder optik
Enkoder dibedakan menjadi enkoder inkremental dan enkoder absolut. Enkoder inkremental menghasilkan pulsa digital yang dihitung untuk menentukan perpindahan relatif poros. Enkoder absolut menggunakan piringan yang memiliki beberapa jalur/track berupa kode digital untuk menunjukkan posisi absolut poros. Berdasarkan kode digital yang digunakan terdapat dua jenis piringan, yaitu yang menggunakan kode biner dan gray-code. Gray-code adalah modifikasi dari kode biner yang digunakan untuk mencegah kesalahan baca dari fototransistor. Pada gray-code ini setiap transisi dari sektor yang bertetangga menyebabkan perubahan hanya 1 bit.
Gambar 0 18 Piringan kode biner dan gray-code
Enkoder digunakan pada mobile robot terutama untuk aplikasi odometri. Odometri adalah penentuan posisi dan orientasi robot di ruang relatif terhadap suatu referensi berdasarkan jumlah putaran rodanya.
Kompas
Kompas adalah sensor yang menunjukkan arah/orientasi robot pada bidang mendatar yang digunakan sebagai alat bantu navigasi robot. Gambar 0-19 menunjukkan salah satu contoh kompas yaitu modul CMPS03 dari Devantech. Modul ini menggunakan sensor medan magnet Philips KMZ51 untuk mengukur medan magnet Bumi. Output sensor ini dapat berupa PWM atau I2C. Jika dipilih PWM, maka output akan mengeluarkan pulsa selama 1 ms untuk 00 hingga 36,99ms untuk 359,990, dengan kata lain mempunyai sensitivitas 0,1 ms/0 dan offset 1 ms. Untuk I2C modul mengirimkan data yang dapat berupa byte (0 – 255) atau word (0 – 3599) untuk satu putarannya. Modul sensor ini dapat dikalibrasi ulang dengan metode manual ataupun I2C.
Gambar 0 19 Modul kompas CMPS03
Akselerometer
Akselerometer adalah sensor yang digunakan untuk mengukur percepatan (perubahan kecepatan). Pada robot akselerometer dapat digunakan pada robot untuk aplikasi antara lain robot swatimbang (self balanced robot), robot berjalan, deteksi benturan, detektor getaran, dan deteksi G-force. Salah satu contoh akselerometer adalah modul Memsic MX2125 dari Parallax. Sensor ini dapat mengindra percepatan pada dua sumbu.
Gambar 0 20 Modul akselerometer Memsic MX2125
Output dari sensor ini adalah PWM yang menunjukkan hubungan
dengan
A = besarnya percepatan, g
T1 = waktu saat pulsa high
T2 = waktu total = 10 ms