BAB III PERANCANGAN SISTEM -...

26
12 BAB III PERANCANGAN SISTEM Pada bab ini akan diuraikan mengenai perancangan perangkat keras dan perangkat lunak yang digunakan untuk membangun Mesin Pemotong Akrilik Berbasis Mikrokontroler. Dalam skripsi ini akan dirancang sebuah sebuah mesin yang dihubungkan dengan sebuah komputer dimana kerja dari mesin tersebut berdasarkan data yang dikirim dari komputer. Gambar 3.1. Blok diagram Alat 3.1 Perancangan Perangkat Keras 3.1.1 Mekanik Bagian mekanik dibagi menjadi 3 bagian yaitu rangka, mekanik penggerak dan Bagian Pemotong a. Rangka Rangka disusun menggunakan pipa segiempat dengan ukuran 20 mm x 30 mm dengan ketebalan 1.9 mm. Dimensi rangka mempunyai ukuran panjang 80 cm x lebar 75 cm dan tinggi 25 cm Aplikasi Desktop Mikrokontroler Mekanik Penggerak X Mekanik Penggerak Y Mekanik Penggerak Z Catu Daya AC Mesin Bor Catu Daya DC

Transcript of BAB III PERANCANGAN SISTEM -...

Page 1: BAB III PERANCANGAN SISTEM - repository.uksw.edurepository.uksw.edu/bitstream/123456789/3999/4/T1_612006027_BAB III...Jenis ulir yang digunakan adalah jenis Ball screw. Tabel 3.1 :

12

BAB III

PERANCANGAN SISTEM

Pada bab ini akan diuraikan mengenai perancangan perangkat keras dan

perangkat lunak yang digunakan untuk membangun Mesin Pemotong Akrilik Berbasis

Mikrokontroler. Dalam skripsi ini akan dirancang sebuah sebuah mesin yang

dihubungkan dengan sebuah komputer dimana kerja dari mesin tersebut berdasarkan

data yang dikirim dari komputer.

Gambar 3.1. Blok diagram Alat

3.1 Perancangan Perangkat Keras

3.1.1 Mekanik

Bagian mekanik dibagi menjadi 3 bagian yaitu rangka, mekanik penggerak dan

Bagian Pemotong

a. Rangka

Rangka disusun menggunakan pipa segiempat dengan ukuran 20 mm x 30 mm

dengan ketebalan 1.9 mm. Dimensi rangka mempunyai ukuran panjang 80 cm x lebar

75 cm dan tinggi 25 cm

Aplikasi Desktop

Mikrokontroler

Mekanik Penggerak X

Mekanik Penggerak Y

Mekanik Penggerak Z

Catu Daya AC

Mesin Bor

Catu Daya DC

Page 2: BAB III PERANCANGAN SISTEM - repository.uksw.edurepository.uksw.edu/bitstream/123456789/3999/4/T1_612006027_BAB III...Jenis ulir yang digunakan adalah jenis Ball screw. Tabel 3.1 :

13

Gambar 3.2. Rancangan Gambar

Gambar 3.3. Mekanik

b. Mekanik Penggerak X,Y dan Z

Masing-masing mekanik penggerak terdiri dari ulir, linear shaft dan linear bearing. Jenis ulir yang digunakan adalah jenis Ball screw.

Tabel 3.1 : Ukuran ball screw

Penggerak Panjang Diameter Jarak Gang

X 65 cm 15 mm 10 mm

Page 3: BAB III PERANCANGAN SISTEM - repository.uksw.edurepository.uksw.edu/bitstream/123456789/3999/4/T1_612006027_BAB III...Jenis ulir yang digunakan adalah jenis Ball screw. Tabel 3.1 :

14

Y 65 cm 15 mm 10 mm

Z 11.2 cm 15 mm 4 mm

Gambar 3.4 Penggerak X

Gambar 3.5 Penggerak Y

Gambar 3.6 Penggerak Z

Linear Shaft

Linear Shaft Ulir

Page 4: BAB III PERANCANGAN SISTEM - repository.uksw.edurepository.uksw.edu/bitstream/123456789/3999/4/T1_612006027_BAB III...Jenis ulir yang digunakan adalah jenis Ball screw. Tabel 3.1 :

15

Untuk menjaga gerakan ball screw agar stabil digunakan Linear shaft. Linear

