Selamat Datang
Selamat datang di robotika: ilmu penggunaan teknik mekanik, elektronik, dan perangkat lunak untuk membangun mesin yang dapat merasakan, memutuskan, dan bertindak.
Kata robot berasal dari kata Czech robota, yang berarti tenaga paksa. Karel Capek menciptakan kata tersebut dalam sebuah sandiwara tahun 1920. Satu abad kemudian, robot-robot memasang sambungan pada mobil, menjelajahi Mars, melakukan operasi bedah, dan juga membersihkan lantai ruangan.
Bukan setiap mesin otomatis adalah robot. Sebuah panggangan memiliki automasi: ia panas dan mengapung: tetapi ia tidak dapat merasakan lingkungannya atau beradaptasi. Sebuah robot memiliki tiga kemampuan esensial:
- Merasa: mengumpulkan informasi tentang dunia melalui sensor
- Memutuskan: memproses informasi tersebut dan memilih tindakan
- Bertindak: bergerak atau memanipulasi dunia fisik melalui aktuator
Loop ini berjalan terus-menerus. Sebuah lengan pabrik memeriksa posisi sambungan ribuan kali per detik. Sebuah rover Mars menganalisis citra tanah sebelum setiap perintah roda. Kecepatan dan kompleksitas loop berbeda, tetapi struktur tetap sama.
Robot ada pada spektrum otonomi. Sebuah robot pembongkaran ranjau yang dioperasikan dari jarak jauh memiliki otonomi nol: manusia yang membuat setiap keputusan. Sebuah robot gudang yang dapat menavigasi rak dan menghindari hambatan memiliki otonomi sebagian. Sebuah mobil self-driving berusaha mencapai otonomi penuh, meskipun hal itu tetap menjadi tantangan engineering terbuka.
Kategori utama dari robot-robot:
- Robot industri: lengan tetap basis yang mengelas, mengcat, memasang, dan mengatur kardus di pabrik
- Robot pelayanan: membantu manusia di lingkungan non-manufaktur: robot bedah, robot pengiriman, robot pembersih
- Robot mobile: bergerak melalui dunia: roda, kaki, truk, udara (drone), dan bawah air (ROV dan AUV)
Les ini membahas blok bangunan inti yang setiap insinyur robotik perlu mengerti: aktuator, sensor, sistem kontrol, konsep pemrograman, & jalur karier.
Pemanasan
Cek Cepat
Lihatlah di mana Anda berada saat ini.
Motor dan Gerakan
Aktuator: Bagaimana Robot Bergerak
Sebuah aktuator adalah apa pun yang mengubah energi menjadi gerakan fisik. Aktuator adalah otot dari sebuah robot.
Motor DC: Motor listrik paling sederhana. Aplikasikan voltase, poros berputar. Balikkan voltase, ia memutar jauh ke arah lain. Kecepatan proporsional terhadap voltase. Motor DC murah dan cepat, tetapi mereka tidak memiliki cara bawaan untuk mengetahui posisinya. Mereka umum digunakan pada robot roda dan mekanisme sederhana.
Motor Langkah: Bergerak dalam langkah-langkah yang spesifik, biasanya 1,8 derajat per langkah (200 langkah per putaran). Anda perintahkan jumlah langkah yang spesifik, dan motor bergerak tepat sejauh itu. Langkah-langkah memberikan kontrol posisi terbuka tanpa sensor, tetapi mereka bisa melewatkan langkah di bawah beban berat. Umum digunakan pada printer 3D, router CNC, dan gimbal kamera.
Motor Servo: Sebuah motor yang dicampur dengan sensor posisi (encoder) dan kontroler dalam sistem tertutup. Kontroler terus membandingkan posisi yang diperintahkan dengan posisi aktual dan memperbaiki kesalahan apa pun. Servo menawarkan kombinasi terbaik antara kecepatan, torsi, dan ketelitian. Lengan robot industri hampir secara eksklusif menggunakan motor servo.
Aktuator Pneumatik: Menggunakan udara kompresi untuk menciptakan gerakan linear atau putar. Cepat dan kuat untuk ukurannya, tetapi sulit untuk mengendalikan dengan tepat karena udara yang dapat ditekan. Umum digunakan pada gergaji pabrik dan mesin pindah tempat.
Aktuator Hidrolik: Menggunakan fluida tekanan (minyak) daripada udara. Karena fluida hampir tidak dapat ditekan, hidrolik menyebarkan gaya yang luar biasa dengan kontrol yang tepat. Alat berat konstruksi berat, mesin pres industri besar, dan beberapa robot kaki (seperti Atlas awal Boston Dynamics) menggunakan hidrolik. Tukarannya adalah berat, kompleksitas, dan risiko kebocoran fluida.
Derajat Kebebasan (DOF): Setiap sumbu gerakan independen adalah satu derajat kebebasan. Sebuah lengan robot industri biasanya memiliki 6 DOF: tiga untuk menempatkan pengendali akhir di ruang (X, Y, Z) dan tiga untuk mengorientasikannya (guling, miring, yaw). Tangan manusia memiliki 7 DOF. Semakin banyak derajat kebebasan berarti lebih fleksibel tetapi lebih kompleks dalam kontrol dan program.
Memilih Aktuator yang Tepat
Sesuaikan Aktuator dengan Tugas
Memilih aktuator yang tepat membutuhkan pemahaman tentang kebutuhan aplikasi: kecepatan, presisi, daya, dan lingkungan.
Bagaimana Robot Mengetahui Dunia
Sensor: Indera Robot
Tanpa sensor, robot buta dan tuli. Sensor menyediakan data mentah yang menggerakkan setiap keputusan.
Encoder: Mengukur putaran. Encoder optik memiliki piringan dengan lubang; cahaya menembus dan detektor menghitung pulsa saat piringan berputar. Ini memberitahu kontroler seberapa jauh sebuah sambungan telah bergerak. Encoder incremental menghitung gerakan relatif; encoder absolut melaporkan sudut yang tepat saat dinyalakan kembali. Setiap motor servo memiliki encoder.
IMU (Unit Pengukuran Inersia): Menggabungkan accelerometer (mengukur percepatan linear), gyroscopes (mengukur kecepatan rotasi), dan kadang-kadang magnetometer (mengukur arah magnetik). IMU memberitahu robot orientasinya dan bagaimana ia bergerak melalui ruang. Kritis untuk drone, robot kaki, dan setiap platform mobile yang perlu tetap seimbang.
LIDAR (Pengukuran Jarak dengan Cahaya): Menembakkan pulsa laser dan mengukur waktu setiap pulsa untuk kembali. Ini menciptakan peta rinci 2D atau 3D lingkungan sekitar. Mobil mandiri dan robot gudang menggunakan LIDAR untuk deteksi penghalang dan pemetaan. LIDAR berputar dapat menghasilkan ratusan ribu pengukuran jarak per detik.
Kamera: Memberikan data visual yang kaya tetapi membutuhkan komputasi yang signifikan untuk diinterpretasi. Satu kamera memberikan gambar 2D; kamera stereo (dua kamera dengan jarak yang diketahui) memberikan informasi tentang kedalaman. Algoritma komputer vision memproses data kamera untuk pengenalan objek, mengikuti garis, dan SLAM visual (Simultaneous Localization and Mapping).
Sensor Daya/Gayagaya: Mengukur gaya dan momen yang diterapkan pada sebuah titik, biasanya di pergelangan tangan atau alat efektor robot. Diperlukan untuk tugas yang memerlukan kontak yang diatur: pemasangan (menyelipkan pin ke dalam lubang), pengilapan, dan robot kolaboratif yang harus mendeteksi kontak dengan manusia dan berhenti segera.
Fusi Sensor: Tidak ada sensor yang sempurna. LIDAR memberikan jarak yang tepat tetapi tidak ada warna. Kamera memberikan gambar yang kaya tetapi sulit di gelap. IMU mengendap selama waktu. Fusi sensor menggabungkan data dari beberapa sensor untuk menghasilkan gambar yang lebih akurat dan andal dibandingkan dengan sensor apa pun sendirinya. Mobil otonom menggabungkan data LIDAR, kamera, radar, GPS, dan IMU secara terus menerus.
Memilih Sensor untuk Tugas
Menyesuaikan Sensor dengan Misi
Pemilihan sensor tergantung pada apa yang robot harus tahu, lingkungan, & anggaran komputasi.
Terbuka vs Terkunci
Kontrol: Membuat Robot Berperilaku
Robot tanpa kontrol hanyalah kumpulan bagian. Sistem kontrol adalah lapisan keputusan: mereka mengambil data sensor dan menghitung perintah yang menggerakkan aktuator.
Pengendalian Terbuka: Kirim perintah dan harap baik-baik saja. Sebuah motor langkah yang diperintahkan untuk mengambil 200 langkah akan mencoba, tetapi jika melewatkan langkah di bawah beban, tidak ada yang mendeteksi kesalahan. Terbuka sederhana dan murah, tetapi tidak dapat memperbaiki gangguan. Sebuah microwave oven adalah terbuka: itu berjalan untuk waktu yang ditetapkan, terlepas dari apakah makanan benar-benar panas.
Pengendalian Terkunci: Ukur output, bandingkan dengan nilai yang diinginkan, dan perbaiki perbedaannya. Ini adalah pengendalian umpan balik, dan ini adalah dasar dari semua robotik serius. Sebuah motor servo adalah terkunci: encoder mengukur posisi aktual, pengontrol membandingkannya dengan posisi yang diperintahkan, dan menyesuaikan tegangan motor untuk menutup kesalahan.
Pengendalian PID: Pengendali umpan balik paling sering digunakan. PID berdiri untuk Proportional-Integral-Derivative.
- P (Proportional): Koreksi proporsional terhadap kesalahan saat ini. Besar kesalahan, koreksi besar. Tapi P sendiri seringkali melewatkan atau menyelesaikan dengan kesalahan kecil yang persisten.
- I (Integral): Mengakumulasikan kesalahan di masa lalu dalam waktu. Jika sistem telah sedikit tidak akurat selama beberapa waktu, I membangun dan menggeser lebih keras. Ini menghilangkan kesalahan tetap tetapi dapat menyebabkan fluktuasi jika terlalu tinggi.
- D (Derivative): Menanggapi seberapa cepat kesalahan berubah. Jika kesalahan mengecil cepat (sistem mendekati target), D mengurangi koreksi untuk mencegah melebihi. D berfungsi sebagai pengurang.
Mengatur ulang pengendali PID: menemukan nilai P, I, dan D yang benar: itu adalah bagian ilmu pengetahuan dan seni. Terlalu banyak P dan sistem bergoyang-goyang. Terlalu banyak I dan itu melengkung dan melebihi. Terlalu banyak D dan itu bereaksi terhadap kebisingan. Robot nyata seringkali membutuhkan pengaturan PID untuk setiap sambungan.
Stabilitas: Sistem pengendali stabil jika konvergen ke keadaan yang diinginkan. Sistem tidak stabil bergoyang dengan amplitudo yang meningkat: robot menggoyang diri sendiri. Analisis stabilitas adalah keterampilan inti dalam teknik pengendalian.
Aplikasi Konsep Pengendalian
Berpikir Seperti Insinyur Kontrol
Memahami umpan balik dan PID bukan hanya teori: itu menjelaskan mengapa robot berperilaku seperti apa adanya.
Mesin Keadaan dan ROS
Perangkat Lunak: Otak Robot
Perangkat lunak robot secara fundamental berbeda dari perangkat lunak web atau bisnis. Ini menjalankan waktu nyata, berinteraksi dengan perangkat keras fisik, dan harus menangani situasi yang tidak terduga dengan baik: benda jatuh, rangkaian macet, seseorang masuk ke dalam ruang kerja.
Mesin Keadaan: Pola pemrograman paling umum dalam robotika. Mesin keadaan menentukan setelan keadaan (seperti MANDIF, BERGERAK, MEMEGANG, KESALAHAN) dan transisi antara mereka. Robot selalu dalam keadaan yang tepat satu. Acara mengaktifkan transisi.
Misalnya, robot ambil-dan-tempatkan:
- MANDIF: menunggu perintah
- BERGERAK_KE_PICK: bergerak ke lokasi ambil
- MEMEGANG: menutup pemegang pada objek
- BERGERAK_KE_PLACE: mengangkut objek ke tujuan
- MERELASAKAN: membuka pemegang
- KESALAHAN: sesuatu yang salah (benda jatuh, kesalahan rangkaian, deteksi hambatan)
Setiap keadaan memiliki aksi masuk yang ditentukan, aksi keluar, dan kondisi transisi. Mesin keadaan mencegah robot melakukan hal-hal yang tidak masuk akal: Anda tidak bisa melepaskan objek yang tidak pernah Anda pegang.
ROS (Sistem Operasi Robot): Tidak sebenarnya sebuah sistem operasi. ROS adalah kerangka kerja middleware yang menyediakan infrastruktur komunikasi, abstraksi perangkat keras, dan perpustakaan yang sangat besar. Ini menjalankan Linux. Robot yang dibangun dengan ROS menggunakan arsitektur publik-subscribe: node sensor publik data pada topik, dan node kendali mengikuti topik yang mereka butuhkan. Desain moduler ini berarti Anda dapat mengganti sensor LIDAR tanpa menulisi kembali kode navigasi.
Perencanaan Jalur: Bagaimana robot memutuskan rute dari titik A ke titik B sambil menghindari hambatan. Pendekatan sederhana termasuk navigasi titik tolak (ikuti seri titik yang ditentukan sebelumnya) dan bidang potensial (hambatan menolak, tujuan menarik). Pendekatan maju seperti A* dan RRT (Pohon Acak yang Mendekati Cepat) mencari jalur optimal atau mungkin melalui lingkungan yang kompleks. Mobil mandiri merevisi rute jalurnya beberapa kali per detik seiring perubahan dunia.
Mengatur perilaku robot
Berpikir Melalui Software Robot
Software robot yang baik memprediksi kegagalan dan mengatasi itu dengan baik.
Karier di Robotika
Membangun Karier di Robotika
Robotika tumbuh cepat di sektor manufaktur, logistik, kesehatan, pertanian, dan pertahanan. Berikut adalah jalur karier utama.
Teknisi Robotika: Menginstal, memelihara, mengatasi masalah, dan memperbaiki sistem robotik. Ini adalah pintu masuk yang paling mudah diakses. Anda bekerja tangan pertama dengan perangkat keras: menggantikan motor, mengkalibrasi sensor, mengatur ulang pengendali, dan mendiagnosis kerusakan. Program komunitas masyarakat dan sertifikasi pabrikan (FANUC, ABB, KUKA) dapat memulai Anda. Gaji rata-rata: $45,000-$65,000.
Ingenieur Contrôle: Merancang dan mengatur sistem kendali yang membuat robot bertindak dengan benar. Peran ini membutuhkan kemampuan matematika (aljabar linear, persamaan diferensial) dan keterampilan pemrograman. Insinyur kendali bekerja dengan tuning PID, profil gerak, integrasi sensor, dan sistem keamanan. Gelar sarjana dalam teknik listrik, mekanik, atau mekatronika biasanya diperlukan. Rentang gaji: $75,000-$120,000.
Pengembang ROS / Insinyur Perangkat Lunak Robotika: Menulis perangkat lunak yang mengkoordinasikan perabaan, perencanaan, dan kontrol. Para pengembang ini bekerja di C++ dan Python, membangun nod ROS, menerapkan algoritma perencanaan jalur, dan mengintegrasikan model belajar mesin untuk perabaan. Keterampilan ilmu komputer yang kuat sangat diperlukan. Posisi ini sangat dicari untuk kendaraan otonom, robot gudang, dan sistem drone. Rentang gaji: $90.000-$150.000.
Pengintegrasian Otomasi: Merancang dan mengimplementasikan sel robotik lengkap untuk pabrik. Seorang integrator mengambil masalah manufaktur (sambungkan dua bagian ini menjadi satu dengan kecepatan 60 unit per jam), memilih robot, ujung efektor, sistem keamanan, dan conveyor, mengprogram seluruh sel, dan mengkomisjoninya di lantai pabrik. Integrator membutuhkan pengetahuan luas di bidang mekanik, listrik, dan perangkat lunak. Banyak yang bekerja di perusahaan integrasi sistem. Rentang gaji: $70.000-$110.000.
Jalan Lainnya: Desainer mekanik yang menciptakan struktur dan mekanisme robot. Insinyur listrik yang mendesain sistem daya dan papan sirkuit. Ilmuwan penelitian yang menggali batas-batas manipulasi, lokomosi, dan belajar mesin untuk perabaan. Insinyur bidang robotika lapangan yang mengoperasikan robot di lingkungan ekstrem: di bawah air, di bawah tanah, atau di ruang angkasa.
Benang yang melintang: robotika menghargai orang-orang yang dapat berpikir di antara disiplin ilmu. Orang yang sepenuhnya mekanik kesulitan tanpa keterampilan perangkat lunak. Orang yang sepenuhnya perangkat lunak kesulitan tanpa memahami fisika. Robotikis terbaik adalah T-shaped: keahlian dalam bidang yang dalam dengan pengetahuan kerja di semua bidang mereka.
Jalan Masa Depan Anda
Refleksi
Anda telah menutupi blok bangunan fundamental: aktuator, sensor, sistem kontrol, pola pemrograman, & peta karier.