You are on page 1of 14

PEMROGRAMAN ROBOT

1. Karakteristik level bahasa pemrograman robot


2. Karakreristik level Tugas dalam pemrograman.
3. Petunjuk Pengembangan program kendali robot
4. Flowchart dalam pemrograman robot

Kendali :
1. Loop tertutup
2. Loop terbuka

Mekanisme Servo :
1. Servo Posisi
2. Servo kecepatan

Jenis kendali dengan umpan balik :


1. On-off / Bang-bang
2. Proporsional
3. Integral
4. Derivatif
5. Kombinasi

Kendali :
1. Non servo
a. Ciri : Hardware stop dan end stop
b. Keuntungan : Pengulangan tinggi, kecepatan operasi tinggi, biaya rendah.
2. Servo
a. Ciri : gerakan halus (smooth) dan software stop
b. Keuntungan : dapat menyimpan banyak program, tidak dapat melakukan
pengulangan secara akurat (harus menambahkan sensor internal)
c. Macam : Servo titik ke titik (point to point servo), servo jalur
berkesinambungan
3. Kendali adaptif
4. Pemrograman offline

Manipulator berbasis komputer :


• Jenis :
1. Kinematik
2. Dinamik
3. Kendali
4. Perencanaan jalur gerakan (Trajectory)
5. Sensing
6. Vision

1
• Bentuk : Algoritma yang di-embedded pada modul software kendali.
• Masalah : Waktu yang ibutuhkan untuk komunikasi yang efisisen antara user dan
robot.

3 Metode Komunikasi :
1. Pengenalan suara diskrit (Discrete word recognition)
• Defenisi : Metode paling primitif dan tergantung pada speaker. Sistem
dapat mengenali set kata-kata diskrit dari sekumpulan kata-kata yang
terbatas (hanya kata-kata yang banyak digunakan untuk pengendalian saja,
misal : Mulai, Stop, Pause
• Kelebihan : robot dapat mengenali kata-kata diskrit secara realtime
asalkan komputernya cepat dan algoritma prosesnya efisien.
• Kekurangan : perlu memori besar dan penyimpanan eksternal untuk
menyimpan data kata-kata, dan perlu periode pelatihan untuk membangun
template kata-kata yang mudah dikenali robot.
2. Ajari dan Ulangi (Teach dan Playback)
• Defenisi : Metode menuntun (guide), dengan mengajarkan robot gerakan-
gerakan yang user inginkan agar robot bisa menjalankannya. Banyak
digunakan pada masa ini.
• Langkah-langkahnya :
• Mode Teach Æ mengajarkan robot dalam gerak lambat ,
menggunakan kendali manual untuk semua tugas assembly sambil
merekam sudut join robot.
1) Menggunakan joystick : Mengeset tombol (1 untuk setiap
join)
2) Menggunakan sistem manipulator master-slave : Merekam
posisi sudut manipulator dari set poin jalur gerak
manipulator
3) Menggunakan metode numerik agar lebih halus (smooth)
gerakannya.
• Mode edit-playback Æ mengedit dan mengulangi kembali
gerakan-gerakan tersebut
• Mode run Æ jika gerakan sudah benar, robot dijalankan dengan
kecepatan yang inginkan dalam metode pengulangan.
3. Bahasa Pemrograman Level tinggi
1) Aksi pertama robot dengan teknik ini Æ robot las dan cat menggunakan
guide (Engelderger, 1980)
2) Untuk robot yang berinteraksi dengan lingkungan menggunakan feedback
dari sensor Æ metode kondisi dalam pemrograman.
3) Pertimbangan umum kendali robot dengan bahasa pemrograman :
• Obyek yang dapat dimanipulasi robot dalam 3dimensi yang
memiliki variasi sifat fisik.
• Robot dioperasikan alam lingkungan spasial yang kompleks.
• Robot harus mendeskripsikan dan merepresentasikan obyek
3dimensi.

2
• Informasi sensor harus terus dimonitor, imanipulasi dan harus
berguna.
4) Pendekatan Pemrograman robot :

Pemrograman berorientasi pada Robot