shaft menggunakan sebuah silinder pejal dengan bahan stainless steel dengan diameter

5/8 inch atau 15.85 mm dan untuk bagian yang bergerak menggunakan 2 buah linear

bearing yang ditanam pada sebuah balok besi pada masing-masing sisi.

Gambar 3.7 Blok besi tempat linear bearing

Page 5: BAB III PERANCANGAN SISTEM - repository.uksw.edurepository.uksw.edu/bitstream/123456789/3999/4/T1_612006027_BAB III...Jenis ulir yang digunakan adalah jenis Ball screw. Tabel 3.1 :

16

c. Bagian Pemotong

Bagian pemotong adalah sebuah mesin bor dan mata bor potong yang

diletakkan pada penggerak Z. Mesin yang menggunakan mesin trimmer merek Makita

dengan seri MT370 .

Tabel 3.2. Spesifikasi mesin trimmer Makita MT370

Model MT370

Kapasitas Cekam Kolet 6.35 mm(1/4”) atau 6 mm Kecepatan tanpa beban (min-1) 35.000

Panjang keseluruhan 199 mm Berat Bersih 1.5 Kg

Kelas Keamanan Kelas 1

Gambar 3.8 Mesin trimmer Makita MT370

3.1.2 Elektronik

a. Modul Mikrokontroler

Mikrokontroler yang digunakan adalah ATmega32 . Mikrokontroler ini

mempunyai saluran I/O sebanyak 32 buah yang terbagi dalam 4 port yaitu port A, port

B, port C, dan port D. Jumlah itu cukup untuk mengontrol 3 buah motor stepper yang

masing-masing memerlukan 4 pin kontrol. Untuk komunikasi data digunakan port

USART pada port D0 dan portD1 dan untuk input sensor digunakan port C. Untuk

pembagian port dapat dilihat pada Tabel 3.3.

Page 6: BAB III PERANCANGAN SISTEM - repository.uksw.edurepository.uksw.edu/bitstream/123456789/3999/4/T1_612006027_BAB III...Jenis ulir yang digunakan adalah jenis Ball screw. Tabel 3.1 :

17

Gambar 3.9 Mikrokontroler Atmega 32.

Gambar 3.10. Skematik Modul Pengendali Mikrokontroler Atmega32

Page 7: BAB III PERANCANGAN SISTEM - repository.uksw.edurepository.uksw.edu/bitstream/123456789/3999/4/T1_612006027_BAB III...Jenis ulir yang digunakan adalah jenis Ball screw. Tabel 3.1 :

18

Tabel 3.3. Konfigurasi port mikrokontroler.

PORT Fungsi Koneksi ke Modul

PortA.0 Output Driver Motor X input 1

PortA.1 Output Driver Motor X input 2

PortA.2 Output Driver Motor X input 3

PortA.3 Output Driver Motor X input 4

PortA.4 Output Driver Motor Y input 1

PortA.5 Output Driver Motor Y input 2

PortA.6 Output Driver Motor Y input 3

PortA.7 Output Driver Motor Y input 4

PortB.0 Output Driver Motor Z input 1

PortB.1 Output Driver Motor Z input 2

PortB.2 Output Driver Motor Z input 3

PortB.3 Output Driver Motor Z input 4

PortC.0 Input Photo Interrupter Batas Atas

PortC.1 Input Photo Interrupter Batas Bawah

PortC.6 Input Photo Interrupter X titik 0

PortC.7 Input Photo Interrupter Y titik 0

PortD.0 Serial Serial terima data

PortD.1 Serial Serial kirim data

b. Modul Driver Motor

Driver motor menggunakan transistor BC546 dan MOSFET IRF 640 sebagai

komponen utamanya. Transistor BC546 difungsikan sebagai saklar dengan menerima

input dari mikrokontroler.

Page 8: BAB III PERANCANGAN SISTEM - repository.uksw.edurepository.uksw.edu/bitstream/123456789/3999/4/T1_612006027_BAB III...Jenis ulir yang digunakan adalah jenis Ball screw. Tabel 3.1 :

19

Gambar 3.11. Skematik modul transistor sebagai saklar

Karena difungsikan sebagai saklar, maka transistor harus dibuat dalam kondisi

saturasi (low) dan cutoff (high). Berikut adalah perhitungannya:

