The words you are searching are inside this book. To get more targeted content, please make full-text search by clicking here.

Teknologi robot terus berkembang dari waktu ke waktu. Untuk bisa memahami prinsip kerja dan mengembangkan robot diperlukan pengetahuan dasar dari komponen
pembentuk robot dan juga perangkat lunak yang digunakan. Pada buku ini diawali dengan pengenalan robot yang meliputi definisi robot, sejarah dan perkembangan teknologi robot, fungsi dan kegunaan robot, klasifikasi umum robot, disiplin ilmu robotik. Setelah mengenal robot, selanjutnya diperkenalkan komponen dasar robot beserta anatominya. Sebuah robot biasanya tersusun atas catu daya (power supply), sensor, kontroler (otak robot), aktuator, manipulator dan komponen elektronik lainnya yang dapat digunakan sebagai pendukung robot. Sensor merupakan bagian masukan atau input pada robot. Oleh karena itu penting untuk memahami pengertian sensor, karakteristik sensor, klasifikasi sensor dan berbagai jenis sensor.

Robot tidak akan mampu bekerja tanpa ada kontroler yang berperan sebagai pemroses data pada robot. Mikrokontroler adalah salah satu jenis kontroler yang banyak
diimplementasikan pada saat membangun robot sederhana. Beberapa mikrontroler yang banyak digunakan antara lain Mikrokontroler Intel MCS51, Mikrokontroler AVR, PIC
(Programmable Intelligent Computer), Mikrokontroler ARM (Advanced RISC Machine).
Arduino menjadi alternatif kontroler yang lebih mudah digunakan. Berbagai pilihan arduino antara lain Arduino Uno, Arduino Due, Arduino Leonardo, Arduino 101, Arduino Pro Micro, Arduino Mega 2560 Rev3, Arduino Esplora dan Arduino Yun. Setelah adanya Raspberry Pi, perangkat ini menjadi primadona dari berbagai kontroler robot. Sedangkan implementasi pada industri dapat memilih Programmable Logic Controller (PLC).

Aktuator dan end effector berperan sebagai output pada robot. Aktuator elektrik, aktuator pneumatik, aktuator hydraulic, piezoelektrik aktuator, relay, dan muscle wire merupakan berbagai jenis aktuator yang banyak digunakan. Selain itu berbagai jenis gripper bisa
digunakan agar dapat memaksimalkan kerja robot. Gripper yang dapat digunakan antara lain gripper mekanik, gripper ruang hampa, gripper magnetik, adhesive gripper, scoops dan inflatable devices.

Robot tidak akan dapat bekerja tanpa adanya perangkat lunak atau bahasa pemrograman. Software yang dapat digunakan pada robot antara lain AVR Studio, Arduino Software (IDE), LabVIEW, Java, Pascal, LISP, C dan C++, Python dan PyRobot. Pada bab ini juga akan dipelajari mengenai berbagai Aplikasi Program & Simulator Robot serta pembuatan
Diagram Alir (Flowchart). Robotic Process Automation (RPA) merupakan pengembangan software yang berperan seperti robot.

Discover the best professional documents and content resources in AnyFlip Document Base.
Search
Published by penamudamedia, 2023-09-18 23:35:40

Pengantar Robotika Pengetahuan Dasar Tentang Robotika

Teknologi robot terus berkembang dari waktu ke waktu. Untuk bisa memahami prinsip kerja dan mengembangkan robot diperlukan pengetahuan dasar dari komponen
pembentuk robot dan juga perangkat lunak yang digunakan. Pada buku ini diawali dengan pengenalan robot yang meliputi definisi robot, sejarah dan perkembangan teknologi robot, fungsi dan kegunaan robot, klasifikasi umum robot, disiplin ilmu robotik. Setelah mengenal robot, selanjutnya diperkenalkan komponen dasar robot beserta anatominya. Sebuah robot biasanya tersusun atas catu daya (power supply), sensor, kontroler (otak robot), aktuator, manipulator dan komponen elektronik lainnya yang dapat digunakan sebagai pendukung robot. Sensor merupakan bagian masukan atau input pada robot. Oleh karena itu penting untuk memahami pengertian sensor, karakteristik sensor, klasifikasi sensor dan berbagai jenis sensor.

Robot tidak akan mampu bekerja tanpa ada kontroler yang berperan sebagai pemroses data pada robot. Mikrokontroler adalah salah satu jenis kontroler yang banyak
diimplementasikan pada saat membangun robot sederhana. Beberapa mikrontroler yang banyak digunakan antara lain Mikrokontroler Intel MCS51, Mikrokontroler AVR, PIC
(Programmable Intelligent Computer), Mikrokontroler ARM (Advanced RISC Machine).
Arduino menjadi alternatif kontroler yang lebih mudah digunakan. Berbagai pilihan arduino antara lain Arduino Uno, Arduino Due, Arduino Leonardo, Arduino 101, Arduino Pro Micro, Arduino Mega 2560 Rev3, Arduino Esplora dan Arduino Yun. Setelah adanya Raspberry Pi, perangkat ini menjadi primadona dari berbagai kontroler robot. Sedangkan implementasi pada industri dapat memilih Programmable Logic Controller (PLC).

Aktuator dan end effector berperan sebagai output pada robot. Aktuator elektrik, aktuator pneumatik, aktuator hydraulic, piezoelektrik aktuator, relay, dan muscle wire merupakan berbagai jenis aktuator yang banyak digunakan. Selain itu berbagai jenis gripper bisa
digunakan agar dapat memaksimalkan kerja robot. Gripper yang dapat digunakan antara lain gripper mekanik, gripper ruang hampa, gripper magnetik, adhesive gripper, scoops dan inflatable devices.

Robot tidak akan dapat bekerja tanpa adanya perangkat lunak atau bahasa pemrograman. Software yang dapat digunakan pada robot antara lain AVR Studio, Arduino Software (IDE), LabVIEW, Java, Pascal, LISP, C dan C++, Python dan PyRobot. Pada bab ini juga akan dipelajari mengenai berbagai Aplikasi Program & Simulator Robot serta pembuatan
Diagram Alir (Flowchart). Robotic Process Automation (RPA) merupakan pengembangan software yang berperan seperti robot.

93 RAM berfungsi untuk menyimpan proses yang sedang dilakukan ketika menjalankan program dengan Raspberry Pi. RAM bersifat volatile sehingga memori akan hilang jika daya pada Raspberry Pi dimatikan. 3. Radio Module Gambar 6.5 Radio Module 4. PMIC (Power Management Integrated Circuit) Gambar 6.6 Power Management Integrated Circuit PMIC berfungsi untuk mengubah daya yang masuk dari port micro USB menjadi daya yang dibutuhkan untuk menjalankan Raspberry Pi. 5. USB (Universal Serial Bus) Port Gambar 6.7 Universal Serial Bus Port Raspberry Pi mempunyai 4 USB Port, yang dapat digunakan untuk menghubungkan mouse, keyboard, flashdisk, dan lain-lain. 6. Ethernet Port Gambar 6.8 Ethernet Port


94 Ethernet Port atau dikenal juga dengan Network Port digunakan untuk menghubungkan Raspberry Pi dengan internet menggunakan kabel Ethernet yang disebut juga RJ45 Connector. 7. Micro SD Card Gambar 6.9 Micro SD Card Micro SD Card ini terletak di bagian bawah raspberry Pi. Micro SD berfungsi untuk meng-install Sistem Operasi, Software, menyimpan file dan lain-lain. 8. GPIO Header (General Purpose Input Output) Gambar 6.10 General Purpose Input Output Terdapat 40 pin GPIO yang disediakan di Raspberry Pi masing-masing 20 pin setiap baris. GPIO digunakan agar Raspberry Pi dapat terkoneksi dengan hardware lainnya seperti LED, sensor, dan lain-lain. 9. Display Connector Gambar 6.11 Display Connector Display Connector atau disebut juga Display Serial Interface (DSI), didesain untuk dihubungkan dengan Raspberry Pi Touch Display.


95 10. Power Input Gambar 6.12 Power Input Power input ini digunakan untuk menghubungkan Raspberry Pi dengan sumber daya. Kabel yang digunakan juga serupa dengan kabel untuk charge smartphone pada umumnya. 11. HDMI (High Definition Multimedia Interface) Gambar 6.12 High Definition Multimedia Interface HDMI digunakan untuk display monitor sekaligus juga audio pada Raspberry Pi itu sendiri. HDMI ini dapat dihubungkan ke TV, monitor, atau proyektor. 12. Camera Connector dan AV Jack Gambar 6.13 Camera Connector dan AV Jack Camera Connector digunakan untuk menghubungkan Camera Module khusus Raspberry Pi. Sementara AV Jack digunakan untuk Raspberry Pi dapat mengeluarkan suara. AV Jack ini dapat dihubungkan baik pada headshet maupun speaker.


96 Berikut ini adalah tampilan Desktop Raspberry Pi. Gambar 6.14 Tampilan Desktop Raspberry Pi Keterangan: A. Wallpaper B. Taskbar C. Task D. System Tray E. Bluetooth Icon F. Network Icon G. Volume Icon H. CPU Monitor I. Clock J. Media Eject K. Launcher L. Menu Icon (Raspberry Icon) M. Window Titlebar N. Minimize O. Maximize P. Close Raspberry Pi 3 Model B+ adalah mini komputer versi terbaru yang dikeluarkan Raspberry Pi sebagai pengembangan dari versi Raspberry Pi sebelumnya dan menjadi penerus Raspberry Pi 3 Model B yang sudah release. Secara fisik Raspberry Pi 3 Model B dan Raspberry Pi 3 model B+ sama sehingga untuk case versi Raspberry Pi 3 Model B bisa dipakai. Gambar 6.14 Sisi depan dan sisi belakang Raspberry Pi 3 B+ 6.7 Raspberry Pi 3 Model B+


97 Beberapa peningkatan raspberry Pi 3 Model B+ dibanding sebelumnya adalah sebagai berikut: ▪ Raspberry Pi 3 Model B+ menggunakan chipset baru yaitu Broadcom BCM2873B0 Cortex A53 64-bit 1,4 GHz, mempunyai kecepatan Processor jauh lebih cepat. ▪ Memiliki kemampuan jaringan lebih baik dengan koneksi wireless dual band yang sudah mendukung 802.11ac dan Bluetooth 4.2. ▪ Chipset pada Raspberry pi 3 Model B+ memiliki manajemen suhu yang lebih baik ▪ Faster Ethernet (Gigabit Ethernet over USB 2.0). ▪ Power-over-Ethernet support (with separate PoE HAT). Berikut spesifikasi Raspberry Pi 3 Model B+: ▪ Prosesor: Broadcom BCM2837B0, Cortex-A53 (ARMv8) 64-bit SoC @ 1.4GHz ▪ Memori: 1GB LPDDR2 SDRAM ▪ Catu Daya: 5V/2.5A DC power input (microUSB) ▪ Jaringan Nirkabel: 2.4GHz and 5GHz IEEE 802.11.b/g/n/ac wireless LAN, Bluetooth 4.2, BLE ▪ Ethernet: Gigabit Ethernet melalui USB 2.0 (throughput maksimum 300 Mbps) ▪ GPIOs: Extended 40-pin GPIO header ▪ Video Output: Full-size HDMI ▪ Audio Output: 4-pole stereo output dan composite video port ▪ USB Port: 4 USB 2.0 ports ▪ CSI camera port untuk koneksi ke Raspberry Pi camera ▪ DSI display port untuk koneksi Raspberry Pi touchscreen display ▪ Micro SD port untuk loading sistem operasi dan menyimpan data ▪ Dukungan Power-over-Ethernet (PoE) (memerlukan PoE HAT yang terpisah) ▪ Suhu operasi: 0~50℃ ▪ Dimensi: 120mm x 75mm x 34mm ▪ Berat: 75g Komunikasi Pin GPIO Raspberry Pi mempunyai GPIO Pin yang dapat digunakan sebagai antarmuka dengan perangkat lain. Fungsi GPIO pin diantaranya: ▪ Power Pin Power Pin GND, 3.3 V dan 5 V ▪ PWM (pulse-width modulation) Hardware PWM = GPIO12, GPIO13, GPIO18, GPIO19 ▪ SPI (Serial Peripheral Interface Bus)


