• Tidak ada hasil yang ditemukan

DAFTAR PUSTAKA. [2] Budiharto, Widodo, Firmansyah, Sigit Elektronika Digital +

N/A
N/A
Protected

Academic year: 2021

Membagikan "DAFTAR PUSTAKA. [2] Budiharto, Widodo, Firmansyah, Sigit Elektronika Digital +"

Copied!
55
0
0

Teks penuh

(1)

DAFTAR PUSTAKA

[1] Andrianto, Heri. 2008. Pemrograman Mikrokontroler AVR ATMega16

Menggunakan Bahasa C (CodeVision AVR). Penerbit : Informatika. Bandung.

[2] Budiharto, Widodo, Firmansyah, Sigit. 2005. Elektronika Digital +

Mikroprosesor. Penerbit : Andi. Yogyakarta.

[3] Fikri, Azkal. 2008. Aplikasi Short Message Service (SMS) Gateway untuk

Layanan Informasi Registrasi Administrasi Mahasiswa. Program Studi Ilmu

Komputer. Universitas Pendidikan Indonesia. BANDUNG. Diakses 27 Februari

2011.

[4] Frings, Stefan. 2011. “SMS Applications". Datasheet.

[5] H, Erico Darmawan. 2010. Pemrograman Dasar C-Java-C#. Penerbit :

Informatika. Bandung.

[6] Malik, M Ibnu. 2003. Belajar Mikrokontroler ATMEL AT89S8252. Penerbit :

Gava.

[7] Panasonic ideas for life. 2011. “Motion Sensor (Passive Infrared Type)”.

Datasheet.

[8] Prasetyo, Hanung N, Aziz, Heri Saeful, Budiman, Gelar. 2009. Courseware

Fisika. Politeknik TELKOM. Bandung.

[9] Rozidi, Romzi Imron. 2004. Membuat Sendiri SMS Gateway Berbasis

Protokol SMPP. Penerbit : Andi. Yogyakarta.

[10] Rustandi, Dani. 2007. Perancangan dan Realisasi Sistem Pelaporan Data

Berbasis SMS untuk Alat Pemantau Kualitas Udara. Jurusan Teknik Elektro.

Politeknik Negeri Bandung. Bandung.

(2)

[11] Syafrullah. 2010. Rancang Bangun Sistem Peringatan Kebakaran

Menggunakan SMS (Short Message Service) Berbasis Mikrokontroler. Jurusan

Teknik Elektro. Fakultas Teknik Universitas Mataram. Mataram. Diakses 27

Februari 2011

[12] Haryadi, Aldi (2007). Cara mudah membangun sistem

rumah cerdas.

Jakarta.

[13] Azman,Novi (2009). Perancangan Software Aplikasi

Pervasive Smart Home.

Pejaten.

[14] Wahyudi, Agus. Rancang bangun rumah cerdas berbasis

mikrokontroler AT89S51

, Tugas Akhir :T. Instrumentasi

dan Elektronika Universitas Diponegoro Semarang. 2008

(3)

3.4.1 Software microcontroller (AVR Version 1.25.9)

Gambar 3.4 Software microcontroller (AVR Version 1.25.9)

This program was produced by the CodeWizardAVR V1.25.9 Standard Automatic Program Generator

© Copyright 1998-2008 Pavel Haiduc, HP InfoTech s.r.l. http://www.hpinfotech.com Project : Version : Date : 4/21/2013 Author : F4CG Company : F4CG Comments:

Chip type : ATmega8535 Program type : Application Clock frequency : 4.000000 MHz Memory model : Small External SRAM size : 0 Data Stack size : 128

*****************************************************/ #include <mega8535.h>

Project

date

Type

mikrokontroler

(4)

#include <delay.h> #define sensor PINB #define tunda 10 int x; char y;

// Alphanumeric LCD Module functions #asm

.equ __lcd_port=0x1B ;PORTA #endasm #include <lcd.h> #define RXB8 1 #define TXB8 0 #define UPE 2 #define OVR 3 #define FE 4 #define UDRE 5 #define RXC 7

#define FRAMING_ERROR (1<<FE) #define PARITY_ERROR (1<<UPE) #define DATA_OVERRUN (1<<OVR)

#define DATA_REGISTER_EMPTY (1<<UDRE) #define RX_COMPLETE (1<<RXC)

// USART Receiver buffer #define RX_BUFFER_SIZE 8 char rx_buffer[RX_BUFFER_SIZE];

#if RX_BUFFER_SIZE<256

unsigned char rx_wr_index,rx_rd_index,rx_counter; #else

unsigned int rx_wr_index,rx_rd_index,rx_counter; #endif

// This flag is set on USART Receiver buffer overflow

(5)

bit rx_buffer_overflow;

// USART Receiver interrupt service routine interrupt [USART_RXC] void usart_rx_isr(void) {

char status,data; status=UCSRA; data=UDR;

if ((status & (FRAMING_ERROR | PARITY_ERROR | DATA_OVERRUN))==0) {

rx_buffer[rx_wr_index]=data;

if (++rx_wr_index == RX_BUFFER_SIZE) rx_wr_index=0; if (++rx_counter == RX_BUFFER_SIZE) { rx_counter=0; rx_buffer_overflow=1; }; }; } #ifndef _DEBUG_TERMINAL_IO_

// Get a character from the USART Receiver buffer #define _ALTERNATE_GETCHAR_ #pragma used+ char getchar(void) { char data; while (rx_counter==0); data=rx_buffer[rx_rd_index];

if (++rx_rd_index == RX_BUFFER_SIZE) rx_rd_index=0; #asm("cli") --rx_counter; #asm("sei") return data; } #pragma used-

(6)

#endif

// USART Transmitter buffer #define TX_BUFFER_SIZE 8 char tx_buffer[TX_BUFFER_SIZE];

#if TX_BUFFER_SIZE<256

unsigned char tx_wr_index,tx_rd_index,tx_counter; #else

unsigned int tx_wr_index,tx_rd_index,tx_counter; #endif

// USART Transmitter interrupt service routine interrupt [USART_TXC] void usart_tx_isr(void) {

if (tx_counter) {

--tx_counter;

UDR=tx_buffer[tx_rd_index];

if (++tx_rd_index == TX_BUFFER_SIZE) tx_rd_index=0; };

}

#ifndef _DEBUG_TERMINAL_IO_

// Write a character to the USART Transmitter buffer #define _ALTERNATE_PUTCHAR_

#pragma used+ void putchar(char c) {

while (tx_counter == TX_BUFFER_SIZE); #asm("cli")

if (tx_counter || ((UCSRA & DATA_REGISTER_EMPTY)==0)) {

tx_buffer[tx_wr_index]=c;

if (++tx_wr_index == TX_BUFFER_SIZE) tx_wr_index=0; ++tx_counter;

(7)

} else UDR=c; #asm("sei") } #pragma used- #endif

// Standard Input/Output functions #include <stdio.h>

// Declare your global variables here