퐼 푗푒푛푢ℎ = = 12푚퐴 (3.1)

퐼 = = = 109푢퐴 (3.2)

(Nilai hfe BC 546 pada datasheet adalah 110-800).

푅 = = . = 4311Ω (3.3)

Dari perhitungan didapatkan nilai maksimal RB untuk mencapai nilai saturasi

adalah 4311Ω.

Output tegangan kolektor masuk di gate MOSFET. Tegangan ini untuk

membuat channel di antara source dan drain, sehingga elektron dapat mengalir dari

source ke drain.

Page 9: BAB III PERANCANGAN SISTEM - repository.uksw.edurepository.uksw.edu/bitstream/123456789/3999/4/T1_612006027_BAB III...Jenis ulir yang digunakan adalah jenis Ball screw. Tabel 3.1 :

20

Gambar 3.12. Grafik hubungan VDS, ID dan VGS MOSFET.

Gambar 3.13. Skematik Modul Driver Motor Stepper

Page 10: BAB III PERANCANGAN SISTEM - repository.uksw.edurepository.uksw.edu/bitstream/123456789/3999/4/T1_612006027_BAB III...Jenis ulir yang digunakan adalah jenis Ball screw. Tabel 3.1 :

21

c. Modul Sensor Photo Interrupter

Sensor photo interrupter yang digunakan adalah tipe H21A3. Pada saat

photo interrupter terhalang, maka tidak ada cahaya yang ditangkap oleh photo

transistor. Hal ini menyebabkan photo transistor dalam kondisi cutoff. Nilai

tegangan kolektor sama dengan tegangan sumber sehingga VCE = 5 volt. Namun

pada saat photo interrrupter tidak terhalang maka photo transistor dalam

keadaan saturasi sehingga nilai tegangan kolektor sama dengan tegangan emitor

= 0 volt.

Gambar 3.14. Skematik Modul Sensor Photo Interrupter

Dua buah sensor digunakan untuk mendeteksi titik acuan atau 0,0 dari X

dan Y dan 2 buah sensor untuk mendeteksi batas atas dan batas bawah posisi

bor.

Gambar 3.15. Photo interrupter pembatas atas dan bawah

Out

+V

VCC5V

U1OPTOISO

R24k7

R1100

Page 11: BAB III PERANCANGAN SISTEM - repository.uksw.edurepository.uksw.edu/bitstream/123456789/3999/4/T1_612006027_BAB III...Jenis ulir yang digunakan adalah jenis Ball screw. Tabel 3.1 :

22

Gambar 3.16. Sensor Photo Interrupter X

d. Motor Stepper

Motor stepper yang digunakan adalah motor stepper unipolar 2 phase

merek Sanyo Denki seri 103H7124. Motor stepper ini mempunyai resolusi gerak

1.8° sehingga mempunyai 200 step dalam 1 putaran [6]. Terdapat 6 buah kabel

yaitu hitam, putih, merah,biru, kuning dan orange.

Gambar 3.17. Motor Stepper Sanyo Denki

Gambar 3.18. Lilitan berdasarkan warna kabel

Page 12: BAB III PERANCANGAN SISTEM - repository.uksw.edurepository.uksw.edu/bitstream/123456789/3999/4/T1_612006027_BAB III...Jenis ulir yang digunakan adalah jenis Ball screw. Tabel 3.1 :

23

Gambar 3.19. Lilitan berdasarkan urutan kabel

Untuk mengontrol gerakan motor stepper digunakan metode half step.

Dengan menggunakan metoode half step, akan didapatkan resolusi dua kali lebih

kecil dari resolusi jika menggunakan full step.

Tabel 3.4 Half Step

Step Konektor

Hitam Putih Merah Biru Kuning Orange

1 1 1 1 1 0 2 1 1 1 0 0 3 1 1 1 0 1 4 1 1 0 0 1 5 1 1 0 1 1 6 1 0 0 1 1 7 1 0 1 1 1 8 1 0 1 1 0

Page 13: BAB III PERANCANGAN SISTEM - repository.uksw.edurepository.uksw.edu/bitstream/123456789/3999/4/T1_612006027_BAB III...Jenis ulir yang digunakan adalah jenis Ball screw. Tabel 3.1 :

24

3.2. Perancangan perangkat lunak