98 Pin SPI digunakan untuk komunikasi dengan modul dengan interface SPI, misalnya RFID, Pin GPIOnya antara lain SPI0:MOSI(GPIO10); MISO(GPIO9); SCLK(GPIO11); CE0(GPIO8), CE1(GPIO7), SPI1:MOSI(GPIO20); MISO(GPIO19); SCLK(GPIO21); CE0(GPIO18); CE2(GPIO16). ▪ I2C (Inter-Integrated Circuit) Pin I2C dapat digunakan untuk komunikasi dengan Modul yang support dengan I2C Protokol, misalnya RTC. Pin GPIOnya adalah Data: (GPIO2); Clock (GPIO3), EEPROM Data: (GPIO0); EEPROM Clock (GPIO1) ▪ Serial I/O Digunakan untuk Serial Input dan Output, komunikasi untuk peripheral external, seperti RS232 atau Modbus. Pin GPIOnya yaitu TX (GPIO14); RX (GPIO15). Gambar 6.15 Raspberry Pi 3 GPIO Pin Raspberry Pi Foundation telah merilis seri terbaru dari Raspberry Pi pada akhir juni 2019 yaitu Raspberry Pi 4 Model B. 6.7 Raspberry Pi 4 Model B


99 Gambar 6.16 Raspberry Pi 4 Model B Gambar 6.17 Sisi depan dan sisi belakang Raspberry Pi 4 Model B Peningkatan Raspberry Pi 4 Model B dibandingkan dengan model Raspberry Pi sebelumnya yaitu Raspberry Pi 3 Model B+ Quad core CPU dengan kecepatan prosesor 1.5 GHz yang diklaim memiliki performa tiga kali lebih baik dari versi sebelumnya, Dual display via micro HDMI port, 4K video decoder, WiFi dual band, USB 3.0 dan ada peningkatan Bluethooth dari 4.2 ke Bluetooth 5.0, Dukungan port USB type-C untuk power supply. Kapasitas RAM ada beberapa pilihan 1GB, 2GB dan 4GB. Gambar 6.18 Spesifikasi Raspberry Pi 4 Model B Berikut spesifikasi Raspberry Pi 4 Model B : ▪ Processor Broadcom BCM2711, Quad core Cortex-A72 (ARM v8) 64- bit SoC @ 1.5GHz ▪ GPU menggunakan Video Core seri VI @ 500 Mhz


100 ▪ Memory Memiliki pilihan RAM yaitu,1GB, 2GB or 4GB LPDDR4-2400 SDRAM. ▪ Konektivitas Dual-band 802.11ac jaringan nirkabel, 2.4 GHz dan 5.0 GHz, ▪ Konektivitas Bluetooth 5.0, BLE ▪ Konektivitas Gigabit Ethernet ▪ Konektivitas Port USB, 2 Port USB 3.0 ; 2 Port USB 2.0. ▪ Raspberry Pi standard 40 pin GPIO header ▪ Video 2 × micro-HDMI ports ▪ 2-lane MIPI DSI display port ▪ 2-lane MIPI CSI camera port ▪ 4-pole stereo audio dan composite video port ▪ Decoding H.265 (4kp60 decode), H264 (1080p60 decode, 1080p30 encode) ▪ OpenGL ES 3.0 graphics ▪ Micro-SD card slot untuk sistem operasi dan penyimpan data ▪ Tegangan Input, 5V DC melalui konektor USB-C (minimum 3A) ▪ Tegangan Input, 5V DC via GPIO header (minimum 3A) ▪ Power over Ethernet (PoE) enabled (memerlukan PoE HAT terpisah) 1. Raspberry Pi merupakan komputer dengan ukuran kecil, hampir seukuran sebuah kartu kredit. Raspberry Pi dilengkapi dengan prosesor, RAM dan port hardware yang khas yang bisa ditemukan pada banyak komputer. 2. Sistem operasi yang digunakan untuk Raspberry Pi adalah Raspbian OS yang didasarkan dari Debian. 3. Raspberry Pi dapat digunakan antara lain sebagai Komputer Desktop Mini, File Server, Download Server, Sebagai access point dan lain sebagainya. 4. Saat ini ada beberapa model raspberry pi yang sudah diproduksi dan dijual di pasaran, beberapa model tersebut antara lain adalah Raspberry Pi 3 model B, Pi 2 model B, Pi Zero, Pi Zero W dan Pi 1 Model B+ dan Model A+. 5. Komponen penyusun Raspberry Pi secara umum terdiri dari SoC (System on Chip), RAM (Random Access Memory), Radio Module, USB (Universal Serial Bus) Port, Ethernet Port, Micro SD Card, GPIO Header (General Purpose Input Output), Display Connector, Power Input, HDMI (High Definition Multimedia Interface), Camera Connector dan AV Jack, 6. Raspberry Pi 3 Model B+ adalah mini komputer versi terbaru yang dikeluarkan Raspberry Pi sebagai pengembangan dari versi Rangkuman


101 Raspberry Pi sebelumnya dan menjadi penerus Raspberry Pi 3 Model B yang sudah release. 7. Peningkatan Raspberry Pi 4 Model B dibandingkan dengan model Raspberry Pi sebelumnya yaitu Raspberry Pi 3 Model B+ Quad core CPU dengan kecepatan processor 1.5 GHz 1. Apa yang anda pahami mengenai Raspberry Pi ? 2. Sistem operasi apa yang bisa digunakan pada Raspberry Pi ? 3. Berikan contoh-contoh penggunaan Raspberry Pi ! 4. Berikan penjelasan spesifikasi penting dari sebuah Raspberry Pi ! 5. Desainlah sebuah sistem yang menggunakan salah satu jenis Raspberry Pi yang ada di pasaran ! Latihan


102 ▪ Pendahuluan ▪ Elemen pada PLC ▪ Fungsi PLC ▪ Bahasa Pemrograman PLC Setelah mempelajari bab ini, mahasiswa diharapkan mampu: ▪ Memahami dan mampu menjelaskan mengenai pengertian PLC ▪ Mampu menyebutkan elemen-elemen dasar pada sebuah PLC ▪ Mampu menjelaskan fungsi, kegunaan dan penerapan PLC ▪ Mengetahui jenis-jenis bahasa pemrograman pada PLC Programmable Logic Controller (PLC) merupakan suatu perangkat yang dirancang khusus untuk mengontrol suatu proses yang dilakukan oleh mesin. PLC sebenarnya adalah suatu sistem elektronika digital yang dirancang agar dapat mengendalikan mesin dengan proses mengimplementasikan fungsi nalar kendali sekuensial, operasi pewaktuan (timing), pencacahan (counting), dan aritmatika. PLC dianggap sebagai sebuah sistem mikrokontroler yang berfungsi sebagai pengontrol berbagai device seperti relay, LED, motor DC, sensor dan lain sebagainya. Gambar 7.1 Contoh PLC Omron PLC dibangun untuk memonitor keadaan dari peralatan input yang kemudian dianalisis sesuai dengan kebutuhan untuk mengontrol keadaan output. Sinyal input diberikan ke dalam input card. Input card dapat berupa analog input card BAB VII. PROGRAMMABLE LOGIC CONTROLLER (PLC) Pokok Bahasan Tujuan Pembelajaran 7.1 Pendahuluan


103 dan digital input card. Setiap input mempunyai alamat tertentu sehingga untuk mendeteksinya mikroprosesor memanggil berdasarkan alamatnya. Jumlah input yang dapat diproses tergantung jenis dan tipe PLC yang digunakan. Sinyal output dikeluarkan PLC sesuai dengan program yang dibuat oleh programmer berdasarkan analisis keadan input. Ada dua jenis output card, yaitu analog output card dan digital output card. Setiap ouput card mempunyai alamat tertentu dan diproses oleh mikroprosesor menurut alamatnya. PLC lebih banyak diimplementasikan pada proses industri. Sistem robotika industri kebanyakan menggunakan PLC dibanding kontroler lain. Hal ini karena Arduino hanya bisa menerima suplai daya 5v DC sehingga tidak sesuai digunakan pada industri. Sedangkan PLC bisa menggunakan suplai input tegangan AC. PLC difungsikan untuk proses otomasi industri, seperti pengontrolan mesin, pipa, tenaga listrik, boiler dan lain lain. PLC hampir mirip dengan komputer digital sehingga mempunyai prosesor, unit memori, unit kontrol, dan unit I/O. PLC berbeda dengan komputer dalam beberapa hal, antara lain: ▪ dirancang untuk berada di lingkungan industri yang mungkin banyak debu, panas, guncangan, dan sebagainya. ▪ dapat dioperasikan serta dirawat dengan mudah oleh teknisi pabrik. ▪ PLC sebagian besar tidak dilengkapi dengan monitor, tetapi dilengkapi dengan peripheral port yang berfungsi untuk memasukkan program sekaligus memonitor data atau program. ▪ jumlah pin input/output banyak dan proteksi kerusakan kecil dibandingkan menggunakan kontroler lainnya. Sebuah PLC dapat melakukan fitur-fitur berikut ini: ▪ Programmable, menunjukkan kemampuan dalam hal memori untuk menyimpan program yang telah dibuat yang dengan mudah diubahubah fungsi atau kegunaannya. ▪ Logic, menunjukkan kemampuan dalam memproses input secara aritmatik dan logic (ALU), yakni melakukan operasi membandingkan, menjumlahkan, mengalikan, membagi, mengurangi, negasi, AND, OR, dan lain sebagainya. ▪ Controller, menunjukkan kemampuan dalam mengontrol dan mengatur proses sehingga menghasilkan output yang diinginkan. Cara kerja sebuah PLC adalah menerima sinyal masukan proses yang dikendalikan lalu melakukan serangkaian instruksi logika terhadap sinyal masukan tersebut sesuai dengan program yang tersimpan dalam memori lalu menghasilkan sinyal keluaran untuk mengendalikan aktuator atau peralatan lainnya.


