PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
Tugas Akhir
PENGUBAH GAMBAR VEKTOR MENJADI PERINTAH GERAKAN ROBOT DALAM G-CODE Ditujukan untuk memenuhi salah satu syarat memperoleh gelar Sarjana Teknik pada Program Studi Teknik Elektro Jurusan Teknik Elektro Fakultas Sains dan Teknologi Universitas Sanata Dharma
disusun oleh :
LEONARDUS DWI NIANDITYO NIM : 145114059
PROGRAM STUDI TEKNIK ELEKTRO JURUSAN TEKNIK ELEKTRO FAKULTAS SAINS DAN TEKNOLOGI UNIVERSITAS SANATA DHARMA YOGYAKARTA 2017
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
Final Project
CONVERSION OF VECTOR IMAGE INTO COMMANDS OF ROBOTIC MOVEMENT IN G-CODE In a partial fulfilment of the requirements for the degree of Sarjana Teknik Department of Electrical Engineering Faculty of Science and Technology, Sanata Dharma University
LEONARDUS DWI NIANDITYO NIM : 145114059
DEPARTMENT OF ELECTRICAL ENGINEERING FACULTY OF SCIENCE AND TECHNOLOGY SANATA DHARMA UNIVERSITY 2017
ii
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
iii
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
iv
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
HALAMAN PERSEMBAHAN DAN MOTTO HIDUP
Tidak ada hasil yang mengkhianati usaha....
Dalam Kesesakanku, aku berseru kepada Tuhan; lalu Ia menjawab dan membebaskanku (Mazmur 118:5)
Education is not the learning of fact, but the training of the mind to think (albert einstein)
Skripsi ini kupersembahkan untuk…..
Yesus Kristus Juru Selamat & Pembimbingku yang Setia Orangtuaku tercinta Bapak Suitbertus Warsianto dan Ibu Cypriana Sri Wahyuningsih Buat Mba Deta dan Mbah Darko tercinta Program Studi Teknik Elektro USD Sahabat dan Teman-teman Seperjuangan
v
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
vi
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
vii
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
INTISARI Proses permesinan otomatis atau CNC adalah proses pembuatan sebuah produk berdasarkan gambar yang sudah diterjemahkan dalam bentuk g-code. Penerjemahan dari gambar menjadi g-code biasanya dilakukan secara manual dengan memasukkan fungsifungsi yang tersedia pada g-code atau dengan software generator. Penelitian ini membuat program untuk mengubah gambar vektor menjadi g-code. Program ini untuk mensimulasikan proses penerjemahan tersebut. Program ini menggunakan software visual basic 6.0. Program pengubah gambar vektor menjadi g-code pada penelitian ini terdapat 3 jenis pilihan gambar yaitu garis, kotak dan lingkaran. Penggambaran pada sebuah picture box berukuran 150 x 150 mm sebagai batas area kerja. Penggambaran dengan cara click and drag menggunakan mouse pada picture box. Gambar akan diterjemahakan menjadi g-code. G-code disimpan dalam format ekstensi .txt. Hasil akhir penelitian adalah program g-code. Program g-code diuji coba dengan menggunakan simulasi pada software mach3. Gambar yang dihasilkan dari program pengubah gambar vektor menjadi g-code adalah kotak, lingkaran, garis dan gabungan dari ketiga gambar tersebut seperti segitiga dan tanda tambah. Skala panjang garis terkecil yang dapat dibuat adalah 0,26459 untuk satuan milimeter dan 0,010416 untuk satuan inch. Kata kunci : visual basic 6.0. , G-code, CNC.
viii
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
ABSTRACT Automatic machining or CNC process is the process of making a product based on the images that have been translated in g-code. Translation of images into a g-code is usually do it manually by entering the functions that available on g-code or by software generator. This research is made a program to convert vektor images into a g-code. The program is to simulate the translation process. The program using visual basic 6.0 software. The conversion of vector image into a g-code program in this research there are three kinds of options, there are drawing lines, rectangles and circles. A drawing on a picture box measuring 150 x 150 mm as the limit of the work area. A drawing with click and drag method using mouse in picture box. The picture will be generated into g-code. G-code saved in .txt format. The final results are g-code program. G-code program tested using the simulation by Mach3. The picture be generated from this program are squares, circles, lines and combination of three images such as triangle and plus sign.The smallest length lines scale that can be made is 0.26459 for millimeter units and 0.010416 for inch units. Keywords : visual basic 6.0. , G-code, CNC.
ix
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
KATA PENGANTAR Puji dan syukur penulis ucapkan kepada Tuhan Yesus Kristus atas perlindungan, penerangan, penyelenggaraan, dan pendampingan dalam proses pembuatan tugas akhir ini, sehingga penulis dapat menyelesaikan tugas akhir dengan judul “Pengubah Gambar Vektor Menjadi Gerakan Robot”. Tugas akhir ini disusun untuk memenuhi salah satu syarat memperoleh gelar Sarjana Teknik (S.T) bagi mahasiswa program S-1 Jurusan Teknik Elektro Universitas Sanata Dharma Yogyakarta. Selama proses penyusunan skripsi ini, penulis menyadari bahwa terselesainya penulisan skripsi ini tidak terlepas dari dukungan, doa, bimbingan dan bantuan dari banyak pihak. Oleh karena itu, pada kesempatan ini penulis mengucapkan terima kasih yang tulus dari lubuk hati yang paling dalam kepada: 1.
Bapak Sudi Mungkasi, S.Si., M.Math.Sc., Ph.D, selaku Dekan Fakultas Sains dan Teknologi Universitas Sanata Dharma.
2.
Bapak Petrus Setyo Prabowo, S.T., M.T., selaku Ketua Program Studi Teknik Elektro Universitas Sanata Dharma Yogyakarta.
3.
Bapak Djoko Untoro Suwarno S.Si., M.T. selaku Dosen Pembimbing tugas akhir yang telah banyak meluangkan waktu untuk memberikan bimbingan.
4.
Bapak Martanto, M.T., dan Bapak Ir.Tjendro,M.Kom., yang telah memberikan saran dan kritik dalam menyelesaikan penulisan tugas akhir.
5.
Seluruh dosen Teknik Elektro yang telah memberikan ilmu yang bermanfaat kepada penulis selama kuliah.
6.
Bapak Dian Artanto, S.T., M. Eng., yang telah bersedia meluangkan waktu untuk memberikan masukan dalam proses pembuatan program.
7.
Orangtuaku tercinta Bapak S. Warsianto, Ibu C. Sri Wahyuningsih, Mba Deta, dan Mbah Darko, serta semua keluaga besarku tercinta atas segala dukungan, doa, perhatian, kasih serta biaya yang diberikan selama menempuh studi di Universitas Sanata Dharma.
8.
Pacarku tercinta Stefany Putrihan Anjarsari Budhy yang selalu mendoakan dan terus memberikan semangat dalam mengerjakan.
9.
Sahabat-sahabat dari CBC team yang selalu memberi doa, dukungan dan hiburan agar cepat menyelesaikan skripsi ini
x
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
xi
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
DAFTAR ISI Halaman Sampul(Bahasa Indonesia) .........................................................................
i
Halaman Sampul(Bahasa Inggris) .............................................................................
ii
Lembar Persetujuan ...................................................................................................
iii
Lembar Pengesahan ...................................................................................................
iv
Halaman Persembahan ..............................................................................................
v
Lembar Pernyataan Keaslian Karya ..........................................................................
vi
Lembar Pernyataan Persetujuan Publikasi Karya Ilmiah ..........................................
vii
Intisari ........................................................................................................................
viii
Abstract......................................................................................................................
ix
Kata Pengantar...........................................................................................................
x
Daftar Isi ....................................................................................................................
xii
Daftar Gambar ...........................................................................................................
xv
Daftar Tabel ...............................................................................................................
xvii
BAB I PENDAHULUAN 1.1 Latar Belakang.....................................................................................................
1
1.2 Tujuan dan Manfaat ............................................................................................
2
1.3 Batasan Masalah .................................................................................................
2
1.4 Metodologi Penelitian ........................................................................................
3
BAB II DASAR TEORI 2.1 Jenis Gambar Digital ...........................................................................................
5
2.1.1 Gambar Bitmap .................................................................................................
5
2.1.2 Gambar Vektor ..................................................................................................
6
2.2 Visual Basic 6.0. .................................................................................................
7
2.2.1 TitleBar .............................................................................................................
11
2.2.2 MenuBar ...........................................................................................................
11
2.2.3 Main ToolBar ...................................................................................................
11
2.2.4 Toolbox .............................................................................................................
12
2.2.5 Project ..............................................................................................................
13
2.2.6 Jendela Form ....................................................................................................
14
2.2.7 Jendela Code .....................................................................................................
14
xii
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
2.2.8 Jendela Properties ............................................................................................
15
2.2.9 Tipe Data pada Visual Basic 6.0.......................................................................
16
2.2.10 Visual Basic 6.0 Graphic ................................................................................
17
2.2.11 Komunikasi Serial pada Visual Basic 6.0 .......................................................
18
2.2.12 Operasi File pada Visual Basic 6.0 ................................................................
19
2.3 G-code ................................................................................................................
21
BAB III RANCANGAN PENELITIAN 3.1 Blok Diagram ......................................................................................................
24
3.2 Perancangan Perangkat Lunak (Software)...........................................................
25
3.2.1 Perancangan Visual Basic sebagai perintah Masukan ......................................
26
3.2.2 Perancangan Interface Visual Basic 6.0 ...........................................................
27
3.2.3 Fitur Tambahan Komunikasi Serial Pengiriman File G-code ..........................
30
BAB IV HASIL DAN PEMBAHASAN 4.1 Hasil yang Diharapkan ........................................................................................
34
4.2 Hasil Perancangan Perangkat Lunak sebagai GUI ..............................................
34
4.3 Cara Pengoperasian Program ..............................................................................
37
4.3.1 Memilih Jenis Satuan .......................................................................................
37
4.3.2 Memilih Jenis Gambar .....................................................................................
38
4.3.3 Menggambar pada Picture Box ........................................................................
39
4.3.4 Fungsi Command Button G-code Generator, Clear, dan End .........................
42
4.4 Pembahasan Hasil Program G-code....................................................................
45
4.4.1 Hasil Program G-code Gambar Garis ..............................................................
46
4.4.2 Hasil Program G-code Gambar Kotak .............................................................
47
4.4.2 Hasil Program G-code Gambar Lingkaran ......................................................
48
4.5 Pengujian Program G-code .................................................................................
50
4.5.1 Pengujian Program G-code Gambar Garis ......................................................
51
4.5.2 Pengujian Program G-code Gambar Lingkaran ...............................................
53
4.5.3 Pengujian Program G-code Gambar Kotak .....................................................
56
4.5.4 Pengujian Program G-code Gambar Gabungan ...............................................
58
4.5.4 Pengujian Baris Maksimal (100 Baris) .............................................................
59
xiii
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
4.6 Pembahasan Fitur Tambahan Komunikasi Serial untuk Pengiriman G-code .....
62
BAB V KESIMPULAN 5.1 Kesimpulan ..........................................................................................................
64
5.2 Saran ....................................................................................................................
64
DAFTAR PUSTAKA ................................................................................... .............
65
LAMPIRAN
xiv
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
DAFTAR GAMBAR Halaman Gambar 2.1 Contoh Gambar Bitmap .......................................................................
5
Gambar 2.2 Contoh Gambar Vektor ........................................................................
6
Gambar 2.3 Ilustrasi dari hubungan antara object, property, method dan event .....
8
Gambar 2.4 Modul Aplikasi pada Visual Basic 6.0. ...............................................
9
Gambar 2.5 Interface Visual Basic 6.0. ...................................................................
10
Gambar 2.6 Tampilan Jendela Project Explorer .....................................................
14
Gambar 2.7 Tampilan Jendela Form pada Visual Basic 6.0. ..................................
14
Gambar 2.8 Tampilan Jendela Code pada Visual Basic 6.0)...................................
15
Gambar 2.9 Tampilan Jendela Properties pada Visual Basic 6.0 ...........................
15
Gambar 2.10 Sistem Koordinat pada Visual Basic 6.0 .............................................
17
Gambar 2.11 Tampilan Jendela Component..............................................................
18
Gambar 2.12 Pengukuran Absolute dan Increamental. .............................................
23
Gambar 3.1 Diagram Blok Keseluruhan Sistem .....................................................
24
Gambar 3.2 Diagram Alir secara umum Perangkat Lunak (Software)....................
25
Gambar 3.3 Diagram Alir Visual Basic 6.0 sebagai perintah masukan ..................
26
Gambar 3.4 Interface Software Visual Basic 6.0 untuk membuat gambar vektor ..
27
Gambar 3.5 Referensi Titik-titik koordinat .............................................................
28
Gambar 3.6 Diagram Alir Program “ Membuat gambar vektor atau clear” pada VB629 Gambar 3.7 Diagram proses komunikasi ................................................................
30
Gambar 3.8 Tampilan gambar kotak pada frame gambar .......................................
31
Gambar 3.9 Tampilan file g-code dalam format .txt ..............................................
32
Gambar 3.10 Tampilan layar untuk memulai proses komunikasi .............................
32
Gambar 3.11 Tampilan layar setelah selesai komunikasi..........................................
33
Gambar 4.1 Tampilan GUI .......................................................................................
35
Gambar 4.2 Pemilihan Jenis Unit/ Satuan .................................................................
37
Gambar 4.3 Kotak Peringatan untuk Memilih Jenis Unit/ Satuan ............................
38
Gambar 4.4 Proses Pemilihan Command Button ......................................................
39
Gambar 4.5 Proses membuat gambar garis ...............................................................
40
Gambar 4.6 Proses membuat gambar kotak ..............................................................
40
xv
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
Gambar 4.7 Proses membuat gambar lingkaran ........................................................
41
Gambar 4.8 Inisialisasi Variabel ...............................................................................
42
Gambar 4.9 Proses membuat gambar segitiga...........................................................
42
Gambar 4.10 Kotak informasi jika belum ada proses penggambaran .......................
43
Gambar 4.11 Tampilan program g-code pada list box ..............................................
43
Gambar 4.12 Tampilan kotak informasi data telah tersimpan...................................
44
Gambar 4.13 Tampilan program pada notepad .........................................................
44
Gambar 4.14 Tampilan program pada notepad .........................................................
45
Gambar 4.15 File g-code untuk gambar garis ...........................................................
46
Gambar 4.16 File g-code untuk gambar kotak ..........................................................
47
Gambar 4.17 Program untuk menentukan penggunaan perintah G2 dan G3 ............
48
Gambar 4.18 File g-code gambar lingkaran untuk perintah G3 ................................
49
Gambar 4.19 File g-code gambar lingkaran untuk perintah G2 ................................
50
Gambar 4.20 Pengujian gambar garis satuan milimeter dengan software CNC .......
51
Gambar 4.21 Pengujian gambar garis untuk satuan inch dengan software CNC ......
52
Gambar 4.22 Pengujian gambar dalam satuan milimeter dengan perintah G2 .........
53
Gambar 4.23 Pengujian gambar lingkaran satuan inch dengan perintah G3.............
54
Gambar 4.24 Gambar Lingkaran Melebihi Area Gambar .........................................
55
Gambar 4.25 Pengujian gambar kotak satuan milimeter ...........................................
56
Gambar 4.26 Pengujian gambar kotak dengan satuan inch .......................................
57
Gambar 4.27 Pengujian gambar segitiga ...................................................................
58
Gambar 4.28 Pengujian gambar tanda tambah ..........................................................
59
Gambar 4.29 Gambar yang Menghasilkan G-code 100 baris ...................................
60
Gambar 4.30 Pengujian untuk Baris Maksimal G-code. ...........................................
61
Gambar 4.31 Skala Ketelitian pada Software Mach3 ................................................
62
Gambar 4.32 Proses Komunikasi Serial ....................................................................
63
xvi
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
DAFTAR TABEL Halaman Tabel 2.1 Keterangan fungsi tombol pada Main Toolbar .........................................
11
Tabel 2.2 Keterangan kontrol objek pada Toolbox ...................................................
12
Tabel 2.3 Fungsi dari beberapa Properties form dan object ....................................
16
Tabel 2.4 Tipe Data pada Visual Basic 6.0. ..............................................................
17
Tabel 2.5 Metode Grafis pada Visual Basic 6.0. ......................................................
18
Tabel 2.6 Macam-macam G-code. ...........................................................................
21
Tabel 4.1 Bagian-bagian GUI....................................................................................
35
Tabel 4.2 Perbedaan Titik Referensi Pada Bab Perancangan dengan Hasil ..............
36
xvii
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
BAB I PENDAHULUAN 1.1 Latar Belakang Seiring dengan perkembangan teknologi dalam bidang manufaktur (pembuatan produk), proses permesinan manual sudah mulai tergantikan oleh proses pemesinan otomatis. Meskipun di Indonesia proses pemesinan manual lebih sering digunakan akibat dari efek biaya. Permesinan otomatis lebih banyak digunakan oleh industri-industri skala besar yang menuntut kecepatan produksi dan kepresisian hasil produksi. Salah satu alat pemesinan otomatis yang sering digunakan di berbagai industri adalah mesin CNC (Computer Numerical Control)[1]. Sistem CNC bekerja dengan dikontrol oleh sebuah komputer untuk dapat membaca dan menterjemahkan perintah dari bahasa mesin atau Gcode untuk menjalankan sebuah alat. Program NC (Numerical Control) atau yang lebih dikenal dengan G-code adalah salah satu program yang menjelaskan sebuah perintah selangkah demi selangkah untuk menunjukan langkah apa yang sedang dijalankan atau dieksekusi oleh mesin CNC. Pada awalanya, mesin CNC digunakan secara eksklusif oleh industri kedirgantaraan, tetapi penggunaan mesin CNC sekarang ini sudah disesuaikan dengan industri lainnya seperti industri kayu dan plastik[2].
Cara kerja Mesin CNC sendiri adalah dengan mengatur program awal pada software mesin CNC berupa file G-code, untuk mengatur gambar dan alur kerja mesin yang disesuaikan dengan material bahan. Program CNC tersebut kemudian dikirim dan dieksekusi oleh prosesor pada mesin CNC sehingga menghasilkan pengaturan motor pada mesin CNC untuk menggerakan perkakas untuk melakukan proses kerja secara otomatis sehingga menghasilkan produk yang sesuai program sebelumnya.
Proses pembuatan file G-code yang berupa kode-kode seperti G00, G01, dll dari sebuah gambar bidang 2 dimensi atau gambar vektor agar dapat dieksekusi oleh sebuah mesin ataupun robot dirasa kurang fleksibel dan membutuhkan waktu yang lebih lama karena harus menentukkan titik-titik koordinat dari suatu gambar bidang 2 dimensi yang sudah ditentukan. Maka dari itu dibutuhkan sebuah program yang digunakan untuk 1
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI 2
menerjemahkan gambar vektor atau gambar bidang 2 dimensi yang sudah ditentukan menjadi bentuk file G-code. File G-code dalam kasus ini akan diproses oleh mikrokontroller arduino uno R3 untuk kemudian diterjemahkan menjadi gerakan pada lengan robot. Didalam penulisan ini akan dibahas mengenai cara pembuatan program untuk menerjemahkan gambar vektor menjadi file G-code dengan software Visual Basic 6.0.
1.2 Tujuan dan Manfaat Tujuan dari penelitian adalah untuk menghasilkan sebuah program (software) untuk menerjemahkan beberapa gambar vektor bidang 2 dimensi yang sudah ditentukan yaitu, lingkaran, kotak, segitiga dan tanda tambah (plus/+) kedalam bentuk g-code. G-code akan disimpan dalam format teks dengan ektensi txt. G-code yang dihasilkan akan diimplementasikan pada software CNC untuk melihat kesesuaian antara penggambaran pada software visual basic 6.0. dengan yang dihasilkan pada software CNC atau gambar aktual dari gerakan lengan robot dengan perintah g-code. Penelitian ini memiliki manfaat yang dapat membantu pekerjaan manusia dalam membuat design bidang 2 dimensi sebagai masukan/input untuk melakukan kegiatan industri karena mesin CNC atau lengan robot dapat melakukan pekerjaan jarak jauh secara presisi, aman dan dapat melakukan pekerjaan secara berulang dengan mengikuti pola tertentu seperti pada proses pengelasan, pengecatan dan kegiatan otomasi industri lainnya.
1.3 Batasan Masalah Pembatasan masalah dimaksudkan untuk mempermudah pelaksaan penelitian dan penulisan skripsi sehingga tidak terjadi kesalahan dalam menerjemahakan judul yang dimaksud. Batasan masalah untuk penelitian ini adalah : a.
Metode menggambar yang digunakan adalah dengan menghubungkan titik-titik referensi yang akan membentuk gambar bidang 2 dimensi (gambar vektor) pada personal computer (PC) dengan menggunakan program Visual Basic sebagai tampilan untuk diterjemahkan menjadi menjadi file G-code.
b.
Jumlah baris maksimal adalah 100 baris dalam sebuah file.
c.
Daerah kerja yang digunakan untuk menggambar sebesar kertas A4.
d.
Untuk menggambar bidang 2 dimensi pada sumbu X dan Y.
e.
Koordinat yang digunakan adalah koordinat absolute
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI 3
f.
Hanya menggunakan beberapa perintah pada kode g atau g-code, yaitu G00, G01, G02, dan G03.
g.
Keluaran berupa file G-code.
h.
Diimplementasikan pada lengan robot memliki gerakan rotasi dan 3 derajat kebebasan atau Degree of Fredoom (3-DOF) atau software CNC (Mach3).
1.4 Metodologi Penelitian Metodologi yang digunakan dalam penelitian ini adalah sebagai berikut: 1.
Studi literatur dan referensi, yaitu mempelajari buku-buku dan makalahmakalah dari pustaka yang berhubungan dengan pembuatan gambar bidang 2 dimensi Visual Basic 6.0 dan pemrograman G-code.
2.
Studi kasus terhadap program atau software (perangkat lunak) yang pernah dibuat sebelumnya. Tahap ini guna mempelajari fungsi dari setiap elemen yang terdapat pada bahasa Visual Basic 6.0.
3.
Perancangan untuk pembuatan program pada Visual Basic 6.0 yang dapat menerjemahkan gambar vektor menjadi bentuk G-code sebagai keluaran. Tahap ini guna menentukan program dalam menerjemahkan gambar vektor sebagai input menjadi file G-code sebagai output.
4.
Pembuatan program Visual Basic 6.0. Pada tahap ini bertujuan untuk memberikan program untuk menerjemahkan gambar vektor menjadi bentuk Gcode sebagai kecerdasan buatan yang berguna untuk mengendalikan gerakan pada software CNC sesuai dengan input yang diinginkan. Input berupa gambar vektor bidang 2 dimensi yang sudah ditentukan yaitu hanya lingkaran, kotak, segitiga dan tanda tambah (plus/+).
5.
Proses pengujian dan pengambilan data. Teknik pengujian dan pengambilan data dilakukan dengan cara menguji file yang berisi g-code hasil dari penerjemahan gambar pada software Microsoft Visual Basic 6.0 dengan software CNC (Mach3). Teknik pengujian yaitu dengan menekan tombol (dalam bentuk command button di VB 6.0) berupa pilihan bentuk bidang 2 dimensi yang akan digambar melalui program pada PC. Gambar yang sudah dibuat kemudian diterjemahkan ke dalam bentuk g-code. G-code disimpan dalam file dengan format teks. File yang berisi g-code akan diuji dengan software CNC (Mach3).
Pengujian untuk mengetahui kesesuaian pada
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI 4
software CNC (Mach3) dengan gambar yang dipilih pada software Microsoft Visual Basic 6.0. Teknik pengambilan data dilakukan untuk melihat bentuk bidang 2 dimensi yang berhasil digambar. 6.
Analisa dan kesimpulan hasil perancangan. Analisa data dilakukan berdasarkan kepresisian dan kesesuaian hasil pola gambar bidang 2 dimensi yang digambar dengan pada software cnc. Teknik
analisa data dilakukan dengan
membandingkan antara hasil gambar bidang 2 dimensi di papan gambar dari gerakan pada software cnc (Mach3) dengan perintah program Microsoft Visual Basic 6.0.. Kesimpulan diperoleh berdasarkan hasil analisa data.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
BAB II DASAR TEORI 2.1 Jenis Gambar Digital Didalam dunia digital ada 2 jenis gambar yang dikenal dalam dunia digital yaitu gambar bitmap dan gambar vektor. Untuk lebih mengetahui tentang penjelasan dan pebedaan pada gambar bitmap dan gambar vektor dapat dilihat dibawah ini.
2.1.1 Gambar Bitmap Gambar bitmap adalah gambar yang terdiri dari sekumpulan titik-titik (pixel) yang mempunya warna tertentu dan berdiri sendiri sehingga membentuk sebuah gambar. Karena gambar jenis ini berupa kumpulan titik yang bersatu sehingga kerapatan dari titik – titik tersebut menentukan kualitas gambar yang dibentuknya. Maka dikenallah istilah resolusi dengan satuan pixel dan dpi (dot per inch). Cara yang paling mudah untuk mengenali gambar jenis ini adalah dengan cara memperbesar gambar tersebut dengan fasilitas zoom in, semakin diperbesar maka akan tampak buram, kemudian terlihat kotak – kotak dan pada zoom in tingkat akhir hanya akan terlihat kumpulan titik – titik. Contoh gambar bitmap dapat dilihat pada gambar 2.1.
Gambar 2.1. Contoh Gambar Bitmap [3].
5
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI 6
Contoh software yang berbasis bitmap adalah Adobe Photoshop, Paint, dan CorelPhotoPaint. Adapun ekstensi file gambar bitmap diantaranya JPG/JPEG, BMP, TIFF, GIF dan PNG. Output data dari kamera digital dan scanner pun biasanya berupa tipe gambar ini.
2.1.2 Gambar Vektor Gambar vektor adalah gambar yang dibuat dari unsur garis dan kurva yang disebut vektor. Kumpulan dari beberapa garis dan kurva ini akan membentuk suatu obyek atau gambar.
Gambar 2.2. Contoh Gambar Vektor [3]. Gambar vektor tidak tergantung pada resolusi. Kita dapat memperbesar atau memperkecil ukuran gambar tanpa kehilangan detail gambarnya. Disamping itu gambar vektor akan mempunyai ukuran file yang lebih kecil dan dapat diperbesar atau diperkecil bentuknya tanpa merubah ukuran filenya. Contoh gambar vektor dapat dilihat pada gambar 2.2. Software yang digunakan untuk membuat gambar vektor antara lain CorelDRAW, Macromedia Freehand, Adobe Illustrator, dan lain-lain. Contoh ekstensi file Vektor antara lain adalah CDR, CGM dan SVG. Tipe ini lebih sering digunakan dalam dunia percetakan.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI 7
2.2 Visual Basic 6.0. Microsoft Visual Basic 6.0, biasa dikenal dengan VB 6.0, merupakan sebuah bahasa pemrograman yang menawarakan Integrated Development Environmant (IDE) visual untuk membuat program perangkat lunak berbasis GUI (Graphical User Interface) pada sistem operasi Microsoft Windows. Visual Basic 6.0. begitu populer karena menggunakan bahasa basic untuk pemrogramnya [4]. Visual Basic 6.0. merupakan salah satu Development Tool yaitu alat bantu untuk membuat berbagai macam program komputer, khususnya yang menggunakan sistem operasi Windows. Visual Basic 6.0. merupakan salah satu bahasa pemrograman komputer yang mendukung (Object Oriented Programming = OOP) [5]. Dalam pemrograman berbasis objek (OOP), ada istilah yang perlu dipahami. Istilahistilah tersebut antara lain object, property, method dan event. Berikut adalah penjelasan dari object, property, method dan event. 1. Object, adalah komponen di dalam sebuah program. Komponen-komponen ini berada didalam menu toolbox. Komponen tersebut antara lain Pointer, PictureBox, Command Button, dll. 2. Property, adalah karakteristik yang dimiliki objek. Setiap objek di dalam pemrograman Visual Basic 6.0. dapat diatur propertinya sesuai dengan kebutuhan aplikasi. Property yang tidak boleh dilupakan pada setiap komponen adalah “Name”, yang berarti nama variabel (objek) yang akan digunakan dalam scripting. Properti “Name” ini hanya bisa diatur melalui jendela Property, sedangkan nilai peroperti yang lain bisa diatur melalui script seperti Command1.Caption=”Play” Text1.Text=”Visual Basic” Label1.Visible=False Timer1.Enable=True 3. Method, adalah aksi yang dilakukan oleh objek. Bahwa jalannya program dapat diatur sesuai aplikasi dengan menggunakan metode pemrograman yang diatur sebagai aksi dari setiap komponen. Metode inilah tempat untuk mengekpresikan logika pemrograman dari pembuatan suatu prgram aplikasi.
4. Event, adalah kejadian yang dapat dialami oleh objek, Setiap komponen dapat beraksi melalui event, seperti event click pada command button yang tertulis dalam layar script Command1_Click, atau event Mouse Down pada picture yang tertulis dengan Picture1_MouseDown. Pengaturan event dalam setiap komponen yang akan menjalankan semua metode yang dibuat [6].
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI 8
Gambar 2.3 berikut ini menunjukkan ilustrasi dari hubungan antara object, property, method dan event. Pada gambar 2.3 objek diilustrasikan dengan sebuah mobil yang memiliki property, method dan event.
Gambar 2.3. Ilustrasi dari Hubungan antara Object, Property, Method dan Event.[7]
Implementasinya dalam sebuah aplikasi misalnya anda membuat form, maka form tersebut memiliki property, method, dan event. Sebagaimana pemrograman visual lain seperti Delphi dan Java, VB juga bersifat event driven progamming. Artinya anda dapat menyisipkan kode program pada event yang dimiliki suatu obyek [7]. Visual Basic 6.0. menyediakan banyak jenis modul aplikasi. Pada gambar 2.4 akan ditunjukkan beberapa jenis modul aplikasi pada kotak dialog New Project berikut ini :
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI 9
Gambar 2.4. Modul Aplikasi pada Visual Basic 6.0 [8] Setiap modul aplikasi pada Visual Basic 6.0 memiliki fungsi dan kegunaannya masing, berikut penjelasan dari fungsi masing-masing dari beberapa modul aplikasi pada Visual Basic 6.0.[4] : 1. Standart EXE : membuat aplikasi Visual Basic standar. 2. Active EXE : membuat aplikasi ActiveX 3. Active DLL : membuat library ActiveX 4. ActiveX Control : membuat kontrol ActiveX 5. VB Application Wizard : membuat aplikasi dengan bantuan wizard. 6. VB Wizard Manager : pusat pengelolaan Wizard Visual Basic. 7. IIS Application : membuat aplikasi IIS (Internet Information Server). 8. DHTML Application : membuat aplikasi DHTML (Dynamic Hypertext Mark-up Language) untuk internet.
Pada tahap awal pemakaian Visual Basic 6.0 sebaiknya diatur tampilan untuk komponen-komponen yang ada dalam Visual Basic 6.0 tersebut. Komponen-komponen yang tidak muncul pada layar dapat ditampilkan pada menu View. Pemograman visual merupakan dimensi baru dalam pembuatan aplikasi karena dapat langsung menggambarkan objek-objek ke layar sebelum dieksekusi. Dalam lingkungan pengembangan visual, sekarang objek yang
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI 10
akan dibuat hasilnya langsung tampil dilayar. Objek yang dibuat itu akan sama hasilnya pada saat program dijalankan, sehingga tidak perlu lagi melakukan pengubahan kode program secara manual. Setelah semua objek diletakkan dalam suatu form, maka semua atribut objek tersebut akan disimpan dalam suatu kode program yang dapat langsung dijalankan [9].
Tampilan pada Microsoft Visual Basic 6.0 terdiri dari interface (antar muka) yang saling berhubungan yaitu : 1.
Bagian menu bar.
2.
Bagian toolbar.
3.
Bagian toolbox.
4.
Bagian form (form designer).
5.
Bagian jendela properties (property window).
6.
Bagian jendela proyek (project explorer).
7.
Bagian jendela kode (code window). Bagian-bagian dari tampilan Microsoft Visual Basic 6.0 seperti terlihat pada gambar 2.5
:
Gambar 2.5. Interface Visual Basic 6.0 [8]
Elemen-elemen dari Microsoft Visual Basic 6.0. seperti terlihat pada gambar 2.1 mempunyai fungsi dan kegunaannya masing-masing. Berikut ini adalah penjelasan mengenai elemen-elemen yang terdapat pada jendela visual basic 6.0[10]:
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI 11
2.1.1 Title Bar Merupakan batang judul yang terletak pada bagian atas jendela program visual basic yang berfungsi untuk menunjukkan nama proyek yang sedang aktif.
2.1.2 Menu Bar Merupakan batang menu yang berisi menu-menu utama, seperti File, Edit, View, Project, dan lain-lain yang berfungsi untuk mengoperasikan program Visual Basic 6.0.
2.1.3 Main Toolbar Merupakan sebuah batang tool yang berisi tombol-tombol dengan gambar ikon yang dapat diklik untuk melakukan suatu perintah khusus secara cepat. Penjelasan masing-masing tombol pada Main Toolbar dapat dilihat pada Tabel 2.1 sebagai berikut :
Tabel 2.1. Keterangan Fungsi Tombol pada Main Toolbar Tombol
Nama Add Standard EXE Project
Digunakan untuk Menambahkan proyek baru tipe standar
Open Project
Menambahkan form baru ke dalam proyek yang sedang aktif. Menampilkan Menu Editor yang digunakan sebagai pembuat menu. Membuka proyek yang sudah pernah dibuka.
Save Project
Menyimpan proyek yang sedang aktif.
Cut
Memotong objek yang sedang dipilih.
Copy
Menyalin objek yang sedang dipilih. Menampilkan objek yang sudah dipotong dengan perintah Cut atau disalin dengan perintah Copy. Mencari teks pada jendela code. Membatalkan suatu perintah yang dijalankan sebelumnya. Mengulangi suatu perintah yang pernah dibatalkan.
Add Form Menu Editor
Paste Find Undo Redo Start Break End
Menjalankan program. Menghentikan sementara program yang sedang dijalankan. Menghentikan program yang sedang dijalankan.
(lanjutan) Tabel 2.1. Keterangan Fungsi Tombol pada Main Toolbar
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI 12
Project Explore Properties Explorer Form Layout Window Object Browser Toolbox
Menampilkan jendela Project Explore. Menampilkan jendela Properties. Menampilkan jendela Form Layout . Menampilkan jendela Object Browser. Menampilkan jendela Toolbox.
2.1.4Toolbox Merupakan kotak perangkat yang terdiri atas beberapa class objek yang digunakan dalam proses pembuatan aplikasi. Setiap class memiliki kontrol yang berbeda-beda untuk pembuatan sebuah aplikasi. Pada toolbox terdapat banyak kontrol sebagai tampilan interface (antar muka) pada Visual Basic 6.0,seperti kontrol command button, checkbox, optionbutton dan lain- lain. Keterangan mengenai kontrol masing-masing class pada menu Toolbox dijelaskan pada Tabel 2.2, sebagai berikut :
Tabel 2.2. Keterangan Kontrol Objek pada Toolbox. Kontrol
Nama Pointer PictureBox Label TextBox Frame
Command Button CheckBox
Digunakan untuk Memilih, mengatur ukuran, dan memindah posisi kontrol yang terpasang pada bagian form. Menampilkan gambar dari sebuah file. Menampilkan teks, di mana pengguna program tidak bisa mengubah teks tersebut. Membuat objek teks, dimana teks tersebut dapat digubah teks tersebut. Mengelompokkan beberrapa kontrol. Frame ini harus dibuat terlebih dahulu sebelum diisi dengan kontrolkontrol yang akan dikelompokkan. Membuat tombol perintah. Membuat kotak periksa, dimana pengguna program dapat memilih beberapa pilihan sekaligus.
Tabel 2.2. (lanjutan) Keterangan Kontrol Objek pada Toolbox.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI 13
Kontrol
Nama Digunakan untuk Option Button Membuat tombol pilihan, dimana pengguna program hanya dapat memilih satu dari beberapa pilihan yang disediakan. ComboBox Menambahkan kontrol kotak combo yang merupakan kontrol gabungan antara TextBox dan ListBox. ListBox Membuat daftar pilihan. HscrollBar
Membuat kontrol penggulung horizontal
VscrollBar
Membuat kontrol penggulung vertikal
Timer
Membuat kontrol waktu dengan interval yang ditentukan. Menampilkan disk drive yang dimiliki oleh komputer.
Drive ListBox DirListBox FileListBox Shape
Menampilkan direktori dan path yang dimiliki oleh driver aktif. Menampilkan daftar file dari direktori aktif. Menambahkan kontrol gambar berupa lingkaran, oval, persegi panjang, bujur sangkar, dan lain-lain. Membuat garis lurus.
Line Image
Menampilkan gambar pada form dalam format bitmap, icon, atau metafile. Menghubungkan program dengan database dan menampilkan informasinya pada form. Membuat link antarprogram aplikasi.
Data OLE
2.1.5 Project Merupakan jendela yang digunakan untuk menampilkan proyek-proyek, form - form, atau modul-modul yang terlibat dalam proses pembuatan aplikasi. Didalam jendela Project terdapat beberapa tombol seperti View Code, View Object, Toggle Folders seperti terlihat pada gambar 2.6, berikut ini :
Gambar 2.6. Jendela Project Explorer
2.1.6 Jendela Form
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI 14
Merupakan tempat yang digunakan untuk merancang aplikasi yang sedang dibuat. Di dalam form sebuah program aplikasi dapat dirancang dengan menempatkan kontrol-kontrol yang ada pada bagian toolbox. Gambar 2.7 adalah tampilan jendela form pada visual basic 6.0. Jika ingin mengaktifkan form, gunakan salah satu cara berikut :
1.
Klik tombol View Object pada jendela Project.
2.
Klik menu View, pilih perintah Object.
3.
Tekan tombol Shift + F7 pada keyboard.
Gambar 2.7. Tampilan Jendela Form Visual Basic 6.0
2.1.7 Jendela Code Merupakan jendela yang digunakan untuk menampilkan atau menuliskan kode program. Di dalam jendela kode ini algoritma program/ bahasa pemrograman yang akan dibuat dimasukkan. Tampilan jendela code pada visual basic 6.0 dapat dilihat pada gambar 2.8. Untuk mengaktifkan jendela Code, gunakan salah satu cara berikut:
1.
Klik tombol View Code pada jendela Project.
2.
Klik menu View, pilih perintah Code.
3.
Klik ganda pada form atau kontrol yang sudah disisipkan pada form.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI 15
Gambar 2.8. Tampilan Jedela Code pada Visual Basic 6.0.
2.1.8 Jendela Properties Merupakan kontrol yang digunakan sebagai kontainer bagi kontrol lainnya properti sebuah objek. Objek yang diatur propertinya adalah objek yang namanya tercantum dalam kotak objek. Properties adalah sifat/nilai/karakteristik dari sebuah objek, misalnya seperti nama, warna, ukuran, posisi dst. Jendela propertis dapat dilihat pada gambar 2.9 , sebagai berikut :
Properties Caption Properties Value
Gambar 2.9. Tampilan Jendela Properties pada Visual Basic 6.0. Pada tabel 2.3 akan dijelaskan mengenai fungsi dari properties form dan objek tertentu pada software visual basic 6.0.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI 16
Tabel 2.3 Fungsi dari Beberapa Properties Form dan Objek Property Name Caption Enable Icon Left MaxButton MousePointer Moveable ScaleMode StartUpPosition Visible Alignment BorderStyle Maxlength PasswordChar Tabindex Text List MultiSelect
Sorted Style ListCount Clear Additem RemoveItem FillStyle Appearance Forecolor Backcolor
Keterangan Memberikan nama / sebutan objek Menampilkan text yg ditampilkan dibagian atas objek tertentu Menentukan apakah form / objek aktif Menampilkan gambar icon pada objek / form Menentukan jarak dari sisi kiri layar ke sisi kiri objek / form Menampilkan/Menyembunyikan tombol Maximize Menentukan bentuk kursor bila diletakkan diatas form / objek Menentukan apakah form/objek bisa digeser Menentukan satuan ukuran Menentukan posisi awal form pada saat aplikasi dijalankan Menampilkan / menyembunyikan form / objek Perataan text dalam text box Menentukan pembatas disekeliling objek Menentukan banyaknya karakter yg diketikkan Digunakan untuk aplikasi password Menentukan urutan posisi fokus kursor pada objek Text yang diketikkan dalam textbox Daftar pilihan yang dimasukkan kedalam listbox 0 – None : User hanya bisa memilih 1 item 1 – Simple : Memilih lebih dari 1 2 – Extended : Memilih banyak pilihan dengan Shift+Click Menentukan apakah daftar dalam listbox akan diurutkan otomatis Menentukan apakah listbox ditampilkan bergaya standar / ditambahi dengan checkbox. Menentukan jumlah item data pada list/combobox Menghapus semua item data dari list/combobox Menambah sebuah item data pada list/combobox Menghapus sebuah data dari list/combobox Memberikan pola arsiran Menampilkan objek biasa atau 3D Menentukan warna text Menentukan warna belakang / background
2.1.9 Tipe Data Pada Visual Basic 6.0. Visual Basic 6.0. mempunyai beberapa tipe data. Tipe data digunakan untuk mendeklarasikan variabel pada visual basic, dengan tipe data ini kita bisa menentukan nilai yang dapat kita masukkan dalam variabel. Penggunaan tipe data tergantung dari apa yang ingin kita deklarasikan, tipe data juga mempengaruhi besarnya memori yang digunakan, dan berikut ini berbagai tipe data yang ada dalam Visual Basic 6.0. Beberapa tipe data pada Visual Basic 6.0. dapat dilihat pada tabel 2.3, berikut ini [11]:
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI 17
Tabel 2.4 Tipe Data pada Visual Basic 6.0. Tipe Data Integer Byte Decimal Boolean String Single Double
Ukuran Storage 2 byte 1 byte 14 byte 2 byte 10 byte + panjang string 4 byte 1 byte
Date Currency
8 byte 8 byte
Long Object Variant
4 byte 4 byte 16 byte + 1 byte per karakter
Jangkauan -32.768 hingga 32.767 0 sampai 255 +/-79,228,162,514,264,337,593,543,950,335 True and False 0 sampai lebih kurang 2 milyar -3.402823E+38 hingga 3.402823E -1.79769313486232E+308 hingga 1.79769313486232E+308 1 januari 100 hingga 31 desember 9999 922.337.203.685.477,5808 sampai 922.337.2.3.685.477,5807 -2.147.483.648 sampai 2.147.483.647 Mengacu pada object tertentu Sembarang angka sampai jangkauan jenis double
2.1.10 Visual Basic 6.0. Graphic
Gambar 2.10. Sistem Koordinat pada Visual Basic 6.0
Sistem koordinat dari viewport pada visual basic 6.0 dapat dilihat pada gambar 2.8. Secara default titik 0,0 pada sistem koordinat di visual basic 6.0. berada pada pojok kiri atas,dimana kenaikan nilai y ke arah bawah [12]. Secara default, semua gerakan Visual Basic, ukuran, dan grafis-gambar laporan menggunakan unit satu twip. Sebuah twip adalah 1/20 dari titik printer (1440 twips sama dengan 1 inch, dan 567 twips sama 1 cm). Pengukuran ini
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI 18
menunjuk ukuran sebuah objek saat akan dicetak. Jarak fisik yang sebenarnya pada layar bervariasi sesuai dengan ukuran yang digambar pada monitor. Visual basic 6.0. menyediakan beberapa metode untuk membuat grafik. Metode grafis pada visual basic 6.0. dapat dilihat pada tabel 2.5 , berikut ini [13]. Tabel 2.5 Metode Grafis pada Visual Basic 6.0. Metode Cls Pset Line Circle Paint Picture
Deskripsi Menghapus semua grafis Menggambar satu titik Menggambar garis, persegi panjang, atau kotak Membuat lingkaran, elips, atau arc Melukis grafis di lokasi sembarang
2.1.11 Komunikasi Serial pada Visual Basic 6.0. Meskipun ringan dan sederhana, aplikasi perangkat lunak ini sudah cukup mumpuni untuk digunakan sebagai antarmuka antara komputer dengan perangkat kontrol elektronik seperti PLC. Untuk dapat berkomunikasi dengan dengan dunia luar, VB6.0 sudah dilengkapi dengan fasilitas MS Comm Control 6.0. MS Comm Control ini berfungsi untuk mengakomodir jalannya komunikasi dan transfer data dari komputer ke peralatan elektronik berprosesor ataupun sebaliknya. Untuk mengaktifkan fungsi MS Comm Control pada VB6.0 pertama kali harus membuat projectnya dahulu dengan cara masuk ke File >>”New Project”. Kemudian pergi ke Menu “Project” >> “Components”. Sesaat setelah itu seharusnya ada layar seperti ditunjukkan gambar 2.9. dibawah ini [14].
Gambar 2.11. Tampilan Jendela Components Microsoft Comm Control 6.0 ini berfungsi untuk: 1.
Mengadakan hubungan dengan serial port PC.
2.
Berhubungan dengan alat komunikasi lain (contoh: modem).
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI 19
3.
Melakukan pertukaran data.
4.
Memonitor dan merespon event dan eror yang terjadi pada hubungan serial.
Sambungan komunikasi serial antara 2 peralatan (PC-IED atau PC-PC), harus dilakukan dengan langkah-langkah sebagai berikut: 5.
Membuka serial port.
6.
Mengatur serial device.
7.
Setting Receive and Transmit Buffer Properties.
8.
Managing Receive and Transmit Buffer [14].
2.1.12 Operasi File pada Visual Basic 6.0. Visual Basic menyediakan suatu fasilitas untuk membaca, menyimpan dan memperbaiki file data, sehingga memungkinkan untuk memisahkan data dengan program, dan program dapat menjadi lebih baik karena bisa tidak bergantung pada data (independent terhadap data), yang artinya datanya bisa diubah-ubah dengan mudah tanpada harus mengubah-ubah file programnya. Operasi File di dalam Visual Basic terdapat bermacam-macam cara akses file ke dalam program aplikasinya, yaitu: 1.
Membuka File Untuk membuka file baik untuk keperluan penyimpanan maupun untuk keperluan pembacaan menggunakan perintah umum sebagai berikut:: Open “Nama_File” For {Status} As #{n} Dimana: Nama_File : nama file lengkap dengan nama foldernya. Status : adalah untuk keperluan apa file tersebut baca/simpan. Status = INPUT untuk membaca File Status = OUTPUT untuk menyimpan File n : adalah nomor buffer (integer 1, 2, 3, …) yang digunakan untuk keperluan pemilihan file yang mana yang akan diproses. Setiap mengakses file baik untuk membaca maupun untuk menyimpan, maka file tersebut harus dibuka terlebih dahulu dengan status akses yang diberikan. Stelah file terbuka maka langkah berikutnya adalah bagaimana cara membaca dan menyimpan file.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI 20
File yang sudah dibaca, seharusnya ditutup saat program sudah selesai sehingga tidak ada data yang tertinggal di memory menyebabkan memory menjadi tidak efektif. Untuk menutup file dapat dilakukan dengan: Close #n
2.
Menyimpan File Untuk menyimpan data ke file di dalam program Visual Basic dapat dilakukan dengan membuka file untuk keperluan menyimpan atau menulis ke file: Open Nama_File For Output As #1 Saat file dibuka dengan cara semacam ini, maka file hanya bisa ditulisi dan bila file tersebut sudah ada isinya sebelumnya, maka dianggap hilang. Atau dengan kata lain file selalu dianggap baru. Cara menyimpan file semacam ini menghasilkan file yang bersifat file text, sehingga bisa dibaca oleh text editor seperti notepad, wordpad atau microsoft word. Setelah file dibuka, langkah berikutnya untuk menyimpan data dalan variabel ke file dapat dilakukan dengan: Print #1, nama_variabel
3.
Membaca File Untuk membaca data dari file di dalam program Visual Basic dapat dilakukan dengan terlebih dahulu membuka file untuk keperluan membaca dari file: Open Nama_File For Input As #1 Saat file dibuka dengan cara semacam ini, maka file hanya bisa dibaca dan tidak bisa ditulisi. File yang bisa dibaca adalah file teks. Untuk membaca data variabel ke dalam file, dapat dilakukan menggunakan perintah: Input #1, nama_variabel
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI 21
2.3 G-Code Secara umum, program NC memiliki konstruksi tertentu, yaitu kode atau perintah pendahuluan dan perintah pembantu. Perintah pendahuluan umumnya menggunakan kode G, sedangkan perintah pembantu menggunakan fungsi M. Program NC, selain kode G dan M, di dalamnya terdiri dari sejumlah kode-kode perintah yang tersusun dalam bentuk kombinasi huruf-huruf tertentu dan angka. Kode berupa huruf, misalnya N, T, S, F, H, I, J, K, R, D, X, Y, Z, dan angka 0 sampai 9 disebut addres. Suatu kode huruf yang di belakangnya diikuti angka (kombinasi huruf dan angka) disebut ”kata” (word). Gabungan dari beberapa kata disebut blok. Blok merupakan gabungan dari beberapa kata yang membentuk satu tahapan perintah, misalnya eretan melintang bergerak lurus sejauh 4 mm mendekati sumbu dengan kecepatan 80 mm/menit. Di dalam sebuah program CNC, satu tahapan perintah ditulis dalam satu baris, berarti ”blok” adalah gabungan beberapa kata yang ditulis dalam satu baris program. Komputer (unit kontrol) mesin membaca dan menjalankan program per satu blok bukan per kata. G-code terbagi dalam 2 tipe, yaitu [15]: 1. Tipe One-Shot G-Code G-Code akan aktif hanya dalam 1 blok saja (aktif hanya sekali). Jika masih digunakan untuk Blok berikutnya, maka harus dipanggil lagi. 2. Tipe Modal G-Code G-Code akan aktif digunakan terus pada blok-blok berikutnya sampai ada G-Code lain yang sama dalam satu grup dipanggil. Berikut macam-macam dan fungsi bahasa G-code dan kegunaannya dapat dilihat pada tabel 2.6, berikut ini: Tabel 2.6. Macam-macam G-code. G-code G0 G1 G2 G3
Kegunaan Perintah pergerakan cepat. Perintah pergerakan pemakanan lurus. Perintah pergerakan melingkar searah jarum jam. Perintah pergerakan melingkar berlawanan arahjarum jam.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI 22
Tabel 2.6 (lanjutan) Macam-macam G-code. G-code G33 G40 G41 G42 G54 G90 G91 G96 G97 G158
Kegunaan Menyayat beberapa jenis ulir dengan kisar konstan. Membatalkan kompensasi radius atau tanpa kompensasi Kompensasi radius kanan. Perintah kompetensi radius kiri ( bubut dalam ). Berarti titik nol benda kerja diaktifkan. Pemrograman absolute. Pemrograman inkrimental. Mengatur kecepatan potong. Pengaturan kecepatan potong konstan OFF. Menentukan awal pemrograman.
Untuk mengetahui lebih jelas lagi fungsi dari dari g-code dapat dilihat di bawah ini:
1.
G0, Perintah pergerakan cepat. G0 berfungsi untuk menempatkan (memposisikan) pahat secara cepat dan tidak
menyayat benda kerja. Semua sumbu bisa bergerak secara simultan sehingga menghasilkan jalur lurus (lihat gambar di samping). Perintah G0 akan selalu aktif sebelum dibatalkan oleh perintah dari kelompok yang sama, misalnya G1, G2, atau G3. Format penulisannya sebagai berikut: N... N... G0 X40 Z25; gerak cepat aktif menuju koordinat yg ditulis N...
2.
G1, Perintah pergerakan pemakanan lurus. Fungsi dari perintah G1 adalah menggerakkan pahat dari titik awal menuju titik akhir
dengan gerakan lurus. Kecepatan gerak makan ditentukan dengan F. Semua sumbu dapat bergerak bersama (lihat gambar di bawah). Perintah G1 tetap aktif sebelum dibatalkan oleh perintah dari kelompok yang sama (G0, G2, G3). Format penulisannya sebagai berikut: N... G0 X20 Z-40 N... G1 X30 Z-60 F20 ; berarti pahat bergerak lurus menuju N... G1 Z-72 ; berarti pahat bergerak lurus menuju N...
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI 23
3.
G2 dan G3, Perintah pergerakan melingkar searah jarum jam dan berlawanan arah jarum jam. Perintah G2 atau G3 berfungsi untuk menggerakkan pahat dari titik awal ke titik akhir
mengikuti gerakan melingkar. Arah gerakan ada dua macam yaitu G2 untuk gerakan searah jarum jam, dan G3 untuk berlawanan arah jarum jam (lihat gambar di bawah). Gerak makan pahat menurut F yang diprogram pada baris sebelumnya. Format penulisannya sebagai berikut: N... N... G2 X... Z... I5 K-1; bergerak melingkar ke (X,Z) dengan titik pusat di (5,-1) dari titik awal gerak pahat N... G2 X... Z...CR=10; bergerak melingkar ke (X,Z) dengan radius 10
4.
G90 dan G91, Pemrograman absolute dan incremental. Apabila di awal program CNC ditulis G90, maka pemosisian pahat yang diperintahkan
menggunakan koordinat absolut dari titik nol benda kerja. Titik nol benda kerja adalah sebagai titik nol absolut atau (0,0,0) Lihat Gambar 2.10. di bawah untuk memahami hal tersebut.
Gambar 2.12 Pengukuran Absolute dan Incremental Format penulisannya sebagai berikut: N.. G90 ; berarti sistem pengukuran absolutdiaktifkan N... N... G91 ; berarti sistem kordinat yang digunakan adalah inkrimental. Kode G91 berarti sistem pengukuran yang digunakan menggunakan koordinat relatif atau inkrimental. Pergeseran pahat diprogram dari tempat pahat berada ke posisi berikutnya. Titik nol (0,0,0) berada di ujung sumbu pahat. G91 biasanya digunakan di awal sub rutin (sub program).
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
BAB III RANCANGAN PENELITIAN Bab ini akan menjelaskan perancangan pembuatan perangkat lunak (software) untuk masukan (input) gerakan lengan robot. Masukan (input) untuk gerakan lengan robot yaitu berupa gambar vektor bidang 2D yang diubah menjadi file g-code. Perangkat lunak (software) yang digunakan untuk men-generate gambar vektor menjadi g-code adalah visual basic 6.0. Perancangan ini meliputi diagram blok dan perancangan perangkat lunak (software). Adapun pembahasannya sebagai berikut.
3.1 Blok Diagram Secara garis besar sistem ini terbagi menjadi 3 bagian utama yang akan dikerjakan. Blok diagram keseluruhan sistem dapat dilihat pada gambar 3.1 dibawah ini:
Gambar 3.1. Diagram Blok Keseluruhan Sistem. Tiga bagian utama dari sistem ini meliputi bagian input, bagian kontroller, dan bagian output. Bagian input meliputi proses pembuatan desain ( gambar vektor ), g-code generator, hingga menjadi g-code. Bagian kontroller meliputi proses pengolahan data g-code untuk dikirim ke driver motor. Sedangkan bagian output meliputi desain rangka dan kinematika lengan robot. Ketiga bagian ini akan dikerjakan secara berbeda. Bagian input inilah yang akan menjadi fokus pengerjaan. 24
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI 25
3.2 Perancangan perangkat lunak (software). Perangkat lunak (software)
yang digunakan untuk men-generate gambar vektor
menjadi file g-code adalah visual basic 6.0. Secara umum diagram alir dari perangkat lunak (software) visual basic 6.0. dapat dilihat pada gambar 3.2 berikut ini.
Mulai
Pilih Gambar Vektor
Generate
File G-code
Selesai
Gambar 3.2. Diagram Alir Secara Umum Perangkat Lunak (software) Visual Basic 6.0.
Pada gambar 3.2 software visual basic 6.0. selain sebagai g-code generator, juga digunakan sebagai GUI (Grapichal User Interface) untuk menggambar gambar vektor. Gambar vektor berupa gambar bidang 2D yang sudah ditentukan sebelumnya yaitu LINGKARAN, SEGITIGA, KOTAK, dan TANDA TAMBAH (PLUS).
3.2.1Perancangan Visual Basic 6.0 sebagai Perintah Masukan
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI 26
Mulai
tidak Inisialisai
Pilih Gambar Vektor?
ya
tidak
Buat Gambar
Pengenalan Koordinat
Tekan Vektor to Gcode?
ya File G-Code
Selesai
Gambar 3.3 Diagram Alir Visual Basic 6.0 sebagai Perintah Masukan.
Pada gambar 3.3 merupakan konsep perancangan perangkat lunak (software) visual basic 6.0. sebagai perintah masukan yang dijelaskan dalam bentuk diagram alir. Pada perancangan software visual basic 6.0 sebagai masukan ini diawali dengan memilih gambar vektor yang ingin di-generate menjadi g-code. Selanjutnya gambar didalam frame (pictureBox) yang digunakan untuk menggambar dengan cara klik kiri pada mouse kemudian tahan dan gerakkan ke arah atas atau bawah. Selanjutnya gambar yang sudah dibuat akan
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI 27
dikenali koordinatnya, setelah pengenalan koordinat gambar akan digeneralisasikan menjadi file g-code dalam bentuk file.txt.
3.2.2Perancangan Interface Visual Basic 6.0 Pada perancangan kinematika yang telah dilakukan pada penulisan penelitian yang lain didapat jangkauan maksimal lengan robot untuk sumbu X,Y, dan Z adalah 22, 30 dan 0 dalam satuan cm. Sehingga frame yang digunakan untuk menggambar gambar vektor tidak boleh melebihi nilai maksimal dari jangkauan tersebut. Pada perancangan interface visual basic 6.0. frame(PictureBox) akan dibuat dengan ukuran 15 x 15 dalam satuan cm atau sebesar 8505 x 8505 dalam satuan twip. Dengan demikian ukuran gambar makasimal yang dapat dibuat pada perangkat lunak ini adalah 15 x 15 cm dan minimal 1 x 1 cm.
Gambar 3.4 Interface Software Visual Basic 6.0. untuk Membuat Gambar Vektor.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI 28
Gambar 3.4 adalah rencana dari interface software visual basic 6.0. untuk membuat gambar vektor pada PC. Pada interface software visual basic 6.0 digunakan 4 tombol yaitu tombol KOTAK, LINGKARAN, SEGITIGA, dan LINE (digunakan untuk menggambar tanda tambah) untuk menggambar gambar vektor. Tombol-tombol ini akan digunakan untuk memilih salah satu jenis gambar bidang 2D yang ingin digambar. Selanjutnya setiap gambar vektor yang digambar akan dikenali setiap koordinat pada titik yang sudah ditentukan. Titiktitik koordinat yang sudah ditentukan tersebut dapat dilihat pada gambar 3.5. Kemudian harus ada penekanan tombol Vektor to G-code untuk menjalankan proses mengubah gambar vektor menjadi file g-code. Sedangkan tombol CLEAR untuk menghapus gambar vektor sebelumnya pada frame yang digunakan untuk menggambar.
Gambar 3.5 Referensi Titik-titik Koordinat
Program membuat gambar vektor pada software visual basi 6.0. secara lengkap dapat diliat pada digram alir gambar 3.6. program membuat gambar vektor diawali dengan menekan salah satu tombol KOTAK, LINGKARAN, SEGITIGA, atau LINE seperti rencana pembuatan interface pada gambar 3.4. Setelah itu program akan memanggil titik referensi (titik aman pada gambar 3.5) yang telah ditentukan pada coding program visual basic 6.0. Setelah penekanan pada tombol jenis gambar vektor, arahkan pointer pada frame yang digunakan untuk menggambar. Selanjutnya klik kiri pada mouse dan tahan untuk menggambar gambar vektor. Kemudian gambar vektor akan dikenali titik-titik koordinatnya. Setiap gambar vektor memiliki jumlah titik koordinat yang berbeda-beda. Untuk persegi atau segi empat, lingkaran jumlah titik koordinat ada 8, sedangkan untuk segitiga dan tanda tambah masing-masing memiliki jumlah titik koordinat adalah 6 dan 4 seperti gambar 3.5. Selanjutnya tekan tombol vektor to g-code, untuk mengubah gambar vektor menjadi file gcode. File g-code akan disimpan dengan format .txt. file g-code ini akan menjadi masukan
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI 29
untuk gerakan lengan robot atau dapat diuji dengan menggunakan software untuk pembacaan file g-code. Program menghapus atau membersihkan gambar vektor atau bidang 2D dapat dilakukan dengan menekan tombol CLEAR.
Gambar 3.6a Diagram Alir Progam “ Membuat Gambar Vektor atau CLEAR” pada Visual Basic6.0.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI 30
Gambar 3.6b lanjutan Diagram Alir Progam “ Membuat Gambar Vektor atau CLEAR” pada Visual Basic6.0.
3.2.3Fitur Tambahan Komunikasi Serial untuk Pengiriman File G-code. Komunikasi serial digunakan sebagai antarmuka antara komputer dengan perangkat kontrol elektronik. Dalam hal ini perangkat elektronik yang digunakan adalah mikrokontroler arduino uno R3. Gambar vektor yang sudah di-generate menjadi file G-code akan dikomunikasikan dengan mikrokontroler arduino uno R3 dengan menekan tombol RUN yang sudah disediakan pada menu yang telah dibuat pada perngkat lunak (software). File G-code akan dikomunikasikan perbaris sesuai dengan jumlah titik yang dibuat. Diagram alir proses komunikasi ini dapat dilihat pada gambar 3.7 berikut ini.
Gambar 3.7 Diagram Alir Proses Komunikasi Untuk lebih memahami cara kerja sistem perangkat lunak (software) visual basic 6.0. untuk mengubah gambar vektor menjadi g-code. Akan dijelaskan langkah per langkah dari
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI 31
sistem software ini mulai dari pembuatan gambar vektor, titik-titik koordinat bidang yang dipilih , hingga menjadi file g-code dalam format.txt. berikut adalah langkah-langkahnya.
1.
Pilih gambar vektor yang akan digambar, misal kotak.
2.
Gambar kotak pada bagian frame gambar pada tampilan interface visual basic 6.0 dengan cara klik kiri pada mouse kemudian digerakkan sehingga membentuk bidang 2D atau gambar vektor dengan ukuran tertentu seperti gambar 3.8 berikut ini.
3.
Setelah itu koordinat akan dikenali melalui sumbu x dan y sesuai dengan coding yang telah dibuat pada software sebelumnya.
4.
Kemudian klik tombol vektor to g-code untuk mengenaralisasi gambar bidang 2D atau gambar vektor menjadi file g-code.
Gambar 3.8 Tampilan Gambar Kotak pada Frame Gambar.
5.
Selanjutanya akan muncul file g-code dalam format .txt seperti gambar 3.8 berikut ini. Dan kemudian simpan.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI 32
Gambar 3.9 Tampilan File G-code dengan Format .txt
6.
Setelah gambar vektor sudah di-generate menjadi file g-code, akan muncul layar seperti gambar 3.10. kemudian tekan tombol RUN untuk memulai proses komunikasi.
Gambar 3.10 Tampilan Layar untuk Memulai Proses Komunikasi.
7.
Setelah proses komunikasi selesai akan muncul layar seperti gambar 3.11, untuk mengakhiri proses dan membuat program baru tekan tombol OKE.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI 33
Gambar 3.11 Tampilan Layar Setelah Proses Komunikasi Selesai.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
BAB IV HASIL DAN PEMBAHASAN Bab ini menjelaskan tentang hasil keseluruhan sistem pada blok diagram seperti pada bab 3 dan pengamatan dari software pengubah gambar vektor menjadi perintah gerakan robot dalam g-code. Hasil pengamatan ini akan dibagi menjadi 3 yaitu, hasil perancangan perangkat lunak sebagai GUI, hasil pengamatan perangkat lunak sebagai G-code Generator dan hasil pengamatan kesesuaian antara gambar bidang dua dimensi yang digambar pada software CNC (simulasi) atau lengan robot secara actual dengan resolusi gambar vektor yang digambar menggunakan PC dengan software Visual Basic 6.0. Analisis dapat dilakukan pada ukuran gambar yang dibuat pada software Visual Basic, sehingga saat tergambar dan terukur menghasilkan ukuran yang sama, serta dapat berupa data dari proses simulasi atau data actual dengan lengan robot.
4.1. Hasil yang Diharapkan Pada bab 3 sebelumnya terdapat blok diagram yang menjelaskan keseluruhan kerja sistem yang akan dibuat mulai dari input, kontrol dan output. Bagian output adalah lengan robot dengan penggerak 3 buah motor stepper. Lengan robot bekerja pada 3 sumbu yaitu sumbu x (base), y (shoulder), dan z (elbow). Area kerja dari lengan robot memiliki panjang dan lebar 15cm x 15cm. Lengan robot dapat menggambar pada bidang 2 dimensi berdasarkan masukan dari kontroller. Bagian kontroller berfungsi sebagai kontrol untuk menggerakan lengan robot agar dapat menggambar pada bidang 2 dimensi. Kontroller mendapat masukan dari bagian input yang berupa program g-code. Pada bagian kontroller ini program g-code dari bagian input diproses menjadi pulsa untuk diteruskan ke bagian output guna menggerakkan lengan robot sesuai dengan masukan dari bagian input. Pada penulisan ini akan fokus untuk m membahas bagian input, yaitu software yang digunakan untuk menerjemahkan gambar vektor menjadi g-code.
4.2. Hasil Perancangan Perangkat Lunak sebagai GUI Pada hasil perancangan perangkat lunak sebagai GUI akan menjelaskan tentang fungsi dari beberapa kontrol objek yang digunakan pada tampilan interface-nya. Gambar 34
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI 35
4.1 merupakan tampilan antarmuka atau GUI visual basic 6.0 yang digunakan untuk menggambar bidang 2 dimensi atau gambar vektor dengan keterangan pada tabel 4.1.
Gambar 4.1 Tampilan GUI
Tabel 4.1. Bagian-bagian GUI Huruf a b c d e f g
Keterangan Picture Box untuk tempat menggambar bidang 2 dimensi Frame gambar bidang 2 dimensi. Textbox sebagai indikator aktif tidaknya command button dari frame gambar bidang 2 dimensi. Combo box untuk memlih satuan Frame Tombol Label x dan label y Textbox untuk mengetahui jumlah baris g-code
Pada perancangan GUI pada bab 3 terdapat 4 jenis command button, tapi pada hasil perancangan GUI hanya ada 3 jenis command button. Tiga pilihan command button terdapat pada frame gambar 2 dimensi, 3 jenis command button ini yang akan digunakan untuk memilih bentuk apa yang akan digambar. Ada sebuah picture box yang digunakan untuk menaruh gambar yang sudah dipilih. Kemudian pada frame tombol juga terdapat 3 buah command button, yaitu g-code generator, clear, dan end. G-code generator berfungsi untuk menampilkan gambar yang sudah diterjemahkan dalam bentuk g-code pada listbox.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI 36
Sedangkan tombol clear dan tombol end masing-masing berfungsi untuk membersihkan gambar pada picture box, label maupun text dan keluar atau menghentikan program. Pada tampilan GUI juga terdapat label x dan label y yang berfungsi untuk penunjuk koordinat yang ditunjuk oleh kursor pada picture box. Untuk tambahan ada combo box, combo box ini digunakan untuk memilih unit atau satuan. Pada GUI terdapat textbox yang berfungsi sebagai indikator command button yang sedang aktif dan untuk mengetaui jumlah baris dari g-code. Pada perancangan GUI di bab 3 dan hasil perancangan GUI pada bab 4 terdapat perbedaan, diantaranya yaitu tombol pemilih gambar pada perancangan terdapat 4 command button, sedangkan pada hasil perancangan GUI hanya terdapat 3 command button. Command button yang dihilangkan adalah command button segitiga, untuk menggambar segitiga pada software diganti dengan memilih command button sebanyak 3 kali. Selain itu perbedaan juga terdapat pada titik referesi untuk gambar kotak dan lingkaran jika pada bab 3 titik referensi untuk gambar kotak dan lingkaran terdapat 8 titik, pada bab 4 hasil dari gambar untuk kotak titik referensinya hanya ada 4, sedangkan gambar lingkaran hanya menggunkan 2 titik referensi. Perbedaan titik refernsi ini dapat dilihat pada tabel 4.2. Ini karena untuk gambar kotak menggunakan metode grafis line(x1,y1)(x2,y2), ,BF sehingga dihasilkan 4 titik dimasing-masing sudut, sedangkan lingkaran menggunakan metode grafis circum circle, yaitu titik pertama untuk menentukan pusat lingkaran dan titik kedua berada dia arean keliling lingkaran. Tabel 4.2 Perbedaan Titik Referensi Pada Bab Perancangan dengan Hasil Titik Referensi pada Perancangan
Titik Referensi pada Hasil
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI 37
4.3. Cara Pengoperasian Program 4.2.1. Memilih Jenis Satuan Program untuk membuat gambar vektor menjadi g-code diawali dengan memilih jenis unit atau satuan gambar. Pemilihan unit atau satuan ada pada combo box . Ada 2 pilihan yang bisa dipilih pada combo box (unit), yaitu “Milimeter” dan “Inch”. Jika memilih “Milimeter” maka scalemode pada picture box menjadi satuan milimeter dengan ukuran, sebaliknya jika memilih “Inch” maka scalemode pada picture box menjadi satuan inch. Setelah memilih satuan maka combo box akan disabled sampai proses menggambar selesai, proses memilih satuan dapat dilihat pada gambar 4.2.
Gambar 4.2. Pemilihan jenis unit atau satuan.
Pada gambar 4.2 kolom ketiga tercatat koordinat-koordinat untuk satuan yang berbeda. Pada kolom ketiga atas pada label x dan y tercatat nilai x = 5,854167 dan y = 0 untuk satuan inch, sedangkan untuk kolom ketiga bawah pada label x dan label y tercatat nilai x = 148,4314 dan y = 0 untuk satuan milimeter. Ini diambil pada satu titik yang sama yaitu di ujung kanan atas pada picture box. Sebelumnya jika kita belum memilih jenis unit untuk menetukan scalemode atau mode skala pada picture box, akan muncul kotak peringatan untuk memilih jenis unit seperti pada gambar 4.3.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI 38
Gambar 4.3. Kotak Peringatan untuk memilih jenis satuan.
4.2.2. Memilih Jenis Gambar Bila sudah memilih jenis satuan, hal selanjutnya yang harus dilakukan adalah dengan memilih jenis gambar. Pemilihan jenis gambar dilakukan dengan cara menekan salah satu command button yang ada pada frame “Gambar 2 Dimensi” seperti ditunjukan pada gambar 4.4. Setelah memilih salah satu command button maka 2 command button yang tidak terpilih tidak akan aktif sampe proses pembuatan gambar selesai, misal memilih command button untuk menggambar garis maka command button yang digunakan untuk menggambar lingkaran dan kotak tidak akan aktif, begitu juga jika memilih command button untuk menggambar lingkaran maka command button yang digunakan untuk menggambar gambar garis dan kotak tidak aktif. Sama juga kalau memilih command button untuk menggambar kotak, command button untuk menggambar garis dan lingkaran tidak aktif. Proses pemilihan command button ini dapat dilihat pada gambar 4.4. Pada saat kita memilih salah satu command button akan muncul tulisan sesuai dengan jenis command button yang telah kita pilih, misal kita menekan command button dengan gambar garis makan akan muncul tulisan “GARIS” pada textbox, begitu pula saat kita menekan command button dengan gambar lingkaran atau kotak maka masing-masing textbox akan muncul tulisan “LINGKARAN” atau “KOTAK” pada textbox seperti ditunjukkan pada gambar 4.4.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI 39
b.
a.
c. Gambar 4.4. Gambar Proses Pemilihan Command Button.
4.2.3. Menggambar Pada Picture Box Setelah memilih salah satu command button, gambarlah jenis gambar yang telah dipilih pada picture box. Cara menggambar adalah dengan klik kiri pada mouse untuk menentukan titik pertama kemudian gerakan menuju titik kedua. Setiap gambar memiliki titik koordinat yang berbeda. Untuk gambar garis ada 2 titik koordinat yaitu x1,y1 untuk titik pertama dan x2,y2 untuk titik kedua seperti gambar 4.5. Kemudian gambar kotak memiliki 4 koordinat yaitu x1,y1; x2,y2; x3,y3 dan x4,y4 seperti gambar 4.6. Pada gambar kotak titik pertama menjadi koordinat pertama yaitu x1,y1 dan titik kedua menjadi koordinat ketiga yaitu x3,y3. Sedangkan untuk gambar lingkaran titik pertama menjadi koordinat titik pusat x1,y1 dan titik kedua x2,y2 untuk menentukan besarnya radius atau jari-jari gambar 4.7. Titik kedua pada gambar lingkaran berada pada garis keliling lingkaran atau dengan metode circum circle.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI 40
Gambar 4.5. Proses membuat gambar garis
Gambar 4.6. Proses membuat gambar kotak
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI 41
Gambar 4.7 Proses pembuatan gambar bidang 2 dimensi
Command button untuk memilih jenis gambar vektor hanya berfungsi untuk sekali gambar pada picture box, sehingga jika sudah menggambar 1 gambar pada picture box maka harus menekan kembali command button untuk kembali menggambar. Paramater yang berupa koordinat titik pada gambar garis dan kotak serta koordinat titik pusat dan radius pada gambar lingkaran akan diganti dengan parameter gambar kedua. Parameterparamter tersebut akan terus diganti hingga array ke 100 untuk tiap jenis variabel yang menggunakan array pada gambar 2 dimensi. Ini karena ada pembatasan array pada inisialisasi di awal program. Pembatasan variabel saat inisialisasi program dapat dilihat pada gambar 4.4. Jika array pada penggambaran lebih dari 100 akan ada debugger karena array melebihi dari inisialisasi.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI 42
Gambar 4.8. Inisialisasi Variabel
Pada perancangan di bab 3 terdapat command button untuk menggambar segitiga, tetapi pada hasil perancangan ini command button untuk menggambar segitiga dihilangkan. Penggambaran segitiga diganti dengan menggunakan command button garis sebanyak 3 kali. Proses pembuatan gambar segitiga ini dapat dilihat dari pada gambar 4.9.
Gambar 4.9. Proses pembuatan gambar segitiga
4.2.4. Fungsi Command Button G-code Generator, Clear, dan End Saat program dijalankan untuk pertama kali, command button g-code generator tidak aktif atau disabled. Command button g-code generator akan aktif ketika salah satu command button yang digunakan untuk menggambar gambar vektor pada bidang 2 dimensi ditekan. Setelah menekan salah satu command button yang digunakan untuk menggambar gambar bidang 2 dimensi, tetapi tidak melakukan proses penggambaran pada picture box dan langsung menekan
command button g-code generator maka akan muncul kotak
informasi agar melakukan proses penggambaran seperti ditunjukkan pada gambar 4.10. Pada saat kotak informasi ini muncul, tekan tombol “OK” untuk melanjutkan proses menggambar. Setelah menekan tombol “OK” maka program akan kembali seperti saat
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI 43
pertama kali program dijalankan. Sehingga harus menekan kembali salah satu command button yang digunakan untuk menggambar gambar vektor pada bidang 2 dimensi.
Gambar 4.10. Kotak informasi jika belum ada proses penggambaran.
Jika pada picture box sudah terdapat gambar, maka command button g-code generator dapat digunakan. Penekanan pada command button saat ini akan mengeluarkan list box yang berisi program g-code seperti ditunjukkan pada gambar 4.11 dibawah ini.
Menentukan Batas Area Gambar dan Satuan
Menentukan Gambar yang Akan Dikerjakan
Gambar 4.11. Tampilan program g-code pada list box.
Ketika list box yang berisi program g-code muncul, terdapat commond button simpan yang berfungsi untuk menyimpan program g-code ke dalam notepad ( ekstensi txt ). Saat list box berisi program g-code muncul, command button clear disabled. Command button clear akan aktif kembali ketika command button simpan ditekan atau jika sudah selesai komunikasi serial. Saat command button simpan ditekan akan muncul kotak informasi seperti pada gambar 4.12. kemudian tekan “OK” untuk menjalankan program
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI 44
lagi, bisa menambah gambar atau menghapus dan membuat gambar baru. Program g-code yang tersimpan pada notepad dapat dilihat pada gambar 4.13.
Gambar 4.12. Tampilan kotak informasi data telah tersimpan.
Gambar 4.13 Tampilan program pada notepad.
Komunikasi serial dilakukan dengan memilih port dari mikrokontroller yang terdeteksi, setelah diketahui dan dipilih tekan command button connect. Jika command button dengan caption connect telah berubah caption-nya menjadi disconnect maka komunikasi serial sudah terhubung. Hal selanjutnya yang harus dilakukan adalah menekan
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI 45
command button send. Data pada list box akan dikirim perbaris. Jika sudah selesai tekan command button dengan caption disconnect, untuk memutus komunikasi serial.
4.4. Pembahasan Hasil Program G-code Sebelumnya sudah dibahas bagaimana cara menggambar pada program ini, yaitu dengan memilih salah satu dari tiga jenis command button yang telah disediakan kemudian kemudian drag down dan drag move pada picture box dan menghasilkan titik-titik koordinat. Selanjutnya adalah proses penerjemahan dari titik-titik koordinat tersebut menjadi program G-code. Untuk skala panjang garis terkecil yang dapat dibuat dalam software ini untuk satuan milimeter adalah sepanjang 0,26459 mm atau jika dalam satuan inch adalah sebesar 0,010416 inch, ini diambil dari nilai pergeseran pointer terkecil seperti gambar 4.14. Nilai pergeseran pointer terkecil didapat dari nilai koordinat x2 dikurangi nilai koordinat x1. Gambar 4.14a adalah nilai koordinat untuk satuan milimeter dan nilai, sedangkan gambar 4.14b adalah nilai koordinat untuk satuan inch. Dari nilai koordinat-koordinat tersebut dapat diketahui skala panjang garis terkecil, yaitu 29,36878 - 29,10419 = 0,26459 untuk satuan milimeter dan 1,708333 - 1,697917= 0,010416 untuk satuan inch
a. b. Gambar 4.14 Nilai Koordinat untuk Panjang Terkecil.
Ini berarti setiap pergeseran pointer memiliki resolusi sebesar 15 twip atau 1 pixel [15]. Ini diperoleh karena 1 mm adalah 56,692913 twip [15], sehingga saat 0,26469 mm diperoleh 15 twip hasil pembulatan dari perkalian
0,26459 1
x 56,692913 = 15,000377. Jika
dalam satuan inch, didapat karena 1 inch adalah 1440 twip [15], sehingga saat 0,010417 inch diperoleh 15 twip hasil pembulatan dari perkalian
0,010416 1
x 1440 = 14,99904.
Dengan panjang garis terkecil yang dibuat adalah 0,26459 dalam satuan mm dan 0,010416 dalam satuan inch, maka besaran lingkaran dan kotak terkecil yang dapat dibuat adalah lingkaran dengan diameter 0,52918 dalam satuan mm atau 0,020832 dalam satuan inch. Sedangkan besaran kotak terkecil yang dapat dibuat memiliki panjang x lebar adalah 0,26459 x 0,26459 untuk satuan mm dan 0,010416 x 0,010416 dalam satuan inch.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI 46
4.3.1 Hasil Program G-code Gambar Garis Hasil program g-code garis dapat dilihat pada gambar 4.15. Pada gambar 4.15. diketahui bahwa gambar garis memiliki 2 titik koordinat yaitu x1,y1 dan x2,y2. Penerjemahan ke progam g-code adalah dengan mengambil koordinat-koordinat tersebut. Pada baris pertama pada program g-code tercatat “G90 G21” yang artinya mode yang dipakai adalah mode absolute untuk G90 dan unit atau satuan yang dipakai adalah milimeter karena menggunakan G21. Untuk kode G21 dapat berubah G20 jika pada saat menggambar, unit yang dipilih adalah “Inch”.
Gambar 4.15 File g-code untuk gambar garis.
Pada baris kedua dan ketiga g-code yang tercatat digunakan untuk menentukan area kerja sesuai dengan luas picture box. Pada baris kedua tercatat “G28 G17 x0 y-148,696 z0” yang artinya pendefinisian titik ujung minimal (G28) pada bidang XY (G17) yaitu dikoordinat x 0 dan y-148,696 pada z0. Kemudian baris ketiga tercatat “G30 G90 x148,696 y0 z0” yang artinya pendefinisian titik ujung maksimal dengan dimensi absolute dari koordinat x148,696 y0 pada z0. Untuk baris berikutnya yaitu baris 4 sampai baris 7 adalah program g-code untuk menggambar garis. Pada baris 4 tercatat “G0 x58,47297 y-38,10004 z5” yang artinya menuju ke koordinat x58,47297;y-38,10004 dengan ketinggian pencil 5 mm atau 0,2 inch (5mm atau 0,2 inch tergantung satuan atau unit yang dipakai diatas titik 1) tanpa menggambar dengan gerakan cepat (G0). Kemudian pada baris kelima tercatat “G1 x58,47297 y-38,10004 z0” yang artinya menuju ke koordinat x58,47297;y-38,10004
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI 47
dengan ketinggian pencil 0 mm dengan melakukan penggambaran gerakan lurus. Pada baris keenam tertulis “G1 x128,8522 y-38,10004” artinya menuju ke koordinat x128,8522;y-38,10004 dengan ketinggian pencil 0 mm dengan melakukan penggambara gerakan lurus. Di baris keenam ini tidak ada koordinat z ( naik dan turun pencil) tapi ketinggian pencil masih tetap 0 mm, karena pada program g-code baris berikutnya akan mengikuti baris berikutnya jika tidak ada perubahan. Sedangkan pada baris terakhir yang tertulis “G0 x128,8522 y-38,10004 z5” yang artinya menuju ke koordinat x128,8522;y38,10004 dengan ketinggian pencil 5 mm atau 0,2 inch tanpa penggambaran dengan gerakan cepat (5 mm atau 0,2 inch tergantung satuan atau unit yang dipakai diatas titik 2).
4.3.2 Hasil Program G-code Gambar Kotak Hasil program g-code gambar kotak dapa dilihat pada gambar 4.16. Penerjemahan gambar kotak ke g-code sama dengan garis hanya saja untuk gambar kotak memiliki 4 titik koordinat, sehingga g-code untuk gambar kotak memiliki 10 baris. baris pertama sampai baris ketiga sama dengan hasil program g-code untuk gambar garis yaitu penginisialisaian unit atau satuan yang dipakai dan luasan area kerja. Kemudian baris 4 sampai dengan 10 adalah proses pembuatan gambar kotak.
Gambar 4.16 File g-code untuk gambar kotak.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI 48
Sama seperti hasil program g-code untuk menggambar garis pada hasil program gcode untuk menggambar kotak pada baris keempat program g-code ini artinya menuju 5 mm atau 0,2 inch (tergantung satuan atau unit yang dipakai) diatas titik 1 dengan gerakan cepat tanpa penggambaran atau menggunakan g-code G0, kemudian pada baris ke-5 sampai ke-9 adalah gerakan penggambaran (berada pada z = 0) dengan kecepatan yang diinginkan (G1) menuju 4 titik koordinat yang sudah diketahui. Pada g–code baris k-5 sampa ke-9 inilah proses gambar kotak di ekseskusi. Prosesnya adalah dengan menghubungkan 4 titik yang masing-masing sudah diketahui koordinatnya seperti ditunjukan pada gambar 4.16. Kemudian pada baris terakhir adalah menuju posisi aman (z = 5 mm atau 0,2 inch tergantung satuan/unit yang dipakai) atau berada 5 mm atau 0,2 inch diatas titik pertama.
4.3.3 Hasil Program G-code Gambar Lingkaran Hasil Program G-code untuk gambar lingkaran ada 2 jenis yaitu menggunkan G2 dan G3. G2 adalah perintah untuk gerakan melingkar searah jarum jam (cw), sedangkan G3 adalah perintah untuk gerakan melingkar berlawanan jarum jam(ccw). Penggunaan perintah G2 dan G3 pada program yang telah dibuat ini dipengaruhi pada saat proses penggambaran. Gambar 4.17 adalah program untuk menntukan penggunaan perintah G2 dan G3.
Gambar 4.17 Program untuk menentukan penggunaan perintah G2 dan G3.
Pada gambar 4.17, dapat diketahui jika nilai x pada titik pertama gambar lingkaran dikurangi nilai x pada titik kedua gambar lingkaran dan menghasilkan nilai lebih besar daripada 0, maka menghasilkan program g-code dengan perintah G2. Sebaliknya jika nilai x yang di dapat kurang dari 0 atau minus maka program g-code yang dihasilkan menggunakan perintah G3. Pada gambar 4.18 adalah file g-code hasil menggambar lingkaran untuk perintah G3. Pada gambar 4.18 nilai x titik pertama adalah 78,58133 dan
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI 49
nilai x titik kedua adalah 99,74802; sehingga menghasilkan perintah G3 untuk menggambar lingkaran. Pada file g-code untuk gambar lingkaran, baris pertama sampai ketiga sama dengan yang sudah dijelaskan pada hasil program g-code untuk gambar garis dan kotak yaitu inisialisasi unit atau satuan yang dipakai dan area kerja. Pada baris keempat tercatat “G90 I0 J0” yang artinya mode absolute dengan ofset pada sumbu x dan y sama dengan 0. Sedangkan baris kelima sampai kesembilan adalah proses menggambar lingkaran. Proses gambar lingkaran dimulai dari koordinat yang sumbu x-nya berjarak sebesar nilai radius yang tertera dan koordinat sumbu y sama dengan koordinat y pada titik pertama seperti yang tercatat pada baris kelima pada gambar 4.18.
Gambar 4.18 File g-code gambar lingkaran untuk perintah G3. Pada baris berikutnya, masih pada koordinat yang sama hanya perintahnya G1 yang berarti memulai menggambar pada titik yang koordinat tercatat pada baris ini. Kemudian saat koordinat z sudah mulai turun ke nilai 0, program g-code akan berpindah ke baris berikutnya. Baris selanjutnya adalah eksekusi perintah G3 atau gerakan melingkar berlawanan jarum jam (ccw). Pada gambar 4.18 pada baris ini koordinat yang tercatat adalah koordinat x dan y untuk titik yang akan dituju bukan koordinat pada baris sebelumnya dengan radius sebesar nilai yang sudah dicatat. Setelah mencapai titik yang dituju pada baris 7, proses penggambaran lingkaran hanya baru membuat setengah
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI 50
lingkaran. Setelahnya dilajutkan eksekusi perintah G3 pada baris kedelapan, sama dengan eksekusi perintah G3 pada baris sebelumnya koprdinat-koordinat yang tertera adalah koordinat-koordinat dari titik yang akan dituju dengan nilai radius seperti yang tertera pada baris tersebut. Setelah mencapai koordinat yang sudah dituju proses gambar lingkaran selesai saat pensil menggambar beada 5mm atau 0.2 inch (tergantung satuan/unit yang dipakai) diatas koordinat terakhir. File g-code gambar lingkaran untuk perintah G2, hampir sama dengan file g-code gambar lingkaran untuk perintah G3. Perbedaannya tentu saja pada perintah menggambar lingkarannya yaitu pada perintah G3 diganti menjadi G2 atau gerakan penggambarannya bergerak searah jarum jam (cw)
dan titik untuk memulai menggambarnya berada
disebelah kiri dari titik center atau titik pertama. File g-code gambar lingkaran untuk perintah G2 dapat dilihat pada gambar 4.19 dibawah ini.
Gambar 4.19 File g-code gambar lingkaran untuk perintah G2.
4.5. Pengujian dan Analisis Program G-code Pengujian dan analisis program g-code dilakukan dengan simulasi menggunakan software CNC, yaitu Mach3. Pengujian berupa kesesuaian ukuran dan letak gambar antara
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI 51
yang dibuat pada software visual basic 6 dan yang dihasilkan pada simulasi software CNC. Masing-masing pengujian dilakukan 1 kali untuk tiap unit atau satuan yang berbeda.
4.4.1 Pengujian dan Analisis Program G-code untuk Gambar Garis Pengujian gambar garis untuk satuan milimeter dapat dilihat pada gambar 4.20. pengujian berdasarkan program g-code pada visual basic 6 sebelumnya.
Gambar 4.20 Pengujian gambar garis satuan milimeter dengan software CNC.
Pada gambar 4.20 koordinat-koordinat yang terdapat pada program dianggap sebagai satuan milimeter karena pada awal program sudah diberi inisialisasi dengan perintah G21.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI 52
Kemudian karena menggunakan mode absolute, maka setiap kali melakukan penggambaran selalu diacu pada titik 0,0 yaitu pojok kanan atas. Pada gambar 4.20 bentuk dan letak gambar garis sudah sesuai dengan bentuk dan letak gambar garis pada software visual basic 6. Pengujian gambar garis untuk satuan inch dapat dilihat pada gambar 4.21. Pengujian berdasarkan program g-code yang sudah dibuat pada software visual basic 6 dengan pemilihan satuan inch.
Gambar 4.21. Pengujian gambar garis untuk satuan inch dengan software CNC.
Pada gambar 4.21. aktuator penggambar berada pada titik terakhir penggambaran sebelumnya. Kemudian saat dijalankan aktuator menginisialisasi satuan yang dipakai dan
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI 53
area kerjanya, pada program ini satuan yang dipakai adalah inch. Ini dapat dilihat dari perintah G20. Walaupun nilai koordinat lebih kecil tetapi karena ada inisialisasi ini makan program membaca nilai satuan koordinat menjadi inch. Gambar garis yang digambar pada software CNC bentuk dan letaknya sudah sesuai dengan yang digambar pada software visual basic 6.
4.4.2 Pengujian dan Analisis Program G-code untuk Gambar Lingkaran Pengujian gambar garis untuk perintah G2 dapat dilihat pada gambar 4.22. pengujian berdasarkan file g-code yang dihasilkan dari penggambaran pada software visual basic 6.
Gambar 4.22. Pengujian gambar dalam satuan milimeter dengan perintah G2
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI 54
Pada gambar 4.22, diketahui awal menggambar adalah pada titik berjarak nilai radius dengan titik center atau titik satu, kemudian penggambaran lingkaran adalah dengan gerakan melingkar seara jarum jam (garis berwarna hijau pada lingkaran). Pada gambar kotak antar bentuk dan letak posisi sudah sesuai dengan gambar yang adapada software visual basic 6. Pengujian gambar lingkaran satuan inch dengan perintah G3, dapat dilihat pada gambar 4.23. File g-code diambil dari software visual basic 6 yang telah dirancang untuk mengambar lirangan dengan perintah G3.
Gambar4.23. Pengujian gambar lingkaran satuan inch dengan perintah G3.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI 55
Pada gambar 4.23 saat pengujian pada software CNC titik awal untuk proses menggambar terletak disebelah kanan titik center atau pusat. Kemudian perintah G3 mengeksekusi gerakan melingkar berlawanan dengan arah jarum jam. Pada gambar 4.23 terlihat proses eksekusi adalah pada garis yang berwarna hijau pada gambar lingkaran. Kesesuaian bentuk dan letak sudah tercapai pada gambar lingkaran satuan inch dengan perintah G3 ini. Kekurangan pada gambar lingkaran, dikarenakan menggunakan metode circle cirrcum. Sehingga saat titik pertama dekat pada batas picture box dan titik dua ditarik mencapai radius melebihi area gambar. G-code yang dihasilkan tetap membentuk lingkaran tetapi hasilnya diluar dari pada area gambar seperti gambar 4.24.
Gambar 4.24 Gambar Lingkaran Melebihi Area Gambar
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI 56
4.4.3 Pengujian dan Analisis Program G-code untuk Gambar Kotak Pengujian gambar kotak untuk satuan milimeter dapat dilihat pada gambar 4.25. File g-code diambil dari proses menggambar gambatr kotak pada software visual basic 6 dengan unit atau satuan yang dipilih adalah milimeter.
Gambar 4.25 Pengujian gambar kotak satuan milimeter.
Pada gambar 4.25 penggambaran kotak diawali dari koordinat 0,0 atau mode absolute menuju koordinat pertama pada kotak. Kemudian dilajutkanke koordinat kedua, ketiga, keempat dan kembali lagi pada koordinat pertama pada gambar kotak. Dari gambar 4.25 keseuaian bentuk dan letak koordinat sudah tercapai.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI 57
Pengujian gambar kotak untuk satuan inch dapat dilihat pada gambar 4.26. File gcode diambil dari proses menggambar gambatr kotak pada software visual basic 6 dengan unit atau satuan yang dipilih adalah inch.
Gambar 4.26 Pengujian gambar kotak dengan satuan inch.
Pada gambar 4.26 gambar kotak dinisialisasi sebagai satuan inch dengan perintah G20. Gambar kotak di titik koordinat pertama berada di ujung kanan bawah sehingga proses penggambaran juga dimulai dari ujung kanan bawah. kemudian menuju ke titik kedua yaitu kekiri dan dilanjutkan ke titik koordinat ketiga, lalu keempat dan kembali ke titik koordinat pertama. Sehingga menghasilkan gambar kotak sesuai dengan pembuatan gambar dari software visual basic 6.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI 58
4.4.4 Pengujian dan Analisis Program G-code untuk Gambar Gabungan Gambar gabungan yang dimaksud adalah menggbungkan beberapa gambar misal membuat segitiga atau tanda tambah atau misal menggabungkan gambar kotak dan lingkaran. Pada pengujian gambar gabungan adalah gambar segitiga dan tanda tambah menggunakan gambar garis. Gambar 4.27 adalah pengujian gambar segitiga dengan menggabungkan 3 gambar garis.
Gambar 4.27 Pengujian gambar segitiga Pengujian gambar segitiga dengan menggunakan 3 gambar garis sudah sesuai dengan bentuk dan letaknya seperti pada software visual basic 6.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI 59
Pada gambar 4.28. pengujian gambar tanda tambah. Penggambaran tanda tambah ini adalah dengan menggabungkan 2 gambar garis.
Gambar 4.28 Pengujian gambar tanda tambah.
Pengujian gambar segitiga dengan menggunakan 3 gambar garis sudah sesuai dengan bentuk dan letaknya seperti pada software visual basic 6.
4.4.5 Pengujian Maksimal Baris G-code (100 Baris) Pada software yang dibuat ini baris maksimal G-code bisa mencapai 100 baris. Pengujian yang dilakukan pada software Mach3 dengan masukan g-code 100 baris dapat
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI 60
dieksekusi hingga baris terakhir.
Gambar 4.29 merupakan gambar gabungan yang
menghasilkan g-code 100 baris.
Gambar 4.29 Gambar yang Menghasilkan G-code 100 baris.
Penggambaran pada gambar 4.29 menghasilkan baris g-code seperti ditunjukkan pada gambar 4.28. Pada Software yang dibuat ini g-code untuk garis menghasilkan 4 baris g-code, sedangkan kotak menghasilkan 7 baris g-code dan lingkaran menghasilkan 6 baris g-code. Sehingga pada gambar diatas terdapat 102 baris g-code yang dari 35 baris untuk menggambar kotak ( 5 x 7 baris), 36 baris untuk menggambar lingkaran (6 x 6 baris), 28 baris untuk menggambar garis ( 7 x 4 baris), dan 3 baris g-code saat menentukan satuan dan batas area. Baris g-code bisa lebih dari 100 baris, karena pada penggambaran sebelum
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI 61
garis terakhir baris g-code sudah mencapai 98 baris sehingga saat menggambar garis lagi baris g-code bertambah 4 menjadi 102 baris. Tetapi jika sudah mencapai array lebih dari 100, jika akan melakukan penggambaran lagi akan terjadi debug karena array dalam program sudah melebihi inisialisasi. Gambar 4.30 merupakan pengujian baris maksimal g-code dari gambar 4.29 dengan simulasi menggunakan software Mach3. G-code dengan 100 baris dapat disimulasikan pada software Mach3. Eksekusi dilakukan berdasarkan urutan penggambaran dari proses penggambaran pada software visual basic 6.0.
Gambar 4.30 Pengujian untuk Baris Maksimal G-code. Analisa yang didapat dari hasil pengujian program G-code pada simulasi menggunakan software Mach3 adalah sebagai berikut. 1. Pada software Mach3 skala yang digunakan untuk membaca koordinat hanya memiliki ketelitian hingga 4 angka dibelakang koma seperti ditunjukkan gambar 4.31. Sedangkan untuk penggambaran pada software vb ketelitiannya mencapai 5 angka dibelakang koma untuk satuan mm dan 6 angka dibelakang koma untuk satuan inch. Sehingga terdapat perbedaan (error) 0,00001-0,00009 untuk koordinat yang menggunakan satuan mm seperti pada gambar 4.19. Pada Gambar 4.20 program g-code baris 4 dan 5 koordinat yang tercatat adalah x50,80005 y58,73756. Ini berarti terdapat selisih 0,00005 untuk koordinat x dan 0,00006 untuk koordinat y. Sedangkan pada satuan inch terdapat perbedaan (error) 0,00001-0,000099 seperti pada gambar 4.21. Pada gambar 4.21 program g-code
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI 62
baris ke 4 dan 5 koordinat yang tercatat adalah x,510417 y-,03125. Ini berarti terdapat selisih 0,000017 untuk koordinat x dan 0,00005 untuk koordinat y.
Gambar 4.31 Skala Ketelitian pada Software Mach3.
2. Pada program penggambaran di visual basic satuan terkecil yang dapat digambar adalah 1 pixel atau sekitar 0,26459 mm atau 0,010416 inch. Jadi ketelitian penggambaran untuk satuan mm adalah 5 angka dibelakang koma, karena koordinat yang didapat diambil dari kelipatan 0,26459. Sedangkan ketelitian penggambaran untuk satuan inch adalah 6 angka, karena koordinat didapat dari kelipatan 0,010416.
4.6. Pembahasan Fitur Tambahan Komunikasi Serial untuk Pengiriman G-code. Pada pengujian komunikasi serial dilakukan dengan mengubah baudrate pada program di mikrokontroller dan visual basic. Pengaturan baudrate digunakan untuk mengatur kecepatan dalam melakukan transfer data. Pengubahan baudrate ini untuk menguji proses transfer data mulai dari transfer data dengan kecepatan paling rendah sampai transfer data dengan kecepatan yang paling cepat. Pada arduino baudrate yang tersedia mulai dari kecepatan 300 bps (bit per second) sampai dengan 250000 bps. Pada pengujian komunikasi baudrate yang dapat digunakan untuk komunikasi serial berada pada kecepatan 1200-57600 bps. Diatas atau dibawah kecepatan dari baudrate tersebut tidak dapat terjadi komunkasi serial. Ini dikarenakan toleransi baudrate antara visual basic dan mikrokontroller pada baudrate diatas 57600 bps dan dibawah 1200 bps tidak cocok. Sedangkan Komunikasi serial untuk pengiriman g-code ke arduino menggunakan baudrate 9600 bps karena paling stabil. Kominkasi serial
dimulai dengan memilih port pada
combo2 dan menekan command button “connect”. Setelah tersambung pada teks indikator
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI 63
akan muncul tulisan “ready” . Kemudian kirim g-code dengan menekan command button “send”. Saat proses pengiriman data tulisan pada teks indikator berubah menjadi “proccess”. Pengiriman data dilakukan per baris dari g-code dan ditampilakan pada teks data terkirim. Setelah proses selesai pada teks indikator tulisannya berubah menjadi “succes” seperti gambar 4.32.
Gambar 4.32. Proses Komunikasi Serial
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
BAB V KESIMPULAN DAN SARAN 5.1.
Kesimpulan Setelah melakukan perancangan, pembuatan, dan pengujian pada software
pengubah gambar vektor menjadi gerakan robot dapat diambil kesimpulan sebagai berikut : 1. Software mampu menggambar dan menerjemahkan ke dalam bentuk file gcode. 2. G-code dapat disimpan dalam format teks dengan ektensi txt. 3. File G-code dapat diimplementasikan pada software Mach3. 4. Mampu mengimplementasikan g-code 100 baris dengan menggunakan software Mach3. 5. Skala panjang terkecil yang dapat dibuat adalah 0,26459 untuk satuan milimeter dan 0,010416 untuk satuan inch.
5.2.
Saran Berdasarkan hasil yang didapat, untuk pengembangan lebih lanjut terdapat
beberapa saran agar alat ini dapat bekerja lebih baik, yaitu : 1. Menambah jenis gambar seperti segitiga yang dapat di terjemahkan menjadi gcode. 2. Menambah g-code pada software penerjemah ini. 3. Menambahkan komunikasi serial untuk implementasi pada mesin CNC atau lengan robot.
64
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
DAFTAR PUSTAKA [1] Fusaomi Nagata, Yukihiro Kusumoto &Keigo Watanabe. "Intelligent machining system for the artistic design of wooden paint rollers. Robotics and Computer-Integrated Manufacturing",2009, pp. 680-688. doi:10.1016/j.rcim.2008.05.001:
[2] Dzulqornain, Fitroh. 2007.Prinsip Kerja Mesin CNC http://www.insinyoer.com/prinsip-kerja-mesin-cnc/ Diakses pada tanggal 31 Maret 2016
[3] Agito, 2010. Mengenal Jenis Gambar http://www.magzimp.com/design/mengenal-jenis-gambar-dalam-dunia-digital/ Diakses pada tanggal 8 Agustus 2016
[4] Anhar. 2016. Kumpulan Source Code Visual Basic 6.0 untuk Skripsi. Jakarta : PT. ELex Media Komputindo
[5] PMSD.2013. Pemrograman Aplikasi Teknik. Yogyakarta: PMSD
[6] Basuki, achmad.2006.Algoritma Pemrograman 2 menggunakan Visual Basic 6.0. Surabaya : ITS
[7] Danny, Umar.2015. Visual Basic 6.0 Tutorial PDF Bahasa Indonesia http://umardanny.com/visual-basic-6-0-tutorial-pdf-bahasa-indonesia/ Diakses pada tanggal 23 Juni 2016
[8] http://www.kodiing.com/2015/05/turorial-1-memulai-vb6.html/ Diakses pada tanggal 30 Juni 2016
[9] ----,----, Pengertian Dasar Pemrograman Visual Basic 6.0 ( VB ) http://www.ekowiner.web.id/2015/04/pengertian-dasar-pemrograman-visual-basic6.0.html/ Diakses pada tanggal 30 Maret 2016
[10] Madcoms. 2008. Microsoft Visual Basic 6.0 untuk pemula.Yogyakarta: ANDI OFFSET. 65
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI 66
[11]https://www.academia.edu/24474111/TIPE_DATA_VARIABEL_KONSTANTA_DA N_OPERATOR_DALAM_VISUAL_STUDIO Diakses pada tanggal 5 Juli 2016
[12]Stephens R., 1999, Visual Basic Graphics Programming, 2nd edition, Wiley, ISBN 0471-35599-2 [13]https://msdn.microsoft.com/en-us/library/aa231268(v=vs.60).aspx Diakses pada tanggal 9 Juli 2016
[14]http://desainmanufaktur.bayuwiro.net/index.php/2015/09/29/kode-format-programcnc/ Diakses pada tanggal 30 Juni 2016 [15]http://www.endmemo.com/sconvert/millimetertwip.php Diakses pada tanggal 31 januari 2017
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
LAMPIRAN
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI L1
Lampiran G-code 100 Baris G90 G21 z5 F1000
G1 x30,95628 y-33,8667
G1 x45,24379 y-75,93549
G28 G17 x0 y-148,696 z0
z0
z0
G30 G90 x148,696 y0 z0
G1 x116,4168 y-33,8667
G3 x32,01461 y-75,93549
G0 x30,6917 y-15,08126
G1 x116,4168 y-46,56671
r6,61459
z5
G1 x30,95628 y-46,56671
G3 x45,24379 y-75,93549
G1 x30,6917 y-15,08126
G1 x30,95628 y-33,8667
r6,61459
z0
G0 x30,95628 y-33,8667
G0 x45,24379 y-75,93549
G1 x116,6814 y-15,08126
z5
z5
G0 x116,6814 y-15,08126
G0 x30,95628 y-48,4188
G90 I0 J0
z5
z5
G0 x57,94381 y-76,20007
G0 x30,95628 y-17,46252
G1 x30,95628 y-48,4188
z5
z5
z0
G1 x57,94381 y-76,20007
G1 x30,95628 y-17,46252
G1 x116,6814 y-48,4188
z0
z0
G0 x116,6814 y-48,4188
G3 x44,71463 y-76,20007
G1 x116,6814 y-17,46252
z5
r6,61459
G1 x116,6814 y-29,36878
G0 x31,22087 y-50,27088
G3 x57,94381 y-76,20007
G1 x30,95628 y-29,36878
z5
r6,61459
G1 x30,95628 y-17,46252
G1 x31,22087 y-50,27088
G0 x57,94381 y-76,20007
G0 x30,95628 y-17,46252
z0
z5
z5
G1 x116,6814 y-50,27088
G90 I0 J0
G0 x30,95628 y-31,48545
G1 x116,6814 y-63,50006
G0 x75,14174 y-76,20007
z5
G1 x31,22087 y-63,50006
z5
G1 x30,95628 y-31,48545
G1 x31,22087 y-50,27088
G1 x75,14174 y-76,20007
z0
G0 x31,22087 y-50,27088
z0
G1 x118,2689 y-31,48545
z5
G3
G0 x118,2689 y-31,48545
G90 I0 J0
76,20007 r6,879173
z5
G0 x45,24379 y-75,93549
G3 x75,14174 y-76,20007
G0 x30,95628 y-33,8667
z5
r6,879173
z5
x61,383397
y-
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI L2
G0 x75,14174 y-76,20007
G3
z5
74,0834 r6,879173
z5
G90 I0 J0
G3 x117,4751 y-74,0834
G0 x31,48545 y-97,10218
G0 x83,34383 y-76,20007
r6,879173
z5
z5
G0 x117,4751 y-74,0834
G1 x31,48545 y-97,10218
G1 x83,34383 y-76,20007
z5
z0
z0
G0 x31,75003 y-66,67506
G1 x117,2105 y-97,10218
z5
G1 x117,2105 y-106,6272
76,20007 r6,879173
G1 x31,75003 y-66,67506
G1 x31,48545 y-106,6272
G3 x83,34383 y-76,20007
z0
G1 x31,48545 y-97,10218
r6,879173
G1 x117,7397 y-66,67506
G0 x31,48545 y-97,10218
G0 x83,34383 y-76,20007
G0 x117,7397 y-66,67506
z5
z5
z5
G0 x31,75003 y-108,4793
G90 I0 J0
G0 x32,54378 y-84,13758
z5
G0 x103,1876 y-74,87716
z5
G1 x31,75003 y-108,4793
z5
G1 x32,54378 y-84,13758
z0
G1 x103,1876 y-74,87716
z0
G1 x116,1522 y-108,4793
z0
G1 x116,9459 y-84,13758
G0 x116,1522 y-108,4793
G1 x116,9459 y-92,33968
z5
74,87716 r6,879173
G1 x32,54378 y-92,33968
G0 x32,01461 y-111,1251
G3 x103,1876 y-74,87716
G1 x32,54378 y-84,13758
z5
r6,879173
G0 x32,54378 y-84,13758
G1 x32,01461 y-111,1251
G0 x103,1876 y-74,87716
z5
z0
z5
G0 x31,75003 y-95,25009
G1 x116,6814 y-111,3897
G90 I0 J0
z5
G0 x116,6814 y-111,3897
G0 x117,4751 y-74,0834
G1 x31,75003 y-95,25009
z5
z5
z0
G1 x117,4751 y-74,0834
G1 x117,7397 y-95,25009
G3
G3
z0
x69,585487
x89,429257
y-
y-
x103,716727
y-
G0 x117,7397 y-95,25009
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI L3
Listing Program Visual Basic 6.0 Option Explicit
Private lastx(100) As Single 'x untuk titik pertama garis Private lasty(100) As Single 'y untuk titik pertama garis Private startx(100) As Single 'x untuk titik pertama lingkaran Private starty(100) As Single 'y untuk titik prtama lingkaran Private rx(100) As Single 'x untuk titik pertama kotak Private ry(100) As Single 'y untuk titik pertama kotak Private lastx2(100) As Single 'x untuk titik kedua garis Private lasty2(100) As Single 'y untuk titik kedua garis Private startx2(100) As Single 'x untuk titik kedua lingkaran Private starty2(100) As Single 'y untuk titik kedua lingkaran Private rx2(100) As Single 'x untuk titik kedua kotak Private ry2(100) As Single 'y untuk titik kedua kotak Dim Garis As Integer Dim lingkaran As Integer Dim kotak As Integer Dim i As Byte Dim z As Integer Dim Data As Integer Dim x1(50), x2(50), x3(50), x4(50), y1(50), y2(50), y3(50), y4(50), x5(50), y5(50), x6(50), y6(50), x7(50), y7(50), x8(50), r(50), a(50), b(50), c(50) As String Dim sentences, sentences2, sentences3, sentences4, sentences5, sentences6 As String Dim lurus, lurus2, lurus3, lurus4 As String Dim ling, ling1, ling2, ling3, ling4, ling5, g1, g2, g3, g4 As String Dim f, X, j As Integer Dim text As String
Private Sub Cmclear_Click()
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI L4
Picture1.Picture = LoadPicture() 'program menghapus SavePicture Picture1.Image, "satu.bmp" Text1.Visible = False Text2.Visible = False Text3.Visible = False Text4.Visible = False Text5.Visible = False Text6.Visible = False Text7.Visible = False Text8.Visible = False Label3.Caption = "" Label4.Caption = "" Label7.Caption = "" Label8.Caption = "" lblnama.Caption = "" List1.Clear List1.Visible = False cmdsimpan.Visible = False cmdgen.Enabled = False Combo1.text = "" lingkaran = 0 kotak = 0 Garis = 0 cmdgaris.Enabled = True Cmdlingkaran.Enabled = True cmdkotak.Enabled = True Combo1.Enabled = True List1.Visible = False Cmdcon.Visible = False Combo2.Visible = False
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI L5
cmdsimpan.Enabled = True Text9.text = "" Text10.text = "" Picture1.Enabled = True End Sub
Private Sub Cmdcon_Click() Dim port As Integer On Error GoTo errcode
f=f+1 If f = 3 Then f = 1
Select Case Combo2.ListIndex Case -1 port = 1 Case 0 port = 1 Case 1 port = 2 Case 2 port = 3 Case 3 port = 4 Case 4 port = 5 Case 5 port = 6 Case 6 port = 7
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI L6
Case 7 port = 8 Case 8 port = 9 End Select
If f = 1 Then With MSComm1 If .PortOpen Then .PortOpen = False .CommPort = port .Settings = "9600,N,8,1" .InputLen = 0 .RThreshold = 1 .PortOpen = True .DTREnable = False End With Cmdcon.Caption = "disconnect" Text9.Visible = True Text10.Visible = True Label11.Visible = True Label14.Visible = True cmdsend.Visible = True Cmclear.Enabled = False End If If f = 2 Then MSComm1.PortOpen = False Cmdcon.Caption = "connect" Text9.Visible = False Text10.Visible = False Label11.Visible = False
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI L7
Label14.Visible = False cmdsend.Visible = False Cmclear.Enabled = True End If
Exit Sub
errcode: MsgBox "Port Salah !", vbOKOnly, "Peringatan" Combo2.SetFocus End Sub
Private Sub Cmdend_Click() X = MsgBox("Apakah ingin keluar?", vbQuestion + vbYesNo, "G-code Generator") If X = vbYes Then End End If End Sub
Private Sub cmdgaris_Click() Garis = 1 Cmdlingkaran.Enabled = False cmdkotak.Enabled = False cmdgen.Enabled = True Picture1.Enabled = True If Garis = 1 And Combo1.text = "" Then 'label dan text untuk garis MsgBox "Silahkan, Memilih Satuan Ukuran!", vbInformation, "G-code Generator" Cmdlingkaran.Enabled = True cmdkotak.Enabled = True cmdgen.Enabled = False
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI L8
Else lblnama.Caption = "GARIS" Text1.Visible = True Text2.Visible = True Text3.Visible = True Text4.Visible = True Text5.Visible = False Text6.Visible = False Text7.Visible = False Text8.Visible = False Text1.text = "" Text2.text = "" Text3.text = "" Text4.text = "" Text5.text = "" Text6.text = "" Text7.text = "" Text8.text = "" Label3.Caption = "Koordinat 1" Label4.Caption = "Koordinat 2" Label7.Caption = "" Label8.Caption = "" Combo1.Enabled = False End If
If Garis = 1 Then 'program mouse pointer Picture1.MousePointer = 2 Else Picture1.MousePointer = 1 End If
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI L9
End Sub
Private Sub cmdgen_Click()
If Text1.text = "" Then 'menampilkan list1 MsgBox "Silahkan, Menggambar Sesuatu!", vbInformation, "G-code Generator" List1.Enabled = False kotak = 0 lingkaran = 0 Garis = 0 Text1.Visible = False Text2.Visible = False Text3.Visible = False Text4.Visible = False Text5.Visible = False Text6.Visible = False Text7.Visible = False Text8.Visible = False lblnama.Caption = "" Label3.Caption = "" Label4.Caption = "" Label7.Caption = "" Label8.Caption = "" Picture1.Enabled = True cmdgaris.Enabled = True Cmdlingkaran.Enabled = True cmdkotak.Enabled = True Else List1.Visible = True
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI L10
cmdgaris.Enabled = False cmdkotak.Enabled = False Cmclear.Enabled = False Cmdlingkaran.Enabled = False cmdsimpan.Visible = True Cmdcon.Visible = True Combo2.Visible = True Picture1.Enabled = False End If
If Garis = 0 And lingkaran = 0 And kotak = 0 And lblnama.Caption = "" Then cmdgaris.Enabled = True cmdkotak.Enabled = True Cmdlingkaran.Enabled = True cmdgen.Enabled = False Else cmdgaris.Enabled = False cmdkotak.Enabled = False Cmdlingkaran.Enabled = False End If If List1.Enabled = True Then cmdgaris.Enabled = False Cmdlingkaran.Enabled = False cmdkotak.Enabled = False End If
End Sub
Private Sub cmdkotak_Click() kotak = 1
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI L11
cmdgaris.Enabled = False Cmdlingkaran.Enabled = False cmdgen.Enabled = True Picture1.Enabled = True If kotak = 1 And Combo1.text = "" Then 'label dan text untuk kotak MsgBox "Silahkan, Memilih Satuan Ukuran!", vbInformation, "G-code Generator" Cmdlingkaran.Enabled = True cmdgaris.Enabled = True cmdgen.Enabled = False Else lblnama.Caption = "KOTAK" Label3.Caption = "Koordinat1" Label4.Caption = "Koordinat2" Label7.Caption = "Koordinat3" Label8.Caption = "Koordinat4" Text1.Visible = True Text2.Visible = True Text3.Visible = True Text4.Visible = True Text5.Visible = True Text6.Visible = True Text7.Visible = True Text8.Visible = True Text1.text = "" Text2.text = "" Text3.text = "" Text4.text = "" Text5.text = "" Text6.text = "" Text7.text = ""
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI L12
Text8.text = "" Combo1.Enabled = False
End If
If kotak = 1 Then 'program mouse pointer Picture1.MousePointer = 2 Else Picture1.MousePointer = 1 End If
End Sub
Private Sub cmdlingkaran_Click() lingkaran = 1 cmdgaris.Enabled = False cmdkotak.Enabled = False cmdgen.Enabled = True Picture1.Enabled = True If lingkaran = 1 And Combo1.text = "" Then 'label dan text untuk lingkaran MsgBox "Silahkan, Memilih Satuan Ukuran!", vbInformation, "G-code Generator" cmdkotak.Enabled = True cmdgaris.Enabled = True cmdgen.Enabled = False Else lblnama.Caption = "LINGKARAN" Label3.Caption = "Titik Satu" Label4.Caption = "Titik Dua" Label7.Caption = "Radius" Label8.Caption = ""
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI L13
Text1.Visible = True Text2.Visible = True Text3.Visible = True Text4.Visible = True Text5.Visible = True Text6.Visible = False Text7.Visible = False Text8.Visible = False Text1.text = "" Text2.text = "" Text3.text = "" Text4.text = "" Text5.text = "" Text6.text = "" Text7.text = "" Text8.text = "" Combo1.Enabled = False
End If
If lingkaran = 1 Then 'program mouse pointer Picture1.MousePointer = 2 Else Picture1.MousePointer = 1 End If
End Sub
Private Sub cmdsend_Click() i = List1.ListCount
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI L14
For j = 0 To i - 1 text = List1.List(j) Text10.text = text MSComm1.Output = text & Chr$(10) delay Next j MSComm1.Output = "r" End Sub
Private Sub cmdsimpan_Click() Dim i As Integer Open App.Path & "\G-code.txt" For Output As #1 For i = 0 To List1.ListCount - 1 Print #1, List1.List(i) Next Close #1 MsgBox "Data Telah Tersimpan", 32, "informasi" Cmclear.Enabled = True cmdsimpan.Enabled = False End Sub
Private Sub Combo1_Click() If Combo1.text = "Milimeter" Then Picture1.ScaleMode = 6 cmdgaris.Enabled = True Cmdlingkaran.Enabled = True cmdkotak.Enabled = True g1 = "G90 G21 z5 F1000 " g2 = "G28 G17 x0 y-148,696 z0" g3 = "G30 G90 x148,696 y0 z0"
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI L15
List1.AddItem g1 List1.AddItem g2 List1.AddItem g3 Combo1.Enabled = False i = List1.ListCount Text11.text = i ElseIf Combo1.text = "Inch" Then Picture1.ScaleMode = 5 cmdgaris.Enabled = True Cmdlingkaran.Enabled = True cmdkotak.Enabled = True g1 = "G90 G20 z0,2 F1000" g2 = "G28 G17 x0 y-5,854167 z0" g3 = "G30 G90 x5,854167 y0 z0" List1.AddItem g1 List1.AddItem g2 List1.AddItem g3 Combo1.Enabled = False i = List1.ListCount Text11.text = i Else MsgBox "Silahkan, Memilih Satuan Ukuran!", vbInformation, "G-code Generator" End If End Sub
Private Sub Form_Load() Picture1.DrawWidth = 1 Picture1.Height = 8503.937007874 Picture1.Width = 8503.937007874 Garis = 0
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI L16
lingkaran = 0 kotak = 0 Text1.Visible = False Text2.Visible = False Text3.Visible = False Text4.Visible = False Text5.Visible = False Text6.Visible = False Text7.Visible = False Text8.Visible = False List1.Visible = False Label12.Visible = False cmdsimpan.Visible = False cmdgen.Enabled = False Combo1.text = "" Combo2.Visible = False Cmdcon.Visible = False cmdsend.Visible = False Text9.Visible = False Text10.Visible = False Label11.Visible = False Label14.Visible = False
With Combo2 .AddItem "COM1" .AddItem "COM2" .AddItem "COM3" .AddItem "COM4" .AddItem "COM5" .AddItem "COM6"
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI L17
.AddItem "COM7" .AddItem "COM8" .AddItem "COM9" End With
End Sub
Private Sub Form_Unload(Cancel As Integer) If MSComm1.PortOpen Then MSComm1.PortOpen = False End Sub
Private Sub MSComm1_OnComm() If MSComm1.CommEvent = comEvReceive Then Text9.text = MSComm1.Input If Text9.text = "j" Then Text9.text = "Succes" ElseIf Text9.text = "k" Then Text9.text = "Procces" Else Text9.text = "ready" End If End If End Sub
Private Sub Picture1_Click()
lingkaran = 0 kotak = 0 Garis = 0 Picture1.Enabled = False
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI L18
If Garis = 0 Or lingkaran = 0 Or kotak = 0 Then lblnama.Caption = "" End If
Cmdlingkaran.Enabled = True cmdgaris.Enabled = True cmdkotak.Enabled = True
If startx(i) - startx2(i) > 0 Then 'menentukan arah lingkaran Label9.Caption = "G2" Else Label9.Caption = "G3" End If
If Combo1.text = "Milimeter" Then Label12.Caption = "5" Else Label12.Caption = "0,2" End If
If kotak = 0 And Label3.Caption = "Koordinat1" Then 'menyimpan g-code kotak List1.Enabled = True Data = Data + 1 x1(Data) = Trim(Text1) y1(Data) = Trim(Text2) x2(Data) = Trim(Text3) y2(Data) = Trim(Text4) x3(Data) = Trim(Text5) y3(Data) = Trim(Text6)
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI L19
x4(Data) = Trim(Text7) y4(Data) = (Text8) a(Data) = Label12.Caption sentences = "G0 x" & x1(Data) & " y" & y1(Data) & " z" & a(Data) sentences2 = "G1 x" & x1(Data) & " y" & y1(Data) & " z0" sentences3 = "G1 x" & x2(Data) & " y" & y2(Data) sentences4 = "G1 x" & x3(Data) & " y" & y3(Data) sentences5 = "G1 x" & x4(Data) & " y" & y4(Data) sentences6 = "G1 x" & x1(Data) & " y" & y1(Data)
List1.AddItem sentences List1.AddItem sentences2 List1.AddItem sentences3 List1.AddItem sentences4 List1.AddItem sentences5 List1.AddItem sentences6 List1.AddItem sentences i = List1.ListCount Text11.text = i
ElseIf Garis = 0 And Label3.Caption = "Koordinat 1" Then 'menyimpan g-code garis List1.Enabled = True Data = Data + 1 x5(Data) = Trim(Text1) y5(Data) = Trim(Text2) x6(Data) = Trim(Text3) y6(Data) = Trim(Text4) b(Data) = Label12.Caption lurus = "G0 x" & x5(Data) & " y" & y5(Data) & " z" & b(Data) lurus2 = "G1 x" & x5(Data) & " y" & y5(Data) & " z0"
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI L20
lurus3 = "G1 x" & x6(Data) & " y" & y6(Data) lurus4 = "G0 x" & x6(Data) & " y" & y6(Data) & " z" & b(Data) List1.AddItem lurus List1.AddItem lurus2 List1.AddItem lurus3 List1.AddItem lurus4 i = List1.ListCount Text11.text = i
ElseIf lingkaran = 0 And Label3.Caption = "Titik Satu" And Label9.Caption = "G3" Then 'menyimpan g-code lingkaran List1.Enabled = True Data = Data + 1 x7(Data) = Trim(Text3) y7(Data) = Trim(Text2) x8(Data) = Trim(Text1) - (Text5) r(Data) = Trim(Text5) c(Data) = Label12.Caption ling = "G90 I0 J0" ling1 = "G0 x" & x7(Data) & " y" & y7(Data) & " z" & c(Data) ling2 = "G1 x" & x7(Data) & " y" & y7(Data) & " z0" ling3 = "G3 x" & x8(Data) & " y" & y7(Data) & " r" & r(Data) ling4 = "G3 x" & x7(Data) & " y" & y7(Data) & " r" & r(Data) ling5 = "G0 x" & x7(Data) & " y" & y7(Data) & " z" & c(Data) List1.AddItem ling List1.AddItem ling1 List1.AddItem ling2 List1.AddItem ling3 List1.AddItem ling4 List1.AddItem ling5 i = List1.ListCount
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI L21
Text11.text = i
ElseIf lingkaran = 0 And Label3.Caption = "Titik Satu" And Label9.Caption = "G2" Then 'menyimpan g-code lingkaran List1.Enabled = True Data = Data + 1 x7(Data) = Trim(Text3) y7(Data) = Trim(Text2) x8(Data) = Trim(Text1) - (-Text5) r(Data) = Trim(Text5) c(Data) = Label12.Caption ling = "G90 I0 J0" ling1 = "G0 x" & x7(Data) & " y" & y7(Data) & " z" & c(Data) ling2 = "G1 x" & x7(Data) & " y" & y7(Data) & " z0" ling3 = "G2 x" & x8(Data) & " y" & y7(Data) & " r" & r(Data) ling4 = "G2 x" & x7(Data) & " y" & y7(Data) & " r" & r(Data) ling5 = "G0 x" & x7(Data) & " y" & y7(Data) & " z" & c(Data) List1.AddItem ling List1.AddItem ling1 List1.AddItem ling2 List1.AddItem ling3 List1.AddItem ling4 List1.AddItem ling5 i = List1.ListCount Text11.text = i
Else
List1.Enabled = False
End If
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI L22
End Sub
Private Sub Picture1_MouseDown(Button As Integer, Shift As Integer, X As Single, Y As Single) If Button = 1 And lingkaran = 1 Then 'program membuat lingkaran startx(i) = X starty(i) = Y lingkaran = 2 End If If Button = 1 And lingkaran = 2 Then For z = 1 To Abs(startx(i) - X) Picture1.Circle (startx(i), starty(i)), z, vbBlue Next z SavePicture Picture1.Image, "satu.bmp" Text1.text = startx(i) Text2.text = -starty(i) End If startx(i) = X starty(i) = Y
If Button = 1 And kotak = 1 Then 'program membuat kotak rx(i) = X ry(i) = Y kotak = 2 End If If Button = 1 And kotak = 2 Then Picture1.Line (rx(i), ry(i))-(X, Y), RGB(0, 0, 255), BF SavePicture Picture1.Image, "satu.bmp" Text1.text = rx(i) Text2.text = -ry(i)
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI L23
End If rx(i) = X ry(i) = Y
If Button = 1 And Garis = 1 Then 'program membuat garis lastx(i) = X lasty(i) = Y Garis = 2 End If If Button = 1 And Garis = 2 Then Picture1.Line (lastx(i), lasty(i))-(X, Y), vbBlue SavePicture Picture1.Image, "satu.bmp" Text1.text = lastx(i) Text2.text = -lasty(i) End If lastx(i) = X lasty(i) = Y End Sub
Private Sub Picture1_MouseMove(Button As Integer, Shift As Integer, X As Single, Y As Single)
lblx.Caption = X lbly.Caption = -Y
If Garis = 2 Then 'program membuat garis lastx2(i) = X lasty2(i) = Y Picture1.Picture = LoadPicture("satu.bmp") Picture1.Cls Picture1.Line (lastx(i), lasty(i))-(X, Y), vbBlue
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI L24
Text3.text = lastx2(i) Text4.text = -lasty2(i) End If
If lingkaran = 2 Then 'program membuat lingkaran startx2(i) = X starty2(i) = Y Picture1.Picture = LoadPicture("satu.bmp") Picture1.Cls Picture1.Circle (startx(i), starty(i)), Abs(startx(i) - X), vbBlue Text3.text = startx2(i) Text4.text = -starty2(i) Text5.text = Abs(startx(i) - X) End If
If kotak = 2 Then 'program membuat kotak rx2(i) = X ry2(i) = Y Picture1.Picture = LoadPicture("satu.bmp") Picture1.Cls Picture1.Line (rx(i), ry(i))-(X, Y), RGB(0, 0, 255), B Text3.text = rx2(i) Text4.text = -ry(i) Text5.text = rx2(i) Text6.text = -ry2(i) Text7.text = rx(i) Text8.text = -ry2(i)
End If
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI L25
End Sub
Public Sub delay() Dim a As Single a = Timer + 5 Do While a > Timer DoEvents Loop End Sub
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI L26
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI L27