3.2.1 Aplikasi Desktop

Aplikasi desktop digunakan sebagai perangkat antarmuka antara mesin dengan

user. Data yang ada dalam file plotter tersebut akan ditampilkan dalam bentuk tabel

yang berisi data kedalaman data posisi pen, koordinat X dan koordinat Y. Data tersebut

akan digunakan untuk membuat gambar yang ditampilkan pada aplikasi desktop.

Gambar 3.20. Aplikasi Desktop

1. Data Garis

Data Garis merupakan data asli dari file .PLT yang dipisahkan menjadi data tiap

garis. Berisi data berupa nomer garis, data kedalaman dan data koordinat-

koordinat yang menyusun garis. Data kedalaman dapat diubah langsung pada

tabel.

2. Data sebuah Garis

Tabel 2 adalah data garis yang dipilih dengan mouse klik pada tabel 1 data garis.

Melalui data ini dibuat gambar pada panel gambar dengan warna merah.

Tujuannya adalah untuk melihat garis yang diinginkan ketika kita ingin mengubah

data kedalamnya.

3. Data Titik

3

1

2

5

6

7

4

Page 14: BAB III PERANCANGAN SISTEM - repository.uksw.edurepository.uksw.edu/bitstream/123456789/3999/4/T1_612006027_BAB III...Jenis ulir yang digunakan adalah jenis Ball screw. Tabel 3.1 :

25

Data Titik adalah data koordinat dan perintah dari semua data garis yang yang

sudah dibagi ke dalam titik-titik koordinat sesuai urutan garisnya. Data titik-titik

ini yang digunakan untuk membuat gambar pada panel gambar dengan warna biru

dan data yang akan dikirim ke mikrokontroler.

4. Data Kirim

Data kirim adalah data yang dikirim dari aplikasi desktop ke mikrokontroler.

Setiap pergantian data, isi dari text box akan berubah sesuai data yang dikirim.

5. Data Terima

Data yang sudah diproses di mikrokontroler akan dikirim kembali ke aplikasi

desktop. Fungsinya untuk mengetahui bahwa mikrokontroler sudah melakukan

proses yang diinginkan dan supaya aplikasi desktop mengirimkan data

selanjutnya.

6. Tombol Operasi

Tombol operasi adalah tombol untuk menjalankan proses pemotongan. Dimulai

dengan memilih port komunikasi. Kemudian ada tombol “connect” untuk

membuka port serial yang dpilih. Tombol “send” untuk mulai mengirim data ke

mikrokontroler. Sedangkan tombol “clear” untuk menghapus data yang

ditampilkan pada texbox data kirim dan data terima

3.3 Pengiriman data

Pengiriman data dilakukan dalam 1 paket data. Paket data berisi data dari data

Titik. Data yang dikirim berisi 4 data yaitu :

1. Kedalaman pemotongan

2. Data posisi Pen

3. Koordinat X

4. Koordinat Y.

Berikut program untuk mengambil data dari tabel Data Titik.

Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click rownumber = 0 totalrow = DataGridView1.RowCount + 2

Page 15: BAB III PERANCANGAN SISTEM - repository.uksw.edurepository.uksw.edu/bitstream/123456789/3999/4/T1_612006027_BAB III...Jenis ulir yang digunakan adalah jenis Ball screw. Tabel 3.1 :

26

While rownumber < DataGridView1.RowCount + 1 If rownumber = DataGridView1.RowCount Then griddata(rownumber) = "T" ElseIf rownumber > 0 And rownumber < DataGridView1.RowCount Then griddata(rownumber) = ("$" + DataGridView1.Rows(rownumber - 1).Cells(0).Value.ToString + "@" + DataGridView1.Rows(rownumber - 1).Cells(1).Value.ToString + "x" + DataGridView1.Rows(rownumber - 1).Cells(2).Value.ToString + "y" + DataGridView1.Rows(rownumber - 1).Cells(3).Value.ToString + "#") ElseIf rownumber = 0 Then griddata(rownumber) = "I" End If rownumber += 1 End While timer_receive = "" timer_send = "" BackgroundWorker2.RunWorkerAsync() Timer1.Start()

Setelah data diambil dan disimpan kemudian fungsi BackgroundWorker diaktifkan

untuk mulai mengirim data.

