3 BAB 2 TINJAUAN PUSTAKA Pada bab 2 ini akan

advertisement
BAB 2
TINJAUAN PUSTAKA
Pada bab 2 ini akan dilakukan beberapa tinjauan pustaka dari beberapa hasil
penelitian yang telah dipublikasikan. Tinjauan pustaka ini bertujuan untuk melihat
sejauh mana aplikasi Inkscape pada mesin CNC diteliti. Hasil tinjauan pustaka ini
akan digunakan sebagai komparasi dengan hasil simulasi yang nantinya dibuat.
Tinjauan pustaka ini dibagi menjadi beberapa bagian: Inkscape, G-code, M-code,
Gcodetools pada Inkscape, pemrograman AWK. Pengembangan Geometris dari
lingkaran Transisi dan Desain dan Pengaturan Mesin CNC. Setiap tinjauan pustaka
terdiri dari metodologi penelitian dan hasil penelitian.
2.1
Inkscape
Inkscape adalah software open source untuk membuat gambar grafik
dengan extension SVG (Scalable Vector Graphic). Lebih dari sekedar editor
teks vector Inkscape memberikan penampilan WYSIWYG untuk manipulasi
gambar vector, yang bertujuan untuk pengguna dapat mengekspresikan dirinya
secara bebas. Meskipun software ini gratis tetapi tetap memiliki kemampuan
yang sama pada software komersial. Inkscape menyediakan sebuah tampilan
untuk secara langsung dapat memanipulasi gambar extension SVG, hal ini
memungkinkan seseorang untuk memastikan bahwa kode sesuai dengan
standar W3C (World Wide Web Consortium) (Joshua Facemyer, 2009).
2.1.1
Tampilan Inkscape
Tampilan
Inkscape
dirancang
untuk
membuat
memanipulasi gambar sederhana, harmonis dan kontekstual.
3
dan
4
Gambar 2.1 Tampilan Inkscape
(Joshua Facemyer, 2009)
Pada gambar 2.1 diperlihatkan tampilan Inkscape yang
memiliki sembilan bidang utama pada Inkscape yaitu:
1. the Menu
2. the Commands Bar
3. the Snap Controls Bar
4. the Rulers, Guides and Grids
5. the Tool Controls Bar
6. the Toolbox
7. the Canvas
8. the Color Palette
9. the Status Bar
5
2.1.2
SVG
SVG adalah singkatan dari (Scalable Vector Graphics) dan
merupakan bentuk file baru dari web
graphic
yang telah
direkomendasikan oleh W3C yang menampilkan grafik serta
mendeskripsikan gambar dua dimensi dalam pengembangan web yang
berbasis XML (Extensible Markup Language) (Widiatmoko & Wahid,
2006).
Keuntungan dari SVG adalah sama seperti gambar vector,
memberikan kualitas gambar yag halus, tajam, gambar kualitas tinggi
dengan kemampuan untuk mengubah ke segala ukuran tanpa
mengurangi kualitas, kemampuan yang tidak dimiliki gambar bitmap
(ryan lerch, 2008).
2.2
G Codes
G Codes telah digunakan secara luas di bagian pemrograman CNC
selama bertahun-tahun, dan cukup presisi sebagai mesin geometri dasar,
sebuah keterbatasan mendasar dari mesin CNC saat ini adalah bahwa
interpolasi posisi alat yang terpisah sebagian besar linear dan melingkar,
tetapi untuk segmen parabola jarang digunakan. Selain itu titik ‘referensi’ ini
sesuai dengan waktu sampling path alat pada kecepatan tetap (feederate)
sepanjang masing-masing segmen. Ini berarti bahwa bentuk tidak akan
kompleks, dan secara cermat dirancang dalam sistem CAD (Computer-Aided
design), yang tentunya dibutuhkan subject pada perkiraan agak kasar dan dataintensif sebelum mereka dimesinkan, dan variasi feedrate (yang mungkin
diperlukan untuk mengontrol tekanan pemotongan, akurasi sebagian atau
seluruh permukaan) (Koren, 1983).
Dalam bahasa pemrograman G Codes, perintah mesin terdiri dari
karakter dan nilai numeric dibangun dalam kata-kata dan blok. Terdiri dari
alamat karakter diikuti dengan nilai numeric, dan blok adalah kumpulan katakata pada satu baris. Bagian dari program berisi urutan blok yang
menggambarkan secara detail gerakan dan fungsi tambahan mesin CNC dan
harus menjalankan sesuai urutan untuk membuat bagian tertentu. Bagian
program sering dihasilkan otomatis oleh sistem CAD/CAM (Computer-Aided
6
Manufacturing), setelah bagian geometri telah sepenuhnya didefinisikan.
(Farouki, Manjunathaiah, Yuan, 1997).
Setiap bagian dari program berisi sejumlah kode yang berbeda, yang
terpenting adalah kumpulan G dan M-code. Pada dasarnya bentuk bahasa ini
adalah bahasa dasar yang digunakan untuk menggambarkan bagaimana
komponen yang akan diproduksi, pada urutan pelaksanaan tugas mesin, ketika
untuk mengubah alat, seberapa jauh untuk memotong bahan dan lain-lain
(Denford).
2.2.1
Fungsi Feed
Gerakan alat dengan kecepatan yang ditentukan untuk
pemotongan di sebut feedrate. Feedrate didefinisikan menggunakan
huruf F diikuti oleh nilai angka (Denford, 2014).
2.2.2
Fungsi Spindle Speed
Kecepatan rotasi dari alat ini sehubungan dengan benda yang
dipotong disebut spindle atau kecepatan memotong. Kecepatan
spindle didefinisikan menggunakan huruf S diikuti oleh nilai angka
menandakan poros RPM (revolutions per minute) (Denford, 2014).
2.2.3
Pengenalan G Codes
G Codes adalah kode G yang digunakan untuk menentukan
gerakan mesin atau bisa disebut gerakan geometri fungsinya untuk
gerakan lurus, pemotongan lurus dan operasi pengeboran. G codes
biasanya diprogram pada awal baris program. G codes didefinisikan
huruf G dan diikuti dua digit angka sebagai bisa dilihat pada gambar
2.2 (Denford, 2014).
Gambar 2.2 Bentuk G-code
(Denford)
7
2.2.4
Daftar G Codes
Gambar 2.3 Daftar G Code dan Fungsinya
(Denford, 2014)
8
2.2.5
G Codes - G00 (Rapid Positioning/Traverse)
Kode G00 mengeksekusi gerakan non cutting pada feedrate
cepat ke posisi koordinasi tertentu dalam bidang kerja (beroperasi di
bawah koordinat gerakan) yang diprogram. Bisa di lihat bentuk
perintah G00 pada gambar 2.4 (Denford, 2014).
Gambar 2.4 Bentuk G00
(Denford, 2014)
Pada gambar 2.4 bisa dilihat instruksi untuk melakukan peritah
G00, sumbu X, Y dan Z bergerak bersamaan dengan feedrate
maksimal, perintah G00 telah menginstruksikan X dan Y untuk mulai
bergerak, dengan feedrate maksimal. Ketika kedua sisi mulai bergerak
alat akan bergerak untuk melintasi diagonal, gabungan dua sumbu
yang akan bergerak bersama-sama. Ketika salah satu sumbu mencapai
koordinat
finishing
yang
lain
akan
terus
bergerak
menyelesaikan koordinatnya sendiri (Denford, 2014).
sampai
9
Gambar 2.5 Pergerakan G00
(Denford)
Gambar 2.5 adalah instruksi untuk melakukan peritah G00,
tiga slide (sumbu X, Y dan Z) bergerak bersamaan dengan feedrate
maksimal. Pada contoh diatas perintah G00 telah menginstruksikan X
dan Y untuk mulai bergerak dengan feedrate maksimal, ketika kedua
sisi mulai bergerak alat akan bergerak untuk melintasi diagonal,
gabungan gerakan dua sumbu yang bergerak bersama-sama, ketika
salah satu sumbu mencapai koordinat finishing, yang lain akan terus
bergerak sampai menyelesaikan koordinatnya sendiri (Denford, 2014).
2.2.6
G Codes – G01 (Linear Interpolation)
Kode G01 mengeksekusi gerakan memotong mengikuti garis
lurus dengan memberikan nilai federate. Bisa dilihat bentuk perintah
G01 pada gambar 2.6 (Denford, 2014).
10
Gambar 2.6 Bentuk Penulisan G01
(Denford)
Nilai feedrate diprogram ke dalam G01, perintah G01 adalah
feedrate untuk semua sumbu jalur pemotongan, bukan untuk feedrate
pada setiap sisi sumbu yang bergerak sejajar dengan arah sumbu X,
Y atau Z. Pada gerakan ketiga sumbu tersebut alat ini akan bergerak
dalam garis lurus diagonal (Denford, 2014).
Gambar 2.7 Gerakan G01
(Denford)
Gambar 2.7 merupakan contoh pergerakan program G01
dengan contoh G-code program G01 X100 Y50 F150.
11
2.2.7
G Codes - G02 dan G03 (Linear Interpolation)
Kode G02 mengeksekusi gerakan memotong mengikuti arah
melingkar searah jarum jam, sedangkan kode G03 mengeksekusi
gerakan memotong yang berlawanan dengan arah jarum jam, tetap
pada koordinat yang sama. Bisa di lihat pada gambar 2.8 (Denford,
2014).
Gambar 2.8 Sistem Koordinat G02 dan G03
(Denford, 2014)
2.2.8
G Codes – G20 dan G21
Kode G21 adalah pengontrol mesin yang dapat diprogram
untuk memberikan nilai masukan yang ditetapkan dalam satuan
inches atau millimeter (Denford, 2014).
2.3
M Codes
M Codes adalah kode yang digunakan oleh mesin CNC untuk sinyal
perintah on/off pada mesin, contoh fungsinya M05 - spindle berhenti dan lainlain untuk menghentikan pergerakan mesin. M codes biasanya diprogram pada
awal blok. M Codes di definisikan huruf M dan dua digit, bisa dilihat pada
gambar 2.9 (Denford, 2014).
Gambar 2.9 Bentuk M Codes (Denford, 2014)
12
Gambar 2.10 Daftar M Codes dan Fungsinya
(Denford, 2014)
Gambar 2.10 memperlihatkan macam-macam M codes CNC, tetapi
pada umumnya tidak semua M codes di gunakan pada mesin CNC. Ada juga
M codes yang ditandai dengan * yang akan dijalankan pada akhir baris
program, yaitu setelah sumbu gerakan selesai, dalam satu baris perintah hanya
bisa memasukan satu perintah M codes, bila diberikan lebih dari satu maka
yang akan dijalankan adalah M codes paling terakhir (Denford, 2014).
2.3.1
M Codes – M00 (Program Stop)
Program yang sedang berjalan mendapatkan perintah M00
dalam suatu baris maka program akan dihentikan, jika ingin program
dilanjutkan maka harus menekan tombol start secara manual (Denford,
2014).
13
2.3.2
M Codes – M02 (End Program)
Kode ini menunjukkan akhir dari sebuah program dan
melakukan fungsi reset pengontrol mesin secara umum, mesin CNC
akan kembali pada keadaan awal (Denford, 2014).
2.3.3
M Codes – M03 (Spindle Forward)
Kode M03 spindle Forward searah jarum jam dari poros yang
sudah ditentukan (Denford, 2014).
2.3.4
M Codes – M05 (Spindle Stop)
Kode M05 untuk menghentikan poros yang berputar, ini akan
diaktifkan pada akhir baris program, setelah semua pergerakan sumbu
selesai (Denford, 2014).
2.4
Gcodetools pada Inkscape
Gcodetools merupakan salah satu subMenu pada Inkscape yang
berguna untuk mengubah file gambar dalam bentuk SVG menjadi file dengan
bentuk NGC (G Codes). Di dalam gcodetools inkscape terdiri dari macammacam tools untuk head khusus pada mesin CNC, berikut adalah jenis-jenis
yang gcodetools: default, cylinder, code plasma, tangent knife, lathe cutter,
dan graffiti (Nick, 2009).
2.5
Pemograman AWK
Nama AWK berasal dari inisial desainer: Alfred V. Aho, Peter J.
Weinberger, dan Brian W. Kernighan. Versi asli dari AWK ditulis pada tahun
1977, pada tahun 1985 versi baru dibuat dengan bahasa pemrograman yang
telah disempurnakan. AWK adalah suatu bahasa pemrograman untuk
menangani tugas memanipulasi data secara bersamaan dengan hanya
menggunakan beberapa baris program, dengan pattern action dan sedikit mirip
dengan bahasa C tetapi secara otomatis menangani input. AWK adalah bahasa
pemrograman yang digunakan untuk memanipulasi teks (The AWK Manual,
1995).
14
Pemrograman AWK terdiri dari serangkaian aturan, secara syntak
aturan terdiri pola diikuti dengan tindakan, tindakan ditutup dalam kurung
kurawal untuk memisahkan dari pola, pengaturan pola biasanya dipisahkan
oleh baris baru, oleh karena itu sebuah AWK di program seperti ini:
Pola {aksi}
Pola {aksi}
…
Contoh soal dalam BBS-list:
camelot
555-0542
300
C
core
555-2912
1200/300
C
fooey
555-1234
2400/1200/300
B
foot
555-6699
1200/300
B
macfoo
555-6480
1200/300
A
Perintah berikut ini untuk menjalankan program awk yang memiliki
tujuan mencari input ‘BBS-list’ untuk karakter string ‘foo’.
Awk ‘/foo/ {print $0}’ BBS-list
Baris yang mengandung ‘foo’ yang ditemukan akan dicetak karena
‘print $0’ berarti mencetak baris ini, bisa dilihat bahwa garis miring ‘/’
mengelilingi string ‘foo’ dalam program AWK garis miring menunjukkan
bahwa ‘foo’ adalah pola untuk mencari, berikut adalah hasil output dari
program diatas (Piet van Oostrum, 1998).
Fooey
555-1234
2400/1200/300
B
Foot
555-6699
1200/300
B
Macfoo
555-6480
1200/300
A
15
2.6
Pengembangan Geometris dari Transisi lingkaran
Sebuah biarc terdiri dari dua busur lingkaran yang tangensial dimana
mereka saling bertemu.
Gambar 2.11 Garis Melengkung (Chandraputla & Osler , 2011)
Pada gambar 2.11 diperlihatkan garis kurva memiliki titik belok pada
B, C dan D. dalam pengembangan biarcs bisa diketahui titik-titik belok serta
titik A pada awal dan titik E diakhir, ditarik garis tangent dari A sampai E,
garis P, Q, R dan S didapat dari garis pinggir lengkungan, bisa dilihat bahwa
disetiap segitiga APB, BQC, CRD, DSE memiliki jari-jari kelengkungan
(Chandraputla & Osler, 2011).
Gambar 2.12 Biarc pada Segitiga
(Chandraputla & Osler , 2011)
Pada gambar 2.12 diperlihatkan cara pengembangan biarc untuk
bidang gambar sebuah segitiga. Bisa dilihat sudut CAB dilambangkan dengan
α dan sudut CBA di lambangkan dengan β, yang harus di lakukan adalah
menarik dua garis busur, garis busur pertama dari titik A yang memiliki
tangent yaitu garis AC dan busur kedua dari titik B dan garis BC sebagai
tangentnya dan T adalah garis bertemunya dua busur tersebut, dimana mereka
memiliki garis tangent EF bisa dilihat T sebagai titik transisi.
16
Gambar 2.13 Geometri Biarc
(Chandraputla & Osler , 2011)
Pada gambar 2.13 bisa dilihat titik C1 dilihat dari lengkung AT,
dimana garis AD memiliki posisi 90o terhadap garis AC, begitu juga dengan
C2 dilihat garis lengkung BT, dimana garis BD memiliki posisi 90o terhadap
garis BC, dilambangkan θ1 dan θ2 adalah garis tengah pada masing-masing
garis lengkung, karena sudut ADB adalah α + β, dari segitiga DC1C2 di
dapatkan persamaan sebagai berikut: θ1 + θ2 = α + β.
2.7
Desain dan Pengaturan Mesin CNC
Komponen-komponen
pendukung
yang
dibutuhkan
dalam
pengoperasian mesin CNC Jurusan Sistem Komputer Universitas Bina
Nusantara yaitu cermin untuk memantulkan sinyal laser dari tabung laser,
selain itu lensa fokus di ujung bidang laser untuk memberikan fokus sinar
yang telah di pantulkan cermin tersebut, pengaturan meja potong juga di atur
sesuai besar kebutuhan pemotongan.
17
Gambar 2.14 Pengaturan Sistem berbasis CO2
(Linggarjati & Hedwig, 2012)
Pada gambar 2.14 bisa dilihat ada tiga set 20mm cermin berlapis emas,
dan sebuah lensa 18mm (f=50.88mm) yang terpasang pada sumbu X, Y dan Z
(Linggarjati & Hedwig, 2012).
18
Gambar 2.15 Bentuk Tampilan Mesin CNC Universitas Bina Nusantara
(Linggarjati & Hedwig, 2012)
Ukuran mesin CNC Universitas Bina Nusantara adalah 800mm x 700mm
x1200mm seperti pada gambar 2.15 dan blok diagram dapat dilihat pada
gambar 2.16 dengan ukuran bidang kerjanya adalah 500mm x 450mm. Mesin
CNC ini memiliki tiga sumbu (X, Y, dan Z) dengan dua rak untuk
menempatkan CPU di dalamnya. Sebagian besar mesin CNC menggunakan
meja bergerak, sedangkan untuk desain meja ini tidak menggunakan meja
bergerak sumbu (X dan Y), sebagai gantinya dua sumbu di dorong oleh motor
servo DC (Tamagawa 200W) dan stepper motor (VEXTA ASM 66A – 1.7A –
100W), dalam rangka untuk memberikan gerakan yang sangat akurat, yang
memegang pena, dipasang sepanjang sumbu Z. Hal ini juga didorong oleh
motor (VEXTA ASD 13AA – 0.9A).
19
Gambar 2.16 Blok Diagram Dari Mesin CNC
(Linggarjati & Hedwig, 2012)
Download