Anda di halaman 1dari 11

PENGENDALI MOTOR SERVO DC MENGGUNAKAN PI

UNTUK DIIMPLEMENTASIKAN PADA MESIN CNC


Bartolomeus Bregas Raditya; Enrico Kartanadi; Jimmy Linggarjati
Computer Engineering Department, Faculty of Engineering, Binus University
Jln. K.H. Syahdan No. 9, Palmerah, Jakarta Barat 11480
jimmy@binus.edu

ABSTRACT
The purpose of this research is to analyze the design of a DC servo motor controller using
the ATmega8 IC. The DC servo motor controller will be used to control a DC servo motor on a
CNC (Computer Numerical Control) machine. The CNC machine is used to physically create a
design from the computer. The CNC machine used in this research has three axes, axis X, axis Y
and the axis Z. The DC servo motor is used for axis X. The DC servo motor controller receives an
input from the computer. The ATmega8 executes the input by turning the DC servo motor
according to the input while reading the position from the encoder of the servo motor. To get a
high precision, PI driver is used that can reduce any error. The result of this research can be seen
from the error percentage occurred during the test. Drawing a 10 cm line, repeated 40 times,
resulted in 0.1% error, while drawing a 5 cm line, repeated 40 times as well, resulted in 2% error.
Keywords: ATmega8, CNC machine, DC servo motor controller, PI

ABSTRAK
Penelitian ini bertujuan untuk menganalisis perancangan sebuah pengendali motor servo DC
menggunakan IC ATmega8. Pengendali motor servo DC tersebut akan digunakan untuk
mengendalikan motor servo DC pada mesin CNC (Computer Numerical Control). Mesin CNC
digunakan untuk menghasilkan suatu bentuk fisik yang diambil dari desain yang dibuat di dalam
computer. Mesin CNC yang digunakan memiliki 3 sumbu, sumbu X, sumbu Y dan sumbu Z. Motor
servo DC berfungsi untuk menggerakkan sumbu X pada mesin CNC. Pengendali motor servo DC
akan menerima input dari komputer. ATmega8 akan mengeksekusi input dengan menggerakkan
motor sesuai inputnya sambil membaca posisi motor dari encoder motor servo. Untuk
mendapatkan presisi yang tinggi digunakan driver PI yang dapat mengurangi error. Hasil dari
penelitian ini dilihat dari persentase error yang terjadi pada percobaan. Untuk menggambar garis
10 cm 40 kali didapatkan error 0.1% dan untuk menggambar 5 cm 40 kali didapatkan error 2%.
Kata kunci: ATmega8, mesin CNC, pengendali motor servo DC, PI

102

Jurnal Teknik Komputer Vol. 19 No. 2 Agustus 2011: 102 112