Private Sub BackgroundWorker2_DoWork(ByVal sender As System.Object, ByVal e As System.ComponentModel.DoWorkEventArgs) Handles BackgroundWorker2.DoWork rownumber = 0 While rownumber < totalrow data_sending = griddata(rownumber) timer_send = data_sending SerialPort1.WriteLine(data_sending) receive = "" While receive = String.Empty Or rownumber = totalrow - 2 Threading.Thread.Sleep(100) Try receive = SerialPort1.ReadLine() timer_receive = receive Catch End Try End While rownumber += 1 End While End Sub

Data dikirim sesuai urutan dalam tabel. Sebagai pemisah antar data disisipkan

karakter penanda agar pembacaan di mikrokontroler menjadi lebih mudah. Setiap file

Page 16: BAB III PERANCANGAN SISTEM - repository.uksw.edurepository.uksw.edu/bitstream/123456789/3999/4/T1_612006027_BAB III...Jenis ulir yang digunakan adalah jenis Ball screw. Tabel 3.1 :

27

baru yang diproses selalu diawali dengan mengirim data Inisialisasi. Data ini bertujuan

untuk menset posisi bor pada titik acuan pemotongan yaitu titik 0,0. Dan setiap selesai

memproses data file, dikirim data Angkat bor untuk menset posisi bor dititik 0,0 dengan

posisi mesin bor diatas.

3.4 Menentukan Koordinat Pemotongan

Setelah data diterima oleh mikrokontroler, data akan diolah untuk menentukan

gerakan motor X dan motor Y. Pemprosesan data selalu menggunakan 2 titik yaitu titik

awal dan titik akhir. Titik awal digunakan sebagai titik acuan dan titik akhir adalah titik

yang diproses.

Gambar 3.21. Garis dengan 2 titik

Karena ada kemungkinan perbedaan jarak X dan Y, maka gerakan motor harus

diatur supaya hasil putaran motor sesuai dengan data yang diberikan. Berikut adalah

urutan prosesnya.

1. Tentukan Jarak Acuan

Jarak Acuan berfungsi supaya gerakan motor mulai dan berhenti pada waktu yang

sama. Jarak acuan adalah nilai yang lebih besar antara |X2-X1| dan |Y2-Y1|. if(abs(dx)>abs(dy)) acuan=abs(dx); else acuan=abs(dy);

Titik awal Titik akhir

Page 17: BAB III PERANCANGAN SISTEM - repository.uksw.edurepository.uksw.edu/bitstream/123456789/3999/4/T1_612006027_BAB III...Jenis ulir yang digunakan adalah jenis Ball screw. Tabel 3.1 :

28

X1 X2

Y1 Y2

Gambar 3.22 Garis X dan Y

2. Ubah jarak ke dalam bentuk titik-titik

Proses ini untuk membagi total gerakan motor yang dibutuhkan ke dalam tiap-tiap

step gerakan motor.

Motor X 1 2 3 4 5

Motor Y 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20

Gambar 3.23 Garis X dan Y dalam step

3. Tentukan gerakan motor X dan Y

Untuk menentukan gerakan motor X dan Y digunakan rumus berikut

푀표푡표푟 푋 = ( ). − 푋 푎푤푎푙 (3.4)

푀표푡표푟 푌 = ( ). − 푌 푎푤푎푙 (3.5)

Xakhir = Nilai koordinat X yang akan diproses

Xawal = Nilai koordinat X yang diproses sebelumnya

Acuan = Jarak yang terbesar antara Xakhir-Xawal dan Yakhir-Yawal

Motor X = Nilai 1 step Motor X

Motor Y = Nilai 1 step Motor Y

Nilai X awal dan Y awal adalah posisi koordinat dimana motor terakhir kali

bergerak.

Page 18: BAB III PERANCANGAN SISTEM - repository.uksw.edurepository.uksw.edu/bitstream/123456789/3999/4/T1_612006027_BAB III...Jenis ulir yang digunakan adalah jenis Ball screw. Tabel 3.1 :

29

for(a=0;a<=acuan;a++) fX=((dx*a)/acuan)-Xold; fY=((dy*a)/acuan)-Yold;

Move_xy(fX,fY); Xold+=fX;

Yold+=fY; Tabel : 3.5 Tabel nilai motor X dan Y

N Motor X Motor Y

