Pemrograman Perangkat Lunak pada PC Pemrograman Perangkat Lunak Pada Arduino

3.6 Pemrograman Perangkat Lunak pada PC

Berikut adalah gambar diagram alir pemrogram pada PC: Inisialisasi Serial Port Mulai Tombol S Ditekan Tombol w Ditekan Tombol A Ditekan Tombol D Ditekan Serial port = “1” Serial port = “2” Serial port = “3” Serial port = “4” Tidak Tidak Tidak Tidak Ya Ya Ya Ya Gambar 3.6 diagram alir program pada PC Universitas Sumatera Utara Program pada gambar 3.6 dimulai dengan inisialisasi port komunikasi serial. Untuk menggerakkan motor-motor pada kamera 1 kita bisa menggunakan tombol tanda panah up, left, right, dan down pada keyboard PC. Berikut adalah listing program pada PC : Public tanda As Integer Private Sub Command1_Click Dim port As Integer port = Text1.Text MSComm1.CommPort = port MSComm1.DTREnable = True MSComm1.RTSEnable = True MSComm1.PortOpen = True Command1.Enabled = False Text1.Locked = True End Sub Private Sub Command2_Click End End Sub Private Sub Form_KeyDownKeyCode As Integer, Shift As Integer Select Case KeyCode Case vbKeyUp MSComm1.Output = 1 Case vbKeyDown MSComm1.Output = 2 Case vbKeyLeft Universitas Sumatera Utara MSComm1.Output = 3 Case vbKeyRight MSComm1.Output = 4 End Select End Sub Universitas Sumatera Utara

3.7 Pemrograman Perangkat Lunak Pada Arduino

Berikut adalah diagram alir dari program alat yang dibuat: Inisialisasi Pin yang Digunakan Data Serial “1” Mulai Cek data serial port Data Serial “2” Data Serial “3” Data Serial “4” Tidak Tidak Tidak Motor 1 Kamera 1 Searah jarum jam Motor 1 Kamera 1 Berlawanan arah jarum jam Motor 2 Kamera 1 Berlawan Arah Jarum Jam Motor 2 Kamera 1 Searah Jarum Jam Ya Ya Ya Ya Gambar 3.7 diagram alir perangkat lunak pada mikrokontroler Universitas Sumatera Utara Program dimulai pada gambar 3.7 dengan inisialisasi pin-pin yang digunakan serta untuk mendeklarasikan komunikasi serial yang digunakan. Selanjutnya program akan mengecek apakah ada data dari komunikasi serial. Jika ada data serial, maka mikrokontroler akan memeriksa data tersebut. Jika data dari serial berupa karakter “1” maka mikrokontroler akan mengeluarkan logika yang akan menggerakan motor 1 pada kamera 1 untuk bergerak naik searah jarum jam clock wise. Jika data serial berupa karakter “2” maka mikrokontroler akan memberikan logika yang akan menggerakan motor 1 pada kamera 1 bergerak turun berlawanan arah jarum jam counter clock wise. Jika data serial berupa karakter “3”, maka mikrokontroler akan mengeluarkan logika yang akan menggerakkan motor 2 pada kamera 1 untuk berputar kearah kiri berlawanan arah jarum jam counter clock wise. Jika data serial berupa karakter “4”, maka mikrokontroler akan mengeluarkan logika yang akan menggerakan motor 2 pada kamera 1 untuk berputar ke kanan searah jarum jamclockwise. Berikut ini adalah listing program pada mikrokontroler: int pwmab=10; int pwmcd=5; int motas1=12; int motas2=11; int motbwh1=9; int motbwh2=8; int motasa=7; int motasb=6; int motbwha=4; int motbwhb=3; void setup{ Universitas Sumatera Utara pinModepwmab, OUTPUT; pinModepwmcd, OUTPUT; pinModemotas1, OUTPUT; pinModemotas2, OUTPUT; pinModemotbwh1, OUTPUT; pinModemotbwh2, OUTPUT; pinModemotasa, OUTPUT; pinModemotasb, OUTPUT; pinModemotbwha, OUTPUT; pinModemotbwhb, OUTPUT; Serial.begin9600; } void loop{ if Serial.available0{ int serial = Serial.read; switchserial{ case 1: atasnaek1; delay20; stopmot1; stopmot2; break; case 2: atastrn1; delay20; stopmot1; stopmot2; break; Universitas Sumatera Utara case 3: kiribwh1; delay20; stopmot1; stopmot2; break; case 4: kananbwh1; delay20; stopmot1; stopmot2; break; default: stopmot1; stopmot2; break; } } } void kiribwh1{ digitalWritemotbwh1, HIGH; digitalWritemotbwh2, LOW; analogWritepwmab, 70; } void kananbwh1{ digitalWritemotbwh1, LOW; digitalWritemotbwh2, HIGH; analogWritepwmab, 70; Universitas Sumatera Utara } void stopmot1{ digitalWritemotbwh1, HIGH; digitalWritemotbwh2, HIGH; digitalWritemotas1, HIGH; digitalWritemotas2, HIGH; } void kiribwh2{ digitalWritemotbwha, LOW; digitalWritemotbwhb, HIGH; analogWritepwmcd, 70; } void kananbwh2{ digitalWritemotbwha, HIGH; digitalWritemotbwhb, LOW; analogWritepwmcd, 70; } void stopmot2{ digitalWritemotbwha, HIGH; digitalWritemotbwhb, HIGH; digitalWritemotasa, HIGH; digitalWritemotasb, HIGH; } Universitas Sumatera Utara

BAB IV PENGUJIAN ALAT DAN PROGRAM

4.1 Pengujian Rangkaian Power Supplay PSA