Hartono, dkk./ ROTASI, Vol. 22  No. 1  (Januari 2020) Hal. 36-42
Perancangan dan Pembuatan Sistem Kendali Gerak Pahat pada Mesin Router NC 3-Axis untuk Kriya Seni Ukiran Kayu
Rachmad Hartono, Sugiharto*, Bukti Tarigan, Toto Supriyono, Gatot Santoso
a Jurusan Teknik Mesin, Fakultas Teknik, Universitas Pasundan Jl, Dr. Setiabudhi No.193 Bandung 40153 *E-mail: sugih.sugiharto@unpas.ac.id

## Abstract
The  carving  profiles  on  wood  surfaces  could  be made  automatically  by feeding  a  cutting  tool  on  the trajectory  profile  carving  will  be  formed.  The  cutting  tool  motion  trajectory  adjusted  to  the  desired profile path by controlling the tool motion in both rotational and translational motion in the x, y, and z- axis direction. The cutting tool placed on the tool post that can move in the z-axis, the tool post placed on the movable holder in the x-axis, the tool post and holder are placed on two movable support poles in  the  y-axis.  The  three-axis  motion  mechanism  carried  out  by  three  servo  motors.  Motion  control is done using pulse width modulation (PWM), by adjusting the number and frequency of pulses in each servo  motor.  The  number  of  pulses  and  pulse  frequency  were  controlled  by  a  microcontroller  that receives  data  from  a  computer  by  serial  communication.  The  number  of  pulses  and  the frequency of pulses  are  determined  based  on  the  coordinates,  and  speed  of  motion  that  must  be  achieved  by  the cutting tool in a profile path will be formed.
Key woods: servo motor, microcontroller, computer, PWM

## Abstrak
Profil  ukiran  pada  permukaan  kayu  dapat  dibuat  secara  otomatis  dengan  cara  mengumpankan  pahat pemotong pada lintasan profil ukiran yang akan dibentuk. Lintasan gerak pahat pemotong disesuaikan dengan  lintasan  profil  yang  diinginkan  dengan  jalan  mengendalikan  gerak  pahat  tersebut  baik  dalam gerak rotasi maupun gerak translasi dalam arah sumbu x, y, dan z. Pahat pemotong ditempatkan pada tool post yang dapat bergerak dalam sumbu-z, tool post ditempatkan pada holder yang dapat bergerak dalam  sumbu-x, tool  post dan holder ditempatkan  pada  dua  tiang  penyangga  yang  dapat  bergerak dalam  sumbu-y.  Mekanisme  gerak  tiga  sumbu  dilakukan  oleh  tiga  buah  motor  servo.  Pengendalian gerak  dilakukan  dengan menggunakan pulse width modulation (PWM),  dengan mengatur jumlah dan frekuensi  pulsa  di  setiap  motor  servo.  Jumlah  pulsa  dan  frekuensi  pulsa  diatur  oleh  mikrokontroler yang  menerima  data  dari  komputer  melalui  komunikasi  serial.  Jumlah  pulsa  dan  frekuensi  pulsa ditentukan  berdasarkan  koordinat  dan  kecepatan  gerak  yang  harus  dicapai  oleh  alat  pemotong  dalam suatu lintasan profil yang akan dibentuk.
Kata kunci: motor servo, mikrokontroller, komputer, PWM

