tugas akhir desain dan implementasi graphic user interface untuk

advertisement
TUGAS AKHIR
DESAIN DAN IMPLEMENTASI GRAPHIC USER INTERFACE
UNTUK MESIN CNC DENGAN TAMPILAN 3-D
MENGGUNAKAN WPF DAN VISUAL BASIC 2008
Oleh
Ade Fadli
NIM : 13204144
PROGRAM STUDI TEKNIK ELEKTRO
SEKOLAH TEKNIK ELEKTRO DAN INFORMATIKA
INSTITUT TEKNOLOGI BANDUNG
2009
DESAIN DAN IMPLEMENTASI GRAPHIC USER
INTERFACE UNTUK MESIN CNC DENGAN TAMPILAN 3-D
MENGGUNAKAN WPF DAN VISUAL BASIC 2008
disusun oleh :
Ade Fadli
Tugas Akhir ini telah diterima dan disahkan
Sebagai persyaratan untuk memperoleh gelar
SARJANA TEKNIK ELEKTRO
pada
PROGRAM STUDI TEKNIK ELEKTRO
SEKOLAH TEKNIK ELEKTRO DAN INFORMATIKA
INSTITUT TEKNOLOGI BANDUNG
Bandung, Juni 2009
Disetujui oleh :
Pembimbing,
Dr. Ir. Hilwadi Hindersah, MS.c.
NIP : 131679356
ABSTRAK
Mesin CNC (Computerized Numerical Control) adalah mesin yang mengubah
gerak putaran motor menjadi gerak translasi atau rotasi dari objek yang
dikendalikan. Untuk dapat mengendalikan posisi objek kendalian secara akurat,
diperlukan bantuan grafik, baik 2-D atau 3-D, sebagai representasi dari posisi
objek-objek mesin CNC sebenarnya.
Pada Tugas Akhir ini dirancang dan diimplementasikan suatu Graphic User
Interface (GUI) dengan tampilan 3D yang mengendalikan mesin CNC dengan
tujuh derajat kebebasan (defree of freedom). GUI ini menampilkan grafik animasi
mesin CNC dari berbagai sudut pandang, yaitu sudut pandang pengguna, atas,
depan, dan samping. Kemudian, pengguna dapat mengatur posisi tujuan objek
kendalian mesin CNC yang direpresentasikan oleh grafik 3D.
Grafik 3-D dibuat dengan menggunakan software Blender versi 2.48.a. Blender
merupakan alat bantu untuk membuat grafik 3-D pada WPF. Kelebihan WPF
adalah dukungan terhadap grafik 2-D, 3-D, audio, dan video, sehingga
programmer bisa menampilkan grafik 3-D dengan mudah. Selanjutnya WPF dapat
ditambahkan pada VB Windows Form Application, yang digunakan untuk
mengontrol
grafik
3-D
dan pergerakan
mesin.
Selanjutnya,
komputer
berkomunikasi dengan banyak mikrokontroler dengan menggunakan MultiProcessor Communication Mode (MPCM) AtTiny2313. Grafik 3-D bermanfaat
sebagai preview sebelum mesin dijalankan, dan sebagai tampilan pergerakan
mesin ketika mesin sedang dijalankan, sehingga pengguna bisa mengendalikan
motor dengan lebih baik. Dari pengujian, didapatkan error maksimum rata-rata
15.73%, error minimum rata-rata 0,66%.
Kata kunci : CNC, GUI, 3-D, MPCM, WPF, VB
i
ABSTRACT
CNC (computerized numerical control) is a machine that transforms the rotational
movement of a motor to a translational or rotational movement of the controlled
object. To control the object’s position as accurate as possible, the representation
of the real object positions in form of graphic, either 2-D or 3-D, is needed.
This final project will implement a GUI (Graphical User Interface) with 3-D
display to control a CNC machine with 7 degree of freedom. This GUI shows the
machine’s animated graphic from several perspectives. They are user, front,
above, and sides perspectives. Thus, user can control the object’s position that
represented by the 3-D graphic display.
The 3-D graphic is created with a software named Blender ver. 2.48.a. Blender is
a third-party tool to create 3-D graphic in WPF. The excesses of WPF are
supporting video, audio, 2-D and 3-D graphics hence programmer can create 3-D
graphic easily. Then, WPF is added to VB Windows Form Application that used
to control the 3-D graphic of the machine’s movement. After that, the computer
communicates with many microcontrollers using Multi-Processor Communication
Mode (MPCM) AtTiny2313. The 3-D graphic is useful as a preview before the
machine is turned on, and as a display of the machine’s movement, so user can
control the motor better. In testing for move in translation and rotation distance of
CNC machine, maximum average error is 15.73%, minimum average error is
0.66%
Keywords: CNC, GUI, 3-D, MPCM, WPF, VB
ii
KATA PENGANTAR
Puji syukur penulis panjatkan ke hadirat Allah SWT, yang atas rahmat dan
karunia Nya penulis dapat menyelesaikan Tugas Akhir ini.
Selama melaksanakan tugas akhir ini, penulis mendapat bantuan dan dukungan
dari berbagai pihak. Oleh karena itu, penulis ingin mengucapkan terima kasih
kepada :
1. Bapak, Ibu, dan adik tercinta, yang senantiasa memberikan semangat dan
doanya;
2. Bapak Dr. Ir.Hilwadi Hindersah, MS.c., selaku pembimbing, yang telah
memberikan bimbingan dan semangat dalam menyelesaikan tugas akhir
ini
3. Bapak Yayan, yang telah memberikan bimbingan dan materi tentang
mesin CNC dalam menyelesaikan tugas akhir ini.
4. Dosen-dosen program studi Teknik Elektro, yang telah memberikan
pendidikan dan pengetahuan selama perkuliahan;
5. Seluruh staf dan karyawan Laboratorium Sistem Kendali dan Komputer,
yang telah memberikan banyak bantuan;
6. Teman-teman Teknik kendali Chandra, Saska, C.Munir, Risman, Rizky,
Obi, Zakiyullah, Husnul, Zein, Istantyo, Khrisna, Spiegel, dsb;
7. Teman-teman di Teknik Elektro khususnya angkatan 2004
8. dan semua pihak yang membantu, yang tidak dapat penulis sebutkan satu
persatu.
Penulis menyadari bahwa tugas akhir ini bukanlah tanpa kelemahan, untuk itu
kritik dan saran sangat diharapkan.
Bandung, Juni 2009
Penulis
iii
DAFTAR ISI
ABSTRAK………………………………………………………………… i
ABSTRACT……………………………………………………………….. ii
KATA PENGANTAR…………………………………………....... ……... iii
DAFTAR ISI……………………………………………………………… iv
DAFTAR GAMBAR………………………………..……………………. vi
DAFTAR TABEL………..……………………………………………….. vii
DAFTAR LAMPIRAN…………………………………………………… viii
BAB I PENDAHULUAN…………………………………………………. 1
1.1 Latar Belakang……………………………………………………… 1
1.2 Perumusan Masalah……………………………………………… 1
1.3 Pembatasan Masalah …………………………………………….. 2
1.4 Tujuan……………………………………………………………. 2
1.5 Metodologi Penelitian…………………………………………….. 2
1.6 Sistematika Penulisan……………………………………………. 3
BAB II DASAR TEORI…………………………………………………… 5
2.1 Bagian Mesin CNC…………………………………………………. 5
2.2 Komunikasi serial…………………………………………………… 6
2.2.1 Tata cara komunikasi data serial………………………………. 6
2.2.2 Karakteristik Sinyal Port Serial……………………………….. 7
2.2.3. Flow Control…………………………………………………… 7
2.2.4 Konfigurasi Port Serial………………………………………… 7
2.2.5 Register Serial………………………………………………….. 9
2.3 Multi-Processor Communicaton Mode (MPCM)…………………… 12
2.3.1 Prosedur Multi-Processor Communicaton Mode (MPCM)…… 13
2.4 Windows Presentation Foundation…………………………………. 14
2.4.1 Arsitektur WPF………………………………………………… 16
2.4.2 Hirarki Class…………………………………………………… 16
2.4.3 3-D Drawing…………………………………………………… 17
2.4.4 Satuan WPF…………………………………………………….. 18
2.5 Blender………………………………………………………………. 19
iv
BAB III SPESIFIKASI dan PERANCANGAN SISTEM………………… 21
3.1 Spesifikasi Sistem…………………………………………………… 21
3.1.1 Spesifikasi Perancangan Grafik 3-D dari Mesin CNC……
24
3.1.2 Spesifikasi Perancangan Graphic User Interface………………. 24
3.1.3 Spesifikasi Perancangan Komunikasi Komputer-Mesin CNC…. 24
3.2 Perancangan……………………………………………………..…. 25
3.2.1 Perancangan Model Animasi 3-D dari Mesin CNC…………… 25
3.2.2 Perancangan Graphic User Interface…………………………… 28
3.2.3 Perancangan Komunikasi Data Komputer dengan CNC………. 34
BAB IV PENGUJIAN DAN ANALISA…………………………………. 38
4.1 Pengujian Perintah STEP LEFT dan STEP RIGHT……………….. 38
4.2 Pengujian Perintah Menuju nilai enkoder tertentu…………………. 39
4.3 Menampilkan pergerakan Mesin pada grafik 3-D………………….. 41
BAB V KESIMPULAN…………………………………………………… 44
5.1 Kesimpulan………………………………………………………….. 44
5.2 Saran………………… ………………………………………………45
DAFTAR PUSTAKA ……………………………………………………... 46
v
DAFTAR GAMBAR
Gambar 2.1
Skema Bagian Mesin CNC……………………………………….
5
Gambar 2.2
Arsitektur dari WPF……………………………………………...
16
Gambar 2.3
Fundamental class dari WPF
…………………
17
Gambar 2.4
Tampilan Blender………………………………………………..
20
Gambar 2.5
Mengekspor Blender ke XAML…………………………………
20
Gambar 3.1
Mesin CNC yang akan dikendalikan…………………………….
22
Gambar 3.2
Urutan Pengerjaan perangkat lunak pengendali Mesin CNC……
23
Gambar 3.3
Pembuatan animasi 3-D mesin CNC menggunakan Blender……
25
Gambar 3.4
Hirarki UserControl pada WPF………………………………….
27
Gambar 3.5
Penentuan Sumbu X-Y-Z mesin CNC…………………………...
27
Gambar 3.6
Tampilan Windows Form Application pengendali CNC…………
29
Gambar 3.7
Tampilan model CNC dalam berbagai sudut pandang…………...
30
Gambar 3.8
Kontrol untuk memperbesar dan memperkecil grafik 3-D………
31
Gambar 3.9
Diagram alir perintah menggerakkan mesin CNC……………….
32
Gambar 3.10
Diagram Komunikasi Komputer dengan tujuh buah 35
mikrokontroler…………………………………………………….
Gambar 3.11
Diagram alir serial………………………………………………... 37
Gambar 4.1
Grafik 3-D saat enkoder = 0……………………………………… 42
Gambar 4.2
Grafik 3-D saat enkoder = 20520 (pergerakan turun ke bawah)…. 42
Gambar 4.3
Grafik saat enkoder = 32063……………………………………... 43
vi
DAFTAR TABEL
Tabel 2.1
Konfigurasi Port Serial……………………………………
8
Tabel 2.2
Register Port Serial………………………………………..
9
Tabel 2.3
Baudrate Serial Komputer………………………………...
10
Tabel 2.4
Interupsi Enable Register…………………………………. 10
Tabel 2.5
Interupt Identification Register…………………………… 11
Tabel 2.6
Register Line Control……………………………………... 12
Tabel 2.7
Keunggulan Windows Presentation Foundation………….
15
Tabel 3.1
Penentuan sumbu X-Y-Z mesin CNC…………………….
28
Tabel 3.2
Kontrol Windows Untuk mengendalikan mesin CNC……
32
Tabel 3.3
Instruksi Komputer – Modul Kontroler NC Drill…………
36
Tabel 4.1
Perbandingan perpindahan dengan nilai enkoder…………
38
Tabel 4.2
Pergerakan LEFT dan RIGHT masing-masing sumbu…… 39
Tabel 4.3
Hasil Pengujian Motor 02…………………………………
40
Tabel 4.4
Hasil Pengujian Motor 03…………………………………
40
Tabel 4.5
Hasil Pengujian Motor 06…………………………………
40
Tabel 4.6
Hasil Pengujian Motor 07…………………………………
41
vii
DAFTAR LAMPIRAN
LAMPIRAN A
……………………………………………….
47
LAMPIRAN B
……………….……………………………..
55
LAMPIRAN C
……………………….……………………..
60
LAMPIRAN D
……………………………….……………..
81
viii
Download