void main(void) {

// Declare your local variables here

// Input/Output Ports initialization // Port A initialization

// Func7=In Func6=In Func5=In Func4=In Func3=In Func2=In Func1=In Func0=In // State7=T State6=T State5=T State4=T State3=T State2=T State1=T State0=T PORTA=0x00;

DDRA=0x00;

// Port B initialization

// Func7=In Func6=In Func5=In Func4=In Func3=In Func2=In Func1=In Func0=In // State7=T State6=T State5=T State4=T State3=T State2=T State1=T State0=T PORTB=0xFF;

DDRB=0x00;

// Port C initialization

// Func7=Out Func6=Out Func5=Out Func4=Out Func3=In Func2=In Func1=In Func0=In // State7=0 State6=0 State5=0 State4=0 State3=T State2=T State1=T State0=T

PORTC=0x00; DDRC=0xF0;

(8)

// Port D initialization

// Func7=In Func6=In Func5=In Func4=In Func3=In Func2=In Func1=In Func0=In // State7=T State6=T State5=T State4=T State3=T State2=T State1=T State0=T PORTD=0x00;

DDRD=0x00;

// Timer/Counter 0 initialization // Clock source: System Clock // Clock value: Timer 0 Stopped // Mode: Normal top=FFh // OC0 output: Disconnected TCCR0=0x00;

TCNT0=0x00; OCR0=0x00;

// Timer/Counter 1 initialization // Clock source: System Clock // Clock value: Timer 1 Stopped // Mode: Normal top=FFFFh // OC1A output: Discon. // OC1B output: Discon. // Noise Canceler: Off // Input Capture on Falling Edge // Timer 1 Overflow Interrupt: Off // Input Capture Interrupt: Off // Compare A Match Interrupt: Off // Compare B Match Interrupt: Off TCCR1A=0x00; TCCR1B=0x00; TCNT1H=0x00; TCNT1L=0x00; ICR1H=0x00; ICR1L=0x00; OCR1AH=0x00; OCR1AL=0x00; OCR1BH=0x00;

http://digilib.mercubuana.ac.id/

(9)

OCR1BL=0x00;

// Timer/Counter 2 initialization // Clock source: System Clock // Clock value: Timer 2 Stopped // Mode: Normal top=FFh // OC2 output: Disconnected ASSR=0x00;

TCCR2=0x00; TCNT2=0x00; OCR2=0x00;

// External Interrupt(s) initialization // INT0: Off

// INT1: Off // INT2: Off MCUCR=0x00; MCUCSR=0x00;

// Timer(s)/Counter(s) Interrupt(s) initialization TIMSK=0x00;

// USART initialization

// Communication Parameters: 8 Data, 1 Stop, No Parity // USART Receiver: On

// USART Transmitter: On // USART Mode: Asynchronous // USART Baud Rate: 9600 UCSRA=0x00;

UCSRB=0xD8; UCSRC=0x86; UBRRH=0x00; UBRRL=0x19;

// Analog Comparator initialization // Analog Comparator: Off

(10)

// Analog Comparator Input Capture by Timer/Counter 1: Off ACSR=0x80;

SFIOR=0x00;

// LCD module initialization lcd_init(16);

// Global enable interrupts #asm("sei") lcd_gotoxy(1,0); lcd_putsf("HOME SECURITY"); lcd_gotoxy(3,1); lcd_putsf("BY A.O.S"); delay_ms(5000); while (1) { delay_ms(200); // Place your code here if(sensor==0xFE) //sensor 1 aktif {

delay_ms(100);

if(sensor==0xFE) //sensor 1 aktif { putchar('1'); lcd_clear(); lcd_gotoxy(0,0); lcd_putsf("Awas maling"); lcd_gotoxy(0,1); lcd_putsf("S1 aktif"); delay_ms(500); } }

if(sensor==0xFD) //sensor 2 aktif {

Indentifikasi LCD

saat stand by

Sensor 1 aktif

Display pada LCD S1

Sensor 2 aktif

http://digilib.mercubuana.ac.id/

(11)

delay_ms(100);

if(sensor==0xFD) //sensor 2 aktif { putchar('2'); lcd_clear(); lcd_gotoxy(0,0); lcd_putsf("Awas maling"); lcd_gotoxy(0,1); lcd_putsf("S2 aktif"); delay_ms(500); } }

if(sensor==0xFB) //sensor 3 aktif { delay_ms(100); putchar('3'); lcd_clear(); lcd_gotoxy(0,0); lcd_putsf("Awas maling"); lcd_gotoxy(0,1); lcd_putsf("S3 aktif"); delay_ms(500); }

if(sensor==0xF7) //sensor 4 aktif { delay_ms(100); if(sensor==0xF7) { putchar('4'); lcd_clear(); lcd_gotoxy(0,0); lcd_putsf("Awas maling"); lcd_gotoxy(0,1); lcd_putsf("S4 aktif");

Display pada LCD S2

Sensor 3 aktif

Display pada LCD S3

Sensor 4 aktif

Display pada LCD S4

(12)

delay_ms(500); }

}

if(sensor==0xEF) //sensor 5 aktif { delay_ms(100); if(sensor==0xEF) { putchar('5'); lcd_clear(); lcd_gotoxy(0,0); lcd_putsf("Awas maling"); lcd_gotoxy(0,1); lcd_putsf("S5 aktif"); delay_ms(500); } }

if(sensor==0xDF) //sensor 6 aktif { delay_ms(100); if(sensor==0xDF) { putchar('6'); lcd_clear(); lcd_gotoxy(0,0); lcd_putsf("Awas maling"); lcd_gotoxy(0,1); lcd_putsf("S6 aktif"); delay_ms(500); } }

if(sensor==0xFC) //sensor 1 & 2 aktif {

Sensor 5 aktif

Display pada LCD S5

Sensor 6 aktif

Display pada LCD S6

http://digilib.mercubuana.ac.id/

(13)

delay_ms(100); if(sensor==0xFC) { putchar('7'); lcd_clear(); lcd_gotoxy(0,0); lcd_putsf("Awas maling"); lcd_gotoxy(0,1); lcd_putsf("S1,S2 aktif"); delay_ms(500); } }

if(sensor==0xFA) //sensor 1 & 3 aktif { delay_ms(100); if(sensor==0xFA) { putchar('8'); lcd_clear(); lcd_gotoxy(0,0); lcd_putsf("Awas maling"); lcd_gotoxy(0,1); lcd_putsf("S1,S3 aktif"); delay_ms(500); } }

if(sensor==0xF6) //sensor 1 & 4 aktif { delay_ms(100); if(sensor==0xF6) { putchar('9'); lcd_clear();

Sensor 1 & 2 aktif

Display pada LCD S1,S2

Sensor 1 & 3 aktif

Display pada LCD S1,S3

(14)

lcd_gotoxy(0,0); lcd_putsf("Awas maling"); lcd_gotoxy(0,1); lcd_putsf("S1,S4 aktif"); delay_ms(500); } }

if(sensor==0xEE) //sensor 1 & 5 aktif { delay_ms(100); if(sensor==0xEE) { putchar('A'); lcd_clear(); lcd_gotoxy(0,0); lcd_putsf("Awas maling"); lcd_gotoxy(0,1); lcd_putsf("S1,S5 aktif"); delay_ms(500); } }

if(sensor==0xDE) //sensor 1 & 6 aktif { delay_ms(100); if(sensor==0xDE) { putchar('B'); lcd_clear(); lcd_gotoxy(0,0); lcd_putsf("Awas maling"); lcd_gotoxy(0,1); lcd_putsf("S1,S6 aktif"); delay_ms(500); }

Display pada LCD S1,S4

Sensor 1 & 5 aktif

Display pada LCD S1,S5

Sensor 1 & 6 aktif

Display pada LCD S1,S6

(15)

}

if(sensor==0xF9) //sensor 2 & 3 aktif { delay_ms(100); if(sensor==0xF9) { putchar('C'); lcd_clear(); lcd_gotoxy(0,0); lcd_putsf("Awas maling"); lcd_gotoxy(0,1); lcd_putsf("S2,S3 aktif"); delay_ms(500); } }

if(sensor==0xF5) //sensor 2 & 4 aktif { delay_ms(100); if(sensor==0xF5) { putchar('D'); lcd_clear(); lcd_gotoxy(0,0); lcd_putsf("Awas maling"); lcd_gotoxy(0,1); lcd_putsf("S2,S4 aktif"); delay_ms(500); } }

if(sensor==0xED) //sensor 2 & 5 aktif 1110 1101 {

delay_ms(100); if(sensor==0xED)

Sensor 2 & 3 aktif

Display pada LCD S2,S3

Sensor 2 & 4 aktif

Display pada LCD S2,S4

(16)

{ putchar('E'); lcd_clear(); lcd_gotoxy(0,0); lcd_putsf("Awas maling"); lcd_gotoxy(0,1); lcd_putsf("S2,S5 aktif"); delay_ms(500); } }

if(sensor==0xCC) //sensor 2 & 6 aktif { delay_ms(100); if(sensor==0xCC) { putchar('F'); lcd_clear(); lcd_gotoxy(0,0); lcd_putsf("Awas maling"); lcd_gotoxy(0,1); lcd_putsf("S2,S6 aktif"); delay_ms(500); } }

if(sensor==0xF3) //sensor 3 & 4 aktif { delay_ms(100); if(sensor==0xF3) { putchar('G'); lcd_clear(); lcd_gotoxy(0,0); lcd_putsf("Awas maling"); lcd_gotoxy(0,1);

Display pada LCD S2,S5

Sensor 2 & 6 aktif

Display pada LCD S2,S6

Sensor 3 & 4 aktif

Display pada LCD S3,S4

(17)

lcd_putsf("S3,S4 aktif"); delay_ms(500);

} }