1) Tugas assembly dideskripsikan sebagai urutan gerak robot
2) Robot dituntun dan dikendalikan oleh program dengan semua
statement yang berhubungan dengan suatu aksi robot.
3) Langkah membuat program h452
4) Karakteristik :
• Area kerja (workspace) di set-up dan komponen (part)
diletakkan dalam tempat yang tetap (fixture) atau berjalan
dengan teratur (feeder).
• Mengenali spesifikasi posisi Æ Lokasi (berdasarkan
orientasi dan posisi) komponen dan semua fitur yang ada
didefinisikan menggunakan struktur data yang ada pada
bahasa pemrograman.
• Membuat spesifikasi gerakan Æ Tugas assembly dibagi-
bagi dalam urutan aksi seperti memulai gerakan robot,
mengambil obyek, lalu persiapan memasukkan obyek.
• Kendali sensor dan aliran (flow) Æ perintah sensor
ditambahkan untuk mendeteksi situasi tidak normal (seperti
kegagalan dalam mengenali lokasi obyek ketika
mengambil) dan memonitor proses tugas assembly.
• Program di-debug dan mengulangi langkah 2-4.
5) Contoh Bahasa :
• AL (Mustawa, 1982) h453
• AML (Taylor, 1983) h453
6) Contoh syntax pemrograman :
• Defenisi basis frame AL & AML h454
• Spesifikasi posisi h456
• Spesifikasi gerakan h457
• Kendali sensor dan flow
1. Sensor posisi
2. Sensor tekan (force) dan deteksi slip page antara
tangan dan obyek (tactile)
3. Vision Æ estimasi posisi

Pemrograman berorientasi pada obyek atau tugas


1) Tugas assembly dideskripsikan sebagai urutan posisi akhir (tujuan)
dari obyek, bukan berdasarkan gerakan robot.
2) Memungkinkan user untuk mendeskripsikan tugas pada bahasa tingkat
tinggi.
3) Prinsip : Otomatisasi pembuatan program pada kecerdasan buatan,
yaitu user akan memberikan input dan output, program akan membuat
sendiri aksinya berdasarkan perilaku I/O-nya yang diberikan tersebut.

3
4) Arsitektur Task Planner h464

Spesifikasi Perencanaan Tugas


(Task Planner) DB Model
tugas

Robot Level Program


(Program sintetis)

FISCHERTECHNIK ROBOT

Untuk mengontrol model Fischertechnik melalui komputer, kita membutuhkan


sebuah software controller yang memadai dan sebuah interface yang menghubungkan
antara PC dengan model yang dibuat. Interface tersebut menterjemahkan perintah dari
software. Jadi, motor dapat kita nyalakan dan sinyal dari sensor dapat diproses.
Interface dilengkapi oleh empat output digital yang dapat di hubungkan dengan
motor, lampu dan electromagnet. Serta delapan input digital dan dua input analog yang
bisa dihubungkan ke sensor seperti switch, phototransistor serta NTC.
Interface dari fischertechnik mempunyai mikoroprosesor sendiri. Dihubungkan ke
PC melalui koneksi port serial. Program yang dibuat di PC dapat eksport ke
mikroprosesor pada interface, dimana program tersebut dapat diproses tanpa bantuan PC
(disebut juga Mode Aktif). Pada mode ini tidak ada kabel ke PC yang membatasi
pergerakkan dari Mobile Robot. Tetapi ketika model robot yang digunakan bukan tipe
Mobile Robot maka model tetap terhubung ke PC dan semua perangkat input/output
serta variable nilai berada dibawah kendali PC (disebut juga Mode Pasif).

4
1.KONEKSI

1. Power Supply
Power diperoleh dari adaptor fischertechnik (9V / 1000mA)

2. Interface Serial
Koneksi ke PC melalui port serial RS 232 dengan sebuah pin konektor SubD9.
Kabel interface dihubungkan ke PC melalui port COM1 atau COM2.

3. Deskripsi Fungsional
• Diagram Sirkuit

5
• Mikroprosesor
Mikroprosesor adalah unit pengendali pusat dari interface. Mikroprosesor
membawa perintah-perintah yang disimpan di RAM dan di EPROM.
Proses ini mempunyai dua mode yaitu Mode Aktif dan Mode Pasif.

• EPROM (64 KB fixed value memory)


Berisi software operasi untuk mikroprosesor. Program ini sudah di
patenkan maka tidak dapat lagi dimodifikasi. Semua data yang disimpan
di EPROM akan tetap ada meskipun aliran listrik diputus.

• RAM (32 KB program memory)