## 1. PENDAHULUAN
Mesin router adalah mesin yang digunakan untuk membuat profil ukiran pada permukaan kayu dengan tujuan untuk memperbaiki tampilan kayu. Alat utama yang digunakan pada mesin router adalah pahat yang bentuknya sama dengan pahat yang dipasang pada mesin milling. Pahat berputar pada kecepatan tinggi dan memotong permukaan kayu hingga terbentuk  lekukan yang diinginkan [1-2],[5-8]. Pada mesin  router dibuat mekanisme yang dapat  mengendalikan gerak pahat sehingga dapat berputar dan bergerak dalam ruang tiga dimensi dalam arah sumbu x, y, dan z.
Salah satu contoh mesin router dapat dilihat pada Gambar 1. Pemegang pahat dihubungkan dengan poros motor DC. Motor DC tersebut diletakkan pada suatu dudukan yang dapat bergerak dalam arah sumbu z. Dudukan pemegang pahat diletakkan  pada  penopang  yang  dapat  bergeser  dalam  arah  sumbu  x.  Penopang  dipasang  pada  dua  buah  tiang  dapat bergeser dalam arah sumbu y [2].
Masing-masing  mekanisme  penggerak  pahat  dalam  ketiga  arah  sumbu  digerakkan  oleh  sebuah  motor  dapat menggunakan  motor  servo  atau  motor  stepper.  Motor  stepper  adalah  perangkat  elektromekanis  yang  bekerja  dengan mengubah  pulsa  elektronik  menjadi  gerakan  mekanis  diskrit.  Motor  stepper  bekerja  berdasarkan  urutan  pulsa  yang diberikan ke kaki-kaki  fungsional motor stepper. Untuk menggerakkan motor stepper diperlukan driver motor stepper yang berfungsi untuk mengubah pulsa elektrik menjadi urutan pulsa pada kaki-kaki fungsional motor stepper. Resolusi per  langkah  pada  motor  stepper  sulit  diubah  sesuai  dengan  keinginan  pemrogram.  Resolusi  per  langkah  pada  motor stepper  dapat  diperkecil  sesuai  dengan  resolusi  dasarnya.  Jika  suatu  motor  stepper  mempunyai  resolusi  1.8 o ,  maka resolusi dapat diperkeci menjadi 0.9 o , 0.45 o , 0.225 o dan seterusnya [3].
Hartono, dkk./ ROTASI, Vol. 22  No. 1  (Januari 2020) Hal. 36-42
Motor servo adalah sebuah perangkat atau aktuator putar (motor) yang dirancang dengan sistem kontrol umpan balik loop  tertutup,  sehingga  poros  motor  dapat  diatur  posisi  sudutnya  sesuai  dengan  input  yang  diberikan.  Motor  servo terdiri  dari  tiga  bagian  utama  yaitu  motor,  sistem  kontrol,  dan  encoder.  Encoder  berfungsi  sebagai  sensor  yang memberikan sinyal umpan balik ke sistem kontrol apakah target yang diinginkan sudah benar atau belum. Resolusi per langkah  pada  motor  servo  dapat  diatur  sesuai  dengan  keinginan  pemrogram  dengan  mengatur  beberapa  parameter tertentu. Kecepatan putar dan torsi poros motor servo lebih tinggi dibandingkan dengan kecepatan putar dan torsi pada poros motor stepper [4].
Merujuk  para  referensi  diatas,  untuk  menggerakan  mekanisme  gerak  pahat  dapat  bergerak  dalam  ruang  tiga dimensi,  dapat  menggunakan  dua  jenis  motor  d  iatas.  Sistem  pengendalian  dibutuhkan  untuk  mengendalikan  ketiga motor  dimasing-masing  sumbu  gerak,  motor  dapat  bergerak  secara  serempak  dengan  kecepatan  dan  jumlah  putaran yang berbeda-beda untuk tiap sumbu gerakannya. Pengendalian motor dapat dilakukan dengan mengatur jumlah pulsa dan frekuensi pulsa yang diberikan ke masing-masing motor [9-11].
Pada  paper  ini  motor  yang  digunakan  untuk  menggerakan  mekanisme  gerak  pahat  adalah  motor  servo  karena kecepatan  putar  dan  torsi  poros  motor  servo  lebih  tinggi  dibandingkan  dengan  kecepatan  putar  dan  torsi  pada  poros motor stepper.
Gambar 1. Mesin router pembuat ukiran kayu [2]

## 2. MATERIAL DAN METODE PENELITIAN
Mesin router yang dibuat supaya dapat beroperasi secara secara otomatis diperlukan sistem kendali. Sistem kendali yang dirancang mempunyai dua tugas utama yaitu mengatur kecepatan putar pahat dan mengatur gerakan pahat dalam ruang tiga dimensi. Skematik rancangan sistem kendali mesin router dapat dilihat pada Gambar 2.