104 Sistem PLC secara garis besar terdiri dari tiga elemen, yaitu: ▪ Modul CPU Modul CPU adalah pusat pengolahan semua jenis data terkait mekanisme industri yang diatur sistem PLC. Modul ini bekerja dengan cara menyimpan, mengolah, dan mengelola semua data terkait mekanisme peralatan seperti sistem konveyor, robot, dan sebagainya. ▪ Panel elektrik/sumber daya Panel elektrik mengatur keluar-masuk daya yang dibutuhkan untuk menjalankan seluruh sistem. Panel ini tersambung dengan panel-panel serupa lain yang mengatur aliran daya, termasuk menyambungkannya dengan generator jika aliran listrik PLN terputus. ▪ Modul I/O Modul I/O (input/output) menyambungkan sistem PLC dengan berbagai sensor. Sambungan ini bermanfaat untuk membaca kondisi sistem seperti temperatur, suhu, aliran daya, dan sebagainya. Bagian-bagiannya terdiri antara catu daya eksternal, relay kontraktor, memori, mikrokontroler, sistem komunikasi RJ45, RS232, RS485. PLC secara umum memiliki beberapa fungsi sebagai berikut: ▪ Kontrol Sekuensial Memproses sinyal biner yang masuk menjadi output untuk keperluan pemrosesan teknik secara urut atau sekuensial. PLC di sini menjaga agar semua langkah pada proses sekuensial berlangsung dengan urutan yang tepat ▪ Monitoring Plant Mengawasi suatu sistem seperti tekanan, temperatur, tingkat ketinggian, dan mengambil langkah yang diperlukan berkaitan dengan proses yang diatur contohnya nilai yang telah melampaui batas atau menunjukkan pesan tersebut kepada operator. ▪ Pemberi Input ke Computerized Numerical Control (CNC) PLC secara khusus memiliki fungsi untuk memberi input atau masukan ke CNC untuk keperluan pemrosesan lebih lanjut. Mesin ini memiliki ketelitian yang lebih tinggi. Namun harganya lebih mahal jika dibanding PLC. Biasanya perangkat ini digunakan untuk keperluan finishing, moulding, membentuk benda kerja, dan lain sebagainya. Untuk tugas-tugas yang berkaitan dengan PLC di perusahaan-perusahaan saat ini biasanya diserahkan kepada kontraktor PLC. Kontraktor tersebut biasanya 7.2 Elemen pada PLC 7.3 Fungsi PLC


105 juga bekerjasama dengan kontraktor mekanikal elektrikal dengan scope pekerjaan masing-masing. Pihak kontraktor dapat menyampaikan list atau daftar pekerjaan yang akan dilakukan sesuai dengan kontrak antara perusahaan dengan kontraktor. Program kendali PLC terdiri atas tiga unsur yaitu alamat, instruksi, dan operand. Alamat adalah nomor yang menunjukkan lokasi, instruksi, atau data dalam daerah memori. Instruksi harus disusun secara berurutan dan menempatkannya dalam alamat yang tepat sehingga seluruh instruksi dilaksanakan mulai dari alamat terendah hingga alamat tertinggi dalam program. Instruksi adalah perintah yang harus dilaksanakan PLC. PLC hanya dapat melaksanakan instruksi yang ditulis menggunakan ejaan yang sesuai. Oleh karena itu, pembuat program harus memperhatikan tata cara penulisan instruksi. Operand adalah nilai berupa angka yang ditetapkan sebagai data yang digunakan untuk suatu instruksi. Operand dapat dimasukkan sebagai konstanta yang menyatakan nilai angka nyata atau merupakan alamat data dalam memori. Setiap merk PLC memiliki alamat, instruksi, dan operand masing-masing, yang berbeda dengan merk PLC lainnya. Program PLC dapat dibuat dengan menggunakan beberapa bahasa pemrograman. Jenis-jenis pemrograman tersebut tergantung dari jenis atau merk PLC. Bentuk program berbeda-beda sesuai dengan bahasa pemrograman yang digunakan. Setidaknya terdapat lima jenis bahasa pemrograman pada pemrogaman PLC yaitu: 1. Ladder diagram 2. Function Block Diagram 3. Structure Text 4. Sequential Function Chart 5. Instruction List 1. Ladder Diagram Bahasa Pemrograman ini merupakan bahasa yang paling umum dan sering digunakan dalam industri industri karena bahasa ini sangat mudah dipahami dan tidak terlalu rumit. Ladder diagram/logika tangga dipakai untuk menggambarkan secara grafis diagram rangkaian elektronika dan perangkat keras komputer berdasarkan logika berbasis relay yang banyak dijumpai pada aplikasi PLC dan kendali industri. Ladder diagram merupakan tiruan dari sebuah logika yang diaplikasikan langsung oleh relay. Di dalam ladder diagram terdiri dari beberapa switch/saklar NO dan NC. Garis horizontal dan garis 7.4 Bahasa Pemrograman PLC


106 vertikal sebagai penyambung rangkaian ladder. Gambar 7.2 di bawah ini merupakan contoh gambar Ladder Diagram. Gambar 7.2 Contoh Ladder Diagram 2. Mnemonic Bahasa ini digunakan untuk menjalankan PLC dengan alat PLC console. Bahasa ini merupakan cara membaca dari bahasa Ladder Diagram, sehingga bahasa ini tidak memakai garis ataupun switch melainkan memakai angka dan huruf. Gambar 7.3 merupakan contoh bahasa pemrograman mnemonic. Gambar 7.3 Contoh Mnemonic


107 3. Function Block Diagram / Function Plan Function block diagram adalah suatu fungsi-fungsi logika yang disederhanakan dalam gambar blok dan dapat dihubungkan dalam suatu fungsi atau digabungkan dengan fungsi blok lain. Bahasa pemrograman ini menitikberatkan pada hubungan antara variabel input dengan output berupa gambar blok-blok diagram dan dalam blok-blok tersebut terdapat fungsifungsi tertentu. Gambar 7.4 Contoh Function Block Diagram 4. Structure Text Bahasa pemrograman ini termasuk high level language dimana biasa digunakan untuk berberapa prosedur yang kompleks menggunakan bahasa baku untuk menyatakan kondisi dari step yang berbeda. Bahasa yang digunakan mirip dengan bahasa pemrograman pascal. 5. Sequential Function Chart Bahasa pemrograman ini dibuat dengan sistem chart yang mempresentasikan setiap step ke dalam hubungan-hubungan transisi. Di dalam chart-nya sudah terdapat urutan langkah-langkah, transisi dan percabangan. Codesys merupakan software yang bisa digunakan untuk belajar pemrograman PLC. Aplikasi ini dapat digunakan secara gratis dan bersifat legal. Selain itu dapat digunakan untuk membuat program yang relatif kompleks pada PLC (menggunakan instruksi analog, memprogram dengan bahasa selain ladder diagram, dan lain-lain). Kelebihan lain dari Codesys sudah dilengkapi dengan simulator agar mahasiswa dapat belajar memprogram tanpa PLC kapanpun dan dimanapun.


108 1. PLC adalah suatu sistem elektronika digital yang dirancang agar dapat mengendalikan mesin dengan proses mengimplementasikan fungsi nalar kendali sekuensial, operasi pewaktuan (timing), pencacahan (counting), dan aritmatika. 2. PLC dibangun untuk memonitor keadaan dari peralatan input yang kemudian dianalisis sesuai dengan kebutuhan untuk mengontrol keadaan output. 3. Sistem PLC secara garis besar terdiri dari tiga elemen, yaitu Modul CPU, panel elektrik/sumber daya dan modul I/O. 4. Program kendali PLC terdiri atas tiga unsur yaitu alamat, instruksi, dan operand. 5. Setidaknya terdapat lima jenis bahasa pemrograman pada pemrogaman PLC yaitu Ladder diagram, Function Block Diagram, Structure Text, Sequential Function Chart dan Instruction List. 1. Apa yang anda ketahui mengenai PLC ! 2. Jelaskan prinsip kerja PLC ! 3. Ada beberapa elemen penting dari PLC. Sebutkan dan jelaskan ! 4. Sebutkan fungsi atau kegunaan dari PLC ! 5. Berikanlah salah satu contoh bahasa pemrograman PLC yang anda ketahui dan jelaskan ! Rangkuman Latihan


109 ▪ Pengertian Aktuator ▪ Aktuator Elektrik ▪ Aktuator Pneumatik ▪ Aktuator Hydraulic ▪ Piezoelektrik Aktuator ▪ Relay ▪ Muscle wire ▪ LCD Setelah mempelajari bab ini, mahasiswa diharapkan mampu: ▪ menjelaskan pengertian aktuator ▪ memahami berbagai jenis aktuator listrik dan menjelaskan karakteristiknya ▪ mengetahui penerapan berbagai jenis aktuator pada sistem robotika Aktuator merupakan perangkat elektromekanik yang mengubah energi listrik menjadi mekanik (gerakan). Pada robot aktuator berfungsi untuk menggerakkan robot. Dalam robot beroda, aktuator yang digunakan biasanya berupa motor DC yang dihubungkan ke roda sehingga robot bisa berpindah menuju ke arah yang diinginkan. Selain itu aktuator dapat dihubungkan ke sendi (joint) dari lengan robot, gerak end efector dan lain sebagainya. Berikut adalah beberapa jenis aktuator berdasarkan kategori tenaganya yaitu: 1) Aktuator tenaga elektrik, biasanya menggunakan solenoid, motor DC, motor servo, motor stepper, dan sebagainya. Jenis aktuator ini mempunyai sifat mudah diatur dengan torsi kecil sampai sedang. 2) Aktuator tenaga hidrolik. Aktuator ini mempunyai torsi yang besar dan konstruksi yang sulit. 3) Aktuator tenaga pneumatik, mempunyai sifat sulit dikendalikan. BAB VIII. AKTUATOR PADA ROBOT Pokok Bahasan Tujuan Pembelajaran 8.1 Pengertian Aktuator


110 4) Aktuator lainnya seperti piezoelectric, magnetik, ultra sound dan lain sebagainya. Aktuator elektrik terbagi menjadi dua jenis. Ada jenis yang bergerak berdasarkan rotasi atau putaran. Ada juga aktuator linear yang bergerak lurus. Beberapa aktuator yang bergerak berdasarkan rotasi antara lain motor DC, Geared Motor DC, Motor Servo, Smart Servo, Motor Stepper, Geared motor stepper dan lain sebagainya. Sedangkan aktuator yang bergerak secara linier adalah linear actuator dan solenoid. Motor Listrik DC atau DC Motor adalah suatu perangkat yang mengubah energi listrik menjadi energi kinetik atau gerakan (motion). Motor DC ini juga dapat disebut sebagai motor arus searah. Seperti namanya, DC Motor memiliki dua terminal dan memerlukan tegangan arus searah atau DC (Direct Current) untuk dapat menggerakannya. Motor Listrik DC ini biasanya digunakan pada perangkat-perangkat elektronik dan listrik yang menggunakan sumber listrik DC seperti vibrator ponsel, kipas DC dan bor listrik DC. Motor DC menghasilkan sejumlah putaran per menit atau biasanya dikenal dengan istilah RPM (revolutions per minute) dan dapat dibuat berputar searah jarum jam maupun berlawanan arah jarum jam apabila polaritas listrik yang diberikan pada Motor DC tersebut dibalikkan. Motor Listrik DC tersedia dalam berbagai ukuran RPM dan bentuk. Kebanyakan Motor Listrik DC memberikan kecepatan rotasi sekitar 3000 rpm hingga 8000 rpm dengan tegangan operasional dari 1,5V hingga 24V. Apabila tegangan yang diberikan ke Motor DC lebih rendah dari tegangan operasionalnya maka akan dapat memperlambat rotasi motor DC tersebut sedangkan tegangan yang lebih tinggi dari tegangan operasional akan membuat rotasi motor DC menjadi lebih cepat. Namun ketika tegangan yang diberikan ke Motor DC tersebut turun menjadi di bawah 50% dari tegangan operasional yang ditentukan maka Motor DC tersebut tidak dapat berputar atau terhenti. Sebaliknya, jika tegangan yang diberikan ke Motor DC tersebut lebih tinggi sekitar 30% dari tegangan operasional yang ditentukan, maka motor DC tersebut akan menjadi sangat panas dan akhirnya akan menjadi rusak. 8.2 Aktuator Elektrik Motor DC