Menyimpan program aplikasi yang akan dikeluarkan ke interface pada
Mode Aktif. Jika aliran listrik diputus maka semua data pada RAM akan
hilang, dan harus diisi ulang kembali.

• Input Shift Register


Semua input digital secara berkelanjutan dibaca dan disimpan (proses
pararel). Shift Register digunakan untuk menterjemahkan nilai yang
dikeluarkan menjadi data serial yang kemudian dilanjutkan menuju
mikroprosesor.

• Output Shift Register


Mikroprosesor mentransmisikan data serial berisikan informasi yang
menjelaskan output digital mana yang akan aktif. Shift Register digunakan
untuk menyalurkan data ke output digital yang sesuai, untuk menyimpan
data dan untuk mengeluarkan data secara paralel.

6
2.Function Block pada LLWin 3.0

1. Output

Berfungsi menyalakan salah satu dari input M1 – M4 pada interface. Motor,


lampu atau electromagnet dapat dikoneksikan ke sebuah output pada interface.
Ketika kita memasukkan blok output, kita dapat memilih antara ketiga jenis ini
pada field “Type”. Gambar dari tipe yang dipilih akan muncul pada blok. Kita
juga dapat mengeset status dari output yang diinginkan:
• Motor : CCW, CW dan Off
• Electromagnet : On dan Off
• Lampu : On dan Off

2. Input

Function blok input berfungsi meng-query kondisi dari digital input E1 –


E8 pada interface. Sebuah digital input hanya bias memiliki dua buah kondisi
yaitu 0 dan 1.
Kondisi pada interface :
• Tombol : Ditekan – Tidak ditekan
• Phototransistor : Gelap – Terang
• Reed Contact (sensor magnetic) : Switch – Not Switch

7
Kita dapat memilih salah satu dari sensor di atas ketika kita memasukkan
function blok pada kotak dialog. Gambar sensor akan muncul pada blok.
Tergantung pada kondisi (0 atau 1) dari input, flowchart dapat bercabang ke
kanan atau terus kebawah. Kita dapat memilih dalam kotak dialog apakah cabang
ke kanan ketika kondisi 1 atau 0

3. Edge

Berfungsi untuk menunggu sampai digital input ter-switch baik dari 0 ke1
atau sebaliknya 1 ke 0. kita dapat men- set kotak dialog dari blok ini pada edge
mana (1-0 atau 0-1) program harus menunggu input digital.

4. Position

Berfungsi untuk menghitung impuls dari input digital sampai hasil yang
diinginkan tercapai. Setiap edge dari input dihitung, contoh jika sebuah tombol
ditekan lalu dilepas maka terhitung dua impuls. Nilai yang sekarang disimpan di
variable counter. Jika kita mengaktifkan icon “Use Standard Counter” pada dialog
box, maka counter Z1 – E16 secara otomatis ditujukan pada input digital E1 –
E16. Kemudian kita tidak perlu memikirkan tentang variable mana yang harus
digunakan untuk nomer prosedur ini atau mungkin saja variable ini sudah dipakai
oleh yang lain.

5. Start

Untuk menandakan flowchart pertama kali. Jika blok ini tidak ada maka
flowchart tidak dapat diproses. Jika suatu project memiliki beberapa flowchart,
maka setiap flowchart harus memiliki blok start.

8
6. End

Jika suatu flowchart harus berakhir, maka kita harus mengkoneksikan


output dari blok terakhir ke blok End ini.

7. Reset

Berfungsi mereset semua alur dari suatu project agar segera berjalan jika
kondisi pada dialog box ini terpenuhi. Blok Reset diletakkan pada program tanpa
garis koneksi ke blok yang lain. Dalam setiap project hanya diperbolehkan satu
blok reset.

8. Emergency Stop

Blok ini berfungsi menghentikan semua output pada interface. Blok


Emergency Stop diletakkan pada program tanpa garis koneksi ke blok yang lain.
Dalam setiap project hanya diperbolehkan satu blok Emergency Stop.

9. Terminal

Berfungsi untuk menyediakan display dan untuk memasukkan nilai


tertentu saat program sedang berjalan. Juga ditempatkan pada program tanpa garis
koneksi. Pada blok ini terdapat output M1 – M8 di bagian atas blok. Dan juga

9
berfungsi menampilkan arah dari pergerakkan motor yang terhubung pada
interface.