## Gambar 2. Skematik sistem kendali mesin router
Secara  umum  data  gerakan  yang  dituliskan  di  komputer  dikirimkan  oleh  komputer  ke  mikrokontroller  melalui komunikasi serial. Data gerakan tersebut oleh mikrokontroller digunakan untuk mengatur kecepatan putar dan gerakan pahat. Ketika gerakan pahat telah selesai dilakukan, mikrokontroller akan mengirim sinyal ke komputer bahwa perintah kendali yang telah dikirim oleh komputer telah selesai dikesekusi. Komputer segera mengirim instruksi berikutnya.
Komputer  berfungsi  untuk  menuliskan  data  kendali  yang  digunakan  untuk  mengendalikan  mesin  router. Tampilan program pada komputer terdiri dari tampilan awal, tampilan mode otomatis, dan tampilan mode manual. Tampilan awal muncul ketika aplikasi program dijalankan. Tampilan awal dapat dilihat pada Gambar 3(a).
Tampilan  awal  ini  digunakan  untuk  menentukan  jalur  komunikasi  serial  yang  akan  digunakan  untuk  transfer  data dari  komputer  ke  mikrokontroller  atau  sebaliknya.  Jalur  komunikasi  serial  yang  digunakan  akan  terdeteksi  secara otomatis  ketika  tampilan  awal  tersebut  muncul.  Pengguna  perlu  mengkonfirmasi  jalur  komunikasi  serial  yang digunakan dengan me-klik tombol BUKA JALUR.
Hartono, dkk./ ROTASI, Vol. 22  No. 1  (Januari 2020) Hal. 36-42
Gambar 3. Dialog pada program sistem kendali
Bila tombol  MANUAL pada mode otomatis di-klik, tampilan mode manual akan muncul. Tampilan mode manual dapat  dilihat  pada  Gambar  3  (a)  dan  3  (b).  Tampilan  mode  manual  digunakan  untuk  mengatur  posisi  pahat  sebelum proses pemotongan dilakukan. Untuk kembali ke mode otomatis, tombol OTOMATIS di-klik.
Mikrokontroller  yang  digunakan  untuk  menerjemahkan  data  gerakan  menjadi  gerakan  adalah  Atmega328  yang sudah  terangkai  pada  papan  kontrol  Arduino  Uno.  Papan  kontrol  Arduino  Uno  dapat  dilihat  pada  Gambar  4.  Papan kontrol ini mempunyai jalur I/O digital sebanyak 13 buah dan beberapa di antara jalur tersebut dapat digunakan untuk mengendalikan putaran motor DC dengan memanfaatkan fasilitas pulse width modulation (PWM). PWM driver adalah penguat  sinyal  pwm  yang  berasal  dari  mikrokontroller.  Bagian  input  pwm  driver  menerima  sinyal  pwm  dari mikrokontroller.  Bagian  output  pwm  driver  mengeluarkan  sinyal  pwm  dengan  nilai  tegangan  yang  lebih  besar  sesuai dengan tegangan eksternal yang diberikan ke pwm driver. Bentuk pwm driver dapat dilihat pada Gambar 5.
Gambar 4 . Papan Arduino Uno [12]
Motor servo adalah sebuah perangkat  atau aktuator putar yang dirancang dengan sistem kontrol  umpan balik loop tertutup  sehingga  kecepatan  putar  dan  jumlah  putaran  sudut  poros  motor  dapat  diatur.  Motor  servo  merupakan perangkat  yang  terdiri  dari  motor  AC  tiga  fasa,  serangkaian  roda  gigi,  rangkaian  kontrol,  dan  potensiometer.  Motor servo  dilengkapi  dengan  driver  motor  servo.  Driver  motor  servo  mempunyai  dua  kaki  input.  Kaki  input  pertama digunakan  untuk  menentukan  arah  putaran  poros  motor  servo  sedangkan  kaki  input  yang  kedua  digunakan  untuk mengatur jumlah putaran motor servo.
(a) Dialog awal (b) Dialog mode manual (c) Dialog mode otomatis
Hartono, dkk./ ROTASI, Vol. 22  No. 1  (Januari 2020) Hal. 36-42
Komunikasi antara komputer dengan mikrokontroller dilakukan dengan menggunakan komunikasi serial. Data yang mampu  dikirimkan  melalui  komunikasi  serial  adalah  data  8  bit.  Dengan  demikian  apabila  data  yang  dikirimkan mempunyai  nilai  lebih dari  255 maka data tersebut  perlu  dipecah menjadi dua bagian data. Data kendali mesin  router terdiri  dari  dua  jenis  data  yaitu  data  kendali  untuk  mengatur  kecepatan  putar  pahat  dan  data  kendali  untuk  mengatur gerakan pahat. Format data kendali untuk mengatur mesin router dapat dilihat pada Tabel 1.
Pola  pengiriman  data  gerakan  pahat  pada  dasarnya  adalah  mengirimkan  data  gerakan  pahat  untuk  menggerakkan pahat  dengan lintasan pahat  berupa garis dengan kecepatan yang  dapat  diatur. Bila kode yang digunakan adalah kode G0, maka kecepatan pahat  sudah ditentukan oleh program. Bila kode yang digunakan adalah kode G2 atau G3, maka lintasan busur diubah menjadi beberapa segmen garis kemudian dikirim satu per satu ke mikrokontroller.
Strategi  pengiriman  data  dari  komputer  ke  mikrokontroller  harus  diatur  sedemikian  rupa  agar  data  gerakan  yang dikirim komputer mampu diterjemahkan menjadi gerakan oleh mikrokontroller. Data yang pertama dikirimkan adalah data  kode  gerakan.  Bila  komputer  ingin  mengendalikan  gerakan  pahat  maka  komputer  akan  mengirimkan  angka  255. Bila  komputer  ingin  mengendalikan  putaran  pahat  maka  komputer  mengirimkan  angka  254.  Data  selanjutnya  adalah data yang terkait dengan data gerakan pahat atau data kecepatan putar. Data yang dikirimkan maksimum bernilai 245.
Data  yang  terkait  dengan  gerakan  berjumlah  15  buah  sedangkan  data  yang  terkait  dengan  kecepatan  putar  pahat berjumlah  satu  buah.  Data  yang  terkait  dengan  gerakan  adalah  arah  putaran  motor,  nilai  kelipatan  245  dari  jumlah putaran motor, nilai sisa bagi 245 dari jumlah putaran motor, nilai kelipatan 245 dari delay pulsa, dan nilai sisa bagi 245 dari delay pulsa. Karena jumlah putaran motor ada tiga maka data gerakan pahat berjumlah 15 data. Data yang terkait dengan putaran pahat adalah kecepatan putar pahat.
Tabel 1. Sintaks kode G untuk mengatur mesin router Sintaks Keterangan G0 Xa Yb Zc Menggerakkan pahat dengan lintasan berupa garis dengan kecepatan yang telah ditentukan G1 Xa Yb Zc Fd Menggerakkan pahat dengan lintasan berupa garis dengan kecepatan yang dapat diatur G2 Xa Yb Zc Id Je Ff Menggerakan pahat dengan lintasan berupa busur lingkaran dengan arah putaran sesuai arah putaran jarum jam dengan kecepatan yang dapat diatur G3 Xa Yb Zc Id Je Ff Menggerakan pahat dengan lintasan berupa busur lingkaran dengan arah putaran berlawanan arah putaran jarum jam dengan kecepatan yang dapat diatur Sx Menentukan putaran pahat dengan kecepatan putar yang dapat diatur
Jika  mikrokontroller  menerima  angka  255  maka  variabel  angka2  diberi  nilai  0.  Jika  mikrokontroller  menerima angka  245  maka  variabel  angka2  diberi  nilai  16. Jika  mikrokontroller  menerima  angka  kurang  atau  sama  dengan  245 maka  variabel  angka2  ditambah  dengan  1.  Variabel  angka2  dalam  hal  ini  menunjukkan  data  ke  berapa  yang  sedang diterima  oleh  mikrokontroller.  Data  yang  diterima  oleh  mikrokontroller  akan  dimasukkan  ke  variabel  yang  sesuai dengan data gerkan yang diterima oleh mikrokontroller. Bila variabel angka2 sama dengan 15 maka semua data gerakan telah  diterima  secara  lengkap  oleh  mikrokontroller.  Mikrokontroller  akan  menggerakkan  ketiga  motor  servo  sesuai dengan data gerakan yang telah diterima dari komputer. Bila angka 2 sama dengan 17 maka data yang terkait dengan kecepatan putar telah diterima secara lengkap oleh mikrokontroller. Mikrokontroller akan mengaktifkan putaran motor DC dengan kecepatan putar sesuai dengan data yang diterima.
Pengaturan gerakan motor dilakukan dengan memanfaatkan fasilitas timer pada mikrokontroller. Timer merupakan suatu interupsi yang yang akan dieksekusi setiap selang waktu tertentu. Perioda interupsi timer diatur selama 10 mikro detik.  Setiap  selang  waktu  10  mikro  detik  suatu  variabel  tertentu  di  dalam  mikrokontroller  (a0)  akan  ditambah  satu. Ketika  nilai  a0 < a1  (setengah  dari  perioda  clock),  pin 13  mikrokontroller diberi  nilai HIGH.  Ketika nilai a0 >= a1 pin 13 mikrokontroler diberi nilai LOW. Ketika nilai a0 >= 2*a1 nilai a0 dikembalikan lagi ke nol. Grafik nilai a0 dan kondisi pin 13 terhadap waktu dapat dilihat pada Gambar 6.
Hartono, dkk./ ROTASI, Vol. 22  No. 1  (Januari 2020) Hal. 36-42
Gambar 6. Grafik nilai a0 dan kondisi pin 13
Setiap  kali  nilai  a0>=2*a1  nilai  variabel  a4  ditambah  satu.  Nilai  variabel  a4  menyatakan  jumlah pulsa  yang  telah disampaikan ke motor servo. Ketika jumlah pulsa telah mencapai jumlah pulsa yang telah ditentukan, mikrokontroller akan  menyampaikan  sinyal  ke  komputer  bahwa  eksekusi  gerakan  telah  selesai.  Pengendalian  motor  servo  yang  lain serupa dengan pengendalian motor servo yang pertama. Variabel ax diganti dengan bx untuk motor servo yang kedua. Variabel ac diganti dengan cx untuk motor servo yang ketiga. Dengan cara seperti ini motor servo dapat dikendalikan secara serempak.