111 Pada saat Motor DC berputar tanpa beban, hanya sedikit arus listrik atau daya yang digunakannya, namun pada saat diberikan beban, jumlah arus yang digunakan akan meningkat hingga ratusan persen bahkan hingga 1000% atau lebih (tergantung jenis beban yang diberikan). Oleh karena itu, produsen Motor DC biasanya akan mencantumkan stall current pada Motor DC. Stall current adalah arus pada saat poros motor berhenti karena mengalami beban maksimal. Motor DC tersusun atas beberapa bagian. Terdapat dua bagian utama pada sebuah Motor DC, yaitu stator dan rotor. Stator adalah bagian motor yang tidak berputar, bagian yang statis ini terdiri dari rangka dan kumparan medan. Sedangkan rotor adalah bagian yang berputar, bagian rotor ini terdiri dari kumparan Jangkar. Dua bagian utama ini dapat dibagi lagi menjadi beberapa komponen penting yaitu diantaranya adalah yoke (kerangka magnet), poles (kutub motor), field winding (kumparan medan magnet), armature winding (kumparan jangkar), commutator (komutator) dan brushes (kuas/sikat arang). Pada prinsipnya motor DC menggunakan fenomena elektromagnet untuk bergerak, ketika arus listrik diberikan ke kumparan, permukaan kumparan yang bersifat utara akan bergerak menghadap ke magnet yang berkutub selatan dan kumparan yang bersifat selatan akan bergerak menghadap ke utara magnet. Saat ini, karena kutub utara kumparan bertemu dengan kutub selatan magnet ataupun kutub selatan kumparan bertemu dengan kutub utara magnet maka akan terjadi saling tarik menarik yang menyebabkan pergerakan kumparan berhenti. Untuk menggerakannya lagi, tepat pada saat kutub kumparan berhadapan dengan kutub magnet, arah arus pada kumparan dibalik. Dengan demikian, kutub utara kumparan akan berubah menjadi kutub selatan dan kutub selatannya akan berubah menjadi kutub utara. Pada saat perubahan kutub tersebut terjadi, kutub selatan kumparan akan berhadap dengan kutub selatan magnet dan kutub utara kumparan akan berhadapan dengan kutub utara magnet. Karena kutubnya sama, maka akan terjadi tolak menolak sehingga kumparan bergerak memutar hingga utara kumparan berhadapan dengan selatan magnet dan selatan kumparan berhadapan dengan utara magnet. Pada saat ini, arus yang mengalir ke kumparan dibalik lagi dan kumparan akan berputar lagi karena adanya perubahan kutub. Siklus ini akan berulang-ulang hingga arus listrik pada kumparan diputuskan.


112 Gambar 8.1 Motor DC Geared Motor DC adalah pengembangan dari DC Motor, yang membedakan adalah dengan adanya penambahan komponen Gear pada Motor. Gear ini berfungsi untuk menambah torsi (tenaga) pada motor, atau juga bisa menambah kecepatan. Gambar 8.2 Geared Motor DC Salah satu aktuator yang digunakan pada robot manipulator adalah servomotor. Servomotor adalah sebuah motor dengan sistem closed feedback di mana posisi dari motor akan diinformasikan kembali ke rangkaian kontrol yang ada di dalam servomotor. Servomotor ini terdiri dari sebuah motor, serangkaian gear, potensiometer dan rangkaian kontrol. Potensiometer berfungsi untuk menentukan batas sudut dari putaran. Sedangkan sudut dari sumbu servomotor diatur berdasarkan lebar pulsa yang dikirim melalui kaki sinyal dari kabel motor. Contohnya, pada pulsa 1,5 ms akan membuat motor berputar sejauh 90° (lebih sering disebut posisi netral). Jika pulsa lebih pendek dari 1,5 ms, maka motor akan berputar lebih dekat ke 0°. Jika lebih panjang dari 1,5 ms, maka akan berputar mendekati 180°. Dari gambar 8.3 di bawah, durasi pulsa menentukan sudut dari batang output. Geared Motor DC Motor Servo (Servomotor)


113 Gambar 8.3 Pengaruh lebar pulsa terhadap sudut servomotor Servomotor biasanya hanya bergerak mencapai sudut tertentu saja dan tidak kontinyu seperti motor DC maupun motor stepper. Walau demikian, untuk beberapa keperluan tertentu, servomotor dapat dimodifikasi agar bergerak kontinyu. Pada robot, servomotor sering digunakan untuk bagian kaki, lengan atau bagian bagian lain yang mempunyai gerakan terbatas dan membutuhkan torsi cukup besar. Servomotor mampu bekerja dua arah (CW dan CCW) dimana arah dan sudut pergerakan rotornya dapat dikendalikan hanya dengan memberikan pengaturan duty cycle sinyal PWM pada bagian pin kontrolnya. Sistem mekanik servomotor tampak pada gambar 8.4 di bawah ini. Gambar 8.4 Sistem mekanik servomotor Lebih lengkapnya dapat digambarkan bahwa sebuah servomotor memiliki : ▪ tiga jalur kabel: power, ground, dan control. ▪ Sinyal kontrol mengendalikan posisi. ▪ Operasional dari servomotor dikendalikan oleh sebuah pulsa. ▪ Konstruksi di dalamnya meliputi internal gear, potensiometer, dan feedback control.


114 Jenis-Jenis servomotor diantaranya adalah: 1) Servomotor standar 180° Servomotor jenis ini hanya mampu bergerak dua arah (CW dan CCW) dengan defleksi masing-masing sudut mencapai 90° sehingga total defleksi sudut dari kanan-tengah-kiri adalah sebesar 180°. 2) Servomotor continuous Servomotor jenis ini mampu bergerak dua arah (CW dan CCW) tanpa batasan defleksi sudut putar (dapat berputar secara kontinyu). Spesifikasi: ▪ Bisa diatur kecepatannya ▪ Terdapat potensio meter dan driver motor Contoh Implementasi dari motor servo yaitu dimanfaatkan pada pembuatan robot, salah satunya sebagai penggerak kaki robot. Motor servo dipilih sebagai penggerak pada kaki robot karena motor servo memiliki tenaga atau torsi yang besar, sehingga dapat menggerakan kaki robot dengan beban yang cukup berat. Pada umumnya motor servo yang digunakan sebagai pengerak pada robot adalah motor servo 1800. Contohnya penggunaan pada robot jemuran otomatis atau pembersih debu otomatis. Motor servo juga diaplikasikan untuk keperluan industri karena memiliki beberapa kelebihan. Kelebihan motor servo: ▪ Daya yang dihasilkan sebanding dengan berat atau ukuran motor ▪ Penggunaan arus listrik sebanding dengan beban ▪ Tidak bergetar saat digunakan ▪ Tidak mengeluarkan suara berisik saat dalam kecepatan tinggi ▪ Resolusi dan akurasi dapat diubah dengan mudah Kekurangan motor servo: ▪ Harga relatif lebih mahal dibanding motor DC lainnya ▪ Bentuknnya cukup besar karena satu paket Gambar 8.5 Motor Servo


115 Pengembangan dari motor servo, atau jenis servo yang lebih pintar. Dimana di dalamnya sudah terdapat kontroler sendiri. Mempunyai sistem feedback yang bisa dipasang pada antar servo, tidak harus langsung pada kontroler. Untuk pembuatan robot humanoid, atau robot yang membutuhkan banyak servo, tapi memiliki pin sedikit adalah pilihan tepat. Spesifikasi smart servo: ▪ Tipe putaran: 0-3000 (endless turn) ▪ Tipe kontrol: Digital ▪ Tegangan kerja: 9VDC - 12VDC ▪ Konsumsi arus: 1,5A (load) ▪ Torsi maksimum: +/- 15 kg•cm (12VDC. 1,5A) ▪ Kecepatan putar maksimum : 59 rpm Fungsi perangkat atau aktuator putar (motor) yang dirancang dengan sistem kontrol umpan balik loop tertutup (servo), sehingga dapat di set-up atau diatur untuk menentukan dan memastikan posisi sudut dari poros output motor. Kelebihan smart servo: ▪ Akurasi tinggi ▪ Motor servo tidak bergetar dan beresonasi saat beroperasi. ▪ Efisiensi tinggi ▪ Rasio Torsi terhadap inersia tinggi ▪ Tidak bising meskipun pada RPM tinggi ▪ Fleksibel ▪ Mudah dikontrol dan diprogram melalui output digital Gambar 8.6 Smart Servo Prinsip kerja motor stepper sama seperti Motor DC, sama-sama menggunakan arus DC. Akan tetapi stepper tidak berputar 3600 dalam satu step, melainkan berputar dalam beberapa step. Untuk berputar 3600, stepper bertahap 450 Smart Servo Motor Stepper


116 dahulu dan lanjut ke 450 begitu seterusnya. Tergantung dari jenis dan spesifikasi motor stepper. Motor Stepper adalah perangkat elektronik yang bekerja dengan mengubah pulsa elektronis menjadi gerakan mekanis diskrit. Motor stepper bergerak berdasarkan urutan pulsa yang diberikan kepada motor. Karena itu, untuk menggerakkannya diperlukan pengendali motor stepper seperti mikrokontroler yang dapat membangkitkan pulsa-pulsa periodik. Motor stepper bekerja berdasarkan pulsa-pulsa yang diberikan pada lilitan fasenya dalam urut-urutan yang tepat. Elemen-elemen berikut menentukan karakteristik suatu motor stepper: 1. Tegangan Motor stepper biasanya mempunyai tegangan nominal. Tegangan yang diberikan kadang-kadang melebihi tegangan nominal untuk mendapatkan torsi yang dibutuhkan. 2. Hambatan. Karakteristik lainnya adalah hambatan per lilitan. Hambatan ini akan menentukan arus yang ditarik oleh motor. 3. Derajat per langkah. Faktor ini menentukan berapa derajat poros akan berputar untuk setiap langkah penuh (full step). Operasi setengah langkah (half step) akan melipat-gandakan jumlah langkah per revolusi, dan mengurangi derajat per langkahnya. Motor stepper merupakan perangkat pengendali yang mengkonversikan bitbit masukan menjadi posisi rotor. Bit-bit tersebut berasal dari terminal-terminal input yang ada pada motor stepper yang menjadi kutub-kutub magnet dalam motor. Bila salah satu terminal diberi sumber tegangan, terminal tersebut akan mengaktifkan kutub di dalam magnet sebagai kutub utara dan kutub yang tidak diberi tegangan sebagai kutub selatan. Dengan terdapatnya dua kutub di dalam motor ini, rotor di dalam motor yang memiliki kutub magnet permanen akan mengarah sesuai dengan kutub-kutub input. Kutub utara rotor akan mengarah ke kutub selatan stator sedangkan kutub selatan rotor akan mengarah ke kutub utara stator. Prinsip kerja motor stepper mirip dengan motor DC, sama-sama menggunakan catu daya dengan tegangan DC untuk memperoleh medan magnet. Bila motor DC memiliki magnet tetap pada stator, motor stepper mempunyai magnet tetap pada rotor. Motor stepper tidak dapat bergerak sendiri secara kontinyu, tetapi bergerak secara diskrit per step sesuai dengan spesifikasinya. Untuk bergerak dari satu step ke step berikutnya diperlukan waktu dan menghasilkan torsi yang besar pada kecepatan rendah. Salah satu karakteristik motor stepper yang penting yaitu adanya torsi penahan, yang memungkinkan motor stepper menahan