if(sensor==0xEB) //sensor 3 & 5 aktif { delay_ms(100); if(sensor==0xEB) { putchar('H'); lcd_clear(); lcd_gotoxy(0,0); lcd_putsf("Awas maling"); lcd_gotoxy(0,1); lcd_putsf("S3,S5 aktif"); delay_ms(500); } }

if(sensor==0xDB) //sensor 3 & 6 aktif { delay_ms(100); if(sensor==0xDB) { putchar('I'); lcd_clear(); lcd_gotoxy(0,0); lcd_putsf("Awas maling"); lcd_gotoxy(0,1); lcd_putsf("S3,S6 aktif"); delay_ms(500); } }

if(sensor==0xE7) //sensor 4 & 5 aktif

Sensor 3 & 5 aktif

Display pada LCD S3,S5

Sensor 3 & 6 aktif

Display pada LCD S3,S6

(18)

{ delay_ms(100); if(sensor==0xE7) { putchar('J'); lcd_clear(); lcd_gotoxy(0,0); lcd_putsf("Awas maling"); lcd_gotoxy(0,1); lcd_putsf("S4,S5 aktif"); delay_ms(500); } }

if(sensor==0xD7) //sensor 4 & 6 aktif { delay_ms(100); if(sensor==0xD7) { putchar('K'); lcd_clear(); lcd_gotoxy(0,0); lcd_putsf("Awas maling"); lcd_gotoxy(0,1); lcd_putsf("S4,S6 aktif"); delay_ms(500); } }

if(sensor==0xCF) //sensor 5 & 6 aktif { delay_ms(100); if(sensor==0xCF) { putchar('L'); lcd_clear();

Display pada LCD S4,S5

Sensor 4 & 6 aktif

Display pada LCD S4,S6

Sensor 5 & 6 aktif

Display pada LCD S5,S6

http://digilib.mercubuana.ac.id/

(19)

lcd_gotoxy(0,0); lcd_putsf("Awas maling"); lcd_gotoxy(0,1); lcd_putsf("S5,S6 aktif"); delay_ms(500); } }

if(sensor==0xF8) //sensor 1,2 & 3 aktif { delay_ms(100); if(sensor==0xF8) { putchar('M'); lcd_clear(); lcd_gotoxy(0,0); lcd_putsf("Awas maling"); lcd_gotoxy(0,1); lcd_putsf("S1,S2,S3 aktif"); delay_ms(500); } }

if(sensor==0xF4) //sensor 1,2,4 aktif { delay_ms(100); if(sensor==0xF4) { putchar('N'); lcd_clear(); lcd_gotoxy(0,0); lcd_putsf("Awas maling"); lcd_gotoxy(0,1); lcd_putsf("S1,S2,S4 aktif"); delay_ms(500); }

Sensor 1,2 & 3 aktif

Display pada LCD S1,S2,S3

Sensor 1,2 & 4 aktif

(20)

}

if(sensor==0xEC) //sensor 1,2,5 aktif { delay_ms(100); if(sensor==0xEC) { putchar('O'); lcd_clear(); lcd_gotoxy(0,0); lcd_putsf("Awas maling"); lcd_gotoxy(0,1); lcd_putsf("S1,S2,S5 aktif"); delay_ms(500); } }

if(sensor==0xDC) //sensor 1,2,6 aktif { delay_ms(100); if(sensor==0xDC) { putchar('P'); lcd_clear(); lcd_gotoxy(0,0); lcd_putsf("Awas maling"); lcd_gotoxy(0,1); lcd_putsf("S1,S2,S6 aktif"); delay_ms(500); } }

if(sensor==0xF1) //sensor 2,3,4 aktif {

delay_ms(100); if(sensor==0xF1)

Sensor 1,2 & 5 aktif

Display pada LCD S1,S2,S5

Sensor 1,2 & 6 aktif

Display pada LCD S1,S2,S6

Sensor 2,3 & 4 aktif

(21)

{ putchar('Q'); lcd_clear(); lcd_gotoxy(0,0); lcd_putsf("Awas maling"); lcd_gotoxy(0,1); lcd_putsf("S2,S3,S4 aktif"); delay_ms(500); } }

if(sensor==0xE9) //sensor 2,3,5 aktif { delay_ms(100); if(sensor==0xE9) { putchar('R'); lcd_clear(); lcd_gotoxy(0,0); lcd_putsf("Awas maling"); lcd_gotoxy(0,1); lcd_putsf("S2,S3,S5 aktif"); delay_ms(500); } }

if(sensor==0xD9) //sensor 2,3,6 aktif { delay_ms(100); if(sensor==0xD9) { putchar('S'); lcd_clear(); lcd_gotoxy(0,0); lcd_putsf("Awas maling"); lcd_gotoxy(0,1);

Display pada LCD S2,S3,S4

Sensor 2,3 & 5 aktif

Display pada LCD S2,S3,S5

Sensor 2,3 & 6 aktif

(22)

lcd_putsf("S2,S3,S6 aktif"); delay_ms(500);

} }

if(sensor==0xE3) //sensor 3,4,5 aktif { delay_ms(100); if(sensor==0xE3) { putchar('T'); lcd_clear(); lcd_gotoxy(0,0); lcd_putsf("Awas maling"); lcd_gotoxy(0,1); lcd_putsf("S3,S4,S5 aktif"); delay_ms(500); } }

if(sensor==0xD3) //sensor 3,4,6 aktif { delay_ms(100); if(sensor==0xD3) { putchar('U'); lcd_clear(); lcd_gotoxy(0,0); lcd_putsf("Awas maling"); lcd_gotoxy(0,1); lcd_putsf("S3,S4,S6 aktif"); delay_ms(500); } }

if(sensor==0xC7) //sensor 4,5,6 aktif

Sensor 3,4 & 5 aktif

Display pada LCD S3,S4,S5

Sensor 3,4 & 6 aktif

Display pada LCD S3,S4,S6

Sensor 4,5 & 6 aktif

(23)

{ delay_ms(100); if(sensor==0xC7) { putchar('V'); lcd_clear(); lcd_gotoxy(0,0); lcd_putsf("Awas maling"); lcd_gotoxy(0,1); lcd_putsf("S4,S5,S6 aktif"); delay_ms(500); } }

if(sensor==0xF0) //sensor 1,2,3,4 aktif { delay_ms(100); if(sensor==0xF0) { putchar('W'); lcd_clear(); lcd_gotoxy(0,0); lcd_putsf("Awas maling"); lcd_gotoxy(0,1); lcd_putsf("S1,2,3,4 aktif"); delay_ms(500); } }

if(sensor==0xE8) //sensor 1,2,3,5 aktif { delay_ms(100); if(sensor==0xE8) { putchar('X'); lcd_clear();

Display pada LCD S4,S5,S6

Sensor 1,2,3,4 aktif

Display pada LCD S1,S2,S3,S4

Sensor 1,2,3,5 aktif

Display pada LCD S1,S2,S3,S5

(24)

lcd_gotoxy(0,0); lcd_putsf("Awas maling"); lcd_gotoxy(0,1); lcd_putsf("S1,2,3,5 aktif"); delay_ms(500); } }

if(sensor==0xD8) //sensor 1,2,3,6 aktif { delay_ms(100); if(sensor==0xD8) { putchar('Y'); lcd_clear(); lcd_gotoxy(0,0); lcd_putsf("Awas maling"); lcd_gotoxy(0,1); lcd_putsf("S1,2,3,6 aktif"); delay_ms(500); } }

if(sensor==0xE1) //sensor 2,3,4,5 aktif { delay_ms(100); if(sensor==0xE1) { putchar('Z'); lcd_clear(); lcd_gotoxy(0,0); lcd_putsf("Awas maling"); lcd_gotoxy(0,1); lcd_putsf("S2,3,4,5 aktif"); delay_ms(500); }

Sensor 1,2,3,6 aktif

Display pada LCD S1,S2,S3,S6

Sensor 2,3,4,5 aktif

Display pada LCD S2,S3,S4,S5

http://digilib.mercubuana.ac.id/

(25)

}

if(sensor==0xD1) //sensor 2,3,4,6 aktif { delay_ms(100); if(sensor==0xD1) { putchar('a'); lcd_clear(); lcd_gotoxy(0,0); lcd_putsf("Awas maling"); lcd_gotoxy(0,1); lcd_putsf("S2,3,4,6 aktif"); delay_ms(500); } }