PENDAHULUAN
Mesin CNC (computer numerical controlled) adalah sebuah mesin yang akan membuat
bentuk fisik dari desain yang digambarkan di dalam komputer. Mesin ini memiliki hubungan
dengan CAD (computer aided design) yang digunakan untuk merancang dan mesin CNC
mewujudkannya menjadi nyata. Mesin CNC memiliki tiga sumbu, sumbu X, sumbu Y dan sumbu
Z, yang digerakkan dengan motor untuk menghasilkan output yang diinginkan. Kami akan
menganalisis pengendali motor servo DC yang berfungsi untuk menggerakkan sumbu X.
Penelitian yang dilakukan adalah untuk mendapatkan kepresisian, ketepatan posisi, yang
terbaik. Penelitian sebelumnya telah dilakukan di jurusan Sistem Komputer - Universitas Bina
Nusantara (Baskoro, 2009, dan Nagantara, 2010). Namun kedua penelitian tersebut belum sampai
pada tahap uji-coba di suatu mesin CNC. Sedangkan pada penelitian kali ini, peralatan elektronik
yang digunakan untuk pengontrolan PID pada motor DC, telah berhasil dengan baik diterapkan
pada mesin CNC.
Jianxin Tang (n.d.) dari divisi electrical engineering dari universitas Alfred, New York
membuat PID Controller menggunakan TMS320c31 untuk mengatur kecepatan secara real-time
dari motor DC dan position control. Pada hasil pengujian-nya, sebagai pengatur kecepatan
menghasilkan steady state error yang telah di eliminasi dan output pada kecepatan motor DC
menghasilkan kecepatan yang sama dengan input yang telah dimasukan. Sedangkan sebagai
position controller menghasilkan ouput posisi yang presisi tanpa ada overshoot. Kontroler ini
memiliki kekurangan, yaitu untuk mengubah PID-nya harus dari programming assembly, tidak
dapat diubah tanpa mem-burn program ke dalam kontrolernya.
Pada tahun 2008, Nurul Izzati Binti Pandak Jabo dari Universitas Malaysia membuat
kontroler kecepatan motor DC menggunakan PID untuk di implementasikan dengan visual basic.
Penelitian ini lebih cenderung untuk membuat GUI (Graphical User Interface) dari speed control
untuk memberikan input PID-nya dan disimulasikan hasilnya. Hasil yang didapat yaitu grafik dari
PID-nya memiliki respon yang baik sehingga bisa untuk dianalisis.
Banyak penelitian tentang Pengendali Motor DC dengan teknik PID yang sudah sangat
maju dan terkini dalam hal teknologi dan algoritma, contohnya adalah "Advances in PID Control"
karangan Yurkevich (2011). Hanya saja, untuk membaca buku sekelas tersebut, kita perlu pertama
kali mencoba melakukan kontrol sederhana pada sebuah motor DC dan kemudian diterapkan
didalam mesin CNC; dan hal inilah yang telah berhasil dilakukan; karena tanpa melalui percobaan,
tidak mungkin kita dapat mencapai kualitas pemahaman seperti yang tertuang pada buku tersebut.
Oleh karena itu, kami membuat modul pengendali motor DC dengan dan di implementasikan pada
mesin CNC untuk menganalisis kepresisian yang bisa didapat menggunakan teknik PI.

METODE
PI (Proportional Integral) Driver
PI (Proportional Integral) Driver merupakan driver yang kami gunakan untuk menentukan
kepresisian suatu sistem instrumentasi dengan karakteristik adanya umpan balik/feed back pada
sistem tersebut. Komponen PI terdiri dari dua jenis, yaitu Proportional dan Integratif.

Pengendali Motor Servo DC (Bartolomeus Bregas Raditya; dkk)

103

Ada beberapa parameter dalam menentukan kualitas suatu sistem close loop, yaitu rise
time, overshoot, settling time, dan steady state error (Gambar 1). Rise time adalah waktu yang
dibutuhkan oleh sinyal output untuk melebihi 90% dari tingkat yang diinginkan (set point) saat
pertama kali sistem dijalankan. Overshoot adalah besarnya peak level yang lebih tinggi dari set
point. Settling time adalah waktu yang dibutuhkan sistem untuk mencapai kestabilan pada set point.
Steady state error adalah perbedaan output yang dihasilkan dengan output output yang didapatkan.
Kp berguna untuk mengurangi rise time. Sedangkan Ki berguna untuk menghapuskan steady state
error.

Gambar 1. Respon sistem.

Perancangan
Pengendali motor servo DC terdiri dari 3 rangkaian, yaitu modul pengendali motor DC,
modul Schmitt Trigger, dan modul Differensial (Gambar 2). Modul pengendali motor servo DC ini
berhubungan dengan komputer dan mesin CNC (Hudognik. 2008). Modul ini menerima input dari
komputer berupa input step dan dir melalui port paralel. Sebelum masuk ke modul, sinyal step dan
dir tersebut melalui rangkaian differensial agar sinyal yang masuk ke mikrokontroller ATMega8
sejernih mungkin agar output yang dihasilkan sebaik mungkin. Sistem internal modul ini
menggunakan prinsip H-Bridge Mosfet dengan teknik PWM (Nand, 2010). Modul ini juga
menerima input berupa feedback yang dikirim oleh encoder. Sinyal feedback ini dikuatkan terlebih
dahulu oleh rangkaian Schmitt trigger (Gambar 3) untuk diperjelas sinyalnya. Untuk mem-burn
mikrokontroller pada modul ini, digunakan USBasp yang dihubungkan dengan port USB pada
komputer. Sedangkan untuk men-set parameter Kp dan Ki-nya, menggunakan port serial yang
terdapat pada komputer. Untuk men-set parameter Kp dan Ki, digunakan software Servo Controller
yang dapat di-unduh dari forum komunikasi www.cnczone.com secara gratis (Hudognik. 2008).
Rangkaian Schmitt trigger di atas menggunakan IC74HC14 dan menghubungkan encoder
dari motor DC dengan modul pengendali motor servo DC. Sedangkan rangkaian differensial
(Gambar 4) menggunakan IC AM26LS31 yang berfungsi mengubah sinyal dari single-ended
menjadi differential dan IC AM26LS32 yang berfungsi mengubah sinyal differential menjadi
single-ended.
Source code untuk pengendali motor ini menggunakan bahasa assembly. Source code ini
dapat di-unduh di forum komunikasi www.cnczone.com.