117 posisinya yang berguna untuk aplikasi motor stepper dalam yang memerlukan keadaan start dan stop. Berikut adalah beberapa jenis motor stepper: ▪ Motor Stepper Permanent Magnet ▪ Motor Stepper Hybrid ▪ Motor Stepper Variable Reluctance Berikut adalah salah satu contoh spesifikasi motor stepper: ▪ Vsuplai : DC 5V. ▪ Arus : 3A. ▪ Pulse per rotasi : 200 P/R atau 1.8 Deg. ▪ Torsi : 5 Kg.cm. ▪ Wire : 6 wire. ▪ Dimensi body : panjang 7 cm x diameter 5 cm. ▪ Dimensi shaft : panjang 3 cm x diameter 5 mm. ▪ Berat : 800 gram. Stepper motor memungkinkan menahan posisinya. Hal ini sangat berguna untuk aplikasi dimana suatu sistem memerlukan keadaan start dan stop. Stepper Motor mengubah listrik menjadi rotasi dan dikontrol dalam hal seberapa jauh akan memutar dan seberapa cepat. Motor stepper tidak merespon sinyal clock dan mempunyai beberapa lilitan dimana lilitan-lilitan tersebut harus diberikan tegangan dahulu dengan suatu urutan tertentu agar dapat berotasi. Membalik urutan pemberian tegangan tersebut akan menyebabkan putaran motor stepper yang berbalik arah. Gambar 8.7 Motor Stepper Pengembangan dari motor stepper yang ada penambahan gear pada motornya. Gear berfungsi untuk menambah torsi atau tenaga pada motor atau juga bisa menambah kecepatan. Contoh implementasinya adalah Misalkan dalam jam listrik kecil di mana motor sinkron kecil dapat berputar pada 1.200 rpm namun dikurangi menjadi satu rpm untuk menggerakkan jarum detik dan Geared Motor DC


118 lebih jauh berkurang dalam mekanisme jam untuk menggerakkan jarum menit dan jarum jam. Di sini jumlah tenaga penggerak tidak relevan selama cukup untuk mengatasi dampak gesekan dari mekanisme jam. Gambar 8.8 Geared motor stepper Berikut adalah aktuator yang bergerak secara linear: 1. Linear Actuator Sesuai namanya gerakan dari linear actuator adalah jenis motor DC yang bergerak linear atau maju mundur. Gerakan maju mundur tersebut diperoleh dari hasil perpindahan dari roda gigi dengan motor DC rotari. Linear actuator juga memiliki feedback yang dikirimkan ke kontroler, membantu mempermudah pengendalian. Gambar 8.7 Linear Actuator Solenoid adalah salah satu jenis kumparan terbuat dari kabel panjang yang dililitkan secara rapat dan dapat diasumsikan bahwa panjangnya jauh lebih besar daripada diameternya. Solenoida atau Solenoid adalah perangkat elektromagnetik yang dapat mengubah energi listrik menjadi energi gerakan. Energi gerakan yang dihasilkan oleh Solenoid biasanya hanya gerakan mendorong (push) dan menarik (pull). Pada dasarnya, solenoid hanya terdiri dari sebuah kumparan listrik (electrical coil) yang dililitkan di sekitar tabung silinder dengan aktuator ferro-magnetic atau sebuah plunger yang bebas bergerak masuk dan keluar dari bodi kumparan. Terdapat dua jenis yaitu linear solenoid dan rotary solenoid. Solenoid


119 Gambar 8.8 Solenoid Cara kerja solenoid linier adalah ketika arus listrik diberikan ke koil, koil tersebut akan menghasilkan medan magnet, medan magnet tersebut akan menarik plunger yang berada di dalam koil masuk ke pusat koil dan merapatkan atau mengkompreskan pegas yang terdapat di satu ujung plunger tersebut. Gaya dan kecepatan plunger tergantung pada kekuatan fluks magnetik yang dihasilkan oleh koil. Sedangkan solenoid rotary pada saat diberikan arus listrik, medan elektromagnetik menghasilkan kutub-kutub utara dan kutub-kutub selatan yang menolak kutub magnet permanen yang berdekatan sehingga menyebabkannya berputar pada sudut yang ditentukan oleh konstruksi mekanis solenoid rotasi itu sendiri. Solenoid valve pneumatic merupakan katup yang digerakkan oleh energi listrik melalui solenoida, mempunyai kumparan sebagai penggeraknya yang berfungsi untuk menggerakan piston yang dapat digerakan oleh arus AC maupun DC, solenoid valve pneumatic atau katup (valve) solenoid mempunyai lubang keluaran, lubang masukan dan lubang exhaust. Lubang masukan, berfungsi sebagai terminal/ tempat udara bertekanan masuk atau supply (service unit), sedangkan lubang keluaran berfungsi sebagai terminal atau tempat tekanan angin keluar yang dihubungkan ke pneumatic, dan lubang exhaust, berfungsi sebagai saluran untuk mengeluarkan udara bertekanan yang terjebak saat plunger bergerak atau pindah posisi ketika solenoid valve pneumatic bekerja. Gambar 8.9 Solenoid Solenoid sering digunakan di aplikasi-aplikasi seperti menggerakkan dan mengoperasikan mekanisme robotik, membuka dan menutup pintu dengan


120 listrik, membuka dan menutup katup (valve) dan sebagai sakelar listrik. Solenoida yang dapat membuka dan menutup katup biasanya disebut dengan Solenoid Valve (Solenoida Katup). Pneumatik berasal dari bahasa Yunani “pneuma” yang berarti tiupan atau hembusan. Jadi pneumatik berarti terisi udara atau digerakkan oleh udara bertekanan. Definisi pneumatik adalah salah satu cabang ilmu fisika yang mempelajari fenomena udara yang dimampatkan sehingga tekanan yang terjadi akan menghasilkan gaya sebagai penyebab gerak atau aktuasi pada aktuator. Aktuator pneumatik adalah sebuah sistem penggerak yang menggunakan tekanan udara sebagai tenaga penggeraknya. Cara kerja Pneumatik sama saja dengan hidrolik yang membedakannya hanyalah tenaga penggeraknya. Jika pneumatik menggunakan udara sebagai tenaga penggeraknya, dan sedangkan hidrolik menggunakan cairan oli sebagai tenaga penggeraknya. Dalam pneumatik tekanan udara inilah yang berfungsi untuk menggerakkan sebuah silinder kerja. Silinder kerja inilah yang nantinya mengubah tenaga/tekanan udara tersebut menjadi tenaga mekanik (gerakan maju mundur pada silinder). Pneumatic system merupakan salah satu pilihan didalam pengembangan robot untuk industri. Dengan menggunakan energi udara dengan tekanan tertentu, maka diharapkan metode ini dapat menghemat pemakaian listrik. Gambar 8.10 Pneumatik Susunan sistem pneumatik adalah sebagai berikut: 1. Catu daya (energy supply) 2. Elemen masukan (sensors) 3. Elemen pengolah (processors) 4. Elemen kerja (actuators) Salah satu contoh penerapan pada lengan robot dengan penggerak sistem pneumatik adalah gabungan ruas/bilah bersendi yang dapat bergerak oleh dorongan/tarikan udara bertekanan. Sistem pneumatik lebih ramah lingkungan 8.3 Aktuator Pneumatik


121 dan murah dibanding dengan penggerak hidraulik, serta lebih tahan lama, tahan kerusakan akibat peluang kesalahan instalasi, dan lebih rendah konsumsi energi listriknya dibandingkan dengan servo motor. Selain itu, ikatan antara lengan dengan aktuator sistem pneumatik, secara umum dilakukan sedemikian sehingga efisiensi momen gaya/torsi lebih baik dibandingkan servo motor. Sesuai dengan namanya “hidro” yang berarti zat cair, cairan tekanan tinggi disebut hidrolik fluida ditransmisikan seluruh mesin ke berbagai hidrolik motor dan silinder hidrolik. Aktuator hydraulic merupakan jenis aktuator yang mirip dengan pneumatic, hanya saja hidraulic menggunakan fluida atau oil yang dimanfaatkan untuk menghasilkan gerakan mekaniknya. Dan untuk aplikasinya juga pneumatic biasa digunakan untuk pekerjaan berat pada industri. Gambar 8.11 Cylinder hydrolic actuator Piezoelektrik aktuator adalah perangkat yang mempunyai kelebihan dalam akurasi gerakan, respon yang cepat dan gaya yang besar. Perangkat ini banyak diaplikasikan dalam industri mesin yang memerlukan kontrol yang presisi. Aplikasi dalam bidang perlengkapan elektronik seperti digital kamera dan telepon seluler dewasa ini sangat pesat perkembangannya. Gambar 8.12 Tiny picomotor piezo actuators 8.4 Aktuator Hydraulic 8.5 Piezoelektrik Aktuator


122 Relay adalah suatu peranti yang bekerja berdasarkan elektromagnetik untuk menggerakkan sejumlah kontaktor yang tersusun atau sebuah saklar elektronis yang dapat dikendalikan dari rangkaian elektronik lainnya dengan memanfaatkan tenaga listrik sebagai sumber energinya. Gambar 8.13 Relay Relay adalah saklar (switch) yang dioperasikan secara listrik dan merupakan komponen elektromekanikal yang terdiri dari dari bagian utama yakni elektromagnet (coil) dan mekanikal (seperangkat kontak saklar/switch). Coil atau kumparan, merupakan gulungan kawat yang mendapat arus listrik. Relay menggunakan prinsip elektromagnetik untuk menggerakkan kontak saklar sehingga dengan arus listrik yang kecil (low power) dpt menghantarkan listrik yang bertegangan lebih tinggi. Contact atau penghubung, adalah sejenis saklar yang pergerakannya tergantung dari ada tidaknya arus listrik di coil. Contact ada dua jenis yaitu Normally Open (kondisi awal sebelum diaktifkan open), dan Normally Closed (kondisi awal sebelum diaktifkan close). Fungsi dari relay antara lain: a. Mengendalikan sirkuit tegangan tinggi dengan menggunakan bantuan signal tegangan rendah. b. Menjalankan logic function atau fungsi logika. c. Memberikan time delay function atau fungsi penundaan waktu. d. Melindungi motor atau komponen lainnya dari korsleting atau kelebihan tegangan. Berdasarkan penggolongan jumlah pole dan throw-nya sebuah relay, maka relay dapat digolongkan menjadi: 1. Single Pole Single Throw (SPST): relay golongan ini memiliki 4 terminal, 2 terminal untuk saklar dan 2 terminalnya lagi untuk coil. 8.6 Relay


