Definisi
Robotika
Robotika berasal dari kata ‘robot’ yang
artinya Perangkat Elektronik yang dapat diprogram untuk melakukan suatu tugas
yang biasa dilakakukan oleh manusia secara otomatis.
Robotika
adalah satu cabang teknologi yang berhubungan dengan desain,
konstruksi, operasi, disposisi struktural, pembuatan, dan aplikasi
dari robot. Robotika terkait dengan ilmu
pengetahuan bidang elektronika, mesin, mekanika,
dan perangkat lunak komputer.
Robotika juga salah satu
wacana teknologi untuk menuju peradaban yang lebih maju. Kebanyakan orang
selalu beranggapan bahwa robot adalah kemajuan teknologi yang mampu menggeser
tingkah laku seseorang untuk melakukan suatu tindakan. Dengan kemajuan yang
pesat, maka kebutuhan akan SDM akan merosot tajam. Layaknya revolusi pada
bangsa Eropa.
Sangat disayangkan sekali
bila titik ikon kemajuan teknologi tersebut tidak seiring dengan cepatnya
pemahaman masyarakat pada umumnya yang selalu meng-analogikan robot adalah
biang kerok hilangnya tenaga buruh untuk memacu pertumbuhan perekonomian.
Hal ini layaknya dua sisi
perbedaan yang tidak akan bisa menyatu sama lain. Tapi bisa dicermati kembali,
bila orang pelukis ternama akan tergusur karena kemampuan sebuah robot pelukis
yang bisa membuat lukisan yang sama. Sebuah robot yang mampu untuk memahat
patung yang hampir mirip pula. Seluruh ilustrasi tersebut memang sepintas robot
bisa menguasai semua, tapi sangat disayangkan hasil kerja robot adalah tak
lebih dari sebuah alat cetak dan seonggok besi aluminium dan komponen
elektronika yang dirakit pada papan PCB. Sebuah lukisan dari Afandi tentunya
akan bernilai ratusan juta beda ukuran dengan lukisan robot yang paling-paing
laku di jual 10 ribuan di pinggir jalan.
Robotika
sebagai Ikon dan Kajian Ke-ilmuan
Robot adalah simbol dari
kamajuan dari sebuah teknologi, karena didalam nya mencakup seluruh elemen
keilmuan. Elektronika, Mekanika, Mekatronika, Kinematika, Dimamika, dan lain
sebagainya. Hal ini menjadi suatu alasan yang sangat tepat untuk mengash ilmu
didalam nya. Ikon pendidikan akan menjadi semakin termasyur bila selalu
mengutamakan teknologi didalam nya. Sebuah ikon ini sangat penting untuk
membangun semangat kemajuan, karena hal ini akan menjadi sebuah patokan awal
dari sebuah perjuangan untuk selalu dilanjutkan kepada generasi penerus.
Sejarah
singkat menegenai Robot
Perkembangan
robotika pada awalnya bukan dari disiplin elektronika melainkan berasal dari
ilmuwan biologi dan pengarang cerita novel maupun pertunjukan drama pada
sekitar abad XVIII. Kata robot pertama kali diperkenalkan oleh seorang
penulis dari Czech yang bernama wright Karel Capek pada
tahun 1921. Kata Robot berasal dari kata ‘robota’ yang
berarti: pekerja Paksa atau Sendiri.Para ilmuwan biologi pada saat itu ingin
menciptakan makhluk yang mempunyai karakteristik seperti yang mereka inginkan
dan menuruti segala apa apa yang mereka perintahkan, dan sampai sekarang
makhluk yang mereka ciptakn tersebut tidak pernah terwujud menjadi nyata, tapi
matrak menjadi bahan pada novel-novel maupun naskah sandiwara pangung maupun
film.
Tahun
1941, barulah istilah robotics digunakan dalam teknologi robot oleh
penulis fiksi ilmiah Isaac Asimov. Dia juga memprediksi akan munculnya
robot-robot industri canggih dimasa datang. Jika kita lihat hari ini, maka apa
yang dibayangkan olehnya terbukti dimana begitu pesatnya perkembangan
robot-robot industri saat ini. Istilah revolusi robot atau era robot sudah
menjadi hal biasa untuk menjelaskan perkembangan
itu. Robotics diterima sebagai istilah atau kata untuk mendeskripsikan
semua kemajuan teknologi yang berhubungan dengan robot.
Tahun 1956
Georde Devil dan Joseph Engelberger membentuk perusahaan robot pertama kali
tahu 1956. Devil memprediksi robot akan menjadi bagian penting di industri
sebagai operator pabrik dan membantu pekerja dalam menjalankan mesin-mesin
pabrik. Beberapa tahun kemudian atau tepatnya 1961, General Motor pertama kali
menggunakan robot untuk pabrik otomotifnya. Robot industri kemudian berkembang
dan mulai banyak digunakan tahun 1980 oleh perusahaan selain otomotif dimana
perkembangan elektronik dan computer membuat robot modern lahir.
Pada abad
modern ini sudah bermacam-macam robot yang dicipta dan digunakan seperti dalam
industri, rumah sakit, transportasi, pendidikan dan kehidupan sehari-hari.
Seperti robot yang digunakan untuk mengecat mobil, robot yang digunakan untuk
merakit komponen elektronik dan juga humanoid robot yaiitu robot yang memiliki
muka, yang mampu berjalan dan bertindak seperti manusia.
Mengenal Konsep Dasar Robotika
Aplikasi robotika kini tidak hanya terbatas pada dunia
industri dan manufaktur, namun juga telah merambah ke sektor perkebunan.
Apabila kelangkaan tenaga kerja tidak bisa diatasi dengan cepat dan
masif, bukan tidak mungkin akan diciptakan robot-robot perkebunan yang
akan menggantikan fungsi SDM di bidang produksi, baik untuk gula, bioetanol,
maupun tembakau di PTPN X. Setidaknya dengan mengetahui konsep dasar robotika,
cakrawala pengetahuan kita akan terbuka serta dapat memetakan ragam potensi
yang bisa dikembangkan dari aplikasi robotika.
Pemrograman Robotika
Kreativitas programer adalah kunci dari pemrograman
robotika. Kreativitas programer akan menentukan program yang akan diinput ke
robot sesuai dengan tujuan dibuatnya robot tersebut. Secara mendasar, program
yang ditanamkan dalam chip kontroler robot berisi logika-logika seperti
statement, instruksi, seleksi untuk dua kondisi atau lebih, dan perhitungan
rumus dengan benar.
Bahasa Program Robotika
Di dalam pemrograman robotika, ada beberapa jenis bahasa
program yang bisa digunakan oleh programmer. Programmer biasanya memilih salah
satu bahasa program yang mereka sukai dan mudah dipahami. Dalam hal ini yang
berperan penting adalah kemampuan seorang programmer menguasai bahasa mesin
yang akan dikompilasi untuk dipasang dalam chip mikrikontroler. Di dalam
robotika, bahasa program yang biasanya digunakan antara lain: C dan C++, Basic,
Pascal, dan Assembler.
Susunan program robotika dalam membuat program hampir
sama antara jenis bahasa program yang satu dengan yang lainnya. Bedanya
terletak pada syntax yang merupakan simbol atau ciri khas
pada setiap jenis bahasa program. Hal ini yang bisanya harus dipahami
programmer pemula agar dalam penulisan program tidak terjadi kesalahan (error).
Sebelum membuat program hendaknya kita membuat alur program (flowchart)
yang akan dijalankan secara berulang oleh mikrokontroler atau sebaliknya.
Setelah alur program dibuat maka selanjutnya penyusunan program sesuai dengan
susunan dan syntax dari jenis bahasa program yang digunakan.
Terdapat berbagai macam apikasi simulasi, diantaranya
adalah Proteus dan Myrio yang dapat digunakan untuk simulasi program sehingga
dapat meminimalisir kesalahan-kesalahan saat perakitan robot yang akan kita
buat. Simulator tersebut juga dapat diintegrasikan dengan peralatan luar
seperti aktuator dan sensor.
Studi Kasus Fuzzy Logic pada Robot Sederhana
Pada postingan saya
sebelumnya tentang Pengertian dan Dasar logika fuzzy telah disinggung bagaimana
cara menentukan persamaan garis linier dari membership function pada logika
fuzzy. Nah lalu buat apa kita harus mengetahui persamaan garis tersebut?
Sebenarnya bagi anda yang menerapkan fuzzy logic pada perhitungan automatik
menggunakan toolbox fuzzy di matlab tentunya hal itu tidak dibutuhkan karena
kita hanya membuat membership function tanpa melalui perhitungan manual.
Sebenarnya perhitungan persamaan garis tersebut ditujukan untuk mengetahui
bagaimana logika fuzzy bekerja, karena kita harus mengetahui dasarnya sebelum
melanjutkan ke pemrograman menggunakan logika fuzzy.
Di artikel ini saya akan
mengambil studi kasus sebuah mobil robot untuk lebih memahami logika fuzzy.
Dibawah ini adalah soal latihan yang diberikan dosen yang menginspirasi saya,
yang mengajarkan logika fuzzy dengan bahasa yang mudah difahami. Hehe.
Terimakasih bapak Syai’in.
Bila diketahui :
Data-data
Mobile Robot sebagai berikut:
- Memiliki 2 sensor yang
diletakkan di kanan, dan di kiri Mobile Robot.
- Kecepatan maksimum Mobile Robot
adalah 60 m/s. c. Untuk berbelok kekiri atau kekanan, Mobile Robot hanya
mengatur perbandingan kecepatan roda kanan dan roda kiri.
Data
lintasan, sebagai berikut:
- Lebar Lintasan adalah 80 cm,
Apabila
fungsi keanggotaan untuk:
- Jarak diklasifikasikan menjadi
Sangat Dekat (SD), Dekat (D), Cukup Dekat (CD), Sedang (S), Cukup jauh
(CJ), Jauh (J), Sangat Jauh (SJ).
- Kecepatan roda kanan
dikalisfikasikan menjadi pelan (P), sedang (S), cepat (C)
- Kecepatan roda kiri
dikalisfikasikan menjadi pelan (P), sedang (S), cepat (C).
Dengan
menggunakan metode Fuzzy Sugeno,
- Gambarkanlah fungsi keanggotaan
untuk Sensor Kanan (5%)
- Gambarkanlah fungsi keanggotaan
untuk Sensor Kiri (5%)
- Tentukan persamaan untuk roda
kanan (5%)
- Tentukan persamaan untuk roda
kiri (5%)
- Bila sensor kanan membaca
pembatas lintasan berada pada jarak 28 cm, dan sensor kiri membaca
pembatas lintasan berada pada jarak 48 cm, Maka tentukanlah berapa
kecepatan roda kanan dan kecepatan roda kiri?
Oh iya, Fuzzy juga memiliki
2 metode dalam penyelesaiannya, yaitu Sugeno dan Mamdani. Sebenarnya keduanya
hampir sama, hanya saja proses perhitungan di akhir yang berbeda. Kalo sugeno
menggunakan rumus yang sudah ditentukan, sedangkan mamdani menggunakan
perkiraan titik tengah dari membership function (bingung jelasinnya) .
Tapi untuk penerapan pada hardware yang paling mudah digunakan yaitu sugeno,
karena sugeno menggunakan penjumlahan dan perkalian biasa. Kata dosen saya,
belajar fuzzy itu sangat mudah, asalkan kalian menguasai 3 hal yaitu perkalian,
pembagian, dan pengurangan. Bener gak sih? Menurut saya sih bener. Wkwkwk.
Lanjut!!
Langkah-langkah yang harus
kita lakukan yaitu :
1.
Menentukan Input dan Output
Seperti yang kita ketahui
pada studi kasus diatas memiliki 2 buah input berupa sensor jarak, dan output
dari sistem diatas yaitu kecepatan motor kanan dan kiri.
2. Menggambar
fungsi keanggotaan ( Proses Fuzzyfikasi )
Sensor Kiri
SD = Sangat Dekat ; D =
Dekat ; CD = Cukup Dekat ; S = Sedang ; CJ = Cukup Jauh ; SJ = Sangat Jauh
Sensor Kanan
SD = Sangat Dekat ; D =
Dekat ; CD = Cukup Dekat ; S = Sedang ; CJ = Cukup Jauh ; SJ = Sangat Jauh
Dikarenakan sensor kiri dan
kanan memiliki karakteristik yang sama maka membership function kedua sensor
adalah sama.
3.
Persamaan garis untuk sensor kiri dan kanan
Persamaan Garis Sensor kiri
Kita ambil salah satu
segitiga membership function pada sensor kanan.
Untuk linier naik kita mencari persamaan garis dengan
rumus y = mx + c
Langkah pertama seperti
dijelaskan pada postingan saya sebelumnya, kita harus mencari nilai m dan c .
Persamaan
Garis Sensor kanan
Karena sensor kiri dan
kanan dan identik maka persamaan garis untuk sensor kanan adalah sama dengan
sensor kiri.
4. Penggambaran
Transfer Function
Sekarang
kita akan menjawab soal d , yaitu sensor kanan membaca jarak 28 cm dan sensor
kiri membaca jarak 48 cm, lalu tentukan kecepatan motor kanan dan kiri.Kita ambil lagi membership function dari sensor
kanan dan kiri kemudian tarik garis dari jarak 28 cm untuk sensor kanan dan 48
cm untuk sensor kiri, nantinya garis tersebut akan memotong segitiga pada
memebrship function. Nah untuk menentukan nilai y pada perpotongan tersebut
kita gunakan persamaan garis yang telah kita cari tadi.
Untuk
sensor kanan
Nah sekarang kita cari nilai
p dan q. Untuk nilai p kan yang bepotongan dengan segitiga membership function
kan linier naik, jadi kita menggunakan rumus persamaan garis linier naik yang
telah kita cari tadi.
Untuk sensor kiri
Sekarang kita cari nilai k
dan j. Untuk nilai k kan yang bepotongan dengan segitiga membership function
kan linier naik, jadi kita menggunakan rumus persamaan garis linier naik yang
telah kita cari tadi.
5. Memasukkan
ke rule base (Proses)
Langkah pertama buatlah
tabel seperti dibawah ini yang mengacu pada rule base pada soal.
Loh angka berwana merah
dapat dari mana?
Lihat pada membership
function sensor kiri bahwa segitiga D (dekat) tidak memotong garis 48 sehingga
ditulis 0. Begitu juga dengan SD (sangat dekat) dan J (jauh) . Namun pada
segitiga CJ (cukup jauh) terdapat perpotongan antara garis 48 yang memiliki
nilai k = 0.8, sehingga di tabel ditulis dengan 0.8. sama halnya dengan sensor
kanan.
Lalu bagaimana nilai pada
roda kiri dan kanan?
Seperti
yang saya jelaskan sebelumnya bahwa di fuzzy terdapat operasi logika AND, OR, dan NOT. Kita disini menggunakan
logika AND yang berarti nilai nilai minimum antara sensor
kiri dan sensor kanan, lihatlah baris no 4 pada tabel, nilai sensor kiri adalah
0.8 sedangkan sensor kanan adalah 0.2 maka nilai minimum atau yang paling kecil
adalah 0.2, maka 0.2 ditulis pada tabel roda kiri dan kanan. Begitu juga
dengan tabel lainnya. Oke setelah kita dapatkan tabel proses fuzzyfikasi, maka
lanjut ke tahap 4 yaitu Defuzzyfikasi.
6. Defuzzyfikasi
Pada tahap ini kita akan
mencari kecepatan roda kanan dan kiri dari pembacaan sensor kanan sebesar 28 cm
dan sensor kiri 48 cm. Pada soal diketahui bahwa kecepatan roda kiri mempunyai
semesta 60 m/s. Sehingga apabila kita membagi semesta tersebut dengan 3
himpunan fuzzy yaitu Pelan, Sedang dan Cepat maka dapat digambarkan seperti
dibawah ini.
Dari gambar diatas
diketahui bahwa P berada pada kecepatan 15 m/s , S = 30 m/s dan C = 45 m/s.
Sehingga untuk mencari
kecepatan roda masing-masing maka harus menggunakan rumus sebagai berikut.
Jika anda bingung darimana
nilai 0 , 0 , 0 dan 0.2 ? lihatlah angka pada tabel pada kolom roda kiri. Jadi
rumusnya sangat sederhana sekali bukan?.
Sama halnya dengan
kecepatan roda kanan.
Jadi kecepatan roda kiri dan kanan saat sensor kanan
mendeteksi 28 cm dan sensor kiri mendeteksi 48 cm adalah masing masing 15 m/s
dan 30 m/s.
Referensi:
http://fanny-andreas.blogspot.com/2011/10/pengertian-robotika.html
http://parkshinheru.blogspot.com/2012/11/sejarah-singkat-menegenai-robot.html
http://ptpn10.co.id/blog/mengenal-konsep-dasar-robotika
https://gilangarinata.wordpress.com/2016/11/19/studi-kasus-fuzzy-logic-pada-robot-sederhana/