if(sensor==0xC3) //sensor 3,4,5,6 aktif { delay_ms(100); if(sensor==0xC3) { putchar('b'); lcd_clear(); lcd_gotoxy(0,0); lcd_putsf("Awas maling"); lcd_gotoxy(0,1); lcd_putsf("S3,4,5,6 aktif"); delay_ms(500); } }

if(sensor==0xE0) //sensor 1,2,3,4,5 aktif { delay_ms(100); if(sensor==0xE0)

Sensor 2,3,4,6 aktif

Display pada LCD S2,S3,S4,S6

Sensor 3,4,5,6 aktif

Display pada LCD S3,S4,S5,S6

Sensor 1,2,3,4,5aktif

(26)

{ putchar('c'); lcd_clear(); lcd_gotoxy(0,0); lcd_putsf("Awas maling"); lcd_gotoxy(0,1); lcd_putsf("S1,2,3,4,5 aktif"); delay_ms(500); } }

if(sensor==0xD0) //sensor 1,2,3,4,6 aktif { delay_ms(100); if(sensor==0xD0) { putchar('d'); lcd_clear(); lcd_gotoxy(0,0); lcd_putsf("Awas maling"); lcd_gotoxy(0,1); lcd_putsf("S1 ,2,3,4,6 aktif"); delay_ms(500); } }

if(sensor==0xC1) //sensor 2,3,4,5,6 aktif { delay_ms(100); if(sensor==0xC1) { putchar('e'); lcd_clear(); lcd_gotoxy(0,0); lcd_putsf("Awas maling"); lcd_gotoxy(0,1);

Display pada LCD S1,S2,S3,S4,S5

Sensor 1,2,3,4,6 aktif

Display pada LCD S1,S2,S3,S4,S6

Sensor 2,3,4,5,6 aktif

Display pada LCD S2,S3,S4,S5,S6

http://digilib.mercubuana.ac.id/

(27)

lcd_putsf("S2,3,4,5,6 aktif"); delay_ms(500);

} }

if(sensor==0xC0) //sensor 1,2,3,4,5,6 aktif { delay_ms(100); if(sensor==0xC0) { putchar('f'); lcd_clear(); lcd_gotoxy(0,0); lcd_putsf("Awas maling"); lcd_gotoxy(0,1); lcd_putsf("S1,2,3,4,5,6 aktif"); delay_ms(500); } } else { putchar('0'); lcd_clear(); lcd_gotoxy(1,0); lcd_putsf("HOME SECURITY"); lcd_gotoxy(3,1); lcd_putsf("BY A.O.S"); } //keluar: putchar('0'); delay_ms(50); }; }

Sensor 1,2,3,4,5,6 aktif

Display pada LCD S1,S2,S3,S4,S5,S6

(28)

3.4.2 Software PC menggunakan visual C#

Gambar 3.5 Software PC menggunakan visual C#

(29)