123 2. Single Pole Double Throw (SPDT): relay golongan ini memiliki 5 terminal, 3 terminal untuk saklar dan 2 terminalnya lagi untuk coil. 3. Double Pole Single Throw (DPST): relay golongan ini memiliki 6 terminal, diantaranya 4 terminal yang terdiri dari 2 pasang terminal saklar sedangkan 2 terminal lainnya untuk coil. Relay DPST dapat dijadikan 2 saklar yang dikendalikan oleh 1 coil. 4. Double Pole Double Throw (DPDT): relay golongan ini memiliki terminal sebanyak 8 terminal, diantaranya 6 terminal yang merupakan 2 pasang relay SPDT yang dikendalikan oleh 1 (single) coil, sedangkan 2 terminal lainnya untuk coil. Muscle wire merupakan kawat otot yang biasa digunakan pada tangan robot. Fungsinya adalah menggerakan jari-jari tangan robot. Gambar 8.14 Muscle Wire actuator LCD merupakan salah satu modul elektronika yang dapat menampilkan karakter seperti simbol, huruf dan angka. Banyak proyek mikrokontroler yang menggunakan LCD sebagai media untuk menampilkan hasil dan nilai dari pembacaan sensor. LCD memerlukan suatu driver chip untuk kontrolernya, driver ini sudah dipasang pada bagian belakang LCD. Jenis driver chip yang sering digunakan adalah Hitachi HD44780. Terdapat banyak jenis modul LCD yang dapat digunakan dalam proyek mikrokontroler, salah satunya adalah modul LCD 16x2 (16 kolom 2 baris). Maksud dari 16 kolom 2 baris tersebut adalah LCD ini dapat menampilkan text sebanyak 2 baris dengan panjang 16 karakter. LCD 16x2 bekerja pada tegangan 5 V yang dapat diambil dari pin 5 V Arduino. Di dalam Arduino IDE sudah terdapat library khusus yang dinamakan LiquidCrystal.h agar dapat mempermudah dalam pembuatan program LCD. 8.7 Muscle Wire 8.8 Liquid Crystal Display (LCD)


124 Gambar 1.15 Modul LCD 16x2 Terdapat 16 pin pada LCD 16x2 yang masing-masing memiliki konfigurasi seperti yang terdapat pada tabel 2.2. Tabel 8.1 Konfigurasi pin LCD 16x2 Simbol Value Fungsi VSS GND Sumber tegangan ground VDD +5 V Sumber tegangan 5 V V0 10 KΩ Potensiometer untuk mengatur kontras backlight LCD RS H/L H = data, L = command RW H/L H = read, L = write E - Enable Signal D0 – D3 H/L Jalur untuk transfer data 8 bit D4 – D7 H/L Jalur untuk transfer data 4 dan 8 bit A +5 V Sumber 5 V untuk backlight K GND Sumber ground untuk backlight Berdasarkan konfigurasi tersebut, maka semua pin akan digunakan dalam pemasangan rangkaian LCD kecuali pin D0 – D3. Karena jalur data yang akan digunakan adalah 4 dan 8 bit, sehingga dapat menggunakan pin D4 – D7. Adapun penjelasan untuk pin RS, pin RW dan pin E adalah sebagai berikut: 1. RS (Register Selector), merupakan pin yang digunakan untuk memilih register kontrol dan register data. Register kontrol digunakan untuk konfigurasi LCD, sedangkan register data berfungsi untuk menuliskan data karakter pada LCD. 2. RW (Read/Write), digunakan untuk memilih aliran data mikrokontroler akan membaca data yang ada di LCD atau menuliskan data ke LCD. Jika LCD hanya digunakan untuk menulis/menampilkan data, maka pin ini bisa langsung disambungkan ke pin GND sehingga logika bisa di-set menjadi L (low). 3. E (Enable), digunakan untuk mengaktifkan LCD ketika proses penulisan data ke register kontrol dan register data berlangsung.


125 1. Aktuator merupakan perangkat elektromekanik yang mengubah energi listrik menjadi mekanik (gerakan). 2. Beberapa jenis aktuator berdasarkan kategori tenaganya yaitu aktuator tenaga elektrik, aktuator tenaga hidrolik, aktuator tenaga pneumatik dan aktuator lainnya. 3. Beberapa aktuator yang bergerak berdasarkan rotasi antara lain motor DC, Geared Motor DC, Motor Servo, Smart Servo, Motor Stepper, Geared motor stepper dan lain sebagainya. Sedangkan aktuator yang bergerak secara linier adalah linear actuator dan solenoid. 4. Aktuator pneumatik adalah sebuah sistem penggerak yang menggunakan tekanan udara sebagai tenaga penggeraknya. 5. Piezoelektrik aktuator adalah perangkat yang mempunyai kelebihan dalam akurasi gerakan, respon yang cepat dan gaya yang besar. 6. Relay adalah suatu peranti yang bekerja berdasarkan elektromagnetik untuk menggerakkan sejumlah kontaktor yang tersusun atau sebuah saklar elektronis yang dapat dikendalikan dari rangkaian elektronik lainnya dengan memanfaatkan tenaga listrik sebagai sumber energinya. 7. Muscle wire merupakan kawat otot yang biasa digunakan pada tangan robot. Fungsinya adalah menggerakan jari-jari tangan robot. 8. LCD merupakan salah satu modul elektronika yang dapat menampilkan karakter seperti simbol, huruf dan angka. Banyak proyek mikrokontroler yang menggunakan LCD sebagai media untuk menampilkan hasil dan nilai dari pembacaan sensor. 1. Jelaskan pengertian dan peran penting aktuator pada sistem robotika ! 2. Sebutkan beberapa jenis motor DC dan berikan contoh penerapannya ! 3. Aktuator hidrolik dan aktuator pneumatik banyak diaplikasikan pada industri. Berikan penjelasannya ! 4. Penggunaan relay mempunyai beberapa keuntungan. Sebutkan ! 5. Jelaskan spesifikasi dan fungsi penggunaan LCD ! Rangkuman Latihan


126 ▪ Pendahuluan ▪ Gripper Mekanik ▪ Gripper Ruang Hampa ▪ Gripper Magnetik ▪ Adhesive Gripper ▪ Scoops dan Inflatable devices Setelah mempelajari bab ini, mahasiswa diharapkan mampu: ▪ Menjelaskan fungsi end effector pada robot ▪ Memahami berbagai jenis gripper dan mampu menjelaskan pemanfaatan berbagai macam gripper End effector dapat ditemukan hampir semua aplikasi robot, walaupun keadaannya bukan merupakan komponen dasar dari sistem robot. End effector berfungsi sebagai bagian terakhir yang menghubungkan antara manipulator dengan objek yang akan dijadikan kerja dari robot. Sebagai contoh end effector dapat berupa peralatan las, penyemprot cat ataupun hanya penyempit objek. Gambar 9.1 di bawah adalah contoh end effector pada robot manipulator. Gambar 9.1 Contoh end effector pada robot End effector jika disamakan dengan manusia seperti jari-jari tangan yang dapat digerakkan. Fungsi-fungsi yang dapat dijalankan end effector: ▪ mengambil objek BAB IX. END EFFECTOR PADA ROBOT Pokok Bahasan Tujuan Pembelajaran 9.1 Pendahuluan


127 ▪ mengangkat material ▪ memindahkan objek ▪ membuat sambungan ke mesin lain yang dapat digunakan untuk mengelas, mengecat, menempa, mengisi botol dan lain-lain sesuai dengan kebutuhan. Kerja end effector dapat berupa mekanik, elektrik, pneumatik maupun hidrolik. Efektor ujung (end effector) dapat berupa: 1. penjepit (gripper) untuk memegang benda kerja 2. perkakas untuk melakukan suatu proses. Gripper memainkan peranan penting dalam sistem otomasi karena sebagai penghubung antara benda kerja dengan robot. Banyak gripper didesain untuk menggenggam dan memegang benda kerja. Ada berbagai model gripper, dari gripper yang hanya terdiri dari dua lengan penjepit sampai dengan yang kompleks. Klasifikasi gripper berdasarkan jumlah gripper yang digunakan: ▪ Single Grippers Mempunyai hanya satu gripper yg boleh pegang satu objek pada satu masa ▪ Double/Multiple Grippers Mempunyai lebih dari satu gripper yg boleh pegang lebih dari satu objek pada satu masa Klasifikasi gripper berdasarkan di mana komponen/objek dipegang oleh gripper: ▪ External Gripper Objek dipegang di bagian luar oleh gripper ▪ Internal Gripper Objek dipegang di bagian dalam oleh gripper Beberapa jenis gripper berdasarkan sistem kerjanya: ▪ gripper mekanik (mechanical grippers) ▪ gripper ruang hampa atau mangkok vakum (vacuum cups) ▪ gripper magnetik (magnetic grippers) ▪ adhesive grippers ▪ scoops and inflatable devices


128 Gripper mekanik didesain untuk menggenggam, memegang, menahan, membuka dan menutup objek dengan memberikan kontak pada objek. Biasanya menggunakan finger atau jari mekanik yang disebut jaws. Biasanya mempunyai dua batang jari. Jari ini dapat dilepas dan dipasang sehingga sangat fleksibel pemakaiannya. Sumber tenaga yang diberikan pada gripper ini bisa berupa pneumatik, hidrolik dan elektrik. Gambar 9.2 adalah aplikasi tangan menggunakan gripper mekanik. Gambar 9.2 Aplikasi tangan menggunakan gripper mekanik Gripper ruang hampa atau bisa disebut mangkok vakum atau bisa disebut juga mangkok hisap (suction cups), berfungsi untuk mengangkat dan menahan objek. Objek yang ditangani oleh jenis gripper ini haruslah objek dengan permukaan rata, bersih dan halus/ licin sehingga gripper ini dapat bekerja dengan baik. Gripper ini biasanya diperbuat dari bahan elastik seperti getah atau plastik lembut dan terkadang berbentuk bulat. Gambar 9.3 di bawah ini adalah aplikasi gripper vakum, dan gambar 9.4 adalah contoh sistem vakum. Gambar 9.3 Aplikasi gripper vakum 9.2 Gripper Mekanik 9.3 Gripper Ruang Hampa


129 Gambar 9.4 Aplikasi gripper vacuum cups Keterangan gambar 9.4: 1 : Udara terkompresi 2 : Pembangkit kevakuman 3 : Aliran 4 : Penyaring 5 : Mangkok Gripper jenis ini memiliki dua komponen, yaitu mangkok dan sistem ruang hampa. Mangkok berbatasan dengan objek dan berfungsi untuk menggenggam dan menahan objek. Mangkok terbuat dari karet dan menempel pada mangkok. Sistem vakum menghasilkan hisapan pada mangkok. Sistem vakum dibagi menjadi dua, yaitu pompa vakum dan sistem venture. Pompa vakum menggunakan piston untuk membuat hampa udara. Pompa ini memberikan kehampaan yang tinggi. Berbeda dengan pompa vakum, sistem venture menggunakan sebuah nosel yang dilewati oleh udara, sehingga menimbulkan kevakuman. Kelebihan vacuum cups: ▪ Memerlukan hanya satu permukaan saja untuk dipegang ▪ Tekanan yang dikenakan ke atas objek adalah seimbang dan sama rata ▪ Gripper yang ringan digunakan utk berbagai bahan Gripper magnetik bekerja karena efek bidang magnet, sehingga menimbulkan hisapan atau tarikan pada komponen yang akan digenggam. Gripper ini mengendalikan bahan yang berunsurkan besi. Gripper magnetik dapat dibagi menjadi dua kategori yaitu: 1. gripper elektromagnet a. menggunakan sumber arus atau sumber daya dari luar b. mudah dikontrol 2. gripper magnet permanen/ tetap a. tidak memerlukan sumber luar b. memerlukan mekanisme untuk memisahkan magnet dan objek 9.4 Gripper Magnetik


