65
PERANCANGAN SISTEM
3.1. Perancangan Perangkat Keras
Sistem ini berfungsi memberikan status kendaraan berupa keadaan mesin, alarm, dan central lock. Serta dapat melakukan pemanasan mobil secara otomatis dengan jadwal yang dapat ditentukan oleh pengguna melalui SMS. Sistem juga dapat mematikan mobil secara paksa jika pengguna menganggap mobil dalam posisi yang tidak seharusnya menyala. Blok diagram keseluruhan pada sistem ini dapat dilihat sebagai berikut :
GSM module Microcontroller LCD Keypad Handphone (User) Sistem Starter Mobil Central
Lock Alarm Mobil
SMS
Buzzer Sirene
• Mikrokontroler sebagai pengendali dari setiap komponen-komponen lain yang digunakan, untuk mengolah data yang didapat dan memberikan respon terhadap hasil yang didapat.
• Alarm mobil memberikan status kepada mikrokontroler untuk aktif tidaknya sistem alarm tersebut.
• Central lock adalah sistem penguncian yang terhubung dengan alarm, sehingga dapat dikendalikan melalui alarm, dan memberikan status kepada mikrokontroler untuk terkunci atau tidaknya pintu mobil.
• Sistem starter mobil adalah sistem penyalaan mesin mobil, berfungsi untuk memberikan status kepada mikrokontroler mengenai menyala tidaknya mesin mobil dan berfungsi untuk penyalaan mesin mobil melalui SMS atau kunci.
• Modul GSM berfungsi untuk mengirim dan menerima SMS dari pengguna dan meneruskannya ke mikrokontroler, sehingga terjadi komunikasi antara pengguna dengan mikrokontroler untuk diproses. • Keypad adalah untuk memberi input-an kepada mikrokontroler. • LCD untuk memberikan tampilan kepada pengguna.
• Sirene berfungsi untuk mengeluarkan bunyi ketika terjadi kondisi yang tidak diinginkan.
• Buzzer berfungsi sebagai pengingat kepada pengguna untuk menekan tombol rahasia atau memberitahu kepada pengguna jika mesin dalam kondisi pemanasan.
3.1.1. Perancangan Rangkaian Pusat Kontrol
Gambar 3.2 Rangkaian Pusat Kontrol
Pada sistem digunakan mikrokontroler jenis ATMega32L (U1) karena mikrokontroler ini dapat bekerja pada tegangan 3,3V, sehingga dapat berkomunikasi dengan SIM300 (U2) yang bekerja pada level tegangan tersebut. Mikrokontroler ini juga mempunyai RAM sebesar 2Kbyte, 3 buah interrupt timer dan 2 buah interrupt eksternal. Di mana feature tersebut dibutuhkan dalam perancangan sistem ini. Pada perancangan juga dibutuhkan kristal (Y1) sebesar 4MHz yang berfungsi sebagai generator clock untuk mikrokontroler. Pada PIND.4 dan PIND.7 terdapat masing-masing dua buah resistor yaitu 6K8 (R3,R5) dan 3K3 (R4,R6). Fungsi dari kedua resistor ini adalah untuk membagi tegangan input yang masuk, karena tegangan input yang masuk berkisar antara 12-14V (logika high). Sehingga tegangan input tersebut perlu disesuaikan agar dapat diterima logikanya oleh mikrokontroler. Pada PIND.5 terdapat sebuah dioda (D1),
PB0 (XCK/T0) 1 PB1 (T1) 2 PB2 (AIN0/INT2) 3 PB3 (AIN1/OC0) 4 PB4 (SS) 5 PB5 (MOSI) 6 PB6 (MISO) 7 PB7 (SCK) 8 RESET 9 PD0 (RXD) 14 PD1 (TXD) 15 PD2 (INT0) 16 PD3 (INT1) 17 PD4 (OC1B) 18 PD5 (OC1A) 19 PD6 (ICP) 20 PD7 (OC2) 21 XTAL2 12 XTAL1 13 GND 11 PC0 (SCL) 22 PC1 (SDA) 23 PC2 (TCK) 24 PC3 (TMS) 25 PC4 (TDO) 26 PC5 (TDI) 27 PC6 (TOSC1) 28 PC7 (TOSC2) 29 AREF 32 AVCC 30 GND 31 PA7 (ADC7) 33 PA6 (ADC6) 34 PA5 (ADC5) 35 PA4 (ADC4) 36 PA3 (ADC3) 37 PA2 (ADC2) 38 PA1 (ADC1) 39 PA0 (ADC0) 40 VCC 10 U1 ATmega32L-8PI 1 2 Y1 XTAL 22pF C4 Cap 22pF C3 Cap GND GND GND GND Data Avail CLock User GND GND GND GND Gawat Cetek1 Cetek2 Starter Buzzer U0RX U0TX 10K R2 Res1 100nF C2 Cap RST RST 1K R1 Res1 100nF C1 Cap User GND GND 6K8 R5 Res1 3K3 R6 Res1 6K8 R3 Res1 3K3 R4 Res1 GND Mesin GND Kunci D1 Diode 1N4007 Alarm SW1 SW-PB 1K R7 Res1 GND PortA.0 PortA.1 PortA.2 PortA.3 PortC.0 PortC.1 PortC.2 PortC.4 PortC.5 PortC.6 PortC.7 PortB.0 PortB.1 PortB.3 PortB.4 PortB.5 PortD.0 PortD.1 PortD.2 PortD.3 PortD.3 PortD.4 PortD.4 PortD.5 PortD.6 PortD.7 PortD.7 Data Out A Data Out B Data Out C Data Out D VCC3.3 VCC3.3 VCC3.3
penempatan dioda pada pin ini dimaksudkan karena mikrokontroler yang pada saat itu berfungsi sebagai pin input mengeluarkan sebuah arus kecil sehingga dapat menyalakan status LED alarm. Sehingga diperlukan dioda agar arus kecil dari mikrokontroler tidak dapat berbalik arahnya menuju LED alarm melainkan mikrokontroler hanya dapat menerima tegangan dan arus dari LED alarm tersebut. PIND.6 terdapat sebuah resistor (R7) pulldown ini berfungsi agar tegangan yang masuk ke AVR antara 3.3V dan 0V karena input-an central lock tersebut hanya dapat memberikan level tegangan 3.3V dan logika “ngambang” atau tidak terhubung ke manapun.
3.1.2. Perancangan Rangkaian SIM300
Gambar 3.3 Rangkaian SIM300
Sim300 (U2) adalah sebuah modul GSM yang bekerja pada level tegangan 3,7V sampai 4,5V. Namun demikian SIM300 mempunyai spesifikasi bahwa logika high yang dapat diterima oleh SIM300 sebatas 3,3V. Pada pin VBAT terdapat dua buah kapasitor terparalel
VBat 1 VBat 2 VBat 3 VBat 4 VBat 5 VBat 6 VBat 7 VBat 8 Gnd 9 Gnd 10 Gnd 11 Gnd 12 Gnd 13 Gnd 14 VRTC 15 SIM_Presence 16 Vdd_Ext 17 SPI_Data 18 SIM_Vdd 19 SPI_Clk 20 SIM I/O 21 SPI_CS 22 SIM_CLK 23 SPI_D/C 24 SIM_Rst 25 SPI_Rst 26 KBC0 27 DCD/GPIO0 28 KBC1 29 LED/GPIO1 30 KBC2 31 GPIO5 32 KBC3 33 PwrKey 34 KBC4 35 Buzzer/GPIO8 36 KBR0 37 DTR 38 KBR1 39 RxD 40 KBR2 41 TxD 42 KBR3 43 RTS 44 KBR4 45 CTS 46 DBGRx 47 RI 48 DBGTx 49 AGnd 50 AGnd 51 ADC0 52 Mic1P 53 Spk1P 54 Mic1N 55 Spk1N 56 Mic2P 57 Spk2P 58 Mic2N 59 Spk2N 60 U2 SIM300 Vcc 6 RST 5 Clk 4 VPPI/O 3 2 Gnd 1 GND 7 PRSNC 8 U3 GND 10uF C5 GND VBAT VCC4 100uF C6 1K R8 10K R9 GND Q1 NPN GND 220nF C7 10 K R 1 0 100K R 1 1 SIM_VDD VDD_EXT SIM_VDD SIM_IO IO SIM_PRESENCE SIM_CLK SIM_RST CLK 22 R14 VPP SIM_VDD SIM_VDD VDD_EXT 22 R13 22 R12 SIM_RST SIM_CLK SIM_IO SIM_PRESENCE U0RX U0TX BT1 Battery Kancing GND D2 Diode 1N4007 LED_SIM300 PortD.0 PortD.1
yaitu 10uF (C5), dan 100uF (C6). Hal ini dimaksudkan karena ketika modul GSM SIM300 baru pertama kali dinyalakan dan mencari sinyal GSM, serta telah dituliskan di datasheet bahwa SIM300 dapat menarik arus sampai puncaknya berkisar 2A sesaat. Sehingga dengan ini peneliti menganggap perlu adanya kapasitor yang berfungsi untuk keperluan arus tinggi sesaat tersebut.
Pin LED pada SIM300 berfungsi sebagai status dari SIM 300. Berikut adalah tabel berbagai status dari modul GSM SIM300.
Tabel 3.1 Kondisi LED Sebagai Status SIM300
Kondisi LED Status
Mati SIM300 tidak menyala
64ms menyala / 800ms mati SIM300 tidak menenmukan jaringan 64ms menyala / 3000ms mati SIM300 menemukan jaringan
64ms menyala / 300ms mati Komunikasi GPRS
Pin powerkey pada SIM300 berfungsi untuk menyalakan dan mematikan modul GSM SIM300. Berikut adalah diagram waktu yang diperlukan untuk menyalakan dan mematikan SIM300
Gambar 3.5 Diagram Waktu Powerkey untuk Mematikan Sim300
Pin VRTC berfungsi untuk sebagai baterai cadangan untuk RTC (Real Time Clock) dari SIM300. Hal ini diperlukan ketika terjadi pelepasan baterai utama dari modul GSM SIM300. Jika tidak terdapat baterai cadangan maka jam dan waktu alarm yang telah ditentukan akan terhapus. SIM300 mempunyai fitur untuk melakukan charging pada baterai cadangan tersebut. Karena peneliti menggunakan baterai cadangan yang tidak rechargeable maka diperlukan adanya dioda pada pin VRTC tersebut.
3.1.3. Perancangan Rangkaian Relay
Gambar 3.6 Rangkaian Relay
1 2 3 4 5 K4 Relay 1 2 3 4 5 K1 Relay 47 R16 Res1 D3 LED 6K8 R15 Res1 1 2 3 4 5 K2 Relay 47 R18 Res1 D4 LED 6K8 R17 Res1 1 2 3 4 5 K3 Relay 47 R20 Res1 D5 LED 6K8 R19 Res1 47 R22 Res1 D6 LED 6K8 R21 Res1 VCC12 VCC12BERIKUT VCC12BERIKUT VCC12BERIKUT VCC12BERIKUT K.ALARM K.CETEK1
K.CETEK2 K.STARTER GAWATBUNYI
Gawat Cetek1 Cetek2 Starter GND IN1 1 IN2 2 IN3 3 IN4 4 IN5 5 IN6 6 IN7 7 OUT1 16 OUT3 14 OUT4 13 OUT5 12 OUT6 11 OUT7 10 OUT2 15 COM 9 GND 8 U4 ULN2003A PortB.0 PortB.1 PortB.3 PortB.4 R.Gawat R.CETEK1 R.CETEK2 R.STARTER R .GAW AT R. C E T E K 1 R .C E TEK 2 R .S T A R TER VCC12 VCC12 VCC12 VCC12 VCC12
Pin IN1-IN4 pada IC ULN2003 (U4) merupakan input-an dari mikrokontroler utama untuk mengontrol relay (K1, K2, K3, K4). Cara kerjanya adalah ketika pin IN diberi logika high. Maka pin OUT akan mengeluarkan logika low. Namun ketika logika low diberikan pada pin IN maka logika high yang akan keluar pada pin OUT. Kemudian salah satu pin koil pada relay diberikan 12V, pin koil yang lainnya yang dihubungkan ke pin OUT pada ULN2003. LED (D3, D4, D5, D6) pada rangkaian relay berfungsi sebagai penanda apakah relay sedang aktif atau tidak.
3.1.4. Perancangan Rangkaian LCD, Keypad, dan Buzzer
Gambar 3.7 Rangkaian LCD, Keypad dan Buzzer
Sistem ini mempunyai sebuah keypad yang dapat digunakan oleh pengguna sebagai input-an. Keypad akan terhubung ke sebuah dekoder keypad tipe MM74C922 (U5) yang digunakan untuk melakukan decode input-an menjadi input-an biner bagi
mikrokontroler utama sehingga mudah dibaca. 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 U5 MM74C922N Data Avail 10nF C8 Cap GND GND 100nF C9 Cap GND 1 VCC 2 VO 3 RS 4 R/W 5 EN 6 DB0 7 DB1 8 DB2 9 DB3 10 DB4 11 DB5 12 DB6 13 DB7 14 A 15 K 16 U6 LCD16x2 GND 1K R23 Res1 GND GND GND 1 1 2 2 BZ1 Buzzer O Buzzer ANODA_LCD PortA.0 PortA.1 PortA.2 PortA.3 PortC.0 PortC.1 PortC.2 PortC.4 PortC.5 PortC.6 PortC.7 PortB.5 PortD.2 Data Out A Data Out B Data Out C Data Out D VCC5 VCC5 Po rt R Y 1 Po rt R Y 2 Po rt R Y 3 Po rt R Y 4 Po rt C X 4 Po rt C X 3 GND GND Po rt C X 1 Po rt C X 2
Sistem juga mempunyai LCD karakter 16X2 (U6) yang digunakan untuk sistem dalam berinteraksi secara langsung dengan pengguna. Ketika pengguna tidak ingin menggunakan LCD maka pengguna dapat mematikan backlight dari LCD tersebut dengan mencabut
jumper pada SW-LCD (P6).
Sistem mempunyai sebuah buzzer (BZ1) yang berfungsi sebagai pengingat bagi pengguna sistem. Buzzer langsung dihubungkan dengan mikrokontroler.
3.1.5. Perancangan Rangkaian Regulator
Gambar 3.8 Rangkaian Regulator
Sistem menggunakan 3 buah regulator. Ketiga rangkaian regulator mempunyai input sebesar 12-14V. Regulator 7805 (U7) akan menjaga tegangan Vout pada 5V, regulator 7805 pada sistem difungsikan memberi tegangan untuk LCD, dan dekoder keypad MM74C922. Regulator 1117-3.3 (U8) akan menjaga tegangan Vout pada 3,3V,
GND GND 1000uF C10 Cap Pol1 1000uF C13 Cap Pol1 GND GND 470uF C11 Cap Pol1 470uF C14 Cap Pol1 GND 100nF C12 Cap GND GND 100nF C15 Cap GND IN 1 2 OUT 3 GND U7 µA7805CKC VIN 3 OUT 2 1 GND U8 1117-3.3 D7 LED D8 LED 1K R24 Res1 1K R25 Res1 GND GND 100nF C16 Cap GND 120 R26 280 R27 IN 3 1 OUT 2 ADJ U9 LM350T 1000uF C17 Cap Pol1 1000uF C18 Cap Pol1 GND GND GND VCC12 VCC12 VCC12 VCC5 VCC4 VCC3.3
regulator 1117-3.3 pada sistem difungsikan untuk memberi tegangan untuk mikrokontroler utama. Sedangkan regulator LM350 (U9) pada sistem telah didesain untuk mengeluarkan output 4,2V dan menjadi sumber tegangan bagi modul SIM300.
3.1.6. Perancangan Rangkaian Input/Output Sistem
Gambar 3.9 Rangkaian Input / Output Sistem
Pada perancangan rangkaian input / output sistem terdapat 6 buah kumpulan pin. Diantaranya P1 yang berhubungan dengan sistem starter dan status mobil. P2 merupakan pin input keypad 4X4. P3 merupakan pin input tombol rahasia. P4 merupakan pin untuk pengguna memberikan jumper agar dapat melakukan reset terhadap sistem. P5 merupakan pin output untuk indikator LED SIM300. P6 merupakan pin yang dihubungkan menggunakan jumper jika pengguna ingin menggunakan LCD karakter 16X2 agar backlight dari LCD karakter 16X2 menyala. 1 2 P6 SW-LCD 1 2 3 4 5 6 7 8 P2 KEYPAD 4X4 K.ALARM K.CETEK1 K.CETEK2 K.STARTER VCC12BERIKUT GND Mesin Alarm CLock Kunci 1 2 3 4 5 6 7 8 9 10 11 12 13 P1
Terminal Block 13pin GAWATBUNYI 1 2 P5 LED 1 2 P4 RESET 1 2 P3 USER User GND RST GND VCC4 LED _ S IM 30 0 ANODA_LCD PortD.5 PortD.6 VCC12 VCC3.3 VCC5 Po rt R Y 1 Po rt R Y 2 Po rt R Y 3 Po rt R Y 4 Po rt C X 4 Po rt C X 3 Po rt C X 1 Po rt C X 2
3.2. Perancangan Peranti Lunak
Perancangan peranti lunak sistem ini difokuskan kepada pembuatan
firmware untuk sebuah sistem keamanan dan otomatisasi pemanasan mobil dengan
SMS, diantaranya inisialisasi SFR dan diagram alir.
3.2.1. Inisialisasi SFR (Special Function Register)
Inisialisasi SFR perlu dilakukan untuk menggunakan fitur-fitur dari AVR yang digunakan pada sistem.
• SFR Berkaitan dengan Interrupt Eksternal • MCUCR
Pada register MCUCR nilai dari ISC yang digunakan adalah 1010 sehingga nilai MCUCR adalah 0x0A dalam heksadesimal. Yang bertujuan untuk mengeset mode
input-an untuk mengetahui adanya interrupt adalah logika falling edge.
• SREG
SREG merupakan register untuk mengaktifkan
interrupt, dimana dalam pengaktifannya akan digunakan
asm(sei), yang akan mengaktifkan I sehingga memiliki nilai logika satu yang berfungsi untuk mengaktifkan seluruh interrupt.
• GICR
Sistem menggunakan INT1 dan INT0 maka register GICR akan diset nilainya menjadi 0xC0 dalam heksadesimal.
• SFR Berkaitan dengan Interrupt Timer • TCCR0
TCCR0 bernilai 0x05 dalam heksadesimal karena akan digunakan pembagi untuk clock oscilator 1024.
• TCNT0
Pada sistem, timer akan menghitung naik dari 00 sampai FF untuk sampai overflow. Maka dalam pengaturannya akan diberikan nilai TCNT0 sebesar 0x00.
• TCCR1B & TCCR1A
TCCR1B bernilai 0x05 dalam heksadesimal karena akan digunakan pembagi untuk clock oscilator 1024. • TCNT1H & TCNT1L
Timer 1 memiliki nilai yang lebih besar dari timer
yang lain yaitu sebesar 2 byte. Pada sistem, timer akan menghitung naik dari 0000 sampai FFFF untuk sampai
overflow. Maka dalam pengaturannya akan diberikan nilai
• TCCR2
TCCR2 bernilai 0X07 dalam heksadesimal karena akan digunakan pembagi untuk clock oscilator 1024.
• TCNT2
Pada sistem, timer akan menghitung naik dari 00 sampai FF untuk sampai overflow. Maka dalam pengaturannya akan diberikan nilai TCNT2 sebesar 0X00.
• TIMSK
Register TIMSK merupakan register untuk menjalankan interrupt timer, dimana nilai yang akan diset adalah untuk mengaktifkan interrupt overflow adalah TOIE0, TOIE1, TOIE2 bernilai 1.
• SFR berkaitan dengan Serial • UCSRB
Pada sistem, register UCSRB akan diberi nilai sebesar 0x98 dalam heksadesimal. Karena yang akan diaktifkan adalah RXCIE berfungsi untuk mengetahui jika terjadi pengiriman secara serial, RXEN untuk mengaktifkan pin
Receive, sehingga dapat menerima input-an serial, dan
yang terakhir adalah TXEN berfungsi untuk mengirim data secara serial.
• UCSRC
Untuk menulis UCSRC diperlukan pengaktifan bit URSEL, dan untuk pengiriman data penampung sebesar 8 bit diset pada UCSZ1 dan UCSZ0 bernilai 1. Sehingga dalam pemberian bitnya diberikan nilai UCSRC sebesar 0X86 dalam heksadesimal.
• UBRRH & UBRRL
Frekuensi oscilator yang digunakan adalah
4.0000MHz, sehingga jika ingin menggunakan baudrate sebesar 9600, maka akan digunakan UBRR bernilai 25 dan ketika dikonversi menjadi heksadesimal nilainya akan menjadi 0X19.
• SFR lainnya • ACSR
Ketika fungsi analog comparator tidak digunakan maka pada bit ACD harus diberi nilai logika 1, untuk menghemat daya yang dikonsumsikan oleh AVR. Sehingga dalam pemberian logika pada ACSR akan diberi nilai 0X80 dalam heksadesimal.
3.2.2. Diagram Alir
Diagram alir sistem terbagi menjadi diagram alir sistem, diagram alir keypad, diagram alir SMS, diagram alir penyalaan mesin dengan kunci.
• Diagram Alir Sistem
Pada saat pertama sistem dinyalakan, sistem akan diinisialisasi. Setelah dilakukan inisialisasi, maka akan dicek apakah ada input dari keypad, jika tidak, akan dicek apakah ada input dari serial, jika ya maka akan dicek apakah serial tersebut dari adanya panggilan telepon, jika ya maka akan diputus koneksinya. Jika tidak maka akan dicek apakah ada input-an serial dari SMS atau tidak, jika ya maka akan dilakukan pengecekan SMS. Jika bukan dari SMS maka akan dicek apakah dari jadwal pemanasan sama dengan waktu sekarang, jika ya maka akan dilakukan pemanasan mesin, jika tidak maka akan dilakukan penghapusan data serial. Jika tidak dari input-an serial kemudiinput-an akinput-an dilakukinput-an pengecekinput-an kondisi mobil apakah terdapat penyalaan mesin dengan kunci atau tidak. Kondisi pengecekan ini akan diulang kembali secara terus menerus.
• Diagram Alir Keypad
Diagram alir berikut pada gambar 3.11 merupakan blok diagram terhadap penekanan keypad. Tombol yang harus ditekan pertama adalah D yang menyatakan enter, jika tidak maka akan diabaikan. Kemudian akan diberikan tampilan masukan
password, disini pengguna diminta untuk memasukan password. Setelah pengguna memberikan password
sebanyak 6 digit, kemudian akan dilakukan pengecekan langsung. Apakah password yang dimasukkan tersebut benar atau tidak. Kemudian jika salah maka akan diberikan tampilan bahwa password yang dimasukan tersebut salah. Jika benar akan diberikan tampilan menu berupa pilihan ganti
password atau pilihan mengatur nomor handphone
pemilik. Kemudian akan dicek apakah pengguna menekan tombol A untuk pilihan pertama atau tombol B untuk pilihan kedua dan tombol * untuk kembali ke tampilan awal.
Jika pengguna menekan A, maka akan muncul tampilan untuk mengganti password sebanyak 6 digit. Kemudian selama pemasukan password akan dicek angka atau tidak yang dimasukan. Jika tidak apakah
tombol yang ditekan C, ini untuk menghapus 1 digit
input-an yang telah diberikan pengguna. Jika tidak
maka akan dilakukan pengecekan ada penekanan bintang atau tidak, jika ya maka akan kembali, jika tidak modul akan menunggu sampai ada input-an. Jika sudah dilakukan penekanan sebanyak 6 digit maka pengguna akan diminta kembali untuk mengulang password tersebut.Jika sudah dilakukan pengisian kembali maka akan dilakukan perbandingan antara masukkan password pertama dengan masukkan
password yang kedua. Kemudian jika berbeda maka
akan diberikan output berupa tampilan yang menyatakan password gagal diubah dan kemudian kembali ke tampilan awal. Jika berhasil maka
password berhasil diubah dan kembali ke tampilan
awal.
Jika pengguna memilih input-an B maka akan muncul kembali pilihan untuk menampilkan nomor
handphone atau merubah nomor handphone. Jika
pengguna memilih input-an A maka akan diberikan tampilan berupa nomor handphone pengguna yang ada dalam memori sistem kemudian setelah beberapa saat akan kembali ke tampilan awal. Jika memilih
input-an B, maka pengguna diminta untuk
memasukan nomor handphone yang baru. Akan dilakukan pengecekan apakah diberikan masukan berupa angka. Jika tidak akan dilakukan pengecekan apakah input yang diberikan C jika ya maka akan dihapus 1 digit. Jika tidak akan dilakukan pengecekan
input-an berupa bintang atau tidak, jika tidak maka
akan menunggu input-an pengguna. Setelah selesai meng-input nomor handphone, maka pengguna harus menekan D untuk enter, kemudian tampilan akan ke tampilan awal. Lalu sistem akan memberikan konfirmasi bahwa nomor handphone telah terdaftar berupa SMS dari sistem ke nomor tersebut.
Gambar 3.11 Diagram Alir Keypad
• Diagram Alir SMS
Diagram alir pada gambar 3.12 merupakan diagram alir ketika terjadi penerimaan SMS. Disini nomor handphone dari SMS pengirim akan dicek terlebih dahulu dengan nomor handphone yang tersimpan. Jika sama, maka akan terjadi pengecekan isi SMS yaitu permintaan untuk penyalaan mobil sekarang, permintaan untuk penjadwalan, permintaan status kondisi mobil, permintaan untuk memasukkan nomor cek pulsa, permintaan untuk mematikan mesin, permintaan untuk mematikan mesin secara paksa atau permintaan menormalkan kondisi mobil. Jika tidak sama dengan nomor handphone yang tersimpan dalam sistem maka akan dilakukan pengecekan isi SMS berupa permintaan untuk mengganti nomor
handphone atau tidak. Jika bukan permintaan
mengganti nomor handphone maka SMS akan diabaikan dan dihapus. Jika ya akan dilakukan pendaftaran nomor handphone tersebut.
Jika isi SMS adalah pemanasan mobil sekarang maka mesin akan dipanaskan. Jika tidak maka akan dicek isi SMS apakah permintaan untuk menyalakan mesin dengan penjadwalan. Jika ya maka jadwal akan
diset dan dikirimkan SMS mesin akan dipanaskan pada permintaan pengguna. Jika tidak, maka akan dilakukan pengecekan permintaan untuk status mobil. Jika SMS adalah status mobil maka akan dikirimkan kondisi mobil saat ini. Jika tidak maka akan dicek apakah permintaan untuk mematikan mobil. Jika ya maka mesin akan dimatikan. Jika pesan SMS yang dikirim bukan untuk mematikan mesin, maka akan dicek apakah isi SMS untuk mengatur permintaan pengecekan pulsa pada modul. Jika ya maka akan diset nomor tersebut sesuai permintaan pengguna. Jika bukan permintaan pengesetan nomor cek pulsa maka akan dicek apakah pesan yang dikirim itu untuk mengubah status mobil menjadi kondisi gawat, jika ya maka mesin mobil tidak akan bisa distarter kembali. Jika tidak maka akan dicek apakah fungsi untuk menormalkan kondisi mobil, jika ya maka mesin mobil akan dinormalkan. Jika bukan permintaan untuk menormalkan kondisi mobil maka akan dicek apakah untuk membatalkan jadwal, jika ya maka jadwal pengesetan akan dibatalkan. Jika bukan pembatalan jadwal maka akan dikirim SMS kepada pengguna bahwa format permintaan salah.
• Diagram Alir “WARMING UP” Format SMS:
WARMING <spasi> UP
Diagram alir pada gambar 3.13 merupakan diagram alir untuk terjadinya waktu pemanasan yang diset oleh pengguna telah sama dengan waktu sekarang, atau pengguna mengirimkan permintaan untuk menyalakan mesin sekarang. Pertama akan dicek apakah mesin menyala, jika menyala maka akan dikirimkan SMS pemberitahuan kepada pengguna bahwa mesin sedang menyala. Jika tidak, maka akan dilanjutkan pengecekan apakah ada pemutaran kunci pada ignition switch, jika terdapat kunci, maka akan dikirimkan SMS ke pengguna bahwa terdapat kunci pada mobil. Jika tidak, maka akan dilakukan penyalaan mesin mobil. Kemudian akan dicek apakah mesin mobil telah menyala, jika ya maka akan dilakukan pengiriman SMS. Jika tidak maka akan dicek kembali apakah terdapat kunci, jika tidak maka mesin kembali dicoba untuk dinyalakan sebanyak 5x, jika gagal, maka akan diberikan SMS berupa mesin gagal dinyalakan
dan diharapkan pengguna mengecek kondisi mobilnya.
Jika mobil telah berhasil dinyalakan maka akan dilakukan pengecekan apakah sudah 5 menit penyalaan mesin tersebut, Jika belum maka akan dicek terdapat pemutaran kunci pada ignition atau tidak, jika ada pemutaran kunci maka mesin mobil akan dimatikan. Jika tidak ada pemutaran kunci maka akan dicek apakah pintu mobil tidak terkunci. Jika tidak terkunci maka buzzer akan berbunyi, ini berfungsi untuk mengingatkan pengguna bahwa mobil sedang dalam mode pemanasan, sehingga pengguna tidak mengendarai mobil tersebut tanpa kunci yang terpasang. Jika pintu terkunci maka buzzer tidak berbunyi. Kemudian akan dilakukan pengecekan apakah sudah 5 menit penyalaan mesin. Jika sudah maka mesin akan dimatikan dan sistem akan mengirimkan pesan kepada pengguna bahwa mobil telah dipanaskan.
Gambar 3.13 Diagram Alir “WARMING UP”
• Diagram Alir Schedule Format SMS:
o WARMING <spasi> UP <spasi> <hh:mm> <spasi> EVERYDAY
o WARMING <spasi> UP <spasi> <hh:mm> <spasi> EVERYWEEK
o WARMING <spasi> UP <spasi> <hh:mm> <spasi> EVERYWEEK <spasi> <DAY>
Pertama, akan dicek isi dari SMS apakah format penjadwalan tersebut jam benar atau tidak, jika tidak maka akan dikirimkan format SMS salah. Jika benar maka akan dilakukan pengecekan permintaan pemanasan hari ini, jika ya maka akan kembali dilakukan pengecekan waktu yang diminta pengguna telah lewat dari waktu saat ini atau belum. Jika sudah lewat maka akan dipanaskan besok. Jika belum akan dipanaskan hari ini. Jika bukan permintaan pemanasan hari ini maka akan dicek apakah pemanasan untuk setiap hari. Jika ya maka akan kembali dilakukan pengecekan terhadap apakah jam permintaan sudah lewat dari waktu saat ini atau belum. Jika sudah lewat maka akan dipanaskan besok, jika belum lewat akan dipanaskan hari ini. Jika bukan permintaan untuk
memanaskan setiap hari maka akan kembali dicek apakah permintaan setiap minggu dengan hari. Jika ya maka akan dicek apakah hari yang diminta pengguna sama dengan hari ini, jika tidak maka akan diset sesuai hari yang diminta pengguna. Jika sama maka akan kembali dilakukan pengecekan terhadap waktu, apakah waktu yang diminta pengguna sudah lewat dari waktu saat ini atau belum. Jika sudah maka akan diset untuk minggu depan. Jika belum maka akan diset untuk hari ini. Jika bukan permintaan setiap minggu dengan hari, maka akan dilakukan pengecekan apakah pengguna melakukan permintaan pemanasan setiap minggu, jika ya maka akan dicek apakah waktu yang diminta pengguna sudah lewat dari waktu saat ini atau belum. Jika sudah maka akan diset untuk minggu depan dengan waktu yang diminta pengguna. Jika belum lewat maka akan diset untuk hari ini sesuai waktu penjadwalan yang diminta oleh pengguna, dan setiap pengaturan yang telah dilakukan akan dikirimkan kembali SMS bahwa jadwal telah diset.
Ya SCHEDULE Format jam benar? Panasin hari ini? Jam belum lewat? Reply SMS : Your engine will
be warm up at <…> Balance:Rp. <…> Reply SMS : Wrong Format Balance:Rp.<...> Panasin setiap hari? Tidak Tidak Tidak Tidak Ya Ya Ya
Ambil data jam tanggal, mode,
hari
Mode = 0?
Reply SMS : Your engine will be
warm up at <…> Everyday Balance:Rp. <…> Panaskan Setiap minggu? Apakah Hari sama dengan hari ini? Jam belum lewat? Panaskan pada hari dan jam sesuai permintaan
user
Reply SMS : Your engine will be
warm up at <…> Every<...> Balance:Rp. <…>
Set jam dan tanggal hari ini
Tidak Tidak Tidak Tidak Ya Ya Ya Panaskan setiap minggu dengan adanya hari ? Hari = Hari permintaan user Ya
Hari = Hari ini
Ya Ya Tidak Mode = 0 Mode = 1 Mode = 2 Mode = 2
Tanggal = Tanggal Hari Ini Tanggal = Tanggal Besok
Return
Gambar 3.14 Diagram Alir Schedule
• Diagram Alir “STATUS” Format SMS:
STATUS
Diagram alir pada gambar 3.15 merupakan diagram alir ketika pengguna meminta status kondisi mobil berupa kondisi mesin, kondisi
alarm, kondisi central lock, kondisi mode mobil, dan jadwal pemanasan yang diatur oleh pengguna. Semua ini akan dikirimkan sebagai pemberitahuan kepada pengguna.
• Diagram Alir “ENGINE OFF”
Format SMS:
ENGINE <spasi> OFF
Gambar 3.16 Diagram Alir “ENGINE OFF”
Pertama sistem akan cek apakah terdapat kunci pada mobil, jika ya maka akan dikirimkan SMS bahwa mesin tersebut menyala dan harus menggunakan SMS X untuk mematikannya. Jika tidak maka akan dilakukan pengecekan mesin
menyala atau tidak. Jika tidak maka akan diberitahukan kepada pengguna bahwa mesin mobil sudah mati. Jika ya maka mesin mobil akan dimatikan dan dilakukan pengiriman SMS bahwa mesin mobil telah dimatikan.
• Diagram Alir “BALANCE CHECK” Format SMS:
BALANCE <spasi> CHECK
Diagram alir di atas merupakan diagram alir untuk pendaftaran nomor cek pulsa, dimana pengguna mengirimkan nomor cek pulsa dari kartu seluler yang digunakan pada sistem, Setelah pendaftaran nomor cek pulsa ini maka pengguna dapat melihat berapa sisa pulsa dari kartu seluler yang terdapat pada sistem tersebut. Setelah terdaftar maka pengguna akan mendapat balasan SMS berupa nomor cek pulsa yang didaftar dan sisa pulsanya.
• Diagram Alir “X” Format SMS:
X
Diagram alir pada gambar 3.18 merupakan diagram alir SMS yang digunakan dalam kondisi pengguna merasa mobil dalam keadaan berbahaya. Sehingga mobil tidak dapat di starter baik dengan kunci atau dengan SMS. Kemudian sistem akan mengirimkan SMS kepada pengguna, bahwa mobil sedang dalam kondisi berbahaya, dan tidak dapat dinyalakan.
Gambar 3.18 Diagram Alir “X”
• Diagram Alir “NORMALIZE” Format SMS:
NORMALIZE
Diagram alir di atas merupakan diagram alir dimana pada kondisi ini, mobil akan dikembalikan ke mode normal, dimana mobil berada dalam kondisi dapat menyala kembali, ketika diterima SMS untuk menormalkan maka akan dicek
apakah mobil dalam kondisi normal. Jika ya, maka akan diberikan SMS bahwa mobil dalam kondisi normal. Jika tidak maka mode mobil akan dirubah menjadi mode normal dan sistem mengirim SMS balasan bahwa mobil telah dinormalkan.
Gambar 3.19 Diagram Alir “NORMALIZE”
• Diagram Alir “UNSCHEDULE” Format SMS:
Gambar 3.20 Diagram Alir “UNSCHEDULE”
Diagram alir di atas merupakan diagram alir ketika pengguna mengirim SMS berisi
UNSCHEDULE, berfungsi untuk membatalkan
jadwal pemanasan mesin yang telah didaftarkan oleh pengguna. Setelah mengirim SMS ini pengguna akan menerima balasan berupa jadwal pemanasan yang dipesan pengguna telah dibatalkan.
• Diagram Alir “REGISTER” Format SMS:
REGISTER
Gambar 3.21 Diagram Alir “REGISTER”
Setelah dilakukan pengecekan nomor
handphone dan tidak sama maka akan dilakukan
pengecekan isi SMS untuk mendaftarkan nomor
handphone atau tidak. Jika ya maka akan
password yang disimpan sama dengan password
pada isi SMS, jika sama maka akan dilakukan pendaftaran nomor tersebut. Jika tidak maka SMS tersebut akan dihapus.
• Diagram Alir Penyalaan Mesin dengan Kunci Jika ada penyalaan mesin tiba-tiba maka akan diterangkan seperti diagram alir di atas, di mana ketika mesin menyala maka buzzer akan berbunyi yang berfungsi untuk mengingatkan pengguna untuk menekan tombol rahasia, sehingga sistem tidak akan mengirimkan SMS kepada pengguna dan buzzer akan dimatikan oleh sistem. Jika pengguna tidak menekan tombol tersebut selama 30 detik maka sistem akan memberikan pesan kepada pengguna melalui SMS, sebagai pemberitahuan ada penyalaan mesin. Ini berfungsi sebagai antisipasi terhadap adanya penyalaan mesin tiba-tiba dari orang yang tidak seharusnya. Jika penyalaan mesin langsung dimatikan maka sistem akan langsung mengirim SMS sebagai pemberitahuan kepada pengguna.
3.3. Rancang Bangun
Pada gambar rancang bangun sistem secara keseluruhan berukuran 18,2cm X 17,8cm X 5,4cm. Dari gambar rancang bangun sistem di atas terlihat beberapa komponen utama yaitu Mikrokontroler, SIM300, relay, regulator tegangan, LCD, LED, SIMCard Holder, buzzer, baterai kancing, terminal blok, keypad, LED(eksternal), push button(eksternal), kabel beserta konektor (eksternal).
Bagian dari sistem yang terhubung ke mobil adalah bagian kabel dan konektor, dimana pada bagian tersebut terdapat kabel untuk sumber tegangan sistem yang diambil dari akumulator, serta masuknya beberapa status mobil yang dibutuhkan oleh sistem dan kabel yang berfungsi untuk menyalakan mobil.