1
Adong Purba - 5107100528
Makalah Seminar Tugas Akhir Periode Januari 2010
PENGEMBANGAN SISTEM PENJADUALAN HIDUP DAN MATI KOMPUTER SERVER MENGGUNAKAN MOBILE BERBASIS
MICROCONTROLLER
Adong Purba – Ir.Muchammad Husni, M. Kom Jurusan Teknik Informatika, Fakultas Teknologi Informasi, Institut Teknologi Sepuluh Nopember
Surabaya, Email: [email protected]
Abstrak Seiring dengan kemajuan jaman, saat ini sangat dibutuhkan teknologi seperti komputer, mobile
yang dapat bekerja tanpa perlunya campur tangan manusia secara berlebih. Efisiensi sumber daya manusia telah menjadi perhitungan tersendiri di segala aspek kehidupan. Beranjak dari kebutuhan tersebut maka dikembangkan sebuah komputer server yang terotomatisasi .
Sebuah komputer server memerlukan sebuah sistem dimana server tersebut bisa menghidupkan dan mematikan dirinya sendiri secara otomatis dan dengan kontrol jarak jauh, dengan demikian server tersebut seolah bisa mengatur dirinya sendiri.
Pengembangan sistem penjadualan ini menggunakan hardware tambahan di luar komputer yaitu mobile (handphone), modem dan rangkaian digital yang didalam nya terdapat microcontroller sebagai prosesor untuk menghidupkan komputer sesuai jadual yang telah di tentukan. Sistem ini memungkinkan pengguna untuk menghidupkan dan mematikan komputer pada waktu yang diinginkan. Pengaplikasian sistem penjadualan ini digunakan untuk server yang menggunakan sistem split sehingga salah satu dari dua server dapat dimatikan atau tidak di fungsikan untuk mengurangi resiko kerusakan komputer server.
Kata Kunci : transportasi, minlp, boarding strategy.
1. PENDAHULUAN
Perkembangan teknologi informasi yang berkembang saat ini terus membuka berbagai alternatif baru dalam pemanfaatan teknologi yang lebih efisien dan cepat. Sebagaimana teknologi pada komputer dan handphone, efisiensi pengoperasian komputer yang bekerja secara otomatis tanpa adanya campur tangan manusia menjadi suatu poin penting dalam pengembangan tersebut. Kecepatan dan praktis adalah hal yang diutamakan pada era saat ini.
Beberapa rancangan sistem dari teknologi khususnya komputer yang ada saat ini memerlukan maintenance (perawatan) secara berkala sehingga masih belum bisa sepenuhnya memberikan efisiensi yang maksimal. Rancangan sistem yang terotomatisasi akan sangat meningkatkan efisiensi dalam berbagai hal. waktu adalah sesuatu yang sangat penting untuk di efisiensikan sehingga untuk menjalankan sebuah sistem tidak memerlukan waktu yang panjang.
Sebuah komputer yang berfungsi sebagai server memiliki tugas dan tanggung jawab untuk sebuah jaringan komputer. Server komputer dewasa ini dituntut untuk memiliki tingkat efisiensi yang tinggi. Biaya listrik, waktu pemakaian, dan sebagainya merupakan sesuatu yang harus dibatasi untuk meningkatkan tingkat
efisiensi dari sistem bisnis secara keseluruhan. Penghematan yang dilakukan tentunya adalah dengan membatasi pemakaian pada jam tertentu. Komputer server dituntut untuk bisa hidup dan mati secara otomatis tanpa adanya seorang administrator yang setiap hari menghidupkan dan mematikan komputer. Hal tersebut juga merupakan suatu peningkatan efisiensi.
Melihat hal tersebut di atas, maka penulis mencoba untuk membuat suatu sistem aplikasi dimana komputer dapat hidup dan mati secara otomatis dan manual yang nantinya dapat digunakan di seluruh komputer di ITS sehingga bisa meningkatkan efisiensi di segala bidang.
2. DELPHI 7 Delphi 7 Bahasa pemrograman berbasis Windows yang menyediakan fasilitas pembuatan aplikasi visual. Memiliki beberapa Komponen & Fungsi Komponen : SpeedBar, Component Pallet, Jendela Form dll. Mematikan Komputer pada Delphi Fungsi : - EWX_RESTART merestart
-EWX_SHUTDOWN shutdown dengan peringatan
- EWX_LOGOFF untuk logoff -EWX_FORCE shutdown tanpa
peringatan.
Kata kunci : Penjadualan Hidup dan Mati Komputer, Microcontroller, Sistem Digital, Handphone, Modem, Firmware.
2
Adong Purba - 5107100528
Makalah Seminar Tugas Akhir Periode Januari 2010
Aplikasi ini akan di buat pada suatu form di delphi yang akan di Tambahkan sebuah komponen TDateTimePicker pada formUtama yang berfungsi sebagai media untuk pengguna melakukan pengaturan waktu.
Jadual waktu untuk mati nya komputer akan di atur oleh pengguna pada form, untuk mengaktif dan non aktifkan akan di butuhkan sebuah Tbutton. Keadaan normal dari program ini adalah non aktif jadi Button ini akan di isi dengan caption “Aktifkan Jadual Mati”. Jika button ini di klik oleh pengguna maka aplikasi akan berjalan dan caption akan berubah menjadi “Non Aktifkan Jadual Mati”.
3. MICROCONTROLLER
Microcontroller adalah single chip computer yang memiliki kemampuan untuk diprogram dan digunakan untuk tugas-tugas yang berorientasi kontrol.Karena kemampuannya yang tinggi, bentuknya yang kecil, konsumsi dayanya yang rendah dan harga yang murah maka microcontroller begitu banyak digunakan di dunia. Microcontroller digunakan mulai dari bidang elektronik, otomotif, industri, telekomunikasi, medis, sampai dengan pengendali robot serta persenjataan militer.
AVR merupakan seri microcontroller CMOS 8-bit buatan Atmel, berbasis arsitektur RISC (Reduced Instruction Set Computer). Hampir semua instruksi dieksekusi dalam satu siklus clock. AVR mempunyai 32 register general-purpose, timer/counter fleksibel dengan mode compare, interrupt internal dan eksternal, serial UART, programmable Watchdog Timer dan mode power saving. Beberapa diantaranya mempunyai ADC dan PWM internal. AVR juga mempunyai In-System Programmable Flash on-chip yang mengijinkan memori program untuk diprogram ulang dalam sistem menggunakan hubungan serial SPI. Chip AVR yang digunakan untuk Tugas Akhir ini adalah ATmega8535.
ATmega8535 adalah microcontroller CMOS 8-bit daya rendah berbasis arsitektur RISC yang ditingkatkan. Kebanyakan instruksi dikerjakan pada satu siklus clock, ATmega8535 mempunyai throughput mendekati 1 MIPS per MHz membuat disainer sistem untuk mengoptimasi komsumsi daya versus kecepatan proses. Berikut adalah feature-feature microcontroller seri ATmega8535.
- Memori Flash 8 Kbytes untuk program
- Memori EEPROM 512 bytes untuk data
- Memori SRAM 512 bytes untuk data
- Maksimal 32 pin I/O
- 20 interrupt
- Satu 16-bit timer dan dua 8-bit timer
- 8 channel ADC 10 bit
- Komunikasi serial melalui SPI dan USART
- Analog komparator
- 4 I/O PWM
Pin AVR Pada AVR ATmega8535 terdapat pin-pin
dengan kemasan 40-pin DIP (dual in-line package). Penomoran dan fungsi dari pin-pin tersebut akan dijelaskan dengan gambar dibawah ini
Gambar 2.6 Microcontroller AVR.
Gambar 2.7 Pin ATmega8535 kemasan 40-pin
3
Adong Purba - 5107100528
Makalah Seminar Tugas Akhir Periode Januari 2010
Berikut adalah penjelasan dari masing-masing pengelompokan pada pin.
a. Port A
Merupakan 8-bit directional port I/O. Setiap pinnya dapat menyediakan internal pull-up resistor (dapat diatur per bit). Output buffer Port A dapat memberi arus 20 mA dan dapat mengendalikan display LED secara langsung. Data Direction Register port A (DDRA) harus disetting terlebih dahulu sebelum Port A digunakan. Bit-bit DDRA diisi 0 jika ingin memfungsikan pin-pin port A yang bersesuaian sebagai input atau diisi 1 jika sebagai output. Selain itu, kedelapan pin port A juga digunakan untuk masukan sinyal analog bagi A/D converter. b. Port B
Merupakan 8-bit directional port I/O. Setiap pinnya dapat menyediakan internal pull-up resistor (dapat diatur per bit). Output buffer Port B dapat memberi arus 20 mA dan dapat mengendalikan display LED secara langsung. Data Direction Register port B (DDRB) harus disetting terlebih dahulu sebelum Port B digunakan. Bit-bit DDRB diisi 0 jika ingin memfungsikan pin-pin port B yang bersesuaian sebagai input, atau diisi 1 jika sebagai output. Pin-pin port B juga memiliki untuk fungsi-fungsi alternatif khusus seperti yang dapat dilihat dalam tabel berikut.
Tabel 2.1 Fungsi khusus port B pada AVR
Port Pin
Fungsi Khusus
PB0 T0 = timer/counter 0 external counter input
PB1 T1 = timer/counter 0 external counter input
PB2 AIN0 = analog comparator positive input
PB3 AIN1 = analog comparator negative input
PB4 SS = SPI slave select input
PB5 MOSI = SPI bus master output / slave input
PB6 MISO = SPI bus master input / slave output
PB7 SCK = SPI bus serial clock
c. Port C
Merupakan 8-bit directional port I/O. Setiap pinnya dapat menyediakan internal pull-up resistor (dapat diatur per bit). Output buffer Port C dapat memberi arus 20 mA dan dapat mengendalikan display LED secara langsung. Data Direction Register port C (DDRC) harus disetting terlebih dahulu sebelum Port C digunakan. Bit-bit DDRC diisi 0 jika ingin memfungsikan pin-pin port C yang bersesuaian sebagai input, atau diisi 1 jika sebagai output. Selain itu, dua pin port C (PC6 dan PC7) juga memiliki fungsi alternatif sebagai oscillator untuk timer/counter 2. d. Port D
Merupakan 8-bit directional port I/O. Setiap pinnya dapat menyediakan internal pull-up resistor (dapat diatur per bit). Output buffer Port D dapat memberi arus 20 mA dan dapat mengendalikan display LED secara langsung. Data Direction Register port D (DDRD) harus disetting terlebih dahulu sebelum Port D digunakan. Bit-bit DDRD diisi 0 jika ingin memfungsikan pin-pin port D yang bersesuaian sebagai input atau diisi 1 jika sebagai output. Selain itu, pin-pin port D juga memiliki untuk fungsi-fungsi alternatif khusus seperti yang dapat dilihat dalam tabel berikut.
Tabel 2.2 Fungsi khusus port D pada AVR
Port Pin
Fungsi Khusus
PD0 RDX (UART input line)
PD1 TDX (UART output line)
4
Adong Purba - 5107100528
Makalah Seminar Tugas Akhir Periode Januari 2010
PD2 INT0 ( external interrupt 0 input )
PD3 INT1 ( external interrupt 1 input )
PD4 OC1B (Timer/Counter1 output compareB match output)
PD5 OC1A (Timer/Counter1 output compareA match output)
PD6 ICP (Timer/Counter1 input capture pin)
PD7 OC2 (Timer/Counter2 output compare match output)
e. RESET
RST pada pin 9 merupakan reset dari AVR. Jika pada pin ini diberi masukan low selama minimal 2 machine cycle maka system akan di-reset. f. XTAL1
XTAL1 adalah masukan ke inverting oscillator amplifier dan input ke internal clock operating circuit. g. XTAL2
XTAL2 adalah output dari inverting oscillator amplifier. h. AVcc
Avcc adalah kaki masukan tegangan bagi A/D Converter. Kaki ini harus secara eksternal terhubung ke Vcc melalui lowpass filter. i. AREF
AREF adalah kaki masukan referensi bagi A/D Converter. Untuk operasionalisasi ADC, suatu level tegangan antara AGND dan Avcc harus dibeikan ke kaki ini. j. AGND
AGND adalah kaki untuk analog ground. Hubungkan kaki ini ke GND, kecuali jika board memiliki anlaog ground yang terpisah.
Paralel CPU dan Microcontroller AVR Sistem Penjadualan ini menggunakan
sistem paralelisme antara CPU dan Microcontroller (AVR). Guna memaksimalkan performa dan paralelisme, AVR menggunakan arsitektur Harvard (dengan memori dan bus terpisah untuk program dan data).
Arsitektur CPU dari AVR ditunjukan oleh gambar di bawah ini. Instruksi pada memori program dieksekusi dengan pipelining single level. Selagi sebuah instruksi sedang dikerjakan, instruksi berikutnya diambil dari memori program. Program akan dibuat menggunakan tool CodeVisionAVR yang merupakan cross compiler.
Gambar 2.8 Arsitektur CPU dari AVR
Rangkaian Digital Microcontroller yang berfungsi sebagai
processor akan memerintahkan rangkaian digital pada perangkat keras. Di dalam rangkaian digital terdapat banyak IC, Conector dan beberapa peralatan elektronik yang tergabung dalam sebuah rangkaian.
Konektor Rangkaian Digital Pada sistem penjadualan ini digunakan tiga
jenis konektor yang akan menghubungkan keseluruhan rangkaian pada hardware. Adapun konektor tersebut adalah kapasitor, resistor dan transistor.
Mak
Tabel
kapasenergmengumuataelektrperpinKemajuga adalahpengu(switcatau berfunberdamemuakurat
3. S
RTC
moduPada mendmenghBerikumodu
DS13
1. Mtandetah
2. Me
kalah Semina
l 2.3 Jenis konNama kone
Kapasitor
Resistor
Transistor
sitor adalah sui di dalam umpulkan kean listrik. Reronik yang mndahan eleampuan resistresistensi atah alat semikouat, sebagai siching), stabilisebagai fung
ngsi semacsarkan arus inungkinkan pet dari sirkuit s
SERIAL RTC
Serial RTC
ul penghitungsistem ini
efinisikan whidupkan komut ini akan d
ul tersebut :
Komponen 02 dengan fitu
enghitung wanggal, bulanengan kompehun 2100.
emory / RAM
ar Tugas Akh
nektor pada raektor G
uatu alat yang medan listr
etidakseimbanesistor adalahmemberikan hektron (mtor untuk meau hambatan onduktor yangirkuit pemutusisasi tegangangsi lainnya.
cam kran nputnya atau tengaliran listsumber listrikn
C
(Real Time Cg waktu dan Serial RTC waktu yang
mputer melaludijelaskan fitu
utama Serur-fitur sebag
aktu mulai d, tahun, harensasi tahun
sebesar 31 by
hir Periode J
angkaian digitGambar
dapat menyimrik, dengan ngan internal suatu komp
hambatan terhmuatan negenghambat dis
listrik. Transg dipakai sebs dan penyamn, modulasi s
Transistor dlistrik, dim
tegangan inputrik yang sanya.
Clock) meruppenyimpan digunakan u
g tepat uui Microcontrour-fitur dari k
rial RTC ai berikut :
detik, menit, ri dalam mi
kabisat sa
yte.
Ad
Januari 2010
tal
mpan cara dari
ponen hadap gatif). sebut sistor bagai
mbung inyal dapat mana
utnya, angat
pakan data.
untuk untuk oller.
kedua
ialah
jam, nggu
ampai
3. Ak
4. Sb
5. KbBa
Kom
dikensesuatersememkarakkeka‘S’ umengNandRangkeluaRS 2
untuvolt +15 kond‘1’, PC teganmengpadadari Nandseriagamb
dong Purba -
kses single by
Support battebackup supply
Kemampuan Tbattery jenis NBattery Backuagar data pada
munikasi seriaKomunikas
ndalikan makai dengan m
ebut maka mbedakannya. kter ‘F’ untuk
anan dan kekiuntuk berhentggunakan IC d, resistor gkaian ini bearan tegangan
232 menjadi le
Tegangan k logic ‘1’ ddan logic ‘0volt. Pada lev
disi ‘0’ volt sategangannya
tegangannyangan TTL kggunakan ger
a microcontromicrocontrol
d kemudian al PC. Untuk bar dibawah i
5107100528
yte atau burst.
ery Lithium y.
Trickle ChargNi-Cd. Modul up jenis Lithia DS1302 tetap
al si serial terdap
ka agar data yotor mana ya
diperlukan Protocol yang
k maju, ’R’ atiri, ‘P’ untuk ti Rangkaian p
7400 yang m4K7Ω dan
erfungsi untun yang keluar evel tegangan
biner pada pdidefinisikan -0’ didefinisikavel TTL yang ampai 0,4 vol2,4 volt samp
a diturunkankemudian dirbang Nand doller. Demikiller di invertediterima olehlebih jelasnyani:
Gambar 2.9 P
5 8
atau Ni-Cd
ge untuk penini telah dilen
ium untuk mep 'up to date'.
pat dua motoryang dikirimkaang diberikan
protocol g digunakan atau ‘L’ untuk berputar 180
pengubah tegmerupakan ge
n resistor 2uk mengubah
dari PC yaituTTL.
pada level RS-3 volt sampan +3 volt sdidefinisikan t dan untuk k
mpai 5 volt. Tn menjadi i inverter d
dan diterima pian sebaliknyer dengan geh pin 2 padaa dapat dilihat
Port Serial
untuk
ngisian ngkapi enjaga
r yang an PC n data untuk
adalah belok
0º ,dan gangan erbang 2K2Ω.
level u level
S 232 ai -15 ampai untuk
kondisi x dari
level dengan pin Rx ya Tx erbang a port t pada
6
Adong Purba - 5107100528
Makalah Seminar Tugas Akhir Periode Januari 2010
4.Firmware Microcontroller
Oprasi microcontroller yang memerintahkan seluruh rangkaian digital akan diatur oleh firmware. Code dari firmware tersebut berada di dalam microcontroller menggunakan bahasa pemrograman Ansi-C. Dalam Ansi-C operasi input dan output dilakukan dengan menggunakan fungsi-fungsi header file stdio.h misalkan : printf, scanf, putc, dsb.Untuk input dan output ke file digunakan fread, fwrite, fputc, dsb.
#include <stdio.h>
void main()
int x;
printf (“Masukkan sebuah bilangan:\n”);
scanf (“%d”, &x);
printf (“Bilangan yang dimasukkan adalah %d\n”,x);
Gambar 2.10 Contoh code standart ANSI C
Bahasa Ansi-C luas digunakan untuk pemrograman berbagai jenis perangkat, termasuk microcontroller. Bahasa ini sudah merupakan high level language, dimana memudahkan programmer menuangkan algoritmanya. Berikut penjelasan dasar teori dalam pembangunan sistem penjadualan ini dimana nantinya Ansi-C pada AVR ini memiliki fugsi dan tanggung jawab untuk menghidupkan komputer
Struktur penulisan program Dalam bahasa pemrograman Ansi-C
terdapat sebuah struktur standart untuk penulisan program. Program di bawah ini menunjukan struktur standart sebagai dasar teori untuk membuat program menghidupkan komputer pada microcontroller.
#include < [library1.h] > // Opsional
#include < [library2.h] > // Opsional
#define [nama1] [nilai] ; // Opsional
#define [nama2] [nilai] ; // Opsional
[global variables] // Opsional
[functions] // Opsional
void main(void) // Program Utama
[Deklarasi local variable/constant]
[Isi Program Utama]
Gambar 2.11 Struktur penulisan program
• Variabel adalah memori penyimpanan data yang nilainya dapat diubah-ubah. Penulisan : [tipe data] [nama] = [nilai] ;
• Konstanta adalah memori penyimpanan data yang nilainya tidak dapat diubah. Penulisan : const [nama] = [nilai] ;
• Tambahan Global variabel/konstanta yang dapat diakses di seluruh bagian program. Local variabel/konstanta yang hanya dapat diakses oleh fungsi tempat dideklarasikannya.
Function
Function adalah bagian program yang dapat dipanggil oleh program utama. Penulisan :
7
Adong Purba - 5107100528
Makalah Seminar Tugas Akhir Periode Januari 2010
[tipe data hasil] [nama function]([tipe data input 1],[tipe data input 2]) [statement] ;
Gambar 2.12 Pemanggilan fungsi
Conditional statement dan looping
if else : digunakan untuk penyeleksian kondisi
if ( [persyaratan] ) [statement1]; [statement2]; else [statement3]; [statement4];
Gambar 2.13 Kondisional 1
for : digunakan untuk looping dengan jumlah yang sudah diketahui
for ( [nilai awal] ; [persyaratan] ; [operasi nilai] ) [statement1]; [statement2];
Gambar 2.14 Kondisional 2
while : digunakan untuk looping jika dan salama memenuhi syarat tertentu
while ( [persyaratan] ) [statement1]; [statement2];
Gambar 2.15 Kondisional 3
do while : digunakan untuk looping jika dan salama memenuhi syarat tertentu, namun min 1 kali
do [statement1]; [statement2]; while ( [persyaratan] )
Gambar 2.16 Kondisional 4
switch case : digunakan untuk seleksi dengan banyak kondisi
switch ( [nama variabel] ) case [nilai1]: [statement]; break; case [nilai2]: [statement]; break;
Gambar 2.17 Kondisional 5
Operasi logika dan biner
• Logika AND :&& NOT ! OR ||
• Biner AND & OR | XOR ^ Shift right >> Shift left << Komplemen
8
Adong Purba - 5107100528
Makalah Seminar Tugas Akhir Periode Januari 2010
Deskripsi Umum Perangkat Lunak
Sistem penjadualan hidup dan mati komputer ini dirancang untuk menjadualkan waktu hidup dan mati komputer sesuai dengan kebutuhan sehingga komputer dapat hidup dan mati secara otomatis. Aplikasi ini akan berjalan setelah pengguna melakukan penjadualan sekaligus mengaktifkan aplikasi ini.
Pengaturan waktu hidup dan mati pada sistem ini menggunakan sistem harian dan mingguan. Dalam sistem harian pengguna memiliki kesempatan untuk menghidupkan dan mematikan komputer maksimal masing masing satu kali dalam satu hari.Perancangan sistem harian dirancang sesuai dengan fungsi server yang tidak memungkinkan untuk mati dan hidup lebih dari satu kali dalam satu hari(24 jam).
Sistem penjadualan mingguan memungkinkan pengguna untuk menghidupkan dan mematikan komputer pada hari yang berbeda. Server yang di jadualkan mati pada hari senin dapat hidup secara otomatis pada hari sabtu atau hari hari lainnya. Pengaplikasian sistem penjadualan mingguan ini digunakan untuk server yang menggunakan sistem split sehingga salah satu dari dua server dapat dimatikan atau tidak di fungsikan untuk mengurangi resiko kerusakan server
Rancangan Aplikasi Secara Umum
Sistem penjadualan ini secara umum dapat dibagi menjadi dua rancangan sistem yang di kolaborasikan sehingga terbentuk sistem penjadualan hidup dan mati komputer ini. Adapun rancangan tersebut adalah rancangan aplikasi desktop dan rancangan rangkaian digital yang terdapat Microcontroller di dalam nya.
Rancangan pertama adalah aplikasi desktop. Rancangan ini memiliki tanggung jawab mematikan komputer dengan spesifikasi menggunakan komponen pada Delphi 7. Rancangan ini juga memberikan media kepada pengguna untuk melakukan penjadualan hidup dan mati nya komputer. Peran dan fungsi lain dari aplikasi ini adalah mengirimkan data waktu hidup komputer berupa data digital ke Microcontroller sehingga terjadi transmisi data antara kedua rancangan.
Rancangan ke dua adalah rangkaian digital yang terdapat microcontroller di dalamnya. Rangkaian ini memiliki fungsi umum adalah untuk menghidupkan komputer. Microcontroller sebagai instruktur dari keseluruhan rangkaian digital akan menjalankan fungsi untuk menghidupkan komputer jika waktu yang diatur oleh pengguna telah sama dengan waktu saat ini. Rangkaian ini akan melakukan komunikasi serial melalui port serial yang tersedia pada komputer dan microcontroller.
( Manual )
( Configurasi Penjadualan )
Gambar 3.1 Rancangan Hardware
Arsitektur dari perangkat lunak secara umum akan di jelaskan pada gambar berikut ini.
Gambar 3.2 Rancangan umum Software
9
Adong Purba - 5107100528
Makalah Seminar Tugas Akhir Periode Januari 2010
Sistem penjadualan hidup dan mati komputer ini memiliki fitur sebagai berikut :
- Keamanan Penggunaan
Sistem ini dilengkapi dengan form login dengan tujuan agar hanya pengguna yang memiliki hak dan bertangguna jawab yang bisa melakukan penjadualan ini.
- Kontrol Jarak Jauh
Apikasi ini dapat digunakan hanya jika dibutuhkan saja. Yaitu pada saat situasi kondisi yang tidak di inginkan (misal nya pada saat pemadaman listrik secara tiba-tiba oleh PLN, ada pihak tertentu yang mau menggunakan komputer server tanpa seijin admin, mencegah craker yang masuk ke web server, dll ) aplikasi ini dapat dilakukan dengan mematikan dan menghidupkan komputer server dari jarak jauh menggunakan Handphone.
- Penjadualan Harian
Managemen waktu hidup dan mati pada penjadualan harian masing-masing hanya biasa dilakukan satu kali. Sehingga pada hari yang sama saat komputer di jadualkan untuk mati lalu kemudian hidup lagi maka pada keadaan setelah itu komputer tidak dapat untuk mati lagi pada hari itu.
- Penjadualan Mingguan
Jarak waktu hidup dan mati komputer antara 1 menit sampai 168 jam (7x24jam) sehingga memungkinkan pengguna untuk menjadualkan waktu hidup dan mati tidak pada hari yang sama.
Perancangan Database Aplikasi
Terdapat dua jenis entitas pada database sistem penjadualan ini yaitu jadual dan login.Berikut adalah penjelasan dari masing-masing atribut tiap entitas terdapat pada tabel berikut.
Tabel 3.1 Database Login.
Name Type Size Record
User String 30 1
Password String 30 1
Tabel 3.2 Database Penjadualan
Name Type Size Record Data
Senin String 8 2 (on,off)
Selasa String 8 2 (on,off)
Rabu String 8 2 (on,off)
Kamis String 8 2 (on,off)
Jumat String 8 2 (on,off)
Sabtu String 8 2 (on,off)
Minggu String 8 2 (on,off)
Perancangan Arsitektur Aplikasi
Sistem penjadualan ini menggunakan Microcontroller yang tergabung dalam hardware eksternal di luar komputer. Aplikasi desktop terdapat di dalam komputer yang memiliki fungsi mengatur penjadualan.
Gambar 3.3 Use Case Diagram Sistem
Penjadualan
Menghidupkan Komputer
(from Use Case View)
Micro Controller
(from Use Case View)
Administrator
(from Use Case View)
Mematikan Komputer
(from Use Case View)
Aplikasi
(from Use Case View)
Penjadualan
(from Use Case View)
10
Adong Purba - 5107100528
Makalah Seminar Tugas Akhir Periode Januari 2010
Sequence diagram pada use case penjadualan
Sequence diagram pada use case penjadualan ini menjelaskan administrator sebagai aktor akan menjalankan aplikasi dengan memanggil Delphi complile unit lalu melakukan proses login sebelum bisa melakukan penjadualan. Setelah menginputkan user name dan password maka sistem akan melakukan verifikasi, jika user name dan password yang di inputkan salah maka akan kembali ke form login. Form penjadualan hanya bisa diakses jika username dan password yang di inputkan oleh aktor (administrator) benar. Proses run aplikasi dan Microcontroller akan berjalan setelah penjadualan telah selesai di lakukan. Proses ini akan sekaligus menyimpan data yang di inputkan aktor ke Embeded Sql.
Gambar 3.4. Sequence Diagram Penjadualan
: DCU : Form Login : Verifikasi : Form Penjadualan : Controling Micro Controller & Aplikasi
: Administrator
User Name & Password Not Valid
User Name & Password Valid
Run Aplikasi & Micro Controller
Runing Form
Verifikasi
Save
Menjalankan Aplikasi
11
Adong Purba - 5107100528
Makalah Seminar Tugas Akhir Periode Januari 2010
Sequence diagram pada use casemenghidupkankomputer
Sequence diagram pada use case Menghidupkan Komputer ini menjelaskan Aktor yang terkait adalah Microcontroller. Firmware akan menerima data digital dari Microcontroller diamana salah satu data nya adalah waktu untuk jadual hidupnya komputer. Firmware selalu melakukan komparasi waktu dengan RTC (Real Time Clock) dimana firmware memiliki waktu jadual untuk hidupnya komputer dan RTC memiliki waktu pada saat ini. Jika waktu diantara firmware dan RTC telah sama maka rangkaian digital akan menjalankan relay sehingga komputer bisa hidup dengan sendirinya.
Gambar 3.5 Sequence Diagram Mematikan Komputer
: Komparasi Waktu : Time Windows : Run Fungtion : Aplikasi
Compare
Shut Down
Menunjukan jadual waktu mati
12
Adong Purba - 5107100528
Makalah Seminar Tugas Akhir Periode Januari 2010
Sequence diagram pada use case mematikankomputer
Sequence diagram pada use case Mematikan Komputer ini menjelaskan aplikasi sebagai aktor melakukan komparasi time windows dengan waktu jadual komputer untuk mati. Fungsi untuk mematikan komputer akan dijalankan oleh aplikasi jika diantara kedua waktu sudah sama.
Gambar 3.6 Sequence Diagram Menghidupkan Komputer
Diagram kelas keseluruhan
Kelas diagram berikut manjelaskan keseluruhan dari sistem diawali dengan DCUsebagai pemanggil form login dilanjutkan dengan proses verifikasi yang mana jika verifikasi sukses maka akan menuju ke form penjadualan. Pada form penjadualan merupakan media untuk pengguna melakukan pengaturan jadual untuk hidup dan matinya komputer. Form penjadualan akan melakukan proses menjalankan aplikasi dan Microcontroller setelah pengguna telah selesai melakukan proses pengaturan penjadualan. Form penjadulan juga melakukan penyimpanan data di Embeded Sql setelah pengguna selesai melakukan pengaturan penjadualan. Microcontroller menerima data waktu hidup yang diproses oleh firmware dan dilanjutkan dengan melakukan komparasi waktu Dengan RTC. Rangkaian digital akan melakukan peroses menghidupkan komputer setelah proses komparasi menunjukan bahwa waktu saat ini dan waktu jadual hidup telah sama. Proses yang sama terjadi pada aplikasi yang telah berjalan. Proses komparasi Time windows dan
waktu jadual mati komputer telah sama, Aplikasi menjalankan fungsi untuk mematikan komputer.
Gambar 3.7 Class Diagram Keseluruhan Sistem
Perancangan Microcontroller
Perangkat keras tambahan untuk menghidupkan komputer pada sistem penjadualan ini berupa rangkaian digital dengan microcontroller di dalam nya. Secara umum terdapat 5 komponen yang berhubungan dengan microcontroller yaitu Power(vcc & ground), Serial Port, relay, Xtal dan RTC. Berikut akan dijelaskan pada gambar 3.8 hubungan pin pada microcontroller dengan lima komponen yang digunakan.
: Firmware : Komparasi waktu : RTC : Rangkaian Digital : Micro Controller
Time On
Compare
Turn On
Send Data Digital Verifikasi
Check Valid User Name()Check Valid Password()
Form Login
User NamePassword
DCU
Librari
Compile()
Form Penjadualan
Status AplikasiUser NamePassword
HariTanggal
Waktu (jam,menit,detik)
Convert data waktu hidup menjadi data digital()chek ke validan semua data yang akan di simpan()
Edit User Name()Edit Password()
Edit Status Aplikasi()Edit Jadual Hiudp Dan Mati()
Save All Data To MySql()
Controling Micro Controller & Aplikasi
Save data di MySql()Kirim Data Digital Ke Micro()
Menjalankan Aplikasi()
Firmware
Waktu Hidup
Simpan Waktu Hidup()
Komparasi waktu
Waktu Saat IniJadual Waktu hidup
Time Compare()
Rangkaian Digital
Run Relay()Conect Power To PC()
RTC
Waktu saat ini
Embeded Sql
User NamePassword
Status AplikasiHari
TanggalWaktu
Komparasi Waktu
Waktu Saat IniJadual Waktu Mati
Time Compare()
Run Fungtion
Shut Down()
Time Windows
Waktu PC
13
Adong Purba - 5107100528
Makalah Seminar Tugas Akhir Periode Januari 2010
Gambar 3.8 Perancangan Microcontroller
Aktifitas microcontroller
Aktifitas Microcontroller yang utama adalah untuk menghidupkan komputer. Untuk menghidupkan komputer terdapat beberapa keadaan yang harus di penuhi diantara lain adalah keadaan listrik, waktu saat ini, waktu hidup dan waktu mati. Semua proses akan berjalan jika listrik hidup, modem hidup, Handphone hidup dan komputer dalam keadaan mati. Keadaan kedua yang di bandingkan adalah waktu saat ini dan waktu mati komputer hari ini. Jika waktu saat ini lebih kecil dari waktu mati maka komputer akan di hidupkan. Jika waktu hidup lebih besar dari waktu saat ini maka computer akan dihidupkan. Salah satu dari kedua keadaan diatas harus dipenuhi untuk bisa menghidupkan komputer. Keseluruhan aktifitas dari Microcontroller dijelaskan pada gambar 3.9 dan gambar 3.10 berikut ini.
START
Inisialisasi
Inisialisasi
Apakah data
serial=’*’?
Terima data
Apakah data
serial=’#’?
FINISH
Simpan data waktu sekarang
A
Tidak
Ya
Tidak
Apakah data
serial=’?’?
Terima data
Apakah data
serial=’!’?
Simpan data
Ya
Ya Apakah
data serial=’$’?
Terima data
Apakah data
serial=’&’?
Simpan data
Ya
Ya
A Tidak
Tidak
A
Ya
Tidak
Tidak
Gambar 3.9 Diagram dari PC ke Microcontroller
14
Adong Purba - 5107100528
Makalah Seminar Tugas Akhir Periode Januari 2010
START
Inisialisasi
Inisialisasi
Inisialisasi
Inisialisasi
Inisialisasi
Inisialisasi
Baca
M
Apakah inbox!=0?
Z
Tidak
Ya
Apakah nomor
Apakah no=admin?
Apakah isi=“reg”?
Tidak
Ya
Ya Replay Tidak
Inisialisasi modem
Tidak
15
Adong Purba - 5107100528
Makalah Seminar Tugas Akhir Periode Januari 2010
Apakah ada space
user ?
isi=”DEL” or isi=ADD or
isi=”DEL”Index ?
Tidak
Replay Ya
Tidak
Apakah
Isi=”REG”
Replay
Ya
Apakah isi=”REG”?
Ya
Replay
Z
Apakah isi=”UNREG”?
Delet no dr data user. Replay=no dihapus
X
Apakah isi=”ADD”
Replay
Simpan No sbg User Reply=Registrasi sukses
Tidak
Tidak
Tidak
Z
O
Apakah isi=”DEL”?
Tidak
Hapus semua no user Replay=user=kosong
Apakah jumlah user<max
user?
Tambahkan 1 space user. Replay=user+1
Replay=user penuh
16
Adong Purba - 5107100528
Makalah Seminar Tugas Akhir Periode Januari 2010
ya
ya
ya
ya
ya
ya
tidak
tidak
Apakah isi=”ON”?
X
Apakah isi=”OFF”?
Apakah Power=OFF?
Hidupkan server
Ya
Tidak
Replay=server OFF
Ya
Ya
Ya
Tidak
Tidak
Tidak
Matikan server
Apakah isi=”DEL”
indek?
Hapus user index Replay=user=1
Z
Apakah isi=”ON”?
Apakah Power=ON?
X
Apakah isi=”OFF”?
Apakah Power=OFF?
Replay=server ON
Hidupkan server
Ya
Tidak
Replay=server OFF
Ya
Ya
Ya
Tidak
Tidak
Tidak
Matikan server
Tidak
Apakah SMS=”AUTO”?
Mode=AUTO
Ya
Apakah SMS=”MANUAL”?
Ya
Mode=MANUAL
Apakah SMS=”STATUS”?
Replay SMS=salah
Replay=status
Ya
Tidak
Apakah Power!=status?
O
Tidak
Tidak
17
Adong Purba - 5107100528
Makalah Seminar Tugas Akhir Periode Januari 2010
Apakah status=ON?
Hidupkan server kirim SMS=”Warning OFF”
Ya
Tidak
Matikan server kirim SMS=”Warning ON”
Apakah Mode=AUTO?
Baca data RTC
Apakah Data RTC= Jadwal ON?
Ya
Tidak
Hidupkan Server
Apakah Data RTC=
Jadwal OFF?
Matikan Server
M
Tidak
Ya
Ya
Tidak
18
Adong Purba - 5107100528
Makalah Seminar Tugas Akhir Periode Januari 2010
19
Adong Purba - 5107100528
Makalah Seminar Tugas Akhir Periode Januari 2010
Gambar 3.10 Diagram aktifitas Microcontroller pada
saat koneksi ke Modem
Top Related