N=0 푀표푡표푟 푋 =(푋퐴푘ℎ푖푟− 푋푎푤푎푙).0

퐴푐푢푎푛 − 푋 푎푤푎푙 푀표푡표푟 푌 =(푌푎푘ℎ푖푟 − 푌푎푤푎푙).0

퐴푐푢푎푛 − 푌 푎푤푎푙

N=1 푀표푡표푟 푋 =(푋퐴푘ℎ푖푟− 푋푎푤푎푙).1

퐴푐푢푎푛 − 푋 푎푤푎푙 푀표푡표푟 푌 =(푌푎푘ℎ푖푟 − 푌푎푤푎푙).1

퐴푐푢푎푛 − 푌 푎푤푎푙

N=2 푀표푡표푟 푋 =(푋퐴푘ℎ푖푟− 푋푎푤푎푙).2

퐴푐푢푎푛 − 푋 푎푤푎푙 푀표푡표푟 푌 =(푌푎푘ℎ푖푟 − 푌푎푤푎푙).2

퐴푐푢푎푛− 푌 푎푤푎푙

. . .

. . .

. . .

N=Acua

n 푀표푡표푟 푋 =

(푋퐴푘ℎ푖푟 − 푋푎푤푎푙).푁퐴푐푢푎푛 − 푋 푎푤푎푙 푀표푡표푟 푌 =

(푌푎푘ℎ푖푟 − 푌푎푤푎푙).푁퐴푐푢푎푛

− 푌 푎푤푎푙

Motor X 1 0 0 0 1 0 0 0 1 0 0 0 1 0 0 0 1 0 0 0

N 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 . . . N

Motor Y 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1

N 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 . . . N

Gambar 3.24 Gerakan Motor X dan Y

Kemudian setelah didapatkan nilai dari motor X dan motor Y baru digunakan

untuk menggerakkan motor.

void Move_xy(int flagX,int flagY)

int x; if(flagX==1&&flagY==1) …

Page 19: BAB III PERANCANGAN SISTEM - repository.uksw.edurepository.uksw.edu/bitstream/123456789/3999/4/T1_612006027_BAB III...Jenis ulir yang digunakan adalah jenis Ball screw. Tabel 3.1 :

30

if(flagX==1&&flagY==0) … if(flagX==0&&flagY==1) … if(flagX==0&&flagY==0) … if(flagX==0&&flagY==-1) … if(flagX==-1&&flagY==0) … if(flagX==-1&&flagY==-1) … if(flagX==1&&flagY==-1) … if(flagX==-1&&flagY==1) …

3.5 Menghitung Jarak dan Putaran Motor Stepper.

Motor stepper yang digunakan mempunyai resolusi 1.8° atau 200 step tiap

putaran. Ulir yang dipakai menggunakan ball screw dengan jarak gang 1 cm. Dengan

menggunakan metode halfstep maka resolusi motor stepper bisa diperkecil menjadi 0.9°

atau 400 step tiap putaran.

Jika 1 langkah gerakan motor adalah 1 siklus halfstep maka jarak yang ditempuh

dalam 1 langkah dapat dihitung sebagai berikut :

퐽푎푟푎푘 1 푙푎푛푔푘푎ℎ = 8

400 푥 1 푐푚 = 0.2 푚푚

Jadi dengan resolusi gerak 0.2 mm maka untuk menghasilkan 50 cm dibutuhkan

2500 step. Karena resolusi jarak titik pada file plt adalah 50cm/20000 atau 0.025 mm

maka resolusi tersebut harus disamakan dengan resolusi gerak mesin yaitu dikalikan

dengan 8.

3.6 Menghitung Kecepetan Potong

Kecepatan potong dipengaruhi frekuensi pulsa yang diberikan untuk

menggerakkan motor stepper. Untuk memutar motor 1 putaran dibutuhkan motor

stepper harus diberikan pulsa sebanyak 400 kali. Jika frekuensi pulsa sebesar 5 mili

detik, maka untuk menggerakan motor 1 putaran penuh didapatkan waktu sebagai

berikut :

푇1 푃푢푡푎푟푎푛 푀표푡표푟 = 400 푥 5 푚푖푙푖푑푒푡푖푘 = 2 퐷푒푡푖푘

Jika menggunakan ulir dengan jarak gang 1 cm, maka kecepatan potong mesin adalah 1 cm / 2 detik atau 30 cm / menit.