Dua buah display berfungsi menampilkan nilai dari variable, input analog
parameter EA – ED dan nomer. Sebuah blok display harus dimasukkan dalam
flowchart agar nilai bisa ditampilkan disini.
Parameter EA – ED merupakan tempat untuk mengisi nilai dimana
nilainya dapat diubah walaupun ketika program sedang berjalan (tentu saja tidak
bisa pada saat Mode Aktif).
Di sini juga terdapat tombol STOP dan RESET yang dapat diaktifkan
dengan meng-klik icon tersebut.
Terminal juga memiliki 10 input digital E17 – E26 dimana
pengoperasiannya dengan cara meng-klik icon tersebut. Input E17 – E21 didesain
sebagai switch dan akan tetap tertekan sampai kita melepasnya. E21 – E26
didesain sebagai tombol dimana tombol tersebut akan langsung terlepas segera
setelah ditekan tidak perlu menunggu kita melepas klik pada mouse.

10. Display

Blok ini berfungsi untuk menampilkan nilai, variable atau input EX – EY


atau EA – ED pada salah satu dari display yg ada pada Terminal.

10
11. Message

Berfungsi menampilkan text pada Terminal dengan panjang maximal 17


karakter.

12. Show Values

Blok ini berfungsi menampilkan nilai dari variable pada saat program
berada pada mode online. Blok ini ditempatkan pada program tanpa garis koneksi
dengan blok lain. Selain nilai variable, nilai digital dan analog serta nilai pada EA
– ED juga dapat ditampilkan disini.

13. Variable +/-1

Berfungsi untuk menambah atau mengurangi nilai suatu variable dengan


satu. Kita memasukkan variable yg ingin kita tambah atau kurangi pada field
dialog.

11
14. Assignment

Suatu nilai tertentu dapat dipasangkan dengan variable VAR1 – VAR99


atau counter Z1 – Z16 dengan menggunakan blok ini. Semua operasi matematika
dapat digunakan disini. Sama halnya dengan parentheses.

15. Compare

Berfungsi membandingkan suatu kondisi tertentu. Tergantung bagaimana


kondisi terpenuhi, flowchart dapat bercabang ke kanan atau ke bawah. Kita dapat
mengatur pada dialog box apakah percabangan ke kanan berkondisi 1 atau 0.
panjang maksimum dari suatu formula adalah 40 karakter. Jika kita memasukkan
suatu ekspresi dalam sebuah formula dimana secara matematis ekspresi tersebut
tidak benar atau tidak diizinkan, sebuah pesan error akan ditampilkan segera
setelah menekan tombol Ok.

16. Beep

Berfungsi mengeluarkan nada sinyal melalui PC speaker. Level suara dan


lamanya dapat di-set pada dialog box. Level suara dapat dimasukkan sebagai

12
frekuensi (50 – 10.000 Hz) atau sebagai not balok (c-d dalam 5 oktaf ). Lamanya
suara yang dapat dimainkan dalam 0 – 5 detik.

17. Wait

Berfungsi untuk memberikan delay pada flowchart. Delay akan mulai


setelah alur flowchart mencapai blok ini. Delay yang kita inginkan kita masukkan
dalam hitungan detik, dimana maksimumnya adalah 999,99 detik. Kita juga dapat
memilih tipe delaynya antara “define” dan “random”. Jika kita memilih “define”
maka delaynya akan sama persis dengan yang kita input.dan jika kita memilih
“random” delaynya akan acak tetapi tidak akan melebihi nilai yang telah kita
input.

13
18. Text

Text yang dimasukkan di sini dapat ditempatkan sebagai komentar di


berbagai tempat di lembar kerja, contohnya sebagai dokumentasi program.

19. SubIn, SubOut

Kedua blok ini hanya terlihat pada toolbox ketika kita mengedit sub-
program. Keduanya berfungsi untuk mengkoneksikan program utama dengan
awal sub-program (SubIn) atau akhir Sub-program dengan program utama
(SbOut). Setelah kita memasukkan SubIn dan SubOut blok pada sub-program
keduanya juga harus dimasukkan sebagai lingkaran pada frame dari icon sub-
program dimana untuk memasukkannya kita harus memilih pada toolbar
Subprogram – Design. Garis koneksi hanya dapat digambar antara flowchart
program utama dengan icon sub-program setelah hal di atas dilakukan.

14

You might also like