## 3. HASIL DAN PEMBAHASAN
Sistem  mekanik  dan  sistem  kendali  mesin  router  yang  telah  dibuat  perlu  diuji  untuk  memastikan  apakah  mesin tersebut  mampu  membuat  pola  ukir  kayu  yang  diinginkan.  Pola  ukiran  diperoleh  dari  file  dengan  format  bmp  yang secara khusus dapat dibaca oleh program CAD/CAM. File dengan pola ukir yang dibuat dapat dilihat pada Gambar 7. File  tersebut  diimport  ke  perangkat  lunak  CAD/CAM  sehingga  diperoleh  model  ukiran  seperti  dapat  dilihat  pada Gambar  8. Dimensi model ukiran dapat disesuaikan dengan keinginan pembuat. Setelah model ukiran berhasil dibuat, langka selanjutnya adalah mensimulasikan proses pengukiran kasar dan proses pengukiran halus. Hasil simulasi  dapat dilihat untuk  menentukan apakah parameter pengukiran yang dilakukan untuk pengukiran kasar dan pengukiran halus telah mampu memberikan hasil ukiran yang diinginkan. Dari simulasi dapat  dihasilkan program NC untuk melakukan pengukiran yang sebenarnya. Program NC tersebut dibuka di aplikasi yang telah dibuat untuk melakukan pemotongan yang sebenarnya.
Gambar 7. Motif ukiran yang akan dibuat dalam format bmp
Hasil pengukiran dengan menggunakan program NC yang dihasilkan dari perangkat lunak CAD/CAM dapat dilihat pada Gambar 9. Ukiran naga berukuran 18x28 cm 2 sedangkan ukiran bunga dan burung berdimensi 35x29 cm 2 . Ukiran naga diselesaikan dalam waktu dua hari, sedangkan ukiran bunga dan burung diselesaikan dalam waktu empat hari.
Hartono, dkk./ ROTASI, Vol. 22  No. 1  (Januari 2020) Hal. 36-42
Gambar 9. Hasil ukiran dengan menggunakan mesin router
Gambar 9. Proses pembuatan ukiran dengan menggunakan mesin router

