Pendahuluan: Sensor

Yang membedakan robot dari mesin dasar adalah kemampuan mereka untuk merasakan dan merespons fenomena di dunia fisik. Untuk melakukan ini, mereka menggunakan sensor. Sebuah sensor bekerja dengan mengubah output fisik dari dunia menjadi sinyal yang dapat dipahami oleh mikrokontroler. Karena semua sensor dalam beberapa cara mengukur properti di dunia fisik, dan robot dapat mengambil tindakan untuk mempengaruhi dunia fisik, loop umpan balik dibuat. Ini adalah kemampuan robot untuk memiliki peran aktif dan 'disengaja' di lingkungan mereka yang membedakan mereka dari kebanyakan mesin lain.

Meskipun tidak ada aturan baku tentang jenis sensor yang harus dimiliki robot, kita bisa membahas beberapa yang biasa digunakan robot.
Salah satu yang paling populer adalah pengintai ultrasonik . Sensor ini mengirimkan "ping" ultrasonik yang sangat terarah dan menghitung waktu yang diperlukan suara untuk memantul objek dan kembali ke sensor. Sensor ini baik untuk mendeteksi keberadaan objek yang berjarak antara 1 "dan 120" (12 '). Ini baik untuk merasakan hambatan yang tidak bergerak, tetapi tidak baik untuk merasakan gerakan.
Untuk merasakan jika orang di ruang bergerak, Anda ingin menggunakan sensor gerak IR. Sensor ini memiliki sudut pandang yang ditentukan sebelumnya yang berbeda antara model, yang pada dasarnya berarti memiliki bidang di depan sensor yang dapat mendeteksi gerakan di dalam. Bidang ini cenderung bertambah lebarnya semakin jauh dari sensor yang Anda tuju. Itu tidak memberi tahu Anda seberapa jauh orang, tetapi sangat baik dalam mengidentifikasi jika orang hadir dan bergerak.
Namun, ada sensor IR yang bagus untuk merasakan jarak. Sensor ini bekerja dengan cara yang hampir sama dengan sensor PING, tetapi alih-alih mengukur suara yang memantulkan kembali, sensor ini mengukur cahaya IR. Sensor-sensor ini sangat bervariasi dalam rentang jarak yang mereka ukur, jadi penting untuk memeriksa lembar data sensor untuk memastikan itu adalah rentang yang Anda cari sebelum membeli satu. Mereka cenderung sangat tepat dalam pengukuran mereka, tetapi mereka juga biasanya sedikit lebih mahal daripada sensor ultrasonik.
Jika Anda ingin robot Anda mengukur jumlah cahaya tampak dalam suatu ruang, Anda dapat menggunakan fotosel. Selain mengukur cahaya, fotosel dan beberapa LED dapat dibuat menjadi sensor warna kasar. Ini karena beberapa warna memantulkan cahaya lebih baik daripada yang lain. Dengan demikian, sensor ini dapat digunakan untuk mengidentifikasi dan mengikuti garis hitam yang tergambar di tanah. Untuk contoh bagaimana membangun sensor semacam itu, lihat robot telepresence saya Kelemahan dari menggunakan sensor untuk tujuan ini adalah bahwa hal itu dipengaruhi oleh cahaya sekitar.
Anda juga dapat menggunakan robot untuk mengukur suara. Sensor ini sebagian besar hanya mikrofon pra-diperkuat. Sensor ini paling mudah untuk berinteraksi jika Anda hanya mengukur volume suara. Mendengarkan perintah atau frekuensi sangat sulit bagi Arduino karena biasanya memerlukan terlalu banyak kekuatan pemrosesan untuk melakukan sesuatu yang terlalu canggih. Meskipun demikian, dimungkinkanuntuk menyelesaikan coders yang lebih maju. Biasanya, jika Anda ingin melakukan pemrosesan audio tingkat lanjut, Anda akan menggunakan perisai atau modul untuk mendengarkan frekuensi atau perintah suara. Contoh dari ini, sekali lagi, dapat ditemukan di robot telepresence saya .
Sakelar tumbukan robot biasanya hanya tuas sakelar dengan semacam lengan pemanjang yang melekat pada tuas. Ini menciptakan keuntungan mekanis yang besar, dan memberi pemicu pemicu rambut. Ini akan mengingatkan Arduino segera setelah disentuh. Mereka juga membuat versi komersial ini untuk digunakan sebagai sakelar pengaman mekanis. Ini bagus untuk robot yang sangat besar, seperti saklar bumper karet yang digunakan dalam kerangka robot saya .

Setelah Anda memilih sensor, tidak ada cara standar tunggal untuk sensor untuk berkomunikasi informasi ke mikrokontroler. Setiap sensor perlu dihubungkan dengan cara yang sesuai dengannya. Untungnya, sebagian besar sensor mengirim data dengan cara yang dapat diprediksi sebagai resistansi, tegangan analog, tegangan digital, atau sinyal data.

Sensor analog menghasilkan sinyal yang konstan dan sebanding dengan apa pun yang sedang diukur. Dengan kata lain, ini mengeluarkan sinyal tegangan yang tidak terputus, atau menghasilkan sejumlah resistansi variabel dalam rangkaian. Sebagai aturan umum, sensor ini cenderung tidak seakurat sensor digital, tetapi mereka cenderung lebih murah dan lebih kuat. Untuk banyak aplikasi robot non-presisi, sensor analog lebih dari cocok.
Banyak sensor analog resistif yang berarti bahwa mereka memiliki jumlah resistansi yang berfluktuasi berdasarkan apa pun yang mereka ukur. Contoh dari sensor tersebut adalah fotosel, FSR (force sensitive resistor) atau sensor tikungan. Sensor-sensor ini dapat dibaca oleh input analog mikrokontroler menggunakan pembagi tegangan. Sensor-sensor ini cenderung pasif , artinya mereka akan berfungsi dan menghasilkan bacaan bahkan tanpa tegangan input. Dengan kata lain, Anda dapat membaca resistansi dengan multimeter walaupun itu bukan bagian dari rangkaian bertenaga.

Untuk menguji sensor ini dalam aksi, pasang resistor 10K secara seri dengan fotosel. Hubungkan persimpangan mereka ke pin A0 di Arduino. Hubungkan pin resistor yang tersisa ke ground, dan pin fotosel yang tersisa ke daya 5V. Setelah kabel selesai, buka perangkat lunak Arduino dan unggah File> Contoh> 01.Basics> AnalogReadSerial . Akhirnya, untuk melihatnya beraksi, buka Serial Monitor.
Beberapa sensor analog seperti sensor suhu, transistor foto, dan pengukur jarak IR berbasis tegangan dan akan menghasilkan sinyal antara 0V dan 5V. Ini dapat dibaca langsung oleh pin analog Arduino. Sensor-sensor ini biasanya aktif , artinya tanpa tegangan input mereka tidak akan dinyalakan atau melakukan apa pun. Mereka biasanya dihubungkan menggunakan Arduino dengan cara yang persis sama dengan sensor resistif. Namun, penting untuk diingat bahwa mereka mengeluarkan arus, sebagai lawan dari perubahan resistensi untuk kasus-kasus langka di mana berinteraksi dengan mereka menyimpang.
Sebuah sensor digital memiliki output tegangan diskrit, yang berarti sinyal menyala atau mati. Dimasukkan ke dalam istilah elektronik, ini berarti sinyalnya tinggi atau rendah, atau 1 atau 0. Sinyal digital dapat sesederhana dan mematikan, atau dapat dinyalakan dan dimatikan cukup cepat untuk berkomunikasi menggunakan biner (1 atau 0 ) protokol data. 

Arduino, pada gilirannya, mampu menafsirkan pulsa-pulsa ini dan memahami apa yang dikomunikasikan. Ini agak seperti seseorang berkomunikasi dengan Arduino dalam kode morse dengan mengetuk saklar yang terhubung ke pin input. Kecuali, dalam hal ini, itu terjadi sangat - sangat - sangat - cepat.
Bisa dibilang, sensor digital paling dasar adalah sebuah saklar. Ini memberikan sinyal yang aktif atau tidak aktif tergantung pada apakah itu ditekan atau tidak. Dalam keadaan normal, ini melibatkan input manusia. Namun, Anda dapat menggunakan sakelar sebagai sakelar tabrakan pada robot sehingga ketika robot menabrak sesuatu, ia memperingatkan otak mikrokontrolernya untuk berhenti mengemudi ke arah itu. Jenis sensor ini akan dianggap pasif dan jarang sejauh sensor digital pergi.
Sensor digital yang lebih khas yang menghasilkan output dasar tinggi atau rendah adalah sensor gerak IR. Ia mampu merasakan gerakan dengan menangkap gelombang panas manusia. Sensor jenis ini hanya memberi tahu Anda apakah ada gerakan manusia, atau tidak. 

Untuk mencobanya, sambungkan pin 5V ke 5V di Arduino, ground to ground, dan pin DIG ke pin digital 2 di Arduino seperti yang ditunjukkan dalam gambar. Selanjutnya, buka perangkat lunak Arduino dan muat File> Contoh> 01.Basics> DigitialReadSerialTerakhir, arahkan sensor menjauh dari Anda (untuk menghindari pemicunya terus-menerus), dan buka monitor serial.
Akhirnya, ada sensor canggih seperti sensor pengintai ultrasonik dan accelerometer yang berkomunikasi dengan Arduino menggunakan protokol khusus yang kompleks atau sinyal data biner (seperti serial). Sensor-sensor ini adalah modul khusus (lebih lanjut tentang itu dalam pelajaran berikutnya) yang memiliki IC atau mikrokontroler sendiri yang telah dikonfigurasi sebelumnya untuk menyediakan pembacaan sensor yang akurat ke perangkat lain.

Seringkali sensor-sensor ini perlu membaca lembar data mereka untuk memahami cara berinteraksi dengannya. Misalnya, sensor PING, yang merupakan sensor ultrasonik merek dagang di mana-mana yang diproduksi oleh Parallax, memiliki pin yang digunakan sebagai input dan output. Perlu dikirim pulsa 5V dari mikrokontroler, dan kemudian pin yang sama perlu dikonfigurasi sebagai input digital dan dipantau untuk sinyal balik. Namun, jika saya tidak hanya memberi tahu Anda dan Anda tidak membaca dokumentasinya, Anda akan mengalami banyak kesulitan untuk mengetahuinya.
Jika Anda memiliki sensor PING, hubungkan ke papan tempat memotong roti dan pasang pinnya ke Arduino sebagai berikut: 

Ping 5V ke Arduino 5V 
Ping Ground ke Arduino ground 
Ping Signal to Arduino digital pin 4
Setelah kabel tersambung, unggah kode berikut dan buka Serial Monitor:

Sensor yang telah kita bahas dalam pelajaran ini sama sekali bukan satu-satunya sensor yang mungkin Anda gunakan. Ada lebih banyak sensor di dunia ini yang mungkin bisa saya kunjungi. Hal-hal lain yang Anda mungkin ingin rasakan meliputi akselerasi (akselerometer), warna, gas alam, medan elektromagnetik (efek hall), orientasi dalam ruang (gyro), sentuhan manusia (kapasitif), kekuatan sinyal nirkabel, cuaca, dan tekanan udara (untuk menyebutkan nama sedikit). Kemungkinannya adalah jika ada sesuatu di luar sana yang ingin Anda rasakan, ada alat di luar sana untuk melakukannya. Yang perlu Anda lakukan adalah melacaknya dan mencari tahu.

Untuk indeks komprehensif sensor yang ada, lihat daftar sensor di Wikipedia.

Komentar

Postingan populer dari blog ini