130 Gripper elektromagnet dan lebih mudah untuk dikontrol dibandingkan mengunakan magnet permanen. Pada jenis gripper ini menggunakan elektromagnet saat menghisap dan melepas komponen yang akan ditangani menggunakan metode on dan off arus yang mengalir pada elektromagnet. Gambar 9.5 berikut adalah aplikasi dari gripper elektromagnet. Gambar 9.5 Aplikasi gripper elektromagnet Keuntungan permanen magnet adalah tidak dibutuhkannya arus tambahan yang berarti akan menghemat energi pada sistem robot. Kelemahan sistem ini adalah kesulitan pada saat pengontrolan. Saat gripper mendekat pada komponen atau objek material lain yang berasal dari besi, kemungkinan tertariknya sangat besar. Permanen magnet sering digunakan pada penanganan material yang berada pada lingkungan berbahaya seperti ledakan. Lingkungan yang mempunyai daya ledak tinggi akan membahayakan arus listrik yang mengalir pada elektromagnet. Gambar 9.6 Sistem kerja gripper menggunakan magnet Gripper elektromagnet memiliki beberapa keuntungan, diataranya adalah sebagai berikut: 1) Ukuran komponen yang bisa bervariasi, dari kecil hingga komponen yang besar. 2) Memerlukan hanya satu permukaan. 3) Mempunyai kemampuan untuk menangani logam yang berlubang. Pada gripper vakum tidak bisa menangani hal tersebut. 4) Dapat menagani beberapa komponen, tergantung dari jumlah gripper yang dipasangkan pada wrist. 5) Waktu yang dibutuhkan untuk mengangkat objek relatif cepat.


131 Kekurangan gripper magnetik: 1) Objek dapat terlepas 2) Meninggalkan unsur magnetik dalam objek Jenis gripper ini digunakan pada pabrik dan bahan-bahan yang ringan. Mempunyai bahan pelekat untuk melakukan pekerjaan memegang objek. Kelebihan dari gripper ini hanya memerlukan satu permukaan objek. Sedangkan kekurangannya adalah bahan pelekat hilang kelekatan setelah beberapa kali digunakan, perlu diganti menggunakan mekanisme riben mesin tape. Perangkat scoops digunakan untuk mengendalikan bahan berbentuk cair dan bubuk (powder). Sedangkan inflatable devices digunakan untuk mengendalikan bahan atau objek yang fragile. Perangkat ini berkonsepkan diafragma yang mengembang berdasarkan objek. 1. End effector berfungsi sebagai bagian terakhir yang menghubungkan antara manipulator dengan objek yang akan dijadikan kerja dari robot. 2. Kerja end effector dapat berupa mekanik, elektrik, pneumatik maupun hidrolik. 3. Gripper mekanik didesain untuk menggenggam, memegang, menahan, membuka dan menutup objek dengan memberikan kontak pada objek. Biasanya menggunakan finger atau jari mekanik yang disebut jaws. 4. Terdapat dua jenis end effector yaitu gripper dan tools 5. Gripper menjalankan tugas memegang dan mengangkat objek. 6. Tools menjalankan tugas berdasarkan fungsi peralatan tersebut. 7. Gripper ruang hampa atau bisa disebut mangkok vakum atau bisa disebut juga mangkok hisap (suction cups), berfungsi untuk mengangkat dan menahan objek. 8. Gripper magnetik bekerja karena efek bidang magnet, sehingga menimbulkan hisapan atau tarikan pada komponen yang akan digenggam. Gripper ini mengendalikan bahan yang berunsurkan besi. 9.5 Adhesive Gripper 9.6 Scoops dan Inflatable devices Rangkuman


132 9. Adhesive gripper digunakan pada pabrik dan bahan-bahan yang ringan. Mempunyai bahan pelekat untuk melakukan pekerjaan memegang objek. 10. Perangkat scoops digunakan untuk mengendalikan bahan berbentuk cair dan bubuk (powder). Sedangkan inflatable devices digunakan untuk mengendalikan bahan atau objek yang fragile. 1. Jelaskan pengertian dan fungsi dari end effector pada robot! 2. Sebutkan fungsi gripper pada end effector! 3. Jelaskan pemilihan jenis gripper yang tepat sesuai dengan objeknya! 4. Gripper apa yang tepat digunakan untuk objek berbentuk cair?. Jelaskan prinsip kerjanya! 5. Sebutkan keuntungan menggunakan gripper elektromagnetik! Latihan


133 ▪ Bahasa Pemrograman pada Robot ▪ Bahasa Pemrograman mikrokontroler AVR ▪ AVR Studio ▪ Arduino Software (IDE) ▪ LabVIEW ▪ Java ▪ Pascal ▪ LISP ▪ C dan C++ ▪ Python ▪ PyRobot, Python untuk Robotika ▪ Aplikasi Program & Simulator Robot ▪ Pembuatan Diagram Alir (Flowchart) Setelah mempelajari bab ini, mahasiswa diharapkan mampu: ▪ Memahami berbagai bahasa pemrograman yang digunakan pada robot. ▪ Mengetahui beberapa simulator robot dan memahami keuntungan dalam penggunaan simulator tersebut. ▪ Memahami simbol-simbol flowchart dan mampu membuat flowchart sederhana Sebagaimana diketahui bahwa robotik memerlukan tiga komponen utama: hardware, software dan brainware. Di dalam pemrograman robotika, ada beberapa jenis bahasa program yang bisa digunakan oleh programmer. Programmer biasanya memilih salah satu bahasa program yang disukai dan mudah dipahami. Dalam hal ini yang berperan penting adalah kemampuan seorang programmer menguasai bahasa mesin yang akan dikompilasi untuk dipasang dalam chip mikrokontroler. BAB X. SOFTWARE PADA ROBOT Pokok Bahasan Tujuan Pembelajaran 10.1 Bahasa Pemrograman pada Robot


134 Di dalam robotika, bahasa program yang biasanya digunakan antara lain: 1) Bahasa Assembler, 2) Pascal, 3) Basic, 4) C dan C++, ini adalah salah satu bahasa utama pengembangan ROS. Sebagian besar API dibuat dengan bahasa ini untuk memastikan kecepatan dan portabilitas dengan sistem operasi linux. Jika menggunakan mikrokontroler, ini juga pilihan utama. 5) Python, ini juga salah satu bahasa yang populer dalam ROS karena lebih "ramah" dibandingkan dengan C/C++ karena sintaksnya yang rapi dan "dynamically typed". 6) LISP, termasuk juga bahasa yang didukung langsung oleh ROS. Katanya bahasa ini memiliki sintaks yang regular, simple, dan sangat minimal. 7) Java, Java merupakan bahasa pemrograman berorientasi pada objek yang mengangkat objek-objek yang ada di dunia nyata dan memiliki fleksibilitas yang bagus sebagai salah satu bahasa pemrograman karena bersifat multiplatform, yang artinya dapat dijalankan pada berbagai platform seperti Linux, Windows, Solaris dan berbagai perangkat mobile tanpa harus mengubah kode yang sudah ada, yang biasa disebut dengan istilah “write once run anywhere”. Hal ini dimungkinkan karena program java bisa berjalan dimana saja selama perangkat tersebut memiliki Java Virtual Machine (JVM) yang akan mengeksekusi program java nantinya. 8) Lua, ROS juga sudah mulai membuat experimental library dalam bahasa Lua. 9) Industrial Robot Language, Biasanya bahasa ini di-develop oleh pabrikan robot, dan tiap pabrikan punya bahasa yang berbeda-beda. Contohnya: ABB mempunyai RAPID programming language. Kuka mempunyai KRL (Kuka Robot Language). 10) Labview. Merupakan produk dari National Instruments yang berupa software pengembangan program aplikasi dan hardware input-output untuk keperluan akusisi dan pengendalian. Bagi yang tertarik dalam dunia robotik, sebaiknya menguasai C/C++ atau python.


135 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 biasanya harus dipahami programmer pemula agar dalam penulisan program tidak terjadi kesalahan (error). Sebelum membuat program hendaknya 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. Pemrograman mikrokontroler AVR (Atmega16) menggunakan beberapa bahasa program seperti bahasa Basic, C atau Assembler. Untuk bahasa basic menggunakan Software Bascom AVR sedang bahasa C dan Assembler menggunakan WinAVR. Program aplikasi yang disusun dalam software setelah dikompilasi akan dihasilkan file dengan ekstensi heksa. File heksa inilah yang akan dituliskan ke memori flash mikrokontroler AVR melalui sebuah alat yang disebut Downloader. Rangkaian Downloader ada yang sederhana dan dapat dibuat sendiri. Alternatif lainnya dapat men-download di internet skema PCB Downloader kemudian mendesainnya sendiri. Gambar 10.1 Pemrograman dengan Bascom AVR Bahasa yang sering digunakan untuk memprogram mikrokontroler adalah bahasa Assembly. Bahasa Assembly adalah bahasa pemrograman tingkat menengah, dimana program yang dibuat lebih mendekati bahasa mesin, sehingga pemanfaatan memori dapat dilakukan secara optimal, namun di sisi lain pemrogramannya menjadi relatif sulit. Karena bahasa yang dipergunakan Bascom, yaitu Basic, adalah bahasa tingkat tinggi, maka pemrograman menggunakan Bascom mudah untuk dipelajari. Sintaksnya tidak banyak berbeda dari bahasa Basic pada umumnya, misalnya do-loop, for-next, whileend, goto, gosub dan sebagainya. Selain itu Bascom dilengkapi dengan fungsifungsi khusus, misalnya LCD untuk menampilkan karakter pada LCD, PRINT 10.2 Bahasa Pemrograman mikrokontroler AVR


136 untuk mengirimkan karakter ke PC melalui kabel RS232, SHIFTIN dan SHIFTOUT untuk komunikasi serial sinkron dan lain sebagainya. Fungsi-fungsi khusus tersebut jika dituliskan dalam bahasa Assembly akan menjadi lebih panjang dan rumit, terutama karena harus mengetahui berbagai register yang ada pada mikrokontroler. AVR Studio merupakan software yang digunakan untuk memprogram mikrokontroler produksi AVR Atmel. Dengan menggunakan bahasa pemrograman C yang umumnya mudah dimengerti. AVR Studio tidak berdiri sendiri dalam penggunaanya, AVR studio membutuhkan software WinAVR sebagai Compiller-nya. Jadi juga disertakan software winAVR di setiap software AVR Studio. Library Standard dan Tambahan Dalam bahasa C, dapat dilihat setiap awal kode program pasti ada kode seperti di bawah ini. #include <belajarfilelibrary.h> Hal ini maksudnya adalah kode khusus program yang akan digunakan harus memiliki fungsi yang sudah didefinisikan sebelumnya. Dan pendefinisian itu sudah dimasukkan dalam belajarfilelibrary.h tersebut. Dalam AVR Studio juga sudah disediakan library yang sudah mendefinisikan fungsi-fungsi microcontroler, yaitu: #include <avr / io.h> Dimana di dalam library ini juga sudah dikaitkan dengan library standard yang lain yang dibutuhkan oleh Compiler. Sehingga tidak perlu lagi memanggil setiap library standard tersebut. Selain library standard juga terdapat library tambahan, library tambahan merupakan library yang dibuat sendiri. Hal ini bertujuan untuk mempermudah dalam pembagian penulisan dan membuat penulisan kode program menjadi lebih mudah dipahami. Contoh penulisan library tambahan: #include “belajarfilelibrary1.h” Maksud dari tanda petik ini menunjukkan bahwa file yang dijadikan library berada dalam satu folder dengan file kode program utama. 10.3 AVR Studio


