20
BAB III PERANCANGAN SISTEM
3.1 Perencanaan Secara Diagram Blok Untuk dapat melakukan perancangan alat Water Bath, maka penulis memulai dengan perancangan blok diagram yang tertera pada gambar dibawah.
Gambar 3.1 Diagram blok alat water bath Adapun keterangan dari diagram blok diatas adalah sebagai berikut : 1. Kontrol Pad merupakan rangakaian mikro switch yang digunakan untuk melakukan perintah pada software yang ada pada ATMega8 2. Temperatre Sensor berfungsi untuk mendeteksi suhu pada water bath.
20
21
3. Alarm berfungsi untuk memberi tanda bahwa waktu yang ditentukan telah tercapai 4. Mikrokontroler ATMega8 berfungsi sebagai pengontrol dari semua peripheral yang ada sehingga bekerja sesuai dengan program yang terdapat didalamnya. 5. LCD display berfungsi untuk menampilkan suhu, waktu, dan beberapa tampilan lain yang akan dibahas lebih lanjut 6. Heater Driver berfungsi sebagai pemberi supply ke heater berdasarkan perintah dari mikrokontroller 7. Heater merupakan elemen yang memanaskan air agar suhu yang diset tercapai 8. Water Blower driver berfungsi untuk menghidupkan dan mematikan blower sesuai dengan perintah yang diberikan oleh mikrokontroller 9. Blower merupakan bagian yang berfungsi untuk menjaga sirkulasi air tetap stabil sehingga suhu yang diberikan merata. Rangkaian-rangkaian diatas merupakan suatu sistem yang sinkron sehingga membentuk dan menciptakan sistem kerja. Suhu dan Timer dapat diatur melalui tombol pada keypad untuk diteruskan dan diolah oleh mokrokontroller dan kemudian ditampilkan melalui LCD. Besarnya suhu tadi digunakan untuk mengaktifkan heater pada saat perintah “Start” diberikan melalui tombol keypad. Mikrokontroller kemudian memberikan perintah melalui heater driver untuk kemudian heater driver memberikan supply ke heater. Kemudian temperatur sensor memberikan input kepada mikrokontroller yang kemudian data tersebut
22
digunakan untuk dibandingkan dengan data settingan, yang digunakan untuk mengontrol suhu pada water bath. Kemudian pada sistem ini dilengkapi dengan timer, dimana timer tadi akan menentukan lamanya proses inkubasi dalam water bath.
3.2 Perencanaan Dalam Bentuk Wiring Diagram 3.2.1. Rangkaian Secara Keseluruhan Setelah melakukan perancangan secara blok diagram, maka untuk langkah selanjutnya, penulis mencoba untuk melakukan perancangan secara wiring diagram rangkaian. Perancangan dimulai dengan perancangan rangkaian secara keseluruhan.
Gambar 3.2 Rangkaian Water Bath
23
Rangkaian diatas merupakan bentuk keseluruhan dari sistem water bath ini. Setiap masing-masing bagian mempunyai peran tersendiri agar alat dapat berkerja dengan baik. Untuk itu perlu dijabarkan dengan lebih detail mengenai komponen yang digunakan pada alat ini.
3.2.2. Rangkaian Sistem Minimum Rangkaian ini merupakan rangkaian yang menggunakan fasilitas pada ATMega8 untuk melakukan kontrol heater, untuk memberi input data ke LCD dan untuk mengaktifkan timer.
Gambar 3.3. Sistem Minimum Mikrokontroler untuk Water Bath Sistem minimum ini terdiri dari ATMega8 dan komponen kristal 16MHz sebagai pembangkit frekuensi internal. Sistem ini bekerja berdasarkan perintah program yang dibuat dan dimasukkan kedalam memori internal. Secara garis
24
besar sistem minimum ini mendapatkan perintah dari port I/O yang pada perancangan ini menggunakan port C, dimana PC2, PC3, PC4 dan PC5 merupakan input dari kontrol pad, sedang PC0 merupakan input dari LM35. Untuk output dari sistem minimum digunakan port PD dan port PB, dimana PD0 sampai dengan PD5 merupakan output ke data LCD dan PD6 untuk mengaktifkan buzzer. Untuk prt PB0, PB1 dan PB2 digunakan untuk mengaktifkan heater dan blower.
3.2.3. Rangkaian Heater Dan Blower Driver Untuk dapat mengontrol heater guna melakukan pengontrolan suhu pada water bath, maka penulis mencoba membuat rangkaian heater dan blower driver seperti dibawah ini.
25
Gambar 3.4 Rangkaian Heater dan Blower Driver Rangkaian Heater dan Blower Driver merupakan rangkaian yang berfungsi untuk mengontrol jalannya heater dan blower. Rangkaian ini terdiri dari tiga buah relay sebagai pengontrol suplay tegangan ke masing-masing heater dan blower. Sedangkan untuk dapat mengaktifkan heater digunakan satu buah transistor untuk masing-masing relay. Transistor itu sendiri mendapat triger dari ATMega8 melalui port PB0, PB1 dan PB2.
3.2.4. Rangkaian Temperature Sensor Untuk dapat mendeteksi besaran suhu pada water bath, maka penulis menggunakan rangkaian temperature sensor dengan menggunakan IC LM35.
26
Gambar 3.5. Temperature Sensor Temperature Sensor berfungsi sebagai memonitor suhu yang berada dalam water bath, dimana temperature sensor menggunakan LM35. Output dari LM35 akan diteruskan ke input internal ADC pada ATMega8 melalui port PC0 yang kemudian akan ditampilkan besaran suhu pada water bath di LCD. Untuk membaca besaran output pada LM35 untuk dapat dibaca oleh ATMega8 digunakan program sebagai berikut: Do X = Getadc(0) X2 = X X2 = X2 * Z1 X2 = X2 / 1024 Suhu = Fusing(x2 , "#.#") Locate 2 , 1 Lcd "SUHU : " ; Suhu ; Chr(&Hdf) ; "C" Waitms 250
27
If Menu = 0 Then : Sound Buzzer , 500 , 170 : Goto Menu1 : End If Loop
3.2.5. Rangkaian Keypad Untuk
dapat
memasukkan
program
ke
mikrokontroller,
penulis
menggunakan rangkaian keypad yang menggunakan push button
Gambar 3.6. Rangkaian Keypad Rangkaian keypad berfungsi memberi inputan ke sistem minimum. Inputan tersebut akan digunakan untuk menset nilai dari setiap opsi parameter yang berada dalam sistem minimum.
28
3.2.6. Rangkaian LCD Untuk dapat menampilkan besaran suhu, timer dan menu, maka penulis menggunakan rangkaian LCD untuk dapat menampilkannnya.
Gambar 3.7 Rangkaian LCD Rangkaian LCD mempunyai peranan sangat penting pada water bath, LCD berfungsi untuk menampilkan besaran suhu pada water bath. Besaran tegangan dari LM35 diolah oleh ADC yang terdapat didalam sistem minimum diolah kedalam data untuk diteruskan ke LCD. Bentuk salah satu sub rutin programnya sebagai berikut Deflcdchar 0 , 32 , 4 , 6 , 31 , 31 , 6 , 4 , 32 Deflcdchar 1 , 32 , 32 , 4 , 14 , 31 , 31 , 32 , 32 Deflcdchar 2 , 32 , 32 , 31 , 31 , 14 , 4 , 32 , 32 Pembukaan: Portd.7 = 1 Locate 1 , 1
29
Lcd "
LOADING
"
Locate 2 , T Lcd Chr(0) Waitms 500 T=T+1 If T <= 17 Then Goto Pembukaan Cls Locate 1 , 1 Sound Buzzer , 1000 , 300 Lcd " READY TO USE " Wait 2 Portd.7 = 0 Cls Awal: Locate 1 , 1 : Lcd "ASYEF WATER BATH" Wait 1 Do X = Getadc(0) X2 = X X2 = X2 * Z1 X2 = X2 / 1024 Suhu = Fusing(x2 , "#.#") Locate 2 , 1 Lcd "SUHU : " ; Suhu ; Chr(&Hdf) ; "C"
30
Waitms 250 If Menu = 0 Then : Sound Buzzer , 500 , 170 : Goto Menu1 : End If Loop
3.3 Perancangan Dalam Bentuk Flow Chart Software Untuk dapat melakukan perancangan software maka penulis memulai dengan membuat blok diagram flowchart Mulai
Inisialisasi
Tampilkan Suhu Water Bath
Ada input settingan?
Yes Masukkan setting data ke memori
No Start?
Yes
A
G
No
31
A
Aktifkan Blower
No Temp Set > Temp Real?
Aktifkan Heater dan tampilkan suhu pada display
C
B
Tampilkan Suhu Water Bath
No
Emergency Stop?
Temp Set = Temp Real?
Yes
Non-aktifkan Heater dan tampilkan suhu pada LCD
D
Yes Non-Aktifkan Heater dan Blower dan Timer
G
B
No
C
32
D
E
No
Use Timer ? Yes Aktifkan Timer countdown
Temp Set 1oC > Temp Real?
Yes
Aktifkan Heater dan tampilkan suhu pada LCD Non-aktifkan Heater dan tampilkan suhu pada LCD
E
No Timer Finish?
Yes Non-Aktifkan Heater dan Blower dan Timer
G
F
No
Emergency Stop? Yes
No
33
F
Temp Set = Temp Real?
Yes
Non-aktifkan Heater dan tampilkan suhu pada LCD
E
No Tampilkan Suhu Water Bath
Emergency Stop?
Yes
Non-Aktifkan Heater dan Blower dan Timer
G
No
Timer Finish?
Yes
No F
Gambar 3.8 Flow Chart Software Cara Kerja Flow Chart Pada saat awal setelah “Mulai” program menuju ke “inisialisasi”, disini ditentukan jenis ATMega besaran frekuensi kristal yang digunakan, ukuran LCD, konfigurasi pin, dan lain-lain. Setelah proses inisialisasi maka prosesselanjutnya adalah “Tampilkan suhu water bath” di proses ini suhu dari LM35 akan dibaca
34
dan dikonfersikan kedalam tampilan LCD. Lalu program akan lanjut ke “Ada input setingan?”, disini data inputan dimasukkan ke dalam data memori untuk menentukan besaran parameter suhu dan waktu yang digunakan. Setelah itu program berlanjut ke “Start”, disini kita dapat menentukan apakah program akan dijalankan. Selanjutnya jika Start telah ditekann, maka program pertama kali akan menghidupkan blower menanyakan “Temp Set > Temp Real” artinya jika suhu yang di set lebih besar dari suhu real, maka heater akan dihidupkan dan sebaliknya jika tidak maka heater dimatikan. Selanjutnya program akan membandingkan antara suhu real dan suhu set, jika sama maka heater akan dimatikan, lalu program akan menanyakan apakah saat men-set data digunakan timer atau tidak, jika ya maka timer akan dihidupkan, lalu program akan menunggu agar suhu real dibawah suhu set untuk kembali mengaktifkan heater. Ketika timer yang ditentukan telah selesai, maka program akan menon-aktifkan heater dan blower. Selama program berjalan kita dapat sewaktu-waktu menghentikan program berjalan dengan menekan tombol e-stop pada keypad.