Page 20: BAB III PERANCANGAN SISTEM - repository.uksw.edurepository.uksw.edu/bitstream/123456789/3999/4/T1_612006027_BAB III...Jenis ulir yang digunakan adalah jenis Ball screw. Tabel 3.1 :

31

3.7 Diagram Alir

3.7.1 Pengolahan Data pada Aplikasi Desktop

Open file

Start

Open file

Baca data file

Pisahkan data menjadi data pergaris

Baca data Garis pada

tabel

Pisahkan data menjadi data

titik

Ubah resolusi dan masukan dalam tabel

Masukan dalam tabel

Buat gambar dari tabel data

titik

Stop

Gambar 3.25. Diagram Alir Pengolahan Data pada Aplikasi Desktop

Untuk membuka file, pilih menu Open file kemudian pilih file yang diinginkan.

Aplikasi Desktop akan membaca dan menyimpan semua data yang ada pada file. Data

akan dipisahkan menjadi data tiap-tiap garis. Jumlah data tiap garis akan dihitung dan

dimasukan ke dalam tabel. Setiap data Garis akan dipisahkan menjadi data Titik. Setiap

data Titik akan diubah resolusinya dan dimasukan ke dalam tabel. Dari data Titik dalam

tabel dibuat Gambar pada panel gambar berdasarkan data koordinat X dan Y

Page 21: BAB III PERANCANGAN SISTEM - repository.uksw.edurepository.uksw.edu/bitstream/123456789/3999/4/T1_612006027_BAB III...Jenis ulir yang digunakan adalah jenis Ball screw. Tabel 3.1 :

32

3.7.2 Pengiriman Data dari Aplikasi Desktop ke Mikrokontroler.

Gambar 3.26. Diagram Alir Pengiriman

Data dari Aplikasi Desktop ke Mikrokontroler.

Page 22: BAB III PERANCANGAN SISTEM - repository.uksw.edurepository.uksw.edu/bitstream/123456789/3999/4/T1_612006027_BAB III...Jenis ulir yang digunakan adalah jenis Ball screw. Tabel 3.1 :

33

Ketika tombol “Connect” ditekan, maka serialport akan dibuka untuk

melakukan pengiriman data. Saat tombol “Send” ditekan, maka program akan

menghitung jumlah data yang ada pada tabel. Data pada tabel akan ditambah dengan

data Inisialisasi dan Data Angkat Bor. Setelah semua data dihitung, data pada tabel akan

dikirim satu per satu sesuai urutan data pada tabel. Data pertama yang dikirim adalah

data Inisialisasi kemudian data Titik pada tabel dan diakhiri Data Angkat Bor.

Setiap melakukan pengiriman data, data yang dikirim selalu ditampilkan pada

TextBox “Data Kirim”. Selanjutnya aplikasi desktop akan menunggu data balik dari

mikrokontroler. Jika ada data yang diterima, data akan ditampilkan pada TextBox “Data

Terima”. Jika data sudah ditampilkan maka data selanjutnya akan dikirim lagi ke

mikrokontroler. Proses tersebut dilakukan berulang sampai data habis.

Page 23: BAB III PERANCANGAN SISTEM - repository.uksw.edurepository.uksw.edu/bitstream/123456789/3999/4/T1_612006027_BAB III...Jenis ulir yang digunakan adalah jenis Ball screw. Tabel 3.1 :

34

3.7.3 Proses Mikrokontroler

Tunggu Data

Ada Data?

Tidak

Ya

Data Inisialisasi?

Proses Inisialisasi Ya

Proses data koordinat Data TitikYa

Tidak

Kirim Data Ke Aplikasi Desktop

Data Angkat Bor?

Tidak

Proses Angkat Pena Ya

Start

Power On? Stop

Ya

Tidak

Gambar 3.27. Diagram Alir Proses Mikrokontroler

Jika catudaya pada mikrokontroler dihidupkan, mikrokontroler akan selalu

menunggu data dari aplikasi desktop. Jika ada data diterima, data akan dicek apakah

merupakan data Inisialisasi, data Titik atau data Angkat Bor. Jika data adalah data

Inisialisasi maka dilakukan proses Inisialisasi. Jika data adalah data Angkat bor maka