104

Jurnal Teknik Komputer Vol. 19 No. 2 Agustus 2011: 102 112

Gambar 2. Rangkaian pengendali motor servo DC.

Gambar 3. Rangkaian Schmitt Trigger.

Gambar 4. Rangkaian differensial.

Flowchart Program
Berikut adalah flowchart program yang dibuat (Gambar 5).

Pengendali Motor Servo DC (Bartolomeus Bregas Raditya; dkk)

105

Gambar 5. Flowchart program.

Foreground process adalah proses di dalam program yang akan berjalan ketika
mendapatkan perintah dari komputer. Ketika pengendali motor servo DC dinyalakan, semua
parameter di-reset, mengembalikan pada kondisi awal. Setelah inisialisasi program akan menunggu
perintah dari komputer. Ketika mendapatkan perintah, perintah tersebut akan dijalankan. Setelah
dijalankan program akan looping kembali dan menunggu perintah berikutnya. Sedangkan
background process adalah proses di dalam program yang akan berjalan secara paralel bersamaan
dengan foreground process. Background process selalu berjalan tanpa perintah dari komputer.
Background process merupakan proses yang membaca sinyal dari encoder untuk membaca dan
menyimpan posisi motor.

Spesifikasi Sistem
Sistem terdiri dari komputer, modul pengendali motor DC, encoder, rangkaian Schmitt
trigger, dan rangkaian differensial. Motor terpasang pada mesin CNC untuk menggerakkan sumbu
X pada mesin CNC.
Mesin CNC yang digunakan memiliki 3 buah motor. Terdiri dari 2 motor stepper untuk
menggerakan sumbu Y dan sumbu Z, dan sebuah motor servo untuk menggerakan sumbu X. Setiap
motor memiliki driver nya sendiri. Driver yang kami buat digunakan untuk mengontrol motor
servo pada sumbu X mesin CNC.
Komputer yang digunakan menggunakan Operating System Linux Ubuntu. Software untuk
menjalankan mesin CNC menggunakan software EMC2 yang tersedia secara open source.
Pengendali motor DC menggunakan ATMega8 sebagai mikokontroler-nya dan di program
dengan bahasa pemrograman Assembly. Pengendali ini terhubung dengan komputer dan motor
servo DC. Pengendali ini menggunakan tegangan power supply sebesar 12 Volt untuk
mengaktifkan mikrokontroler-nya dan 36 Volt untuk menggerakan motor servo DC nya.
Motor DC yang digunakan adalah motor DC servo yang memilik encoder sebesar 200
clock/turns dan membutuhkan tegangan power supply sebesar 36 volt.
Berikut adalah blok diagram sistem keseluruhan (Gambar 6).

106

Jurnal Teknik Komputer Vol. 19 No. 2 Agustus 2011: 102 112

Gambar 6. Blok diagram sistem keseluruhan.

HASIL DAN PEMBAHASAN


Pengujian dilakukan dengan membuat gambar pada komputer dan mencetaknya dengan
mesin CNC. Gambar yang dibuat adalah gambar bintang, persegi, spiral, dan persegi. Masingmasing gambar diambil sebanyak 25 kali. Dan membuat gambar garis 10 cm dan 5 cm sebanyak 40
kali.

Penggambaran Bintang
Pada bintang (Gambar 7), kami mengukur salah satu panjang sisinya yang digambar oleh
kombinasi sumbu X dan sumbu Y. Rata-rata hasil pengukurannya adalah 1.396cm. Seharusnya
adalah 1.4cm. Presentase error nya adalah 0.285% (Tabel 1).