## 4. Kesimpulan
Dari  hasil  pengujian  dapat  disimpulkan  bahwa  sistem  kendali  mesin  router  mampu  melakukan  pengukiran berdasarkan  program  NC  yang  telah  dihasilkan  oleh  perangkat  lunak  CAD/CAM.  Pola  ukiran  yang  dihasilkan merupakan  pola  yang  cukup  rumit.  Waktu  yang diperlukan  untuk  menyelesaikan  satu  pola  ukiran masih  cukup  lama. Masih perlu dilakukan percobaan pengukiran untuk mengetahui parameter-parameter pengukiran yang optimum.
Penggunaan  motor  servo  sebagai  motor  penggerak  memberikan  hasil  yang  lebih  baik,  dalam  kemudahan pengendalian  dan  hasil  pekerjaan  yang  diperoleh  dari  mesin  router  NC  yang  dikendalikan,  jika  dibandingkan  dengan penggunaan motor stepper sebagai motor penggerak seperti yang digunakan oleh para peneliti sebelumnya [9-11].

## Ucapan Terima Kasih
Pada kesepantan ini penulis mengucapkan terimakasih kepada DRPM  Kemenristek Dikti RI yang telah membiayai penelitian ini.

## Daftar Pustaka
[1] Samah  Mochtar,  (2013), Design  and  Structural  analysis  of  a  CNC  Router, Final  year  project  mecahical engineering Department faculy of engineering, Lebanese University.
[2] Rachmad  Hartono,  et  all,  (2018), Analisis  Struktur  Rangka  Mesin  Rourter  NC  Jenis  Moving  Gantry  Untuk Ukiran Kayu , Proseding SNTTM 2018.
[3] V. V. Athani, (2005), Stepper Motors: Fundamentals, Applications And Design, New Age International limited Publishing, New Delhi, India
[4] Riazollah Firoozian, (2008), Servo Motors and Industrial Control Theory, Springer Cham Heidelberg, New York USA
[5] Wei Qin, (2013), Design and Analysis of Small Scale Cost Effective CNC Milling,, These,  Master of Science in Mechanical Engineering in the Graduate College of the  University of Illinois at Urbana-Champaign.
[6] Benhabib, Beno., (2003). Manufacturing: Design, Production, Automation, and Integration . New York: Marcel Dekker.
[7] B.Jayachandraiah,  (2014), Fabrication  of  Low  Cost  3-Axis  Cnc  Router ,  International  Journal  of  Engineering Science Invention, ISSN (Online): 2319 – 6734, ISSN (Print): 2319 – 6726.
[8] Olufemi B. Akinnuli, et all (2015), Design of a Keypad Operated CNC Drilling Router , International Journal of Engineering Research and General Science Volume 3, ISSN 2091-2730.
[8] Y. L. Mane, B. B. Deshmukh, ( 2016) A Review on Retrofit Design and Static Analysis of 3-Axis Gantry System , IOSR Journal of Mechanical & Civil Engineering (IOSRJMCE), e-ISSN: 2278-1684, pp 23-28.
[9] Siripen  Supadarattanawong,  (2006),  An  Investigation  of the  Optimal  Cutting  Conditions  in  Parawood  ( Heavea Brasiliensis ) Machining Process on a CNC Wood Router, Kasetsart J. (Nat. Sci.) 40 : 311 – 319.
[10] Camelia Cosereanu, (2014), Complex ormament machining process on CNC Router, Pro Ligno, Vol 10 No  2014 pp 22-30.
[11]   Agus  Kurniawan,  (2017),  Arduino  Programming  with  .NET  and  Sketch , Springer  Science  +  Business  Media New York, 233 Spring Street, 6th Floor, New York, NY 10013, pp 2-19.
[12]   Fahmi Addinul Haq, (2017), Mengatur Kecepatan Motor DC Spindle Berbasis PWM ( Pulse Width Modulation ) pada  Mesin  CNC  Portable , Tugas  Akhir  –  TE  145561,  Prodi  Komputer  Kontrol  Departemen  Teknik  Elektro Otomasi, Fakultas Vokasi, ITS, pp 5-14