akan dilakukan proses angkat bor dan jika data adalah data Titik maka akan dilakukan

proses pemotongan akrilik. Jika data sudah diproses, maka data akan dikirim kembali ke

aplikasi desktop kemudian mikrokontroler akan menunggu sampai ada data

selanjutnya.

Page 24: BAB III PERANCANGAN SISTEM - repository.uksw.edurepository.uksw.edu/bitstream/123456789/3999/4/T1_612006027_BAB III...Jenis ulir yang digunakan adalah jenis Ball screw. Tabel 3.1 :

35

3.7.4 Proses Inisialisasi

Angkat Bor ke Batas

atas

Bor diposisi Batas Atas?

Putar Motor X ke titik 0

Putar Motor Y ke titik 0

Motor X sudah di titik 0?

Start

Motor Y sudah di titik 0?

Bor diposisi Batas Bawah?

Tidak

Turunkan Bor ke Batas bawah

Stop

Cek Posisi Bor

Cek Posisi Bor

Cek Posisi Motor X

Ya

Cek Posisi Motor Y

Tidak

Ya

Tidak

Ya

tidak

Gambar 3.28. Diagram Alir Proses Inisialisasi

Posisi bor akan dicek apakah di atas atau di bawah. Jika dibawah maka posisi

bor akan diangkat ke atas. Setelah posisi bor diatas, bor akan dibawa ke posisi titik 0,0.

Titik 0,0 adalah titik dimana sensor photo interrupter X dan Y dalam kondisi ‘1’. Jika

posisi motor X da Y sudah di titik 0,0, bor akan diturunkan ke titik sampai sensor photo

interrupter batas bawah dalam kondisi ‘1’.

Page 25: BAB III PERANCANGAN SISTEM - repository.uksw.edurepository.uksw.edu/bitstream/123456789/3999/4/T1_612006027_BAB III...Jenis ulir yang digunakan adalah jenis Ball screw. Tabel 3.1 :

36

3.7.5 Proses Pemotongan

Cek dan Simpan Data Kedalaman

Cek dan Simpan Data

posisi bor

Hitung dan simpan Data koordinat X

Hitung dan simpan Data Koordinat Y

Hitung Jarak Y dengan Y

sebelumnya (dY)

Hitung Jarak X dengan X

sebelumnya (dX)

Angkat Bor sejauh Data Kedalaman

Data Posisi Bor Naik/turun?

Posisi Bor = Naik?

Naik Turun

Posisi Bor = Turun?

Tidak

Turunkan Bor sejauh Data Kedalaman

TidakApakah Data Kedalaam?

Ya

Apakah Data Posisi Bor

Ya

Apakah Data Koordinat X?

Apakah Data Koordinat Y?

Ya

Ya

tidak

YaYa

dY>dX?

Putar Motor X dengan dY

sebagai acuan

Ya

Putar Motor X dengan dX

sebagai acuan

Putar Motor Y dengan dY

sebagai acuan

Putar Motor Y dengan dX

sebagai acuan

Cek Data

Start

StopStop

Gambar 3.29 Diagram Alir Proses Pemotongan

Page 26: BAB III PERANCANGAN SISTEM - repository.uksw.edurepository.uksw.edu/bitstream/123456789/3999/4/T1_612006027_BAB III...Jenis ulir yang digunakan adalah jenis Ball screw. Tabel 3.1 :

37

Ketika data Titik diterima, terlebih dahulu data akan dicek dan dipisahkan. Data

dikirim dengan format $kedalaman@posisiborXdatakoordinatxYdata koordinat y#.

Karakter ‘$’, ‘@’, ‘X’, ‘Y’ digunakan sebagai penanda untuk memisahkan

datanya. Sedangkan ‘#’ sebagai penanda akhir data. Jika format data tidak terpenuhi

atau tidak sama maka data tidak akan dipakai dan mikrokontroler akan menunggu data

lagi. Jika sesuai, maka data akan disimpan sesuai urutan data kedalaman, data posisi

bor, data koordinat X dan data koordinat Y. Data kedalaman digunakan sebagai acuan

untuk mengerakkan posisi bor. Naik atau turunnya posisi bor ditentukan oleh data posisi

bor. Sedangkan data koordinat X dan Y digunakan untuk menggerakkan motor ke posisi

yang diinginkan.