137 Fungsi “Mostly Used” Fungsi Mostly Used ialah fungsi yang paling sering digunakan. Dalam pemrograman mikrokontroler untuk aplikasi robotika, fungsi-fungsi yang paling sering digunakan adalah: if else . Penulisannya: If (sebab) {akibat;} Else {akibat3;} Maksud dari fungsi ini ialah jika input memberikan sebab dengan bernilai benar maka akan menghasilkan akibat sebagai data keluaran dan jika sebab bernilai salah maka akibat3 sebagai Output. Penulisan beberapa fungsi if-else: if (sebab) {akibat;} else if (sebab2) {akibat2;} else {akibat3;} Maksud dari fungsi ini ialah jika input memberikan kondisi dengan bernilai benar maka akan menghasilkan akibat sebagai data keluaran dan jika kondisi bernilai salah maka akan memeriksa sebab2, jika sebab2 bernilai benar maka akan menghasilkan akibat2 sebagai output namun jika semua kondisi salah maka akibat3 sebagai output. while (1) Maksud dari fungsi ini ialah pengulangan (loop) tanpa batas. Jadi program akan melakukan perulangan selama mikrokontroler masih memiliki daya untuk terus mengeksekusi intruksi program. while (kondisi) penulisannya: while (kondisi=True) {Akibat;} Maksud dari fungsi ini ialah program akan melakukan pengulangan selama kondisi bernilai benar. Dan jika kondisi salah maka program akan keluar dari looping dan mengeksekusi baris selanjutnya. Beda PIN, PORT, DDR PIN ialah setiap kaki yang ada pada sebuah mikro, sebagai contoh PINA1 (dapat ditulis PA1) ialah kaki yang terdapat dalam PORTA dan kaki ke 1.


138 PORT ialah bagian bagian berupa huruf yang ada pada sebuah mikrokontroler sebagai contoh PORTA, PORTB, PORTC, PORTD. Jika diubah dengan menyebutkan kaki pada PORTA (contoh : PORTA1 ) ini sama dengan PINA1. DDR (Data Direct Register) ialah bagian yang menentukan PIN tersebut sebagai masukan (input) atau sebagai keluaran (output). Keluaran bernilai 1 Masukan bernilai 0 Sebagai contoh jika ingin membuat PINA0 sebgai masukan dan PINB1, PINB2 dst sebagai keluaran maka dapat ditulis int main(void) { DDRB = 0b11111110; . . . . . . . . } Timer Counter Timer Counter ialah fasilitas yang terdapat dalam mikrokontroler yang berfungsi sebagai waktu, sehingga dapat menggunakan mikro untuk menghitung delay (waktu tunda) atau bahkan membuat jam digital dengan menggunakan mikrokntroler ini. Contoh penggunaan timer sederhana: #include <avr/io.h> #include <util/delay.h> int main(void) { . . . . . . _delay_ms(1000); //1000 milisecond. . . . . . . _delay_us(1000); //1000 mikrosecond . . . . . . } Ponyprog “Program Downloader” Ponyprog ialah suatu software yang digunakan untuk men-download program hasil compile oleh Avrstudio ke dalam mikrokontroler. Langkah-langkah penggunaan Ponyprog:


139 1. menentukan tipe mikrokontroler. 2. memastikan bahwa kabel downloader telah terhubung dengan baik. 3. membuka (open) *.Hex(Hexadesimal) atau *.eep(eeprom File) yang merupakan file hasil compile AVR studio. 4. Klik Write Flash dan masukkan program yang sudah dibuat ke dalam mikrokontroler. Software Ponyprog merupakan software yang dapat didownload secara gratis dari internet. Ponyprog ini digunakan jika menggunakan downloader paralel DB25 atau serial DB9. Pengertian Arduino Software (IDE) IDE itu merupakan kependekan dari Integrated Development Environment, atau secara bahasa mudahnya merupakan lingkungan terintegrasi yang digunakan untuk melakukan pengembangan. Disebut sebagai lingkungan karena melalui software inilah Arduino dilakukan pemrograman untuk melakukan fungsi-fungsi yang dibenamkan melalui sintaks pemrograman. Arduino menggunakan bahasa pemrograman sendiri yang menyerupai bahasa C. Bahasa pemrograman Arduino (Sketch) sudah dilakukan perubahan untuk memudahkan pemula dalam melakukan pemrograman dari bahasa aslinya. Sebelum dijual ke pasaran, IC mikrokontroler Arduino telah ditanamkan suatu program bernama Bootlader yang berfungsi sebagai penengah antara compiler Arduino dengan mikrokontroler. Arduino IDE dibuat dari bahasa pemrograman JAVA. Arduino IDE juga dilengkapi dengan library C/C++ yang biasa disebut wiring yang membuat operasi input dan output menjadi lebih mudah. Arduino IDE ini dikembangkan dari software processing yang dirombak menjadi Arduino IDE khusus untuk pemrograman dengan Arduino. Menulis Sketch Program yang ditulis dengan menggunaan Arduino Software (IDE) disebut sebagai sketch. Sketch ditulis dalam suatu editor teks dan disimpan dalam file dengan ekstensi .ino. Teks editor pada Arduino Software memiliki fitur seperti cutting/paste dan searching/replacing sehingga memudahkan dalam menulis kode program. Pada Software Arduino IDE, terdapat semacam message box berwarna hitam yang berfungsi menampilkan status, seperti pesan error, compile, dan upload program. Di bagian bawah paling kanan, menunjukkan board yang terkonfigurasi beserta COM Ports yang digunakan. 10.4 Arduino Software (IDE)


140 Gambar 10.2 Tampilan dari Software Arduino IDE Berkas (File): 1. New berfungsi untuk membuat membuat sketch baru dengan bare minimum yang terdiri void setup() dan void loop(). 2. Open Berfungsi untuk membuka sketch yang pernah dibuat dan membuka kembali untuk dilakukan editing atau upload ulang ke Arduino. Open Recent, merupakan menu yang berfungsi mempersingkat waktu pembukaan file atau sketch yang baru-baru ini sudah dibuat. 3. Save Berfungsi untuk menyimpan sketch yang telah dibuat atau perubahan yang dilakukan pada sketch. 4. Save as… berfungsi menyimpan sketch yang sedang dikerjakan atau sketch yang sudah disimpan dengan nama yang berbeda. 5. Example berisi contoh-contoh pemrograman yang disediakan pengembang Arduino, sehingga dapat dipelajari program-program dari contoh yang diberikan. 6. Close berfungsi menutup jendela Arduino IDE dan menghentikan aplikasi. 7. Page Setup berfungsi mengatur tampilan page pada proses pencetakan. 8. Print berfungsi mengirimkan file sketch ke mesin cetak untuk dicetak. 9. Preferences


141 merubah tampilan interface IDE Arduino. 10. Quit berfungsi menutup semua jendela Arduino IDE. Sketch yang masih terbuka pada saat tombol Quit ditekan, secara otomatis akan terbuka pada saat Arduino IDE dijalankan. Sunting (Edit): 1. Undo/Redo berfungsi untuk mengembalikan perubahan yang sudah dilakukan pada Sketch beberapa langkah mundur dengan Undo atau maju dengan Redo. 2. Cut berfungsi untuk me-remove teks yang terpilih pada editor dan menempatkan teks tersebut pada clipboard. 3. Copy berfungsi menduplikasi teks yang terpilih ke dalam editor dan menempatkan teks tersebut pada clipboard. 4. Copy for Forum berfungsi melakukan copy kode dari editor dan melakukan formating agar sesuai untuk ditampilkan dalam forum, sehingga kode tersebut bisa digunakan sebagai bahan diskusi dalam forum. 5. Copy as HTML berfungsi menduplikasi teks yang terpilih ke dalam editor dan menempatkan teks tersebut pada clipboard dalam bentuk atau format HTML. Biasanya ini digunakan agar code dapat di-embeded-kan pada halaman web. 6. Paste berfungsi menyalin data yang terdapat pada clipboard, ke dalam editor. 7. Select All berfungsi untk melakukan pemilihan teks atau kode dalam halaman editor. 8. Comment/Uncomment berfungsi memberikan atau menghilangkan tanda // pada kode atau teks, dimana tanda tersebut menjadikan suatu baris kode sebagai komen dan tidak disertakan pada tahap kompilasi. 9. Increase/Decrease Indent berfungi untuk mengurangi atau menambahkan indetntasi pada baris kode tertentu. Indentasi adalah “tab”. 10. Find berfungsi memanggil jendela window find and replace, dimana dapat menggunakannya untuk menemukan variabel atau kata tertentu dalam program atau menemukan serta menggantikan kata tersebut dengan kata lain.


142 11. Find Next berfungsi menemukan kata setelahnya dari kata pertama yang berhasil ditemukan. 12. Find Previous berfungsi menemukan kata sebelumnya dari kata pertama yang berhasil ditemukan. Sketch: 1. Verify/Compile berfungsi untuk mengecek apakah sketch yang dibuat ada kekeliruan dari segi sintaks atau tidak. Jika tidak ada kesalahan, maka sintaks yang dibuat akan di-compile ke dalam bahasa mesin. 2. Upload berfungsi mengirimkan program yang sudah dikompilasi ke Arduino Board. 3. Upload Using Programmer menu ini berfungsi untuk menuliskan bootloader ke dalam IC Mikrokontroler Arduino. Pada kasus ini dibutuhkan perangkat tambahan seperti USBAsp untuk menjembatani penulisan program bootloader ke IC Mikrokontroler. 4. Export Compiled Binary berfungsi untuk menyimpan file dengan ekstensi .hex, dimana file ini dapat disimpan sebagai arsip untuk di upload ke board lain menggunakan tools yang berbeda. 5. Show Sketch Folder berfungsi membuka folder sketch yang saat ini dikerjakan. 6. Include Library berfungsi menambahkan library/pustaka ke dalam sketch yang dibuat dengan menyertakan sintaks #include di awal kode. Selain itu bisa menambahkan library eksternal dari file .zip kedalam Arduino IDE. 7. Add File… berfungsi untuk menambahkan file ke dalam sketch arduino (file akan di-copy-kan dari drive asal). File akan muncul sebagai tab baru dalam jendela sketch. Tools: 1. Auto Format berfungsi melakukan pengaturan format kode pada jendela editor. 2. Archive Sketch berfungsi menyimpan sketch ke dalam file .zip. 3. Fix Encoding & Reload berfungsi memperbaiki kemungkinan perbedaan antara pengkodean peta karakter editor dan peta karakter sistem operasi yang lain. 4. Serial Monitor


Click to View FlipBook Version