HALAMAN PENGESAHAN SISTEM PENGENDALI SUHU INCUBATOR BERBASIS MIKROKONTROLLER AT89S51
Medan, Juni 2007 Dikatahui Oleh : Dekan FMIPA- USU
( Prof. DR. Eddy Marlianto, M.Sc) NIP : 195503171986011001
Eddy Marlianto : Sistem Pengendali Suhu Incubator Berbasis Mikrokontroller AT89S51, 2007
KATA PENGANTAR Dengan mengucapkan puji dan syukur kehadirat Tuhan Yang Maha Esa, kegiatan penulisan makalah ilmiah ini dapat diselesaikan dengan baik. Untuk itu saya juga mengucapkan banyak terimakasih kepada seluruh pendukung serta fasilitas yang diberikan baik laboratorium maupun referensi yang banyak mendukung dalam penulisan makalah ilmiah ini. Ucapan terima kasih juga saya ucapkan kepada seluruh staf pengajar FMIPAUSU yang telah berkenan memberikan informasi pengetahuan untuk mendukung penulisan makalah ini. Kami menyadari masih banyak kelemahan dan kekurangan dalam makalah ilmiah ini, untuk itu kami mengharapkan saran dari pembaca agar penulisan makalah ini dapat ditingkatkan pada hari yang akan dating. Akhir kata dengan penulisan makalah ini diharapkan dapat menghasilkan suatu manfaat untuk meningkatkan ilmu pengetahuan dan teknologi di USU khususnya dan di Indonesia pada umumnya. Medan, Penulis
Juni 2007
( Drs. Bisman P, M. Eng. Sc ) NIP:195609181983031002
Eddy Marlianto : Sistem Pengendali Suhu Incubator Berbasis Mikrokontroller AT89S51, 2007
DAFTAR ISI Pengesahan ............................................................................................................................ i Kata Pengantar ...................................................................................................................... ii Daftar Isi ...............................................................................................................................iii Inti Sari...................................................................................................................................iv I.
PENDAHULUAN .................................................................................................... 1
II. II.1. II.3. II.4. II.4.1. II.5. II.6.
TOERI DASAR ........................................................................................................ 2 SENSOR TEMPERATUR ........................................................................................ 2 IC ADC 0804 ............................................................................................................ 4 Mikrokontroler AT89S51 Single Chip ..................................................................... 7 Fungsi Pin Mikrokontroler AT89S51 ....................................................................... 9 Saklar Relay ..............................................................................................................13 Pemrograman Mikrokontroler ..................................................................................16
III. III.1. III.1.1 III.1.2 III.1.3 III.1.4 III.2.
METODE PENELITIAN ..........................................................................................22 Diagram Blok Penelitian ...........................................................................................22 Rangkaian minimum AT89S51 ................................................................................23 Sistem Sensor Temperatur .......................................................................................25 Rangkaian Display Seven Segmen ..........................................................................26 Rangkaian Driver Pemanas .......................................................................................28 METODE PENGAMBILAN DATA ........................................................................30
IV.
HASIL DAN PEMBAHASAN .................................................................................31
V.
KESIMPULAN DAN SARAN .................................................................................33
DAFTAR PUSTAKA ...........................................................................................................34
Eddy Marlianto : Sistem Pengendali Suhu Incubator Berbasis Mikrokontroller AT89S51, 2007
INTISARI Telah dirancang dan direalisasikan sistem pengontrolan suhu incubator dengan menggunakan mikrokontroler sebagai pusat pengedali. Mikrokontroler yang digunakan adalah AT89S51. Alasan menggunakan mikrokontroler ini karena pemakaiannya cukup sederhana dan mudah diproleh dipasaran. Sebagai sensor suhu digunakan sensor semikonduktor LM 31. Suhu yang diatur pada incubator dapat beberapa variasi secara berkesinambungan pada periode waktu tertentu tergantung program pengendali yang dibuat. Dalam ujicoba diproleh hasil yang cukup baik dan sesuai dengan yang diharapkan.
Eddy Marlianto : Sistem Pengendali Suhu Incubator Berbasis Mikrokontroller AT89S51, 2007
I. PENDAHULUAN Dengan perkembangan teknologi dewasa ini terutama pada perkembangan mikroprosesor/mikrokontroleler maka penggunaan mikrokontroller sekarang ini sangat luas, tidak hanya untuk mikrokomputer melainkan juga untuk pengendalian di pabrikpabrik, kebutuhan peralatan kantor, peralatan rumah tangga,automobil, dan sebagainya. Hal itu disebabkan mikrokontroller merupakan sistem mikroprosessor (yang di dalamnya terdapat CPU, ROM, RAM dan IO) yang telah terpadu pada suatu keeping dan mudah digunakan dan harganya relatip murah.
Pada penelitian ini penulis merancang dan merealisasikan memanfaatkan mikrokontroller AT89S51 untuk merancang suatu sistem pengendalian suhu incubator diaplikasikan pada pemanasan dengan variasi suhu yang berbeda dengan rentang waktu tertentu pada setiap suhu yang diset.
Pemanasan dilakukan misalnya selama 4 kurun waktu dengan suhu konstan yang berbeda dipertahankan tiap kurun waktu. Hal ini dapat diaplikasikan pada bidang antara lain untuk pengeringan hasil-hasil pertanian, pemisahan komponen dari bahanbahan kimia, penetasan telur dan lain-lain.
Eddy Marlianto : Sistem Pengendali Suhu Incubator Berbasis Mikrokontroller AT89S51, 2007
2. TEORI DASAR 2.1. SENSOR TEMPERATUR Sebuah sambungan pn pada dioda dan transistor bipolar menunjukkan ketergantungan yang kuat pada panas. Jika sambungan dihubungkan dengan sumber arus konstan, maka tegangan yang dihasilkan menjadi ukuran dari suhu sambungan. Tegangan tergantung-temperatur pada sambungan dapat dinyatakan sebagai: V=
Eg q
−
2kT (ln K − ln I) q
dimana Eg adalah energi gap untuk silikon pada suhu 0 K, q adalah muatan elektron dan K adalah temperatur mutlak. Menurut persamaan diatas, bahwa ketika sambungan berada pada kondisi arus konstan, tegangan bergubungan linier dengan temperatur. Rangkaian sederhana dari transistor yang dibuat sebagai sensor temperatur ditunjukkan oleh gambar 2.1.1 berikut ini. Sebuah sumber tegangan E dan resistor R digunakan sebagai pengganti sumber arus. Arus yang melalui transistor adalah dinyatakan sebagai:
I=
DC
E
E−V R R I
V B
Gambar 2.1 Transistor dirangkai sebagai sensor
Eddy Marlianto : Sistem Pengendali Suhu Incubator Berbasis Mikrokontroller AT89S51, 2007
Sebuah sensor temperatur semikonduktor dapat dibuat dengan menggunakan sifat dasar transistor untuk menghasilkan tegangan yang proporsional dengan temperatur mutlak. Tegangan ini dapat digunakan langsung atau dapat pula di konversi menjadi arus. Hubungan antara tegangan basis-emiter (vbe) dan arus kolektor dari transistor bipolar adalah kunci sifat untuk menghasilkan temperatur sensor semikonduktor. Gambar 2.1.2 menunjukkan rangkaian sederhana sensor temperatur semikonduktor, dimana Q3 dan Q4 membentuk arus cermin. Ini mendorong dua arus yang sama IC1 = I dan IC2 = I pada transistor. Arus kolektor ditentukan oleh resistor R. Dalam rangkaian monolitik, transistor Q2 dibuat dari beberapa transistor identik yang dihubungkan paralel. Misalkan 8, maka kerapatan arus pada Q1 adalah delapan kali lebih besar dari masing-masing transistor Q2. Beda antara tegangan basis-emiter dari Q1 dan Q2 adalah ∇Vbe = Vbe1 − Vbe2 =
⎛ I ⎞ kT kT ⎛ rI ⎞ kT ⎟⎟ − ln⎜⎜ ln r − ln⎜⎜ c ⎟⎟ = q ⎝ I ceo ⎠ q ⎝ I ceo ⎠ q
dimana r adalah perbandingan arus (sama dengan 8 untuk contoh yang dibuat), k adalah tetapan Boltzman, q adalah muatan elektron dan T adalah temperatur dalam K. arus Iceo adalah sama untuk kedua transistor. Gambar 2.1.2 berikut menunjukkan fungsi transfer sensor temperatur LM35Z yang memiliki keluaran linier terhadap temperatur dalam skala Celcius dengan sensitivitas 10 mV /oC.
Eddy Marlianto : Sistem Pengendali Suhu Incubator Berbasis Mikrokontroller AT89S51, 2007
I
T
Q
Q3
4 IC 1
I 2 C
Q2
Q 1 8
I
+ V
T
R _
Gambar 2.2 Rangkaian sederhana sensor temperatur semikonduktor
temperatur vs tegangan
tegangan (mili Volt)
700 600 500 400 300 200 100 0 0
10
20
30
40
50
60
70
temperatur (derajat celcius)
Gambar 2.3 Fungsi transfer sensor temperatur LM35Z
2.3. IC ADC 0804
Pengubah analog digital digunakan untuk menjembatani mikroprosesor dengan dunia analog. Ada beberapa cara untuk mengubah sinyal analog menjadi sinyal digital.
Eddy Marlianto : Sistem Pengendali Suhu Incubator Berbasis Mikrokontroller AT89S51, 2007
ADC yan paling banyak dilakukan adalah pengubah dengan metode pendekatan berturut. Metode ini didasrkan pada pendekatan sinyal input dengan kode biner dan kemudian berturut – turut memperbaiki pendekatan ini untuk setiap bit pada kode sampai didapatkan pendekatan yang paling baik. Untuk menyimpan kode biner pada setiap tahapan dalam proses digunakan register pendekatan berturutan. Konversi diawali dengan semua flip-flop diset 0. Selanjutnya bit paling berperan (MSB) diset menjadi 1. keluaran pembanding diperiksa oleh logika kendali: jika berharga 1, flip-flop MSB dimatikan; jika bernilai 0 flip-flop MSB dibiarkan hidup. Proses ini diteruskan untuk setiap flip-flop sampai dengan flip-flop bit paling kurang perannya (LSB). Jadi bilangan terakhir dalam flip-flop akan merepresentasikan tegangan masukan. Sebuah ADC0804 adalah konverter hampiran berturutan yang bekerja pada sumber tegangan 5V. ADC0804 memiliki resolusi 1 bit masukan analog dan 8 bit keluaran digital yang dapat dikonversi dalam waktu 100 mikrodetik. Konverter ini kompatibel dengan sebuah jenis mikroprosesor seperti keluarga Intel.
Gambar 2.6 Kaki-Kaki IC ADC0804
Tabel berikut menunjukkan fungsi pin ADC 0804 dan penjelasannya. Eddy Marlianto : Sistem Pengendali Suhu Incubator Berbasis Mikrokontroller AT89S51, 2007
Tabel 2.1. Label dan fungsi kaki ADC 0804 nomor kaki
simbol
1
CS
keluaran/ masukan/day a masukan
2 3 4 5
RD WR CLK IN INTR
masukan masukan masukan masukan
6 7 8 9 10 11 12 13 14 15 16 17 18 19 20
Vin (+) Vin (-) A GND VREF/2 D GND DB7 DB6 DB5 DB4 DB3 DB2 DB1 DB0 CLK R VCC (or Vref)
masukan masukan keluaran masukan Daya keluaran keluaran keluaran keluaran keluaran keluaran keluaran keluaran keluaran Daya
penjelasan
baris kendali pilihan mikroprosesor baris kendali baca baris kendali tulis Detak baris interupsi menjadi masukan interupsi mikroprosesor tegangan masukan analog positif tegangan masukan analog negatif pentanahan analog tegangan referensi / 2 pentanahan digital keluaran data LSB keluaran data keluaran data keluaran data keluaran data keluaran data keluaran data keluaran data MSB Detak catu daya positif 5 V dan tegangan referensi primer
Untuk mengaktivkan konverter, pin WR diberi pulsa dengan CS ditanahkan untuk memulai proses konversi. Sebab konverter ini membutuhkan beberapa pertimbangan waktu untuk memulai proses konversi, sebuah pin berlabel INTR mensinyali akhir dari konversi. Proses konversi dimulai dengan pulsa WR dan mengunggu INTR kembali kelevel logika nol. Kemudian dibaca data dari konverter tersebut. Pilihan lain untuk proses konversi adalah dengan menghubungkan pin INTR ke sebuah
Eddy Marlianto : Sistem Pengendali Suhu Incubator Berbasis Mikrokontroller AT89S51, 2007
masukan interrupt sehingga interupsi terjadi bila pengkonversian telah selesai. Ada dua masukan analog terhadap ADC0804: VIN (+) dan VIN(-). Masukanmasukan ini dihubungkan ke sebuah penguat operasional dalam dan masukan-masukan diferensial. Masukan-masukan diferensial dijumlahkan dengan penguat operasional untuk menghasilkan sebuah sinyal untuk konverter analog ke digital. ADC0804 membutuhkan sebuah sumber clock untuk melakukan operasinya. Clock ini dapat berupa sebuah clock dari luar yang diterapkan ke pin CLK IN atau clock yang dapat dibangkitkan dengan rangkaian RC (Resistansi dan Kapasitansi). Range yang diijinkan dari frekuensi-frekuensi Clock itu adalah antara 100 kHz dan 1460 kHz, sehingga waktu pengkonversian dapat dijaga tetap minimum. Jika Clock dibangkitkan dengan sebuah rangkaian RC, kita menggunakan pin-pin CLK IN dan CLK R yang dihubungkan dengan rangkaian RC. Untuk referensi clock RC dihitung dengan persamaan: Fclk =
2.4.
1 1.1RC
Mikrokontroler AT89S51 Single Chip
Mikrokontroler AT89S51 merupakan salah satu keluarga dari MCS-51 keluaran Atmel. Jenis mikrokontroler ini pada prinsipnya dapat digunakan untuk mengolah data per bit ataupun data 8 bit secara bersamaan.Mikrokontroler dapat beroperasi dalam tegangan antara 4,0 V sampai 5,0 V. Sebuah mikrokontroler dapat bekerja bila dalam mikrokontroler tersebut terdapat sebuah program yang berisi intruksi-intruksi yang akan digunakan untuk menjalakan sistem mikrokontroler tersebut. Instruksi-intsruksi dari sebuah program pada tiap jenis mikrokontroler mempunyai beberapa perbedaan, misalkan saja intruksi pada mikrokontroler Atmel berbeda dengan intruksi pada mikrokontroler Motorola.
Eddy Marlianto : Sistem Pengendali Suhu Incubator Berbasis Mikrokontroller AT89S51, 2007
Pada prinsipnya program pada mikrokontroler dijalankan secara bertahap, jadi pada program itu sendiri terdapat beberapa set intruksi dan tiapintruksi itu dijalankan secara bertahap atau berurutan. Beberapa fasilitas yang dimiliki oleh mikrokontroler AT89C51 adalah sebagai berikut: a. Sebuah Central Processing Unit 8 bit. b. Osilator internal dan rangkaian pewaktu c. RAM internal 128 byte. d. Flash memori 4 Kbyte dengan ketahanan 1000 kali ditulis ulang atau dihapus. e. Lima buah jalur interupsi ; dua buah interupsi eksternal (INT 0 dan INT 1), dua buah interupsi timer (timer 0 dan timer 1) dan 1 buah interupsi port serial. f. Empat buah programble port I/O yang masing-masing terdiri dari delapan buah jalur I/O. g. Sebuah port serial dengan kontrol serial full duplex UART. h. Kemampuan untuk melaksanakan operasi aritmatika dan operasi logika. i. Kecepatan dalam melaksanakan intruksi per siklus 1 mikrodetik pada frekuensi 12 MHz. AT89C51 mempunyai memori yang terdiri dari RAM Internal dan Special Function Register. RAM internal berukuran 128 byte dan beralamatkan 00H – 7FH serta
dapat diakses menggunakan RAM address register. RAM internal terdiri dari delapan buah register ( Ro – R7 ) yang membentuk register banks. Special Function Register yang berjumlah 21 buah berada dialamat 80H – 7FFH. RAM berbeda lokasi dengan Flash PEROM dengan alamat 000H – 7FFH.
Eddy Marlianto : Sistem Pengendali Suhu Incubator Berbasis Mikrokontroller AT89S51, 2007
2.4.1. Fungsi Pin Mikrokontroler AT89S51
Konfigurasi pin mikrokontroler AT89S51 dapat dilihat pada gambar berikut.
PI. 0 PI. 1 PI. 2 PI. 3 PI. 4 PI. 5 PI. 6 PI. 7 PST P3. 0 P3. 1 P3. 2 P3. 3 P3. 4 P3. 5 P3. 6 P3. 7 XTAL 2 XTAL 1 GND
A T 8 9 S 5 1
VCC PO. 0 PO. 1 PO. 2 PO. 3 PO. 4 PO. 5 PO. 6 PO. 7 EA ALE PSEN P2. 7 P2. 6 P2. 5 P2. 4 P2. 3 P2. 2 P2. 1 P2. 0
Gambar 2.7. Konfigurasi mikrokontroler AT89S51 Fungsi masing-masing pin adalah sebagai berikut : Vcc (pin 40)
Sebagai masukan untuk sumber tegangan 5 volt GND (pin 20)
Ground Port 0 (pin 32-39)
Port 0 merupakan I/O dua arah (bidirectional I/O) 8 bit. Port 0 juga digunakan untuk membangkitkan alamat rendah/data yang di-multiplex pada saat melaksanakan eksekusi program/data memori eksternal. Pada keadaan ini, port 0 mempunyai rangkaian pull up internal. Port 0 juga digunakan untuk masukan data pada saat proses pengisian
Eddy Marlianto : Sistem Pengendali Suhu Incubator Berbasis Mikrokontroller AT89S51, 2007
flash EPROM, dan sebagai keluaran kode data pada saat proses pencocokan. Pada proses pencocokan, dibutuhkan resistor pull up eksternal yang nilainya 10Kohm. Port 1 (pin 1- 8)
Port 1 adalah I/O 8 bit dua arah (b bit bidirectional I/O) yang mempunyai rangkaian resistor pull up internal. Port 1 juga digunakan untuk menerima alamat rendah (low order address) pada saat pengisian Flash EPROM Flash EPROM Programming) dan pencocokan program (Program Verification). Port 2 (pin 21-28)
Port 2 merupakan I/O 8 bit dua arah ( 8 bit bidirectional I/O) dengan resistor pull up internal. Pada saat eksekusi program/ data eksternal, port 2 membentuk alamat tinggi (high order address). Port 2 juga digunakan untuk menerima masukan alamat tinggi (high order address) dan beberapa sinyal kontrol pada saat proses pengisian Flash EPROM (Flash EPROM Programming) dan pencocokan program (Program Verification). Port 3 (pin 10-17)
Port3 merupakan I/O 8 bit dua arah (8 bit bidirectional I/O) dengan resistror pull up internal, selain sebagai I/O paralel 8 bit, masing-masing bit pada port 3 dapat juga digunakan untuk tugas lain yaitu : P3.0 (RXD) untuk masukan data serial P3.1 (TXD) untuk keluaran data serial P3.2 (INT 0) untuk interupsi eksternal 0 P3.3 (INT1) untuk interupsi eksternal 1 P3.4 (T0) untuk timer eksternal 0 P3.5 (T1) untuk timer eksternal 1
Eddy Marlianto : Sistem Pengendali Suhu Incubator Berbasis Mikrokontroller AT89S51, 2007
P3.6 (WR) untuk sinyal penulisan memori data eksternal. P3.7 (RD) untuk sinyal pembacaan memori data eksternal. PSEN (Program Store Enable ) pin 29
PSEN berfungsi sebagai sinyal pembacaan program memori eksternal dan bersifat aktif loe. Pada saat pembacaan program memori eksternal, PSEN diaktifkan dua kali setiap satu kali siklus mesin. Bila dilakukan pembacaan program memori internal, PSEN dapat di-ground-kan. RST (reset) pin 9
Untuk reset isi register dan memori pada saat sistem dihidupkan. ALE (Address Latch Enable)/PROG, pin 30
ALE berfungsi untuk membangkitkan pulsa yang digunakan sebagai sinyal pengunci (latching) untuk mengambil alamat rendah selama mengakses program memori eksternal. Pada keadaan noprmal, ALE bekerja dengan siklus 1/6 dari frekuensi osilator, sehingga dapat juga berfungsi sebagai pembangkit frekuensi eksternal. Selama proses pengisian Flash EPROM (Flash EPROM Programming), ALE/PROG akan menerima pulsa program. EA/Vpp (Eksternal Access Enable), pin 31
Pin ini dihubungkan dengan GND untuk mengakses kode program memori eksternal yang dialokasikan pada alamat 0000h-FFFFh. Bila akan mengakses program memori internal, EA/Vpp harus dihubungkan dengan Vcc. Pada saat pengisian Flash EPROM (Flash EPROM Programming), pin ini harus dihubungkan dengan tegangan pemrograman +12 V atau +5 V. XTAL 1
Eddy Marlianto : Sistem Pengendali Suhu Incubator Berbasis Mikrokontroller AT89S51, 2007
Masukan inverting penguat osilator. XTAL 2
Keluaran inverting penguat osilator. 2.4.3. Register
Mikrokontroler AT89S51 mempunyai beberapa register untuk kegunaan umum dan kegunaan khusus. Register tersebut diperlukan dalam pengolahan dan manipulasi data, register- register tersebutadalah sebagai berikut : 1. Accumulator ( Register A )
Accumulator ialah sebuah register 8 bit yang merupakan pusat dari semua operasi akumulator, termasuk dalam operasi aritmatika dan operasi logika. Register ini terletak pada alamat E0H dan juga sebagai pengirim dan pengambilan data ke memori eksternal.
2. Register B
Register ini digunakan bersama-sama akumulator untuk proses aritmatik selain dapat juga difungsikan sebagai register biasa. Register ini dapat juga bersifat bit addressable.
3. Stack Pointer
Merupakan sebuah register 8 bit yang mempunyai fungsi khusus sebagai penunjuk alamat atau data paling atas pada operasi penumpukan di RAM. Stack Pointer terletak dialamat 81H. Isi dari Stack Pointer merupakan alamat dari data yang disimpan di stack. Stack Pointer dapat diedit atau dibiarkan saja jika sudah direset. Penunjuk penumpukan selalu berkurang dua tiap kali data didorong masuk kedalam lokasi penumpukan dan selalu bertambah dua tiap kali data ditarik keluar dari lokasi penumpukan.
4. Data Pointer
Data pointer atau DPTR merupakan register 16 bit yang terletak di alamat 82H untuk DPL dan 83H untuk DPH. Biasanya Data Pointer digunakan untuk mengakses data atau source code yang terletak dimemori eksternal. Eddy Marlianto : Sistem Pengendali Suhu Incubator Berbasis Mikrokontroller AT89S51, 2007
5. Register Timer
Mempunyai dua buah 16 bit Timer/Counter, yaitu Timer 0 dan Timer 1. Timer 0 terletak pada alamat 8AH untuk TL0 dan 8CH untuk TH0 dan Timer 1 terletak di alamat 8BH untuk TL 1 dan 8CH untuk TH1. 6. Register Interupsi
AT89S51 mempunyai lima buah interupsi dengan dua level prioritas interupsi. Interupsi akan selalu non-aktif setiap kali sistem di-reset. Register yang berhubungan dengan interupt adalah Interrupt Enable Register (IE ) atau Register Pengaktif Interupsi pada alamat A8H untuk mengatur keaktifan tiap-tiap interup dan Interrupt Priority Register (IP) atau Register Prioritas Interupsi pada alamat B8H. 7. Register Kontrol Power
Register ini terdiri atas SMOD yang digunakan untuk melipat dua baut rate dari port serial, dua buah bit untuk flag fungsi umum pada bit ketiga dan bit kedua Power Down (PD) bit dan Idle (IDL) bit. Pada Mode Idle hubungan antara CPU dengan internal
clock terputus, namun kondisi port tetap pada kondisi terakhir yakni high, timer masih tetap bekerja. Mode Idle berakhir pada saat terjadi interupt, reset atau kondisi-kondisi lain yang mereset IDL bit.
8. Register Port Serial
Mikrokontrol AT89C51 mempunyai sebuah chip serial port (port serial) didalam sebuah keping yang dapat digunakan untuk berkomunikasi dengan perantara lain yang menggunakan serial port juga seperti modem dan shift register. Buffer (penyangga) untuk proses pengiriman maupun pengambilan dan terletak pada register SBUF, yakni pada alamat 99H. Sedangkan untuk mengatur mode dapat dilakukan dengan mengubah isi dari SCON yang terletak pada alamat 98H.
2.5. Saklar Relay
Saklar relay merupakan saklar magnetik yang berfungsi mengalirkan atau memutuskan satu atau beberapa aliran listrik antara kutub-kutubnya, yang mempunyai sejumlah kutub yang dikontrol dan sejumlah hubungan yang dapat dihasilkan oleh kutub. Eddy Marlianto : Sistem Pengendali Suhu Incubator Berbasis Mikrokontroller AT89S51, 2007
Elektromagnet akan menghasilkan energi ketika tombol pada lintasan relay terbuka, hal ini kemudian akan menyambungkan relay ke kutub kontak sehingga kutub berhubungan dan arus listrik dapat mengalir sehingga lampu akan menyala. Jika tombol lintasan tertutup maka relay tidak mempunyai energi sehingga aliran listrik terputus dan lampu tidak menyala. Sebuah relay dapat mengontrol arus kuat dengan tegangan tinggi dengan menggunakan arus dan tegangan rendah atau sebaliknya. Saklar relay dapat digunakan sebagai terbuka normal yaitu saklar akan terbuka bila relay tidak diaktifkan, dan dapat digunakan sebagai tertutup normal yaitu saklar akan tertutup bila relay tidak diaktifkan. Relay adalah suatu peralatan elektronik yang berfungsi untuk memutuskan atau
menghubungkan suatu rangkaian elektronik yang satu dengan rangkaian elektronik yang lainnya, contoh pada rangkaian pengontrol motor mengunakan relay. Pada dasarnya relay adalah saklar elektromagnetik yang akan bekerja apabila arus mengalir melalui kumparan, inti besi akan menjadi magnet dan akan menarik kontak-kontak relay. Kontakkontak dapat ditarik apabila garis magnet dapat mengalahkan gaya pegas yang melawannya. Besarnya gaya magnet yang ditetapkan oleh medan yang ada pada celah udara pada jangkar dan inti magnet, dan banyaknya lilitan kumparan, kuat arus yang mengalir atau disebut dengan inperal lilitan dan pelawan magnet yang berada pada sirkuit pemagnetan. Untuk memperbesar kuat medan magnet dibentuk suatu sirkuit. Kontakkontak atau kutub-kutub dari relay umumnya memiliki tiga dasar pemakaian yaitu : 1. Bila kumparan dialiri arus listrik maka kontaknya akan menutup dan disebut sebagai kontak Normally Open ( NO ). 2. Bila kumparan dialiri arus listrik maka kontaknya akan membuka dan disebut dengan kontak Normally Close ( NC ).
Eddy Marlianto : Sistem Pengendali Suhu Incubator Berbasis Mikrokontroller AT89S51, 2007
3. Tukar-sambung ( Change Over/CO ), relay jenis ini mempunyai kontak tengah yang normalnya tertutup tetapi melepaskan diri dari posisi ini dan membuat kontak dengan yang lain bila relay dialiri listrik. Berikut ini memperlihatkan beberapa bentuk kontak dari sebuah relay :
Gambar 2.7 Jenis Jenis Relay Sifat – sifat relay : a. Impedansi kumparan, biasanya impedansi ditentukan oleh tebal kawat yang digunakan serta banyaknya lilitan. Biasanya impedansi berharga 1 – 50 K guna memperoleh daya hantar yang baik. b. Kuat arus yang digunakan untuk menggerakkan relay, biasanya arus ini diberikan oleh pabrik. Relay dengan perlawanan kecil memerlukan arus besar sedangkan relay dengan perlawanan besar memerlukan arus yang kecil. c. Tegangan yang diperlukan untuk menggerakkan relay. d. Daya yang diperlukan untuk mengoperasikan relay besarnya sama dengan nilai tegangan dikalikan arus. e. Banyaknya kontak-kontak jangkar dapat membuka dan menutup lebih dari satu kontak sekaligus tergantung pada kontak dan jenis relaynya. Jarakantara kontak-kontak menentukan besarnya tegangan maksimum yang diizinkan antara kontak tersebut.
Eddy Marlianto : Sistem Pengendali Suhu Incubator Berbasis Mikrokontroller AT89S51, 2007
2.6. Pemrograman Mikrokontroler
Dalam penulisan program pada perancangan alat ini digunakan software 8051IDE. Adapun tampilannya adalah seperti pada gambar 2.8.1.
Gambar 2.10 Tampilan software 8051 IDE
Penulisan program tersebut adalah dengan menggunakan bahasa pemrograman Asembly.Beberapa instruksi yang terdapat dalam pemrograman pada mikrokontroler jenis AT89S51 adalah sebagai berikut : 1. Add
Instruksi untuk melakukan operasi penjumlahan pada dua buah data yang terdapat pada alamat register yang ditunjuk oleh instruksi. Cth : Add A,Rn
Eddy Marlianto : Sistem Pengendali Suhu Incubator Berbasis Mikrokontroller AT89S51, 2007
Instruksi ini melakukan operasi penjumlahan data pada Akumulator dengan data pada alamat register Rn (n=0…7) dan hasilnya disimpan di Akumulator. 2. Call
Instruksi untuk melakukan panggilan terhadap instruksi yang terdapat di dalam subrutin yang ditunjuk. Setelah menjalankan instruksi-instruksi tersebut, program akan melanjutkan kembali instruksi yang terdapat pada program utama. a. Acall; instruksi ini melakukan panggilan pada subrutin yang ditunjuk dengan jangkauam maksimal 2 Kbyte. b. Lcall ; Instruksi ini melakukan panggilan pada subrutin yang ditunjuk dengan jangkauan maksimal 64 Kbyte. 3. Cjne (Compare and Jump if not Equal)
Instruksi ini melakukan perbandingan antara data sumber dengan data tujuan. Bila datanya sama maka lanjutkan ke instruksi di bawahnya, bila data tidak sama maka jump ke alamat yang dituju. Format instruksi : Cjne data tujuan, data sumber, alamat input 4. Clr (clear)
Instruksi ini memberi data 0 pada alamat register yang ditunjuk. Contoh : Clr A Instruksi ini memberi data 0 pada akumulator. 5. Cpl (Complement)
Instruksi ini melakukan operasi komplemen pada alamat register yang ditunjuk.. Contoh: Cpl C Data pada carry flag dikomplemenkan 6. Dec (Decrement)
Eddy Marlianto : Sistem Pengendali Suhu Incubator Berbasis Mikrokontroller AT89S51, 2007
Instruksi ini melakukan
operasi pengurangan dengan nilai 1 pada data yang
terdapat pada alamat register yang ditunjuk oleh instruksi dan menyimpannya pada register tersebut. Contoh : Dec A Data pada akumulator dikurangi dengan 1 dan hasilnya disimpan di akumulator. 7. Div (Divide)
Instruksi ini melakukan operasi pembagian pada dua buah data yang terdapat pada alamat register yang ditunjuk oleh instruksi. Contoh : Div AB Data dari akumulator dibagi dengan data pada register B, hasilnya disimpan di akumulator dan sisanya disimpan di register B. 8. Djnz (Decrement and jump if not zero)
Instruksi ini melakukan operasi pengurangan pada alamat register serbaguna (r0…R7) yang ditunjuk dengan nilai 1 dan akan jump bila hasil dari pengurangan itu nilainya tidak sama dengan nol. Contoh : Djnz Rn, subrutin Instruksi ini melakukan operasi pengurangan pada alamat register (R0…R7) dengan 1dan melompat ke subrutin jika hasilnya bukan nol. Akan tetapi jika hasilnya sama dengan nol maka program akan menjalankan instruksi dibawahnya.
9. Inc (Increment)
Instruksi ini melakukan operasi penjumlahan dengan nilai 1 pada data yang terdapat pada alamat register yang ditunjuk oleh instruksi dan menyimpannya pada alamat register tersebut.
Eddy Marlianto : Sistem Pengendali Suhu Incubator Berbasis Mikrokontroller AT89S51, 2007
Contoh : Inc A Instruksi ini menjumlahkan data akumulator dengan 1 dan hasilnyadisimpan di akumulator.
10. Jb (Jump on bit set)
Instruksi ini melakukan pengujian bit pada alamat bit yang ditunjuk. Jika data bit = 1 maka program tersebut akan melompat ke subrutin yang ditunjuk oleh instruksi. Akan tetapi bila data bit = 0 maka program akan menjalankan instruksi di bawahnya atau selanjutnya.
11. Jnb (Jump on not bit set)
Instruksi ini melakukan pengujian bit pada alamat bit yang ditunjuk. Jika data bit bernilai 0 maka program akan melompat ke subrutin yang ditunjuk oleh instruksi. Bila data bit bernilai 1 maka program akan menjalankan instruksi di bawahnya atau selanjutnya.
12. Jmp (Jump)
Instruksi ini melakukan lompatan pada alamat kode yang ditunjuk. a. Ajmp ( Absolute Jump) ; Instruksi ini melakukan lompatan ke subrutin yang ditunjuk sejauh maksimum 11 bit dari alamat yang ditentukan. b. Ljmp (Long Jump) ; instruksi ini melakukan lompatan ke subrutin yang ditunjuk sejauh maksimum 16 bit dari alamat yang ditentukan. c. Sjmp (Short jump ) ; instruksi ini melakukan lompatan ke subrutin yang ditunjuk sejauh maksimum 128 byte dari alamat yang ditentukan. 13. Jnz (Jump if not zero)
Eddy Marlianto : Sistem Pengendali Suhu Incubator Berbasis Mikrokontroller AT89S51, 2007
Instruksi ini melakukan pengujian data pada akumulator. Jika data pada akumulator tidak sama dengan 00H maka program akan melompat ke subrutin yang ditunjuk. Akan tetapi jika data pada akumulator sama dengan 00H maka program akan menjalankan instruksi di bawahnya atau selanjutnya. 14. Jz (Jump if not zero)
Instruksi ini melakukan pengujian data pada akumulator. Jika data pada akumulatopr tidak sama dengan 00H maka program akan menjalankan instuksi di bawahnya atau selanjutnya, tapi jika data pada akumulator sama dengan 00H maka program akan melompat ke subrutin yang ditunjuk. 15. Mov
Instruksi ini melakukan operasi peminhdahan data dari alamat register satu ke alamat register lainnya. Contoh : Mov A, Rn Instruksi ini melakukan operasi pemindahan data dari alamat register Rn (n=0…7) ke dalam akumulator.
16. Nop
Instruksi ini akan melakukan delay sebesar 1 cycle atau 1 siklus. 17. Ret (Return)
Instruksi ini digunakan untuk kembali ke subrutin. 18. Setb
Instruksi ini melakukan operasi set pada bit yang ditunjuk register. Setelah program selesai ditulis dengan menggunakan bahasa Asembly, kemudian program tersebut disimpan (save). Bentuk tampilan save seperti pada gambar 2.8.2.
Eddy Marlianto : Sistem Pengendali Suhu Incubator Berbasis Mikrokontroller AT89S51, 2007
Program yang telah disimpan tadi kemudian di compile (assembler). Jika pada program terdapat kesalahan maka akan tampil pesan peringatan atau error, atau jika tidak ada kesalahan maka outputnya akan menampilkan pesan seperti pada gambar berikut. Jika masih ada kesalahan maka program harus diperbaiki terlebih dahulu samapai tidak ada kesalahan lagi. Software 8051IDE ini berfungsi untuk mengubah program yang dituliskan ke dalam bentuk bilangan heksadesimal, proses perubahan ini terjadi pada saat pengcompile-an. Bilangan heksadesimal inilah yang akan dikirimkan ke mikrokontroler. Untuk mengirimkan bilangan-bilangan heksadesimal tersebut ke mikrokontroler digunakan software ISP-Flash Programmer 3.0a yang dapat di download dari internet. Cara mengirimkan program ke dalam mikrokontroler adalah dengan mengambil file heksadesimal dari hasil kompilasi 8051IDE melalui Open File.
Eddy Marlianto : Sistem Pengendali Suhu Incubator Berbasis Mikrokontroller AT89S51, 2007
III. METODE PENELITIAN III.1. Diagram Blok Penelitian.
Penyelesaian pembahasan dari pengerjaan sistem kontrol suhu ini membutuhkan perancangan, yaitu perancangan rangkaian dan juga perancangan program. Untuk perancangan rangkaian terlebih dahulu dibuat diagram blok yang akan mempermudah. Diagram blok rangkaian terlihat pada gambar 3.1.
Pemanas
Sensor suhu
ADC
Driver (relay)
Rangkaian Pengolah
Display 7- segment
Gambar 3.1. Gambar diagram blok
Dari diagram blok terlihat bahwa sitem ini bekerja secara terus-menerus atau berkelanjutan.Mikrokontroler dirancang untuk mengontrol suhu dan menahan suhu tersebut untuk jangka waktu tertentu yang akan diaplikasikan pada penetasan telur. Mikrokontroler akan mendapat masukan dari luar atau dari lingkungan. Masukannya adalah berupa lampu pijar yang merupakan pemanas yang menghasilkan suhu atau temperatur tertentu.
Sensor suhu LM 35 digunakan untuk
mendeteksi suhu disekitar ruangan
penetasan yang kemudian akan dikonversikan menjadi nilai tegangan. Pengambilan suhu
Eddy Marlianto : Sistem Pengendali Suhu Incubator Berbasis Mikrokontroller AT89S51, 2007
oleh sensor suhu dilakukan untuk waktu yang terus-menerus atu berkelanjutan. Sensor suhu dihubungkan ke input ADC 0804, untuk mengubah data analog dari sensor tersebut menjadi data digital sebagai masukan untuk sistem minimal mikrokontroler AT89S51. 8 bit keluaran ADC dihubungkan ke port 2 mikrokontroler AT89S51.
Mikrokontroler akan memproses masukan data digital 8 bit dari ADC, dan akan dibandingkan dengan rancangan suhu yang sudah diprogram terlebih dahulu.jika suhu yang diperoleh sesuai dengan rancangan maka pengukuran akan diulangi lagi namun jika suhu tidak sesuai maka akan dilakukan perlakuan yaitu jika suhu lebih tinggi dari rancangan maka rangkaian penggerak akan menonaktifkan pemanas, jika suhu lebih rendah dari rancangan maka rangkaian penggerak akan mengaktifkan kembali pemanas.
Pada rangkaian peralatan ini, feedback tidak dipergunakan karena suhu yang diatur mempunyai range yang kecil. Tidak dibutuhkan penurunan yang drastis dan juga karena pengukuran dilakukan terus-menerus.
Setelah diolah data temperatur tersebut akan ditampilkan pada display seven segmen dalam bentuk data desimal yaitu besarnya suhu dalam inkubator. Hal ini berguna untuk dapat memudahkan pemantauan bagi kerusakan peralatan ataupun pada program.
3.3.1. Rangkaian minimum AT89S51
Rangkaian minimum mikrokontroler AT89S51 adalah rangkaian yang berfungsi sebagai rangkaian utama pada perancangan ini. Rangkaian minimum mikrokontroller AT89S51 ditunjukkan pada gambar 3.4.2 berikut.
Eddy Marlianto : Sistem Pengendali Suhu Incubator Berbasis Mikrokontroller AT89S51, 2007
5 Volt
P I. 0 P I. 1 P I. 2 P I. 3 P I. 4 P I. 5 P I. 6 P I. 7 PST P3. 0 P3. 1 P3. 2 P3. 3 P3. 4 P3. 5 P3. 6 P3. 7 XTAL 2 XTAL 1 GND
VCC
A T 8 9 S 5 1
VCC PO. 0 PO. 1 PO. 2 PO. 3 PO. 4 PO. 5 PO. 6 PO. 7 EA ALE PSEN P2. 7 P2. 6 P2. 5 P2. 4 P2. 3 P2. 2 P2. 1 P2. 0
24 P F
XTAL 12 M H Z
Gambar 3.4.2 Rangkaian minimum AT89S51
Pin 29 merupakan PSEN (Program Store Enable) dan pin 30 sebagai Address Latch Enable (ALE)/PROG dihubungkan ke ground (diset low), sedangkan Pin 31 External Access Enable (EA) diset high (H). Ini dilakukan karena mikrokontroller AT89S51 tidak menggunakan memori eskternal. Pin 18 dan 19 dihubungkan ke XTAL 12 MHz dan capasitor 33 pF. XTAL ini akan mempengaruhi kecepatan mikrokontroller AT89S51 dalam mengeksekusi setiap perintah dalam program. Pin 9 merupakan masukan reset (aktif tinggi). Pulsa transisi dari rendah ke tinggi akan me-reset mikrokontroller ini. Pin 32 sampai 39 adalah Port 0 yang merupakan saluran/bus I/O 8 bit open collector dapat juga digunakan sebagai multipleks bus alamat rendah dan bus data selama adanya akses ke memori program eksternal. Karena fungsi tersebut maka Port 0 dihubungkan dengan resistor array. Pin 20 merupakan ground dihubungkan dengan ground pada power supplay. Pin 40 merupakan sumber tegangan positif dihubungkan dengan + 5 volt dari power supplay. Eddy Marlianto : Sistem Pengendali Suhu Incubator Berbasis Mikrokontroller AT89S51, 2007
3.1.2.
Sistem Sensor Temperatur .
Untuk mengetahui temperatur dalam ruangan, digunakan LM35 yang merupakan sensor temperatur. Output dari LM35 ini dimasukkan sebagai input ke Op-Amp kemudian dimasukkan sebagi input ADC. Rangkaiannya seperti dibawah ini. VDD
LM7809CT
12V
LM7805CT
Vreg IN
Vreg
OUT
IN
100uF
100pF
VCC
OUT 100pF
100uF
2SA733
1.0kΩ
4.7kΩ VCC
Gnd
10kΩ 5V
5
+ VCC
100pF
LM358N
7
330Ω VCC
5V
100pF
1uF 50%
3
100pF
8
330Ω
LM358N
1
4
2
4.7kΩ
ADC0804
10kΩ
6
5V
4
330Ω
330Ω
4.7kΩ
Out 8
LM35
5V
330Ω
100pF
CS
VCC
RD
CLK R
WR
D0
CLK IN
D1
INTR
D2
V IN (+)
D3
V IN (-)
D4
A GND
D5
V REF/2
D6
D GND
D7
P0.0 (AT89S51)
P2.0 (AT89S51) P2.1 (AT89S51) P2.2 (AT89S51) P2.3 (AT89S51) P2.4 (AT89S51) P2.5 (AT89S51) P2.6 (AT89S51) P2.7 (AT89S51)
1.0kΩ
Gambar 3.4.3. Sistem Sensor Temperatur dan ADC
Agar output yang dihasilkan oleh ADC bagus, maka tegangan refrensi ADC harus benar-benar stabil, karena perubahan tegangan refrensi pada ADC akan merubah output ADC tersebut. Oleh sebab itu pada rangkaian ADC di atas tegangan masukan 12 volt dimasukkan ke dalam IC regulator tegangan 9 volt ( 7809) agar keluarannya menjadi 9 volt, kemudian keluaran 9 volt ini dimasukkan kedalam regulator tegangan 5 volt (7805), sehingga keluarannya menjadi 5 volt. Tegangan 5 volt inilah yang menjadi tegangan refrensi ADC. Dengan demikian walaupun tegangan masukan turun setengahnya, yaitu dari 12 volt menjadi 6 volt, tegangan refrensi ADC tetap 5 volt.
Eddy Marlianto : Sistem Pengendali Suhu Incubator Berbasis Mikrokontroller AT89S51, 2007
Output dari LM35 diinputkan ke Op Amp LM358. Pada Op Amp ini tidak terjadi penguatan tegangan tetapi terjadi penguatan arus. Output dari Op Amp ini merupakan input pada ADC, ini berarti setiap perubahan tegangan yang terjadi pada input ini maka akan terjadi perubahan pada output ADC.
3.1.3. Rangkaian Display Seven Segmen
Nilai temperatur yang terdeteksi oleh sensor temperatur (LM35) diubah menjadi 8-bit data biner oleh ADC kemudian diolah oleh mikrokontroler AT89S51 untuk selanjutnya ditampilkan pada 3-digit seven segmen. Rangkaian display seven segmen tampak seperti gambar di bawah ini : VCC5V
i
SEVEN_SEG_DISPLAY
5
4 D7
D6
7
Out
4094
10
11
12
13
6 D5
D4
D3
D2
D1
In 2
10
Out
4094
Clock
D0
5
4 D7
14
A B C DE F G
D6
7
11
6 D5
D4
D3
12 Clock
13 In
2
D2
14
5 10
Out
4094
3
D1
D0
D7
4
A B C DE F G
D6
7
11
12
6 D5
D4
D3
13 D1
D2 Clock 3
2
In
D0
14
A B C DE F G
P3.0 AT89S51
i
SEVEN_SEG_DISPLAY
3
i
SEVEN_SEG_DISPLAY
P3.1 AT89S51
Gambar 3.4.4 Rangkaian Display Seven Segment Display ini menggunakan 3 buah seven segmen yang dihubungkan ke IC 4094 yang merupakan IC serial to paralel. IC ini akan merubah 8 bit data serial yang masuk menjadi keluaran 8 bit data paralel. Rangkaian ini dihubungkan dengan P3.0 dan P3.1 AT89S51. P3.0 merupakan fasilitas khusus pengiriman data serial yang disediakan oleh mikrokontroler AT89S51. Sedangkan P3.1 merupakan sinyal clock untuk pengiriman data serial.
Eddy Marlianto : Sistem Pengendali Suhu Incubator Berbasis Mikrokontroller AT89S51, 2007
Dengan menghubungkan P3.0 dengan IC serial to paralel (IC 4094), maka data serial yang dikirim akan diubah menjadi data paralel. Kemudian IC 4094 ini dihubungkan dengan seven segmen agar data tersebut dapat ditampilkan dalam bentuk angka. Seven segmen yang digunakan adalah aktip low, ini berarti segmen akan hidup jika diberi data low (0) dan segmen akan mati jika diberi data high (1). Untuk menampilkan angka pada seven segmen, maka data yang harus diberikan adalah sebagai berikut: •
Untuk menampilkan angka nol, data yang harus dikirim adalah
20h.
•
Untuk menampilkan angka satu, data yang harus dikirim adalah
0ech
•
Untuk menampilkan angka dua, data yang harus dikirim adalah
18h
•
Untuk menampilkan angka tiga, data yang harus dikirim adalah
88h
•
Untuk menampilkan angka empat, data yang harus dikirim adalah 0c4h
•
Untuk menampilkan angka lima, data yang harus dikirim adalah
82h
•
Untuk menampilkan angka enam, data yang harus dikirim adalah
02h
•
Untuk tampilan kosong (tidak ada nilai yang tampil), data yang harus dikirim adalah 0ffh
Program untuk menampilkan angka pada display seven segmen adalah sebagai berikut:
bil0 equ
20h
; untuk menampilkan angka nol
bil1 equ
0ech
; untuk menampilkan angka satu
bil2 equ
18h
; untuk menampilkan angka dua
bil3 equ
88h
: untuk menampilkan angka tiga
bil4 equ
0c4h
; untuk menampilkan angka empat
bil5 equ
82h
; untuk menampilkan angka lima
bil6 equ
02h
; untuk menampilkan angka enam
bilkosong equ 0ffh ; untuk tampilan kosong
mov 60h,#bil1
; mengisikan register 60h dengan bilangan 1
mov 61h,#bil2
; mengisikan register 60h dengan bilangan 2
Eddy Marlianto : Sistem Pengendali Suhu Incubator Berbasis Mikrokontroller AT89S51, 2007
mov 62h,#bil3
; mengisikan register 60h dengan bilangan 3
Tampil: mov sbuf,62h ; mengirimkan nilai data pada register 62h ke serial buffer jnb ti,$
; menampilkannya pada seven segment
clr ti mov sbuf,61h ; mengirimkan nilai data pada register 61h ke serial buffer jnb ti,$
; menampilkannya pada seven segment
clr ti mov sbuf,60h ; mengirimkan nilai data pada register 60h ke serial buffer jnb ti,$
; menampilkannya pada seven segment
clr ti sjmp Tampil ; run (kembali) pada subrutin tampil
Program di atas akan menampilkan nilai 123 pada display seven segmen. Dan nilai berapapun yang diisikan ke alamat 60h, 61h dan 62h akan ditampilkan pada display seven segmen.
3.1.4
Rangkaian Driver Pemanas
Alat ini secara otomatis akan mematikan dan menghidupkan salah satu lampu atau keduanya apabila temperatur yang terdeteksi oleh alat ini tidak sesuai dengan suhu yang dimasukkan. Rangkaian pengendali lampu dapat dilihat pada gambar 3.4.5.
Eddy Marlianto : Sistem Pengendali Suhu Incubator Berbasis Mikrokontroller AT89S51, 2007
12 V
220 V
Gambar 3.4.5 Rangkaian Pengendali lampu Lampu yang digunakan adalah dua buah bola lampu yang berdaya 40 Watt 220 volt DC. Pada rangkaian di atas transistor berfungsi sebagai saklar elektronik yang dapat menghidupkan dan mematikan lampu. Transistor yang digunakan dalam rangkaian di atas adalah transistor jenis NPN, transistor jenis ini akan aktip apabila tegangan pada basis lebih besar dari 0,7 volt. Resistor 4,7 Kohm pada basis berguna untuk membatasi arus yang masuk pada basis agar transistor tidak rusak. Seperti telah dijelaskan di atas bahwa transistor jenis NPN akan aktip apabila tegangan pada basis lebih besar dari 0,7 volt, dimana basis dihubungkan dengan Processus spinosus0.7 AT89S51. Processus spinosus0.7 akan memiliki tegangan sebesar 5 volt jika diset high (1) dan memiliki tegangan 0 volt jika diset low (0). Dengan demikian kita sudah dapat mengendalikan (menghidupkan/ mematikan) transistor melalui program. Program yang harus diisikan untuk mengaktipkan transistor yang akan menyebabkan lampu hidup adalah sebagai berikut, Setb Processus spinosus0.6 Setb Processus spinosus0.7 Dan untuk mematikan lampu maka program yang harus diisikan adalah, Clr
Processus spinosus0.6
Clr
Processus spinosus0.7
Eddy Marlianto : Sistem Pengendali Suhu Incubator Berbasis Mikrokontroller AT89S51, 2007
III.2. METODE PENGAMBILAN DATA.
Pengujian Sensor Suhu. Untuk mengetahui ketelitian sensor suhu yang dipakai diperlukan suatu pengujian yaitu dengan membandingkan sensor suhu dengan termometer digital. Sehingga akan diperoleh ralat temperaturnya. Dalam penelitian ini dilakukan 5 kali percobaan untuk mengukur suhu dengan mengkalibrasikan suhunya. Pada pengujian ini dikalibrasikan suhu seperti pada tabel 4.2.1.
Pengujian pengontrolan suhu.
Untuk mengontrol suhu stabil pada periode tertentu maka tahap awal dilakukan pembuatan program pengendali .Adapun program pengendali yang dibuat ditunjukkan pada lampiran penelitian ini
Eddy Marlianto : Sistem Pengendali Suhu Incubator Berbasis Mikrokontroller AT89S51, 2007
III. HASIL DAN PEMBAHASAN.
Tabel 4.2.1 Tabel Hasil Pengujian Sensor Suhu Suhu praktek pada termometer digital (oC)
Suhu teori Sensor suhu
I
II
III
IV
V
30
30,5
30,3
30,2
30,2
30,7
35
35,7
35,0
35,9
35,1
35,8
40
40,6
40,3
40,1
40,9
40,6
45
45,3
45,6
45,0
45,8
45,5
50
50,5
50,8
50,0
50,5
50,5
55
55,5
55,9
55,0
55,7
55,2
60
60,7
60,5
60,0
60,9
60,6
65
65,3
65,0
65,1
65,4
65,9
70
70,2
70,8
70,2
70,9
70,8
75
75,6
75,9
75,2
75,6
75,6
LM35 (oC)
Dilihat dari hasil pengujian diperoleh ketelitian sensor cukup baik dan kesalahan relatip kecil. Hasil uji coba ditunjukkan pada tabel 4.1 dibawah : Tabel 4.1. Tabel Hasil Pengujian Alat Suhu
Waktu
diset
Suhu
o
( C)
Pengukuran suhu dengan termometer digital setiap 10 s I
II
III
IV
V
VI
stabil (s)
40
60
40,2
40,1
40,0
40.2
39,9
40,0
45
60
45,1
45,2
45,1
45,2
45,1
44,9
50
60
50,2
50,1
50,2
49,9
50,0
50,1
55
60
55,1
55,2
55,1
55,1
55,1
55,0
Eddy Marlianto : Sistem Pengendali Suhu Incubator Berbasis Mikrokontroller AT89S51, 2007
Hasil pengamatan pada table 4.1 diatas dapat ditunjukkan pada diagram waktu sebagai berikut Suhu C
waktu(s)
Gambar 4.1 Diagram waktu hasil pengujian
Eddy Marlianto : Sistem Pengendali Suhu Incubator Berbasis Mikrokontroller AT89S51, 2007
V. KESIMPULAN DAN SARAN 5.1. Kesimpulan
Dari hasil penelitian ini dapat diambil kesimpulan sebagai berikut ; 1. Ketelitian sensor suhu yang digunakan yaitu LM 35 cukup memadai. 2. Pengendalian suhu stabil (konstan) pada rentang waktu tertentu cukup memadai dengan menggunakan mikrokontroler. 3. Dari hasil uji coba diperoleh hasil cukup akurat, hal ini menunjukkan pengaturan suhu incubator cukup memadai untuk pemisahan molekul-molekul kimia seperti yang diharapkan. 5.2. Saran
Setelah melakukan penelitian ini diperoleh beberapa hal yang dapat dijadikan saran untuk dapat melakuklan penelitian lebih lanjut, yaitu : 1. Diharapkan pada kesempatan lain dapat dicoba untuk memisahkan molekulmolekul kimia dengan bekerja sama dengan ahli-ahli kimia. 2. Juga disarankan untuk menambah variasi rancangan suhu pengontrolan
Eddy Marlianto : Sistem Pengendali Suhu Incubator Berbasis Mikrokontroller AT89S51, 2007
DAFTAR PUSTAKA
Agfianto.2002. Belajar Mikrokontroler AT89C51/52/55. Yogyakarta: Gava Medan. Budiharto,Widodo.2005.PerancanganSistemdanAplikasiMikrokontrolerJakarta:. Daryanto, 2000, Teknik Elektronika, Edisi 1, Jakarta, PT. Bumi Aksara. Malvino, 1981, Prinsip-prinsip Elektronika, Edisi 2, Erlangga, Jakarta. Nalwan Paulus Andi, 2003, Teknik Antarmuka dan Pemrograman Mikrolkontroler AT89C51, Cetakan 2, Jakarta, PT, Elexmedia Komputindo. Suhata, 2005, Aplikasi Mikrokontroler, Jakarta, PT. Elexmedia Komputindo. Sutrisno, 1985, Elektronika Teori dan Dasar Penerapannya, Jilid 1, ITB Bandung.
Eddy Marlianto : Sistem Pengendali Suhu Incubator Berbasis Mikrokontroller AT89S51, 2007