using System; using System.Collections.Generic; using System.ComponentModel; using System.Data; using System.Drawing; using System.Text; using System.Windows.Forms; using System.IO; using System.IO.Ports; using System.Threading; using AForge; using AForge.Imaging; using AForge.Imaging.Filters; using AForge.Video; using AForge.Video.VFW; using AForge.Video.DirectShow; using AForge.Vision.Motion; using System.Drawing.Imaging; using home_security.Properties; using System.Linq; namespace home_security {

publicenum DataMode { Text, Hex }

publicenum LogMsgType { Incoming, Outgoing, Normal, Warning, Error }; publicpartialclass homesecurity : Form

{

private SerialPort comport = new SerialPort(); private Settings settings = Settings.Default; string nilai; privatebool KeyHandled = false; string str_COM, ambil_data;

double nilai_pH, nilai_suhu; char[] chr_COM;

private Color[] LogMsgTypeColor = { Color.Blue, Color.Green, Color.Black, Color.Orange, Color.Red }; string rtf;

double[] x = newdouble[10]; double[] y = newdouble[10]; char[] serial = newchar[20]; int koma;

//serial port 2

int delay1 = 0, delay2 = 0, hitung = 0; private FilterInfoCollection peralatan_video;

EuclideanColorFiltering filter = new EuclideanColorFiltering(); Color color = Color.Black;

// Grayscale grayscaleFilter = new Grayscale();

// GrayscaleBT709 grayscaleFilter = new GrayscaleBT709(); IFilter grayscaleFilter = Grayscale.CommonAlgorithms.BT709; BlobCounter blobCounter = new BlobCounter();

int range = 80; int luas; string d = ""; // buka sumber video

private IVideoSource sumber_video = null; // Pendeteksian gerakan

MotionDetector pendeteksian = new MotionDetector(new TwoFramesDifferenceDetector(), new MotionAreaHighlighting()); // algoritma pendeteksian gerakan dan prosesnya

privateint tipe_pendeteksian_gerakan = 1; privateint tipe_proses_pergerakan = 1; // panjang statistikstatistics length privateconstint pjg_statistik = 15;

(30)

// index statistik skrg privateint indek_statistik = 0; // Niolai statistik sudah siaps privateint statReady = 0; // Array statistik

privateint[] hitung_statistik = newint[pjg_statistik]; // Penghitung yg di gunakan untuk flashing privateint flash = 0;

privatefloat Level_alarm_pergerakan = 0.015f;

private List<float> histori_pergerakan = new List<float>(); privateint hitung_jmlh_objek_yg_dideteksi = -1; privatestring device;

privatestring data_micro; public homesecurity() {

InitializeComponent();

comport.DataReceived += new SerialDataReceivedEventHandler(port_DataReceived);

}

#region Private Variables

SerialPort port = new SerialPort(); SMS objclsSMS = new SMS();

Microcontroller micro = new Microcontroller(); KoleksiSMS objkoleksiSMS = new KoleksiSMS();

#endregion

privatevoid Inisialisasi_nilai_kontrol() {

cmbParity.Items.Clear(); cmbParity.Items.AddRange(Enum.GetNames(typeof(Parity))); cmbStopBits.Items.Clear(); cmbStopBits.Items.AddRange(Enum.GetNames(typeof(StopBits))); cmbParity.Text = settings.Parity.ToString(); cmbStopBits.Text = settings.StopBits.ToString(); cmbDataBits.Text = settings.DataBits.ToString(); cmbParity.Text = settings.Parity.ToString(); cmbBaudRate.Text = settings.BaudRate.ToString(); RefreshComPortList();

if (cmbPortName.Items.Contains(settings.PortName)) cmbPortName.Text = settings.PortName; elseif (cmbPortName.Items.Count > 0) cmbPortName.SelectedIndex = cmbPortName.Items.Count - 1; else

{

MessageBox.Show(this, "COM Port tidak terdeteksi pada PC ini\nSilahkan install COM Port and restart aplikasi ini", "COM Ports tidak terpasang", MessageBoxButtons.OK, MessageBoxIcon.Error);

this.Close(); }

}

privatevoid RefreshComPortList() {

string selected = RefreshComPortList(cmbPortName.Items.Cast<string>(), cmbPortName.SelectedItem asstring, comport.IsOpen); if (!String.IsNullOrEmpty(selected)) { cmbPortName.Items.Clear(); cmbPortName.Items.AddRange(OrderedPortNames()); cmbPortName.SelectedItem = selected;

http://digilib.mercubuana.ac.id/

(31)

} }

privatestring RefreshComPortList(IEnumerable<string> PreviousPortNames, string CurrentSelection, bool PortOpen) {

string selected = null;

string[] ports = SerialPort.GetPortNames();

bool updated = PreviousPortNames.Except(ports).Count() > 0 || ports.Except(PreviousPortNames).Count() > 0; if (updated)

{

ports = OrderedPortNames();

string newest = SerialPort.GetPortNames().Except(PreviousPortNames).OrderBy(a => a).LastOrDefault(); if (PortOpen)

{

if (ports.Contains(CurrentSelection)) selected = CurrentSelection; elseif (!String.IsNullOrEmpty(newest)) selected = newest; else selected = ports.LastOrDefault();

} else

{

if (!String.IsNullOrEmpty(newest)) selected = newest;

elseif (ports.Contains(CurrentSelection)) selected = CurrentSelection; else selected = ports.LastOrDefault();

} }

return selected; }

privatestring[] OrderedPortNames() {

int num;

return SerialPort.GetPortNames().OrderBy(a => a.Length > 3 && int.TryParse(a.Substring(3), out num) ? num : 0).ToArray(); }

privatevoid EnableControls() {

gbPortSettings.Enabled = !comport.IsOpen;

if (comport.IsOpen) btnOpenPort.Text = "&Close Port"; else btnOpenPort.Text = "&Open Port";

}

privatevoid SendData() {

string x = kirim_data(); comport.Write(x); }

privatestring kirim_data() {

return nilai; }

(32)

#region Tulis StatusBar

privatevoid TulisStatusBar(string status) {

try

{

statusBar2.Text = "Pesan: " + status; }

catch (Exception ex) {

} }

#endregion

privatevoid kirimSMS(string noHP, string isi_pesan) {

//... kirim SMS ... try

{

if (objclsSMS.Kirimpesan(this.port, noHP, isi_pesan)) {

this.statusBar2.Text = "Pesan berhasil di kirim"; }

else

{

this.statusBar2.Text = "Pesan gagal di kirim"; }

}

catch (Exception ex) {

ErrorLog(ex.Message); }

}

#region Error Log

publicvoid ErrorLog(string pesan) {

StreamWriter sw = null; try

{

TulisStatusBar(pesan);

string sLogFormat = DateTime.Now.ToShortDateString().ToString() + " " + DateTime.Now.ToLongTimeString().ToString() + " ==> ";

//string sPathName = @"E:\";

string sPathName = @"HomeSecurityErrorLog_"; string sYear = DateTime.Now.Year.ToString(); string sMonth = DateTime.Now.Month.ToString(); string sDay = DateTime.Now.Day.ToString(); string sErrorTime = sDay + "-" + sMonth + "-" + sYear; sw = new StreamWriter(sPathName + sErrorTime + ".txt", true); sw.WriteLine(sLogFormat + pesan);

sw.Flush(); }

catch (Exception ex) {

//ErrorLog(ex.ToString()); }

(33)

finally { if (sw != null) { sw.Dispose(); sw.Close(); } } } #endregion

privatevoid homesecurity_Load(object sender, EventArgs e) {

Form tampilan_sesaat = new pengenalan(); tampilan_sesaat.Visible = true;

tampilan_sesaat.Refresh(); Thread.Sleep(5000); //tunggu 5 detik tampilan_sesaat.Close();

timer1.Enabled = true;

}

privatevoid toolStripButton1_Click(object sender, EventArgs e) {

}

privatevoid btnOK_Click(object sender, EventArgs e) {

try

{

//Open communication port

this.port = objclsSMS.OpenPort(this.cboPortName.Text, Convert.ToInt32(this.cboBaudRate.Text),

Convert.ToInt32(this.cboDataBits.Text), Convert.ToInt32(this.txtReadTimeOut.Text), Convert.ToInt32(this.txtWriteTimeOut.Text)); if (this.port != null)

{

this.gboPortSettings.Enabled = false;

//MessageBox.Show("Modem is connected at PORT " + this.cboPortName.Text); this.statusBar2.Text = "Modem terhubung ke PORT " + this.cboPortName.Text; }

else

{

this.statusBar2.Text = "setting port tidak benar"; }

}

catch (Exception ex) {

ErrorLog(ex.Message); }

}

privatevoid btnOK1_Click(object sender, EventArgs e) {

try

{

//Open communication port

this.port = objclsSMS.OpenPort(this.cboPortName.Text, Convert.ToInt32(this.cboBaudRate.Text),

Convert.ToInt32(this.cboDataBits.Text), Convert.ToInt32(this.txtReadTimeOut.Text), Convert.ToInt32(this.txtWriteTimeOut.Text)); if (this.port != null)

{

(34)

//MessageBox.Show("Modem is connected at PORT " + this.cboPortName.Text); this.statusBar2.Text = "Microcontroller terhubung ke PORT " + this.cboPortName.Text; }

else

{

this.statusBar2.Text = "setting port tidak benar"; }

}

catch (Exception ex) {

ErrorLog(ex.Message); }

}

privatevoid label2_Click(object sender, EventArgs e) {

}

privatevoid cboBaudRate_SelectedIndexChanged(object sender, EventArgs e) {

}

privatevoid toolStripButton1_Click_1(object sender, EventArgs e) {

}

privatevoid toolStripButton3_Click(object sender, EventArgs e) {

//baca port micro

//string t = port.ReadExisting(); timer2.Enabled = true; }

privatevoid timer2_Tick(object sender, EventArgs e) { delay1++; string x; int y; // data_micro = micro.baca_port_micro(port1); // tampil(data_micro); if (rtfTerminal.Lines.Length>0) { if(rtfTerminal.Lines[0] !="") rtf = rtfTerminal.Lines[0]; y = rtf.Length; if (y > 0) { serial = rtf.ToCharArray(); if (hitung < 2) { tampil(serial[0].ToString()); } } if (hitung == 2) { hitung = 0; rtfTerminal.Clear(); } if (delay1 > 100)

http://digilib.mercubuana.ac.id/

(35)

{ delay1 = 0; } hitung++; } }

privatevoid tampil(string xxx) { if (xxx == null) { button1.BackColor = Color.Transparent; button2.BackColor = Color.Transparent; button3.BackColor = Color.Transparent; button4.BackColor = Color.Transparent; button5.BackColor = Color.Transparent; button6.BackColor = Color.Transparent; } if (xxx == "0") { button1.BackColor = Color.Transparent; button2.BackColor = Color.Transparent; button3.BackColor = Color.Transparent; button4.BackColor = Color.Transparent; button5.BackColor = Color.Transparent; button6.BackColor = Color.Transparent; } if (xxx == "1") { button1.BackColor = Color.Red; button2.BackColor = Color.Transparent; button3.BackColor = Color.Transparent; button4.BackColor = Color.Transparent; button5.BackColor = Color.Transparent; button6.BackColor = Color.Transparent; try {

if (objclsSMS.Kirimpesan(this.port, "087882836200", "Ada Maling....!, masuk dari pintu utama")) {

this.statusBar1.Text = "Pesan sudah terkirim"; }

else

{

this.statusBar1.Text = "Pesan gagal di kirim"; }

}

catch (Exception ex) { ErrorLog(ex.Message); } } if (xxx == "2") { button1.BackColor = Color.Transparent; button2.BackColor = Color.Red; button3.BackColor = Color.Transparent; button4.BackColor = Color.Transparent; button5.BackColor = Color.Transparent; button6.BackColor = Color.Transparent; try {

if (objclsSMS.Kirimpesan(this.port, "087882836200", "Ada Maling....!, masuk dari Jendela Depan 1")) {

(36)

this.statusBar1.Text = "Pesan sudah terkirim"; }

else

{

this.statusBar1.Text = "Pesan gagal di kirim"; }

}

catch (Exception ex) { ErrorLog(ex.Message); } } if (xxx == "3") { button1.BackColor = Color.Transparent; button2.BackColor = Color.Transparent; button3.BackColor = Color.Red; button4.BackColor = Color.Transparent; button5.BackColor = Color.Transparent; button6.BackColor = Color.Transparent; try {

if (objclsSMS.Kirimpesan(this.port, "087882836200", "Ada Maling....!, masuk dari Jendela Depan 2")) {

this.statusBar1.Text = "Pesan sudah terkirim"; }

else

{

this.statusBar1.Text = "Pesan gagal di kirim"; }

}

catch (Exception ex) { ErrorLog(ex.Message); } } if (xxx == "4") { button1.BackColor = Color.Transparent; button2.BackColor = Color.Transparent; button3.BackColor = Color.Transparent; button4.BackColor = Color.Red; button5.BackColor = Color.Transparent; button6.BackColor = Color.Transparent; try {

if (objclsSMS.Kirimpesan(this.port, "087882836200", "Ada Maling....!, masuk dari pintu belakang")) {

this.statusBar1.Text = "Pesan sudah terkirim"; }

else

{

this.statusBar1.Text = "Pesan gagal di kirim"; }

}

catch (Exception ex) {

(37)

ErrorLog(ex.Message); } } if (xxx == "5") { button1.BackColor = Color.Transparent; button2.BackColor = Color.Transparent; button3.BackColor = Color.Transparent; button4.BackColor = Color.Transparent; button5.BackColor = Color.Red; button6.BackColor = Color.Transparent; try {

if (objclsSMS.Kirimpesan(this.port, "087882836200", "Ada Maling....!, masuk dari jendela belakang")) {

this.statusBar1.Text = "Pesan sudah terkirim"; }

else

{

this.statusBar1.Text = "Pesan gagal di kirim"; }

}

catch (Exception ex) { ErrorLog(ex.Message); } } if (xxx == "6") { button1.BackColor = Color.Transparent; button2.BackColor = Color.Transparent; button3.BackColor = Color.Transparent; button4.BackColor = Color.Transparent; button5.BackColor = Color.Transparent; button6.BackColor = Color.Red; try {

if (objclsSMS.Kirimpesan(this.port, "087882836200", "Ada Maling....!, di ruang tamu")) {

this.statusBar1.Text = "Pesan sudah terkirim"; }

else

{

this.statusBar1.Text = "Pesan gagal di kirim"; }

}

catch (Exception ex) { ErrorLog(ex.Message); } } if (xxx == "7") { button1.BackColor = Color.Red; button2.BackColor = Color.Red; button3.BackColor = Color.Transparent; button4.BackColor = Color.Transparent; button5.BackColor = Color.Transparent; button6.BackColor = Color.Transparent;

(38)

try

{

if (objclsSMS.Kirimpesan(this.port, "087882836200", "Ada Maling....!, masuk dari pintu utama dan Jendela depan 1")) {

this.statusBar1.Text = "Pesan sudah terkirim"; }

else

{

this.statusBar1.Text = "Pesan gagal di kirim"; }

}

catch (Exception ex) { ErrorLog(ex.Message); } } if (xxx == "8") { button1.BackColor = Color.Red; button2.BackColor = Color.Transparent; button3.BackColor = Color.Red; button4.BackColor = Color.Transparent; button5.BackColor = Color.Transparent; button6.BackColor = Color.Transparent; try {

if (objclsSMS.Kirimpesan(this.port, "087882836200", "Ada Maling....!, masuk dari pintu utama dan jendela depan 2")) {

this.statusBar1.Text = "Pesan sudah terkirim"; }

else

{

this.statusBar1.Text = "Pesan gagal di kirim"; }

}

catch (Exception ex) { ErrorLog(ex.Message); } } if (xxx == "9") { button1.BackColor = Color.Red; button2.BackColor = Color.Transparent; button3.BackColor = Color.Transparent; button4.BackColor = Color.Red; button5.BackColor = Color.Transparent; button6.BackColor = Color.Transparent; try {

if (objclsSMS.Kirimpesan(this.port, "087882836200", "Ada Maling....!, masuk dari pintu utama dan belakang")) {

this.statusBar1.Text = "Pesan sudah terkirim"; }

else

{

(39)

this.statusBar1.Text = "Pesan gagal di kirim"; }

}

catch (Exception ex) { ErrorLog(ex.Message); } } if (xxx == "A") { button1.BackColor = Color.Red; button2.BackColor = Color.Transparent; button3.BackColor = Color.Transparent; button4.BackColor = Color.Transparent; button5.BackColor = Color.Red; button6.BackColor = Color.Transparent; try {

if (objclsSMS.Kirimpesan(this.port, "087882836200", "Ada Maling....!, masuk dari pintu utama dan Jendela belakang")) {

this.statusBar1.Text = "Pesan sudah terkirim"; }

else

{

this.statusBar1.Text = "Pesan gagal di kirim"; }

}

catch (Exception ex) { ErrorLog(ex.Message); } } if (xxx == "B") { button1.BackColor = Color.Red; button2.BackColor = Color.Transparent; button3.BackColor = Color.Transparent; button4.BackColor = Color.Transparent; button5.BackColor = Color.Transparent; button6.BackColor = Color.Red; try {

if (objclsSMS.Kirimpesan(this.port, "087882836200", "Ada Maling....!, masuk dari pintu utama dan ruang tamu")) {

this.statusBar1.Text = "Pesan sudah terkirim"; }

else

{

this.statusBar1.Text = "Pesan gagal di kirim"; }

}

catch (Exception ex) { ErrorLog(ex.Message); } } if (xxx == "C") {

(40)

button1.BackColor = Color.Transparent; button2.BackColor = Color.Red; button3.BackColor = Color.Red; button4.BackColor = Color.Transparent; button5.BackColor = Color.Transparent; button6.BackColor = Color.Transparent; try {

if (objclsSMS.Kirimpesan(this.port, "087882836200", "Ada Maling....!, masuk dari Jendela depan 1 dan Jendela depan 2")) {

this.statusBar1.Text = "Pesan sudah terkirim"; }

else

{

this.statusBar1.Text = "Pesan gagal di kirim"; }

}

catch (Exception ex) { ErrorLog(ex.Message); } } if (xxx == "D") { button1.BackColor = Color.Transparent; button2.BackColor = Color.Red; button3.BackColor = Color.Transparent; button4.BackColor = Color.Red; button5.BackColor = Color.Transparent; button6.BackColor = Color.Transparent; try {

if (objclsSMS.Kirimpesan(this.port, "087882836200", "Ada Maling....!, masuk dari jendela depan 1 dan pintu belakang")) {

this.statusBar1.Text = "Pesan sudah terkirim"; }

else

{

this.statusBar1.Text = "Pesan gagal di kirim"; }

}

catch (Exception ex) { ErrorLog(ex.Message); } } if (xxx == "E") { button1.BackColor = Color.Transparent; button2.BackColor = Color.Red; button3.BackColor = Color.Transparent; button4.BackColor = Color.Transparent; button5.BackColor = Color.Red; button6.BackColor = Color.Transparent; try {

if (objclsSMS.Kirimpesan(this.port, "087882836200", "Ada Maling....!, masuk dari pintu jendela depan 1 dan jendela belakang")) {

(41)

this.statusBar1.Text = "Pesan sudah terkirim"; }

else

{

this.statusBar1.Text = "Pesan gagal di kirim"; }

}

catch (Exception ex) { ErrorLog(ex.Message); } } if (xxx == "F") { button1.BackColor = Color.Transparent; button2.BackColor = Color.Red; button3.BackColor = Color.Transparent; button4.BackColor = Color.Transparent; button5.BackColor = Color.Transparent; button6.BackColor = Color.Red; try {

if (objclsSMS.Kirimpesan(this.port, "087882836200", "Ada Maling....!, masuk dari jendela depan 1 dan ruang tamu")) {

this.statusBar1.Text = "Pesan sudah terkirim"; }

else

{

this.statusBar1.Text = "Pesan gagal di kirim"; }

}

catch (Exception ex) { ErrorLog(ex.Message); } } if (xxx == "G") { button1.BackColor = Color.Transparent; button2.BackColor = Color.Transparent; button3.BackColor = Color.Red; button4.BackColor = Color.Red; button5.BackColor = Color.Transparent; button6.BackColor = Color.Transparent; try {

if (objclsSMS.Kirimpesan(this.port, "087882836200", "Ada Maling....!, masuk dari jendela depan 2 dan pintu belakang")) {

this.statusBar1.Text = "Pesan sudah terkirim"; }

else

{

this.statusBar1.Text = "Pesan gagal di kirim"; }

}

catch (Exception ex) {

(42)

} } if (xxx == "H") { button1.BackColor = Color.Transparent; button2.BackColor = Color.Transparent; button3.BackColor = Color.Red; button4.BackColor = Color.Transparent; button5.BackColor = Color.Red; button6.BackColor = Color.Transparent; try {

if (objclsSMS.Kirimpesan(this.port, "087882836200", "Ada Maling....!, masuk dari jendela depan 2 dan jendela belakang")) {

this.statusBar1.Text = "Pesan sudah terkirim"; }

else

{

this.statusBar1.Text = "Pesan gagal di kirim"; }

}

catch (Exception ex) { ErrorLog(ex.Message); } } if (xxx == "I") { button1.BackColor = Color.Transparent; button2.BackColor = Color.Transparent; button3.BackColor = Color.Red; button4.BackColor = Color.Transparent; button5.BackColor = Color.Transparent; button6.BackColor = Color.Red; try {

if (objclsSMS.Kirimpesan(this.port, "087882836200", "Ada Maling....!, masuk dari jendela depan 2 dan ruang tamu")) {

this.statusBar1.Text = "Pesan sudah terkirim"; }

else

{

this.statusBar1.Text = "Pesan gagal di kirim"; }

}

catch (Exception ex) { ErrorLog(ex.Message); } } if (xxx == "J") { button1.BackColor = Color.Transparent; button2.BackColor = Color.Transparent; button3.BackColor = Color.Transparent; button4.BackColor = Color.Red; button5.BackColor = Color.Red; button6.BackColor = Color.Transparent; try

http://digilib.mercubuana.ac.id/

(43)

{

if (objclsSMS.Kirimpesan(this.port, "087882836200", "Ada Maling....!, masuk dari pintu belakang dan jendela belakang")) {

this.statusBar1.Text = "Pesan sudah terkirim"; }

else

{

this.statusBar1.Text = "Pesan gagal di kirim"; }

}

catch (Exception ex) { ErrorLog(ex.Message); } } if (xxx == "K") { button1.BackColor = Color.Transparent; button2.BackColor = Color.Transparent; button3.BackColor = Color.Transparent; button4.BackColor = Color.Red; button5.BackColor = Color.Transparent; button6.BackColor = Color.Red; try {

if (objclsSMS.Kirimpesan(this.port, "087882836200", "Ada Maling....!, masuk dari pintu belakang dan ruang tamu")) {

this.statusBar1.Text = "Pesan sudah terkirim"; }

else

{

this.statusBar1.Text = "Pesan gagal di kirim"; }

}

catch (Exception ex) { ErrorLog(ex.Message); } } if (xxx == "L") { button1.BackColor = Color.Transparent; button2.BackColor = Color.Transparent; button3.BackColor = Color.Transparent; button4.BackColor = Color.Transparent; button5.BackColor = Color.Red; button6.BackColor = Color.Red; try {

if (objclsSMS.Kirimpesan(this.port, "087882836200", "Ada Maling....!, masuk dari jendela belakang dan ruang tamu")) {

this.statusBar1.Text = "Pesan sudah terkirim"; }

else

{

this.statusBar1.Text = "Pesan gagal di kirim"; }

(44)

}

catch (Exception ex) { ErrorLog(ex.Message); } } if (xxx == "M") { button1.BackColor = Color.Red; button2.BackColor = Color.Red; button3.BackColor = Color.Red; button4.BackColor = Color.Transparent; button5.BackColor = Color.Transparent; button6.BackColor = Color.Transparent; try {

if (objclsSMS.Kirimpesan(this.port, "087882836200", "Ada Maling....!, masuk dari pintu utama, jendela depan 1 dan 2")) {

this.statusBar1.Text = "Pesan sudah terkirim"; }

else

{

this.statusBar1.Text = "Pesan gagal di kirim"; }

}

catch (Exception ex) { ErrorLog(ex.Message); } } if (xxx == "N") { button1.BackColor = Color.Red; button2.BackColor = Color.Red; button3.BackColor = Color.Transparent; button4.BackColor = Color.Red; button5.BackColor = Color.Transparent; button6.BackColor = Color.Transparent; try {

if (objclsSMS.Kirimpesan(this.port, "087882836200", "Ada Maling....!, masuk dari pintu utama, jendela depan 1 dan pintu belakang"))

{

this.statusBar1.Text = "Pesan sudah terkirim"; }

else

{

this.statusBar1.Text = "Pesan gagal di kirim"; }

}

catch (Exception ex) { ErrorLog(ex.Message); } } if (xxx == "O") { button1.BackColor = Color.Red;

http://digilib.mercubuana.ac.id/

(45)

button2.BackColor = Color.Red; button3.BackColor = Color.Transparent; button4.BackColor = Color.Transparent; button5.BackColor = Color.Red; button6.BackColor = Color.Transparent; try {

if (objclsSMS.Kirimpesan(this.port, "087882836200", "Ada Maling....!, masuk dari pintu utama dan belakang")) {

this.statusBar1.Text = "Pesan sudah terkirim"; }

else

{

this.statusBar1.Text = "Pesan gagal di kirim"; }

}

catch (Exception ex) { ErrorLog(ex.Message); } } if (xxx == "P") { button1.BackColor = Color.Red; button2.BackColor = Color.Red; button3.BackColor = Color.Transparent; button4.BackColor = Color.Transparent; button5.BackColor = Color.Transparent; button6.BackColor = Color.Red; try {

if (objclsSMS.Kirimpesan(this.port, "087882836200", "Ada Maling....!, masuk dari pintu utama dan belakang")) {

this.statusBar1.Text = "Pesan sudah terkirim"; }

else

{

this.statusBar1.Text = "Pesan gagal di kirim"; }

}

catch (Exception ex) { ErrorLog(ex.Message); } } if (xxx == "Q") { button1.BackColor = Color.Transparent; button2.BackColor = Color.Red; button3.BackColor = Color.Red; button4.BackColor = Color.Red; button5.BackColor = Color.Transparent; button6.BackColor = Color.Transparent; try {

if (objclsSMS.Kirimpesan(this.port, "087882836200", "Ada Maling....!, masuk dari pintu utama dan belakang")) {

(46)

} else

{

this.statusBar1.Text = "Pesan gagal di kirim"; }

}

catch (Exception ex) { ErrorLog(ex.Message); } } if (xxx == "R") { button1.BackColor = Color.Transparent; button2.BackColor = Color.Red; button3.BackColor = Color.Red; button4.BackColor = Color.Transparent; button5.BackColor = Color.Red; button6.BackColor = Color.Transparent; try {

if (objclsSMS.Kirimpesan(this.port, "087882836200", "Ada Maling....!, masuk dari pintu utama dan belakang")) {

this.statusBar1.Text = "Pesan sudah terkirim"; }

else

{

this.statusBar1.Text = "Pesan gagal di kirim"; }

}

catch (Exception ex) { ErrorLog(ex.Message); } } if (xxx == "S") { button1.BackColor = Color.Transparent; button2.BackColor = Color.Red; button3.BackColor = Color.Red; button4.BackColor = Color.Transparent; button5.BackColor = Color.Transparent; button6.BackColor = Color.Red; try {

if (objclsSMS.Kirimpesan(this.port, "087882836200", "Ada Maling....!, masuk dari pintu utama dan belakang")) {

this.statusBar1.Text = "Pesan sudah terkirim"; }

else

{

this.statusBar1.Text = "Pesan gagal di kirim"; }

}

catch (Exception ex) {

ErrorLog(ex.Message); }

(47)

} if (xxx == "T") { button1.BackColor = Color.Transparent; button2.BackColor = Color.Transparent; button3.BackColor = Color.Red; button4.BackColor = Color.Red; button5.BackColor = Color.Red; button6.BackColor = Color.Transparent; try {

if (objclsSMS.Kirimpesan(this.port, "087882836200", "Ada Maling....!, masuk dari pintu utama dan belakang")) {

this.statusBar1.Text = "Pesan sudah terkirim"; }

else

{

this.statusBar1.Text = "Pesan gagal di kirim"; }

}

catch (Exception ex) { ErrorLog(ex.Message); } } if (xxx == "U") { button1.BackColor = Color.Transparent; button2.BackColor = Color.Transparent; button3.BackColor = Color.Red; button4.BackColor = Color.Red; button5.BackColor = Color.Transparent; button6.BackColor = Color.Red; try {

if (objclsSMS.Kirimpesan(this.port, "087882836200", "Ada Maling....!, masuk dari pintu utama dan belakang")) {

this.statusBar1.Text = "Pesan sudah terkirim"; }

else

{

this.statusBar1.Text = "Pesan gagal di kirim"; }

}

catch (Exception ex) { ErrorLog(ex.Message); } } if (xxx == "V") { button1.BackColor = Color.Transparent; button2.BackColor = Color.Transparent; button3.BackColor = Color.Transparent; button4.BackColor = Color.Red; button5.BackColor = Color.Red; button6.BackColor = Color.Red; try {

(48)

if (objclsSMS.Kirimpesan(this.port, "087882836200", "Ada Maling....!, masuk dari pintu utama dan belakang")) {

this.statusBar1.Text = "Pesan sudah terkirim"; }

else

{

this.statusBar1.Text = "Pesan gagal di kirim"; }

}

catch (Exception ex) { ErrorLog(ex.Message); } } if (xxx == "W") { button1.BackColor = Color.Red; button2.BackColor = Color.Red; button3.BackColor = Color.Red; button4.BackColor = Color.Red; button5.BackColor = Color.Transparent; button6.BackColor = Color.Transparent; try {

if (objclsSMS.Kirimpesan(this.port, "087882836200", "Ada Maling....!, masuk dari pintu utama dan belakang")) {

this.statusBar1.Text = "Pesan sudah terkirim"; }

else

{

this.statusBar1.Text = "Pesan gagal di kirim"; }

}

catch (Exception ex) { ErrorLog(ex.Message); } } if (xxx == "X") { button1.BackColor = Color.Red; button2.BackColor = Color.Red; button3.BackColor = Color.Red; button4.BackColor = Color.Transparent; button5.BackColor = Color.Red; button6.BackColor = Color.Transparent; try {

if (objclsSMS.Kirimpesan(this.port, "087882836200", "Ada Maling....!, masuk dari pintu utama dan belakang")) {

this.statusBar1.Text = "Pesan sudah terkirim"; }

else

{

this.statusBar1.Text = "Pesan gagal di kirim"; }

(49)

}

catch (Exception ex) { ErrorLog(ex.Message); } } if (xxx == "Y") { button1.BackColor = Color.Red; button2.BackColor = Color.Red; button3.BackColor = Color.Red; button4.BackColor = Color.Transparent; button5.BackColor = Color.Transparent; button6.BackColor = Color.Red; try {

if (objclsSMS.Kirimpesan(this.port, "087882836200", "Ada Maling....!, masuk dari pintu utama dan belakang")) {

this.statusBar1.Text = "Pesan sudah terkirim"; }

else

{

this.statusBar1.Text = "Pesan gagal di kirim"; }

}

catch (Exception ex) { ErrorLog(ex.Message); } } if (xxx == "Z") { button1.BackColor = Color.Transparent; button2.BackColor = Color.Red; button3.BackColor = Color.Red; button4.BackColor = Color.Red; button5.BackColor = Color.Red; button6.BackColor = Color.Transparent; try {

if (objclsSMS.Kirimpesan(this.port, "087882836200", "Ada Maling....!, masuk dari pintu utama dan belakang")) {

this.statusBar1.Text = "Pesan sudah terkirim"; }

else

{

this.statusBar1.Text = "Pesan gagal di kirim"; }

}

catch (Exception ex) { ErrorLog(ex.Message); } } if (xxx == "a") { button1.BackColor = Color.Transparent; button2.BackColor = Color.Red; button3.BackColor = Color.Red;

(50)

button4.BackColor = Color.Red; button5.BackColor = Color.Transparent; button6.BackColor = Color.Red; try

{

if (objclsSMS.Kirimpesan(this.port, "087882836200", "Ada Maling....!, masuk dari pintu utama dan belakang")) {

this.statusBar1.Text = "Pesan sudah terkirim"; }

else

{

this.statusBar1.Text = "Pesan gagal di kirim"; }

}

catch (Exception ex) { ErrorLog(ex.Message); } } if (xxx == "b") { button1.BackColor = Color.Transparent; button2.BackColor = Color.Transparent; button3.BackColor = Color.Red; button4.BackColor = Color.Red; button5.BackColor = Color.Red; button6.BackColor = Color.Red; try {

if (objclsSMS.Kirimpesan(this.port, "087882836200", "Ada Maling....!, masuk dari pintu utama dan belakang")) {

this.statusBar1.Text = "Pesan sudah terkirim"; }

else

{

this.statusBar1.Text = "Pesan gagal di kirim"; }

}

catch (Exception ex) { ErrorLog(ex.Message); } } if (xxx == "c") { button1.BackColor = Color.Red; button2.BackColor = Color.Red; button3.BackColor = Color.Red; button4.BackColor = Color.Red; button5.BackColor = Color.Red; button6.BackColor = Color.Transparent; try {

if (objclsSMS.Kirimpesan(this.port, "087882836200", "Ada Maling....!, masuk dari pintu utama dan belakang")) {

this.statusBar1.Text = "Pesan sudah terkirim"; }

else

(51)

{

this.statusBar1.Text = "Pesan gagal di kirim"; }

}

catch (Exception ex) { ErrorLog(ex.Message); } } if (xxx == "d") { button1.BackColor = Color.Red; button2.BackColor = Color.Red; button3.BackColor = Color.Red; button4.BackColor = Color.Red; button5.BackColor = Color.Transparent; button6.BackColor = Color.Red; try {

if (objclsSMS.Kirimpesan(this.port, "087882836200", "Ada Maling....!, masuk dari pintu utama dan belakang")) {

this.statusBar1.Text = "Pesan sudah terkirim"; }

else

{

this.statusBar1.Text = "Pesan gagal di kirim"; }

}

catch (Exception ex) { ErrorLog(ex.Message); } } if (xxx == "e") { button1.BackColor = Color.Transparent; button2.BackColor = Color.Red; button3.BackColor = Color.Red; button4.BackColor = Color.Red; button5.BackColor = Color.Red; button6.BackColor = Color.Red; try {

if (objclsSMS.Kirimpesan(this.port, "087882836200", "Ada Maling....!, masuk dari pintu utama dan belakang")) {

this.statusBar1.Text = "Pesan sudah terkirim"; }

else

{

this.statusBar1.Text = "Pesan gagal di kirim"; }

}

catch (Exception ex) {

ErrorLog(ex.Message); }

(52)

if (xxx == "f") { button1.BackColor = Color.Red; button2.BackColor = Color.Red; button3.BackColor = Color.Red; button4.BackColor = Color.Red; button5.BackColor = Color.Red; button6.BackColor = Color.Red; try {

if (objclsSMS.Kirimpesan(this.port, "087882836200", "Ada Maling....!, masuk dari pintu utama,belakang,jendela depan,belakang,ruang tamu"))

{

this.statusBar1.Text = "Pesan sudah terkirim"; }

else

{

this.statusBar1.Text = "Pesan gagal di kirim"; }

}

catch (Exception ex) { ErrorLog(ex.Message); } } }

privatebyte[] HexStringToByteArray(string s) {

s = s.Replace(" ", "");

byte[] buffer = newbyte[s.Length / 2]; for (int i = 0; i < s.Length; i += 2)

buffer[i / 2] = (byte)Convert.ToByte(s.Substring(i, 2), 16); return buffer;

}

privatestring ByteArrayToHexString(byte[] data) {

StringBuilder sb = new StringBuilder(data.Length * 3); foreach (byte b in data)

sb.Append(Convert.ToString(b, 16).PadLeft(2, '0').PadRight(3, ' ')); return sb.ToString().ToUpper();

}

private DataMode CurrentDataMode {

get

{

if (rbHex.Checked) return DataMode.Hex; elsereturn DataMode.Text;

} set

{

if (value == DataMode.Text) rbText.Checked = true; else rbHex.Checked = true;

} }

privatevoid port_DataReceived(object sender, SerialDataReceivedEventArgs e) {

Gambar

Gambar 3.4 Software microcontroller (AVR Version 1.25.9)
Gambar 3.5 Software PC menggunakan visual C#

Referensi

Dokumen terkait

Ajiyati Nur Asep, Pengembangan Sistem Informasi Akademik Berbasis Short Message Service (SMS) Interaktif Sebagai Media Layanan Informasi Akademik Di SMP Negeri 2

Rancang Bangun Sistem Informasi Pengingat Jadwal Pembayaran Angsuran Berbasis SMS Gateway.. STIMIK Nusa Mandiri, Jakarta Pusat: Vol-1;

2018 „Rancang Bangun Sistem Keamanan Pada Pintu Rumah Dengan Menggunakan Sensor PIR dan Peringatan Dini Melalui SMS Berbasis Mikrokontroler‟, Journal of Informatics and Computer

Rancang Bangun Magnetic Door Lock Menggunakan Keypad Dan Solenoid Berbasis Mikrokontroler Arduino Uno.. Hadi Prayogo, Herri Gusmedi,

Rancang Bangun Untuk Monitoring Kualitas Udara Menggunakan Modul Xbee Berbasis Mikrokontroler ATMega 32U4.. Politeknik Negeri

Rancang Bangun Sistem Monitoring Dan Pengaman Motor Induksi Tiga Fasa Berbasis Mikrokontroler ATMega 8535.. 2021 Sistem Keamanan Pintu Menggunakan Sensor Sidik Jari Berbasis

Rancang Bangun Sistem Penyiraman Tanaman Secara Otomatis Menggunakan Sensor Suhu LM35 Berbasis Mikrokontroler ATMega8535... 44 Peranginangin,

Rancang Bangun Sumber Daya Untuk Charger Baterai Menggunakan Energi Panas Matahari Berbasis Termoelektrik Generator Mahasiswa Teknik Elektro , 23 Dosen Teknik Elektro , Universitas