Endra Pitowarno © 2007
Sistem Kontrol Manual dan Otomatis Robot
Endra Pitowarno PENS ©2007
Endra Pitowarno © 2007
Low-level & High Level Control
Sensor Internal: sensor posisi, sensor kecepatan, dan sensor percepatan,
Sensor Eksternal: sensor taktil (tactile), berbasis sentuhan: misalnya limit switch pada bemper robot, sensor force dan sensor torsi (torque sensor), sensor proksimiti, sensor jarak (sonar, PSD, dll), sensor vision (kamera), gyro, kompas digital, detektor api, dan sebagainya.
Endra Pitowarno © 2007
Low-level & High Level Control Low-level Control Perintah Gerak
Aktuator
Kontroler Sensor Internal
Sensor Eksternal High-level Control
Lingkungan Robot
Endra Pitowarno © 2007
Kontrol Posisi Referensi posisi yg selalu berubah
Posisi aktual tiap derajat aktuator Low-level Control
Perintah Gerak
Aktuator
Kontroler Sensor Internal
Sensor Eksternal High-level Control
Lingkungan Robot
Endra Pitowarno © 2007
Kontrol Posisi Referensi posisi yg selalu berubah
Posisi aktual tiap derajat aktuator Low-level Control
Algoritma program (ex: IF-THENELSE)
Kontroler PID + Aktuator
Kontroler Sensor posisi (rotary encoder)
Proximity sensor (ex: line sensor)
High-level Control
Lingkungan Robot
Endra Pitowarno © 2007
Kontrol Posisi & Kecepatan Referensi posisi & kecepatan yg selalu berubah
Posisi & kecepatan aktual tiap derajat aktuator
Low-level Control Perintah Gerak (posisi) & Kecepatan
Kontroler PID
Aktuator
Kontroler Sensor Internal (posisi & kecepatan)
Sensor Eksternal High-level Control
Lingkungan Robot
Endra Pitowarno © 2007
Kontrol ON/OFF
Endra Pitowarno © 2007
Kontrol ON/OFF
Endra Pitowarno © 2007
Driver Kontrol ON/OFF
Endra Pitowarno © 2007
Rangkaian Sistem Kontrol ON/OFF
Endra Pitowarno © 2007
Program Kontrol ON/OFF: PIC16F87 // Nama Program : RR_16F84A1.c Author: epit - Date : 2002/04/24 #pragma PROC_CODE_WORD_VAL 0x3ff2 #pragma PROC_ID_VAL 0x01 0x02 0x03 0x04 #pragma PCLATH_LOC 0xa #include "16F84.h" # define TRUE 1 # define FALSE 0 // Definisi alamat I/O Port A & B int porta @ 0x5; int portb @ 0x6; int trisa @ 0x85; int trisb @ 0x86; int dataIN; int count;
Endra Pitowarno © 2007
Program Kontrol ON/OFF: PIC16F87 pause(t) long t; { unsigned int d; while( t ) { for(d = 0 ; d < 255 ; d++ ); t--; } } // end pause main() { trisa = 0; trisb = 0; start_position(); pause(10); run(); for(;;){portb = 0x00;} }
Endra Pitowarno © 2007
Program Kontrol ON/OFF: PIC16F87 void start_position() { portb = 0xcf; for(;;) { dataIN = porta & 0x03; if (dataIN != 0x03) return; } } void run() { count = 0; for(;;) { dataIN = porta & 0x80; // cek untuk bumper limit swtich if (dataIN == 0x00) {portb = 0x00; pause(100); return;} dataIN = porta & 0x83; // cek untuk x-----xxB Port A if (dataIN == 0x80) portb = 0x00; if (dataIN == 0x81) portb = 0x02; if (dataIN == 0x82) portb = 0x01; if (dataIN == 0x83) portb = 0x03; } }
Endra Pitowarno © 2007
Kontrol Linier: Kecepatan (kontrol Proportional)
Endra Pitowarno © 2007
Kontrol Linier: Kecepatan (kontrol Proportional-Integral)
Endra Pitowarno © 2007
Kontrol Linier: Kecepatan (kontrol Proportional-Integral-Derivative)
Endra Pitowarno © 2007
Skema ekivalen Motor DC Servo dengan kontrol kecepatan
Endra Pitowarno © 2007
Motor DC Servo dengan kontrol kecepatan
Endra Pitowarno © 2007
Studi Kasus: kontrol posisi & kecepatan
Endra Pitowarno © 2007
Fungsi Aktuator • Penghasil gerakan (torsi) • Gerakan rotasi (motor based) dan translasi (solenoid, hidrolik & pneumatik) • Mayoritas aktuator > (DC) motor based • Aktuator dalam simulasi cenderung dibuat linier • Aktuator riil cenderung non-linier
Endra Pitowarno © 2007
Aktuator dalam perspektif Kontrol • Aktuator: pintu kendali ke sistem • Aktuator: pengubah sinyal listrik (arus, I) menjadi besaran mekanik (torsi) >> Torsi = I x Ktn; Ktn = konstanta motor/aktuator • Batasan aktuator riil: sinyal kemudi terkecil (mulai bergerak), saturasi (arus membesar namun torsi tetap)
Endra Pitowarno © 2007
Berbagai macam Aktuator: VEXTA MOTOR
Endra Pitowarno © 2007
Berbagai macam Aktuator: Geared DC Motor
Endra Pitowarno © 2007
Berbagai macam Aktuator: Servo Motor
Endra Pitowarno © 2007
Artificial Muscle
Endra Pitowarno © 2007
Aplikasi (RC) Servo Motor
Endra Pitowarno © 2007
Sistem Robot dan orientasi fungsi
Sistem Robot
Sistem Kontroler
Aktuator
Mekanik Robot
Sensor
Sistem Aktuator Mata Kamera
Real world
Sistem Roda
Sistem Kaki
Untuk Navigasi (gerak berpindah)
• Mengikuti jalur • Berdasarkan obyek statik atau bergerak (menuju obyek, menghindari obyek/halangan) berbasis vision, proximity, dll. • Berdasarkan urutan perintah (referensi trajektori)
Sistem Tangan
Mata Kamera
Untuk Manipulasi (gerak penanganan) Ujung tangan (posisi TIP): • Mengikuti referensi trajektori • Mengikuti obyek (berbasis vision, proximity, dll.) • Memegang, mengambil, mengangkat, memindah atau mengolah obyek
Endra Pitowarno © 2007
Sistem Robot dengan kontroler berbasis prosesor
Analog dan atau Digital
Aktuator
Rangkaian prosesor (CPU)
Robot
Analog dan atau Digital
Sensor
Endra Pitowarno © 2007
Kontroler berbasis prosesor dengan user interface
Keypad/ keyboard
Monitor (LCD, CRT, etc.)
1/0
1/0 analog
Rangkaian prosesor (CPU)
sistem bus (shaft encoder, vision) Wireless communications (blue tooth, Wi-Fi, etc.)
analog
Endra Pitowarno © 2007
Sistem Kontrol Robotik (kontrol robot loop terbuka/tertutup) Referensi Gerak
Kontroler
Robot
Hasil Gerak sesungguhnya (dibaca oleh sensor)
Error = Gerak referensi – Gerak aktual Referensi Gerak
+
Kontroler -
Gerak aktual
Robot
Endra Pitowarno © 2007
Teori Dasar: Penggunaan Transformasi Laplace ∞
L{ f (t )} = ∫ f (t )e − st dt 0
jika
L{x(t )} = X ( s )
maka
L{x& (t )} = sX ( s )
percepatan/akselerasi
&x&(t ) s(s X(s))
1 s
L{&x&(t )} = s( sX ( s))
kecepatan
x& (t ) s X(s)
posisi
1 s
x(t ) X(s)
Endra Pitowarno © 2007
Contoh: Robot Tangan Satu Sendi Sensor posisi (potensiometer)
Y
θ&
∆θ = ∆t
θ&&
∆θ& = ∆t
act
Robot (lengan tunggal)
act
θ Aktuator (Motor DC)
Error =
X
θ ref – θ act
Sistem Robot
Sistem Kontroler
θ ref
+
Kontrol -
Amplifier
Ktn
I
Motor DC
τ
Sendi Robot
θ&&act
1 s
θ&act
1 s
θ act
Endra Pitowarno © 2007
Metoda Kontrol Klasik (P) r
e
+
Kp
u
-
u = Kp ⋅ e
H(s)
y
Endra Pitowarno © 2007
Metoda Kontrol Klasik (I) r
e
+ -
Ki s
u
H(s)
t ⎡ u (t ) = ∫ e(T )dT ⎤ Ki ⎢⎣ 0 ⎥⎦
y
Endra Pitowarno © 2007
Metoda Kontrol Klasik (P-I) Kp r
+
e
+ -
Ki s
u
+
Ki G ( s ) = Kp + s
H(s)
y
Endra Pitowarno © 2007
Metoda Kontrol Klasik (D) r
e
+
s ⋅ Kd
u
H(s)
-
u = Kd ⋅ e&
∆e u = Kd ⋅ ∆t
y
Endra Pitowarno © 2007
Metoda Kontrol Klasik (P-I-D)
Kp r
e
+ -
+
Ki s
+ +
s ⋅ Kd
u
H(s)
y
Endra Pitowarno © 2007
Penggunaan Kontrol Cerdas r
e
+ -
• • • • • •
Kontroler berbasis AI
u
Sistem Robot
y
AI & Terminologi:orang pertama > Alan Turing (1937) Neural Network: Warren McCulloch (1943) Teori Fuzzy: Lukacewick (1930an) Fuzzy Sets: Lotfi Zadeh (1965) Genetic Algorithm: Teori Darwin Konsep GA dalam Evolutionary Computation (EC): Holland (1975)
Endra Pitowarno © 2007
Motor DC magnet permanen R
L
τ , ω ,θ
Ia Va
dI Va = L a + RI a + K b ω dt
Vb
θ L (s) Va ( s )
=
s[ sR J eff
nK tn + R f eff + K tn K b ]
Endra Pitowarno © 2007
Fungsi transfer open loop Motor DC magnet permanen sθ(s)
(s) Va(s)
+ -
1 sL + R
1 s
1 sJ eff + f eff
Ktn
Kb
θ L (s) Va ( s ) Ia(s)
=
s[ sR J eff
nK tn + R f eff + K tn K b ]
(s) Ktn
H ( s)
−1
sθ(s)
1 s
θ(s)
θ(s)
Endra Pitowarno © 2007
Motor DC Servo Motor DC Servo dengan kontrol kecepatan Kecepatan Referensi,
Kecepatan
θ&ref +
Kontrol PID
Motor DC-MP
aktual,
-
Skema ekivalen Motor DC Servo dengan kontrol kecepatan
θ&act
Endra Pitowarno © 2007
Motor DC Servo dengan kontrol kecepatan θ&act Tegangan Supply DC (misal 0÷24V)
+
Rangkaian Driver
-
θ&ref -
+
Vref(-)
Vref(+)
Endra Pitowarno © 2007
RC Servo Sinyal Tegangan Input PWM
Arah piringan Servo
-120º s/d +120º
RC Servo
Prinsip kerja RC Servo
0º
Endra Pitowarno © 2007
Teknik Pulse Width Modulation Tegangan PWM
V
Tegangan ekivalen linier
Vsat
=
0V
=
= t
Prinsip kerja PWM
t
Endra Pitowarno © 2007
Sebuah rangkaian pembangkit PWM lengkap dengan driver H-bridge untuk motor DC-MP/DC-SV ¼ LM324 74HCT245
¼ LM324
+12V
1K2
+12V
1K2
-
+(12÷24)V
BD643
BD643
1K2
+
+
74HCT04
¼ LM324
74HCT04 74HCT245
1/0
CW/CCW
1K2
+
¼ LM324
2SD1314
2SD1314
+12V
1K2
-
+12V
M
BD643
BD643
1K2
+
¼ LM324 2SD1314
20K
74HCT245 1K2
LM555 1 Gnd Vcc 8 2 Dis 7
Trg
3
Out Thr 6
4
Rst Ctl 5
(0÷5)V
θ&ref .01
+5V 20K
.01
+12V 2K2
+12V
2SD1314 BD643
1K2 BD643
+
H-bridge
2SD1314
¼ LM324
Arah (1/0)
Kecepatan (0÷5)V
Driver Motor DC Berbasis PWM
M (ep)
Endra Pitowarno © 2007
Wassalam