Gambar 7. Gambar bintang.

Pengendali Motor Servo DC (Bartolomeus Bregas Raditya; dkk)

107

Tabel 1. Hasil penggambaran gambar bintang


Bintang
No.
1
2
3
4
5

Panjang
(cm)
1.4
1.4
1.4
1.4
1.4

Bintang
No.
6
7
8
9
10

Panjang
(cm)
1.4
1.4
1.4
1.4
1.4

Bintang
No.
11
12
13
14
15

Panjang
(cm)
1.4
1.4
1.4
1.4
1.4

Bintang
No.
16
17
18
19
20

Panjang
(cm)
1.4
1.4
1.4
1.4
1.4

Bintang
No.
21
22
23
24
25

Panjang
(cm)
1.4
1.4
1.3
1.4
1.4

Pengambaran Persegi
Pada persegi (Gambar 8), kami mengukur panjang salah satu sisi nya yang digambar oleh sumbu
X. Rata-rata hasil pengukurannya adalah 4.016cm. Seharusnya adalah 4cm. Presentase error nya
adalah 0.4% (Tabel 2).

Gambar 8. Gambar persegi.

Tabel 2. Hasil penggambaran gambar persegi


Persegi
No.
1
2
3
4
5

Panjang
(cm)
4
4
4
4.1
4

Persegi
No.
6
7
8
9
10

Panjang
(cm)
4
4.1
4
4
4

Persegi
No.
11
12
13
14
15

Panjang
(cm)
4
4
4
4
4

Persegi
No.
16
17
18
19
20

Panjang
(cm)
4
4
4.1
4
4

Persegi
No.
21
22
23
24
25

Panjang
(cm)
4
4
4
4.1
4

Penggambaran Spiral
Pada spiral (Gambar 9), kami mengukur panjang salah satu sisi nya yang digambar oleh
gabungan dari sumbu X dan sumbu Y. Rata-rata hasil pengukurannya adalah 2.404cm. Seharusnya
adalah 2.4cm. Presentase error nya adalah 0.16% (Tabel 3).

108

Jurnal Teknik Komputer Vol. 19 No. 2 Agustus 2011: 102 112

Gambar 9. Gambar spiral.

Tabel 3. Hasil penggambaran gambar spiral


Spiral
No.
1
2
3
4
5

Panjang
(cm)
2.4
2.4
2.4
2.4
2.5

Spiral
No.
6
7
8
9
10

Panjang
(cm)
2.4
2.4
2.4
2.4
2.4

Spiral
No.
11
12
13
14
15

Panjang
(cm)
2.4
2.4
2.4
2.4
2.4

Spiral
No.
16
17
18
19
20

Panjang
(cm)
2.4
2.4
2.4
2.4
2.4

Spiral
No.
21
22
23
24
25

Panjang
(cm)
2.4
2.4
2.4
2.4
2.4

Penggambaran Garis 10cm


Pada percobaan ini, kami menggambar garis sepanjang 10 cm dan 5 cm (Gambar 10)
berturut-turut sebanyak 40 kali. Kami mengukur panjang garis yang merupakan hasil dari
penggambaran dengan sumbu X pada mesin CNC. Rata-rata hasil pengukurannya adalah 10.1cm.
Seharusnya adalah 10cm. Presentase error nya adalah 0.1% (Tabel 4).

Gambar 10. Gambar garis 10 cm.

Pengendali Motor Servo DC (Bartolomeus Bregas Raditya; dkk)

109

Tabel 4. Hasil penggambaran gambar garis 10cm


Garis ke1
2
3
4
5
6
7
8
9
10

Panjang
(cm)
10.1
10.1
10.1
10.1
10.1
10.1
10.1
10.1
10.1
10.1

Garis ke11
12
13
14
15
16
17
18
19
20

Panjang
(cm)
10.1
10.1
10.1
10.1
10.1
10.1
10.1
10.1
10.1
10.1

Garis ke21
22
23
24
25
26
27
28
29
30

Panjang
(cm)
10.1
10.1
10.1
10.1
10.1
10.1
10.1
10.1
10.1
10.1

Garis ke31
32
33
34
35
36
37
38
39
40

Panjang
(cm)
10.1
10.1
10.1
10.1
10.1
10.1
10.1
10.1
10.1
10.1

Penggambaran Garis 5cm


Percobaan ini mengambil garis 5 cm (Gambar 11). Kami mengukur panjang garis yang
merupakan hasil dari peggambaran dengan sumbu X pada mesin CNC. Rata-rata hasil
pengukurannya adalah 5.1cm. Seharusnya adalah 5cm. Presentase error nya adalah 2% (Tabel 5).

Gambar 11. Gambar garis 5 cm.

110

Jurnal Teknik Komputer Vol. 19 No. 2 Agustus 2011: 102 112

Tabel 5. Hasil penggambaran gambar garis 5 cm


Garis ke1
2
3
4
5
6
7
8
9
10

Panjang
(cm)
5.1
5.1
5.1
5.1
5.1
5.1
5.1
5.1
5.1
5.1

Garis ke11
12
13
14
15
16
17
18
19
20

Panjang
(cm)
5.1
5.1
5.1
5.1
5.1
5.1
5.1
5.1
5.1
5.1

Garis ke21
22
23
24
25
26
27
28
29
30

Panjang
(cm)
5.1
5.1
5.1
5.1
5.1
5.1
5.1
5.1
5.1
5.1

Garis ke31
32
33
34
35
36
37
38
39
40

Panjang
(cm)
5.1
5.1
5.1
5.1
5.1
5.1
5.1
5.1
5.1
5.1

SIMPULAN
Penelitian ini bertujuan untuk menganalisis perancangan sebuah pengendali motor servo
DC menggunakan IC ATmega8. Pengendali motor servo DC tersebut digunakan untuk
mengendalikan motor servo DC pada mesin CNC (Computer Numerical Control). Mesin CNC
digunakan untuk menghasilkan suatu bentuk fisik yang diambil dari desain yang dibuat di dalam
komputer.
Untuk mendapatkan presisi yang tinggi digunakan driver PI yang dapat mengurangi error.
Hasil dari penelitian ini dilihat dari persentase error yang terjadi pada percobaan. Pengujian
dilakukan dengan membuat gambar pada komputer dan mencetaknya dengan mesin CNC. Gambar
yang dibuat adalah gambar bintang, persegi, spiral, dan persegi. Masing-masing gambar diambil
sebanyak 25 kali. Dan membuat gambar garis 10 cm dan 5 cm sebanyak 40 kali. Pada gambar
bintang, presentase error-nya adalah 0.285%. Pada gambar persegi, presentase error-nya adalah 0.4%.
Pada gambar spiral, presentase error-nya adalah 0.16%. Pada gambar garis 10cm, presentase errornya adalah 0.1%. Pada gambar garis 5cm, presentase error-nya adalah 2%.

DAFTAR PUSTAKA
Baskoro, Dwi. 2009. Perancangan Pengendali Posisi Linier untuk Motor DC dengan
Menggunakan PID.
Hudognik. (2008). Modernization of the Elm DC Servo Controller.
http://www.cnczone.com/forums/open_source_controller_boards/69640modernization_elm_DC_servo_controller.html.

Diakses

dari

Jianxin Tang. Real-Time Adaptive PID Controller Using the TMS320C31 DSK. Diakses dari
http://www.ti.com/sc/docs/general/dsp/festproceedings/fest2000/alfred001.pdf.
Nagantara, Jemie. 2010. Sistem Kerja PID pada Rangkaian Penggerak Servo Untuk Motor DC.
Nand,

Krishna. (2010). PWM in AVR. Diakses


content/uploads/2011/01/PWM-in-AVR-v1.0.pdf.

dari

http://vnit.ac.in/ieee/wp-

Skripsi tidak diterbitkan. Jakarta: Universitas Bina Nusantara.

Pengendali Motor Servo DC (Bartolomeus Bregas Raditya; dkk)

111

Skripsi tidak diterbitkan. Jakarta: Universitas Bina Nusantara.


Yurkevich,
Valery
D.
(2011).
Advances
in
PID
Control.
http://www.intechopen.com/books/show/title/advances-in-pid-control.

112

Diaskes

dari

Jurnal Teknik Komputer Vol. 19 No. 2 Agustus 2011: 102 112

Anda mungkin juga menyukai