Perancangan Sistem Monitoring Temperatur Lingkungan Dengan Tampilan Display Matrix Berbasis Mikrokontroler At89s51

(1)

DENGAN TAMPILAN DISPLAY MATRIX

BERBASIS MIKROKONTROLER AT89S51

TUGAS AKHIR

CHRISTIAN FARADAY GINTING

(052408078)

PROGRAM STUDI FISIKA INSTRUMENTASI

DEPARTEMEN FISIKA

FAKULTAS MATEMATIKA DAN ILMU PENGETAHUAN ALAM

UNIVERSITAS SUMATERA UTARA

MEDAN

2008


(2)

DENGAN TAMPILAN DISPLAY MATRIX

BERBASIS MIKROKONTROLER AT89S51

TUGAS AKHIR

Diajukan untuk melengkapi tugas dan memenuhi syarat mencapai gelar Ahli Madya

CHRISTIAN FARADAY GINTING

(052408078)

PROGRAM STUDI FISIKA INSTRUMENTASI

DEPARTEMEN FISIKA

FAKULTAS MATEMATIKA DAN ILMU PENGETAHUAN ALAM

UNIVERSITAS SUMATERA UTARA

MEDAN

2008


(3)

Judul : PERANCANGAN SISTEM MONITORING TEMPERATUR LINGKUNGAN

DENGAN TAMPILAN DISPLAY MATRIX BERBASIS MIKROKONTROLER AT89S51

Kategori : TUGAS AKHIR

Nama : CHRISTIAN FARADAY GINTING

Nomor Induk Mahasiswa : 052408078

Program Studi : DIPLOMA III FISIKA INSTRUMENTASI

Departemen : FISIKA

Fakultas : MATEMATIKA DAN ILMU

PENGETAHUAN ALAM (MIPA) UNIVERSITAS SUMATERA UTARA MEDAN

Diluluskan di Medan, Juli 2008

Diketahui

Departemen Fisika FMIPA USU

Ketua Program Studi, Pembimbing,

Drs. Syahrul Humaidi, M.Sc

NIP.132050870 NIP.131459465


(4)

LEMBAR PERSETUJUAN

Judul : PERANCANGAN SISTEM MONITORING TEMPERATUR LINGKUNGAN

DENGAN TAMPILAN DISPLAY MATRIX BERBASIS MIKROKONTROLER AT89S51 Kategori : TUGAS AKHIR

Nama : CHRISTIAN FARADAY GINTING Nomor Induk Mahasiswa : 052408078

Program Studi : DIPLOMA III FISIKA INSTRUMENTASI Departemen : FISIKA

Fakultas : MATEMATIKA DAN ILMU PENGETAHUAN ALAM (MIPA) UNIVERSITAS SUMATERA UTARA MEDAN

Diluluskan di Medan, Juli 2008

Diketahui

Departemen Fisika FMIPA USU

Ketua Program Studi, Pembimbing,

Drs. Syahrul Humaidi, M.Sc Drs. Bisman Peranginangin, M.Eng.Sc NIP.132050870 NIP.131459465


(5)

PERANCANGAN SISTEM MONITORING TEMPERATUR LINGKUNGAN DENGAN TAMPILAN DISPLAY MATRIX

BERBASIS MIKROKONTROLER AT89S51

TUGAS AKHIR

Saya mengakui bahwa tugas akhir ini adalah hasil kerja saya sendiri, kecuali beberapa kutipan dan ringkasan yang masing-masing disebutkan sumbernya.

Medan, Juli 2008

CHRISTIAN F. GINTING 052408078


(6)

PENGHARGAAN

Puji dan syukur kehadirat Tuhan Yang Maha Esa atas berkat rahmatnya kertas kajian ini dapat diselesaikan dalam waktu yang telah ditetapkan.

Ucapan terima kasih yang sebesar-besarnya penulis sampaikan kepada Bapak Drs. Bisman Peranginangin, M.Eng.Sc selaku Dosen Pembimbing dari Departemen Fisika Falkultas Matematika dan Ilmu Pengetahuan Alam Universitas Sumatera Utara yang telah memberikan panduan dan kepercayaan penuh kepada penulis dalam penyempurnaan kajian ini. Ucapan terimakasih juga ditujukan kepada Drs. Syahrul Humaidi, M.Sc dan Dra. Justinon M.Si selaku Ketua dan Sekretaris Program Studi D3 Fisika Instrumentsi, Dekan dan Pembantu Dekan FMIPA USU, semua Dosen serta staf dan karyawan Departemen Fisika yang tidak dapat disebutkan satu-persatu dan kepada teman-teman kuliah FIN ’05, d’Tio, Pak Dewan CS serta PCN Comunity Friends. Akhirnya tidak terlupakan kepada Ayahanda tercinta Betesda Ginting dan Ibunda tercinta Nurmala br.Sitepu serta kedua saudara penulis, Ferraro S.O.Ginting dan Dewi S.R.Ginting yang selama ini memberikan dorongan dan bantuan moril maupun materil.


(7)

ABSTRAK

Sistem monitoring temperatur lingkungan merupakan suatu alat yang bekerja secara otomatis sesuai dengan nilai yang diberikan sensor melalui rangkaian ADC (Analog to Digital Converter) yang merupakan rangkaian pengubah data analog menjadi data digital. Data digital kemudian dikirim ke mikrokontroler AT89S51 untuk memproses data suhu yang nantinya ditampilkan menjadi karakter atau kata. Tampilan yang digunakan adalah matrix display yang merupakan susunan beberapa LED yang dapat menampilkan karakter berupa angka maupun huruf yang diam maupun berjalan.


(8)

DAFTAR ISI

LEMBAR PERSETUJUAN... ... i

LEMBAR PERNYATAAN... ... ii

PENGHARGAAN ... iii

ABSTRAK.... ... iv

DAFTAR ISI... v

BAB 1. PENDAHULUAN ... 1

1.1. Latar Belakang ... 1

1.2. Tujuan ... 2

1.3. Batasan Masalah ... 3

1.4. Metodelogi Penulisan... 3

1.5. Sistematika Penulisan ... 3

BAB 2 TINJAUAN PUSTAKA... 5

2.1. Perangkat Keras ... 5

2.1.1. Mikrokontroler AT89S51... ... 5

2.1.1.1. Konstruksi AT89S51... ... 6

2.1.1.2. Gambar Mikrokontroler AT89S51... ... 8

2.1.2. Sensor Temperatur... ... 11

2.1.2.1. Termokopel... ... 11

2.1.2.2. Termistor... ... 12

2.1.2.3. LM35... 12

2.1.3. Display Matrix... ... 14

2.1.4. Analog to Digital Converter (ADC) ... 15

2.2. Perangkat Lunak... ... 17

2.2.1. Instruksi Dasar Assembly ... 17

2.2.1.1. Instruksi Pemindahan Data... ... 17

2.2.1.2. Instruksi Aritmatika... ... 17

2.2.1.3. Instruksi Logika dan Manipulasi Bit... 18

2.2.1.4. Instruksi Percabangan... ... 18


(9)

3.1. Rancangan Sistem ... 19

3.2. Rangkaian Power Supply (PSA) ... 20

3.3. Rangkaian Mikrontroler AT89S51... ... 22

3.4. Rangkaian Sensor Temperatur... ... 23

3.5. Rangkaian Analog to Digital Converter ... 25

3.6. Rangkaian LED Display Matrix ... 27

BAB 4 PENGUJIAN SISTEM DAN PROGRAM... ... 29

4.1. Pengujian Rangkaian Mikrokontroler AT89S51 ... 29

4.2. Rangkaian Demultiplexer ... 30

4.3. Rangkaian LED Matrix Display... ... 32

4.3.1. Menghidupkan 1 buah LED pada LED Matrix Display... ... 32

4.3.2. Menghidupkan LED dalam 1 Kolom... ... 35

4.4. Hasil Uji Coba Sistem... ... 37

4.4.1 Hasil Kalibrasi Sistem Secara Keseluruhan... ... 37

4.4.1.1 Hasil Kalibrasi Sistem Terhadap Kondisi temperatur yang Tetap... ... 38

4.4.1.1.1. Kesalahan Sistem... ... 39

4.4.1.1.2. Akurasi Pembacaan Sistem... ... 39

4.5. Program Lengkap... ... 40

4.5.1 Program Baca ADC... ... 40

4.5.2. Program Display Matrix... ... 43

BAB 5 PENUTUP ... 55

5.1. Kesimpulan ... 55

5.2. Saran... ... 56


(10)

LAMPIRAN 1. Skema Rangkaian Display Matrix

2. Skema Rangkaian Sistem monitoring Temperatur Lingkungan

3a. Gambar Sistem monitoring Temperatur Lingkungan Tampak Depan

3b. Gambar Sistem monitoring Temperatur Lingkungan Tampak Atas

4. Datasheet AT89S51 5. Datasheet LM35


(11)

ABSTRAK

Sistem monitoring temperatur lingkungan merupakan suatu alat yang bekerja secara otomatis sesuai dengan nilai yang diberikan sensor melalui rangkaian ADC (Analog to Digital Converter) yang merupakan rangkaian pengubah data analog menjadi data digital. Data digital kemudian dikirim ke mikrokontroler AT89S51 untuk memproses data suhu yang nantinya ditampilkan menjadi karakter atau kata. Tampilan yang digunakan adalah matrix display yang merupakan susunan beberapa LED yang dapat menampilkan karakter berupa angka maupun huruf yang diam maupun berjalan.


(12)

BAB 1

PENDAHULUAN

1.1. Latar Belakang

Pengukuran, pemantauan dan tampilan nilai suhu adalah bagian sistem yang seringkali dibutuhkan di lingkungan, dalam suatu sistem elektronika, maupun dalam industri. Namun pembuatan alat ini dilatarbelakangi karena sensor temperatur merupakan salah satu sistem yang penting untuk membangun sebuah Weather Station, yang akan memantau dan memberikan informasi mengenai cuaca di suatu daerah.

Temperatur merupakan informasi yang sangat penting dalam menentukan kondisi cuaca pada sebuah daerah. Banyak hal yang bergantung pada kondisi temperatur atau cuaca pada daerah tersebut. Makhluk hidup pun sangat bergantung pada kondisi temperatur daerah yang ditempatinya. Temperatur juga merupakan salah satu kunci penting dalam dunia pertanian atau perkebunan, industri makanan, industri elektronika dan lain-lain.

Namun permasalahannya bagaimana kita bisa membuat alat ukur temperatur dengan lebih mudah, dengan waktu yang lebih singkat, namun dengan data yang lebih akurat dan mudah dikalibrasi. Pengukuran suhu secara konvensional dapat dilakukan


(13)

suhu harus dipantau terus menerus.

Mikrokontroler kini semakin berkembang pesat dan semakin banyak diminati dalam aplikasi sistem kendali. Salah satu jenis mikrokontroler yang sekarang banyak beredar adalah mikrokontroler jenis AT89S51 dari atmel.

Sehubungan hal di atas penulis berkeinginan untuk mencoba mengembangkan sebuah sistem menggunakan mikrokontroler AT89S51 dengan pemrograman bahasa assembler.

Dalam mengantisipasi penggunaan yang lebih luas maka pengukur temperatur yang dipantau dengan mikrokontroler ini didisain agar dapat beroperasi secara stand alone (berdiri sendiri).

1.2. Tujuan

Adapun tujuan penulisan tugas akhir ini adalah:

1. Mengimplementasikan fungsi masukan analog pada mikrokontroler AT89S51 yang mendapat masukan dari LM35 sebagai sensor temperatur yang dikonversi menggunakan ADC.

2. Menggunakan pemrograman bahasa assembler untuk mengembangkan sebuah sistem pengukur temperatur menggunakan mikrokontroler AT89S51 yang hasil datanya ditamplikan pada display matrix.


(14)

1.3. Batasan Masalah

Pada tugas akhir ini, penulis menulis tentang perancangan sistem monitoring temperatur lingkungan dengan batasan-batasan sebagai berikut :

1. Mikrokontroler yang digunakan adalah jenis AT89S51. 2. Mengunakan sensor suhu LM35.

3. Menggunakan pemrograman bahasa assembler.

4. Display untuk menampilkan temperatur digunakan display matrix.

1.4. Metodologi Penulisan

Adapun metode penulisan tugas akhir ini adalah :

1. Identifikasi masalah dengan penelusuran referensi baik dari buku maupun dari hasil browsing di situs-situs internet

2. Pembahasan perancangan dan pengujian alat

1.5. Sistematika Penulisan

Untuk mempermudah pembahasan dan pemahaman maka penulis membuat sistematika pembahasan bagaimana sebenarnya prinsip kerja alat monitoring temperatur dengan menggunakan display matrix berbasis mikrokontroler AT89S51, maka penulis menulis laporan ini sebagai berikut:


(15)

Dalam bab ini berisikan mengenai latar belakang, rumusan masalah, tujuan penulisan, batasan masalah, serta sistematika penulisan.

BAB 2. TINJAUAN PUSTAKA

Landasan teori, dalam bab ini dijelaskan tentang teori pendukung yang digunakan untuk pembahasan dan cara kerja dari rangkaian Teori pendukung itu antara lain tentang mikrokontroler AT89S51, bahasa program yang digunakan. serta karekteristik dari komponen-komponen pendukung.

BAB 3. PERANCANGAN ALAT DAN CARA KERJA RANGKAIAN

Pada bagian ini akan dibahas perancangan dari alat, yaitu diagram blok dari rangkaian, skematik dari masing-masing rangkaian.

BAB 4. PENGUJIAN SISTEM DAN PROGRAM

Pada bab ini akan dibahas tentang uji coba sistem satu persatu serta pemaparan program yang digunakan.

BAB 5. PENUTUP

Bab ini merupakan penutup yang meliputi tentang kesimpulan dari pembahasan yang dilakukan dari tugas akhir ini serta saran apakah rangkaian ini dapat dibuat lebih efisien dan dikembangkan perakitannya pada suatu metode lain yang mempunyai sistem kerja yang sama.


(16)

TINJAUAN PUSTAKA

2.1. Perangkat Keras

2.1.1. Mikrokontroler AT89S51

Mikrokontroler merupakan suatu komponen elektronika yang di dalamnya terdapat rangkaian mikroprosesor, memori (RAM atau ROM) dan I/O, rangkaian tersebut terdapat dalam level chip atau biasa disebut single chip mikrokomputer. Pada mikrokontroler telah terdapat komponen-komponen mikroprosesor dengan bus-bus internal yang saling berhubungan. Komponen-komponen tersebut adalah RAM, ROM, timer, komponen I/O paralel dan serial, dan interupsi kontroler.

Tidak seperti sistem komputer, yang mampu menangani berbagai macam program aplikasi (misalnya pengolah kata, pengolah angka dan lain sebagainya), mikrokontroler hanya bisa digunakan untuk satu aplikasi tertentu saja. Perbedaan lainnya terletak pada perbandingan RAM dan ROM-nya. Pada sistem komputer RAM dan ROM-nya besar. Sedangkan pada mikrokontroler ROM dan RAM-nya terbatas.


(17)

Mikrokontroler AT89S51 hanya memerlukan tambahan 3 kapasitor, 1 resistor dan 1 kristal serta catu daya 5 Volt. Kapasitor 10 mikro-Farad dan resistor 10 Kilo Ohm dipakai untuk membentuk rangkaian reset. Dengan adanya rangkaian reset ini AT89S51 otomatis direset begitu rangkaian menerima catu daya. Kristal dengan frekuensi maksimum 24 MHz dan kapasitor 30 piko-Farad dipakai untuk melengkapi rangkaian oscilator pembentuk clock yang menentukan kecepatan kerja mikrokontroler.

Memori merupakan bagian yang sangat penting pada mikrokontroler. Mikrokontroler memiliki dua macam memori yang sifatnya berbeda. Read Only Memory (ROM) yang isinya tidak berubah meskipun IC kehilangan catu daya. Sesuai dengan keperluannya, dalam susunan MCS-51 memori penyimpanan progam ini dinamakan sebagai memori progam. Random Access Memori (RAM) isinya akan sirna begitu IC kehilangan catu daya, dipakai untuk menyimpan data pada saat progam bekerja. RAM yang dipakai untuk menyimpan data ini disebut sebagai memori data.

Ada berbagai jenis ROM. Untuk mikrokontroler dengan progam yang sudah baku dan diproduksi secara masal, progam diisikan ke dalam ROM pada saat IC mikrokontroler dicetak di pabrik IC. Untuk keperluan tertentu mikrokontroler menggunakan ROM yang dapat diisi ulang atau Programble-Eraseable ROM yang disingkat menjadi PEROM atau PROM. Dulu banyak dipakai UV-EPROM (Ultra Violet Eraseable Progamble ROM) yang kemudian dinilai mahal dan ditinggalkan setelah ada flash PEROM yang harganya jauh lebih murah.


(18)

Jenis memori yang dipakai untuk Memori Program AT89S51 adalah Flash PEROM, program untuk mengendalikan mikrokontroler diisikan ke memori itu lewat bantuan alat yang dinamakan sebagai AT89S51 Flash PEROM Programmer. Memori Data yang disediakan dalam chip AT89S51 sebesar 128 byte, meskipun hanya kecil saja tapi untuk banyak keperluan memori kapasitas itu sudah cukup.

AT89S51 dilengkapi UART (Universal Asyncronous Receiver/Transmiter)

yang biasa dipakai untuk komunikasi data secara seri. Jalur untuk komunikasi data seri (RXD dan TXD) diletakan berhimpitan dengan P3.0 dan P3.1 di kaki nomor 10 dan 11, sehingga kalau sarana input/ouput yang bekerja menurut fungsi waktu. Clock

penggerak untaian pencacah ini bisa berasal dari oscillator kristal atau clock yang diumpan dari luar lewat T0 dan T1. T0 dan T1 berhimpitan dengan P3.4 dan P3.5, sehingga P3.4 dan P3.5 tidak bisa dipakai untuk jalur input/ouput parelel kalau T0 dan T1 dipakai.

AT89S51 mempunyai enam sumber pembangkit interupsi, dua diantaranya adalah sinyal interupsi yang diumpankan ke kaki INT0 dan INT1. Kedua kaki ini berhimpitan dengan P3.2 dan P3.3 sehingga tidak bisa dipakai sebagai jalur input/output parelel kalau INT0 dan INT1 dipakai untuk menerima sinyal interupsi.

Port1 dan 2, UART, Timer 0,Timer 1 dan sarana lainnya merupakan register yang secara fisik merupakan RAM khusus, yang ditempatkan di Special Functoin Regeister (SFR).


(19)

2.1.1.2. Gambar IC Mikrokontroler AT89S51

Gambar IC mikrokontroler AT89S51 ditunjukkan pada gambar di bawah ini:

Gambar 2.5. IC Mikrokontroler AT89S51

Deskripsi pin-pin pada mikrokontroler AT89S51 :

Pin 1 sampai 8

Ini adalah port 1 yang merupakan saluran/bus I/O 8 bit dua arah. Dengan internal pull-up yang dapat digunakan untuk berbagai keperluan. Pada port ini juga digunakan sebagai saluran alamat pada saat pemrograman dan verfikasi.

Pin 9

Merupakan masukan reset (aktif tinggi), pulsa transisi dari rendah ke tinggi akan me-reset mikrokontroler ini.

Pin 10 sampai 17

Ini adalah port 3 merupakan saluran/bus I/O 8 bit dua arah dengan internal pull-up yang memiliki fungsi pengganti. Bila fungsi pengganti tidak dipakai, maka ini dapat


(20)

digunakan sebagai port parallel 8 bit serbaguna. Selain itu sebagian dari port 3 dapat berfungsi sebagai sinyal control pada saat proses pemrograman dan verifikasi. Adapun fungsi penggantinya seperti pada tabel 2.1.

Pin 18 dan 19

Ini merupakan masukan ke penguat osilator berpenguat tinggi. Pada mikrokontroler ini memiliki seluruh rangkaian osilator yang diperlukan pada serpih yang sama (on chip) kecuali rangkaian kristal yang mengendalikan frekuansi osilator. Karenanya pin 18 dan 19 sangat diperlukan untuk dihubungkan dengan kristal. Selain itu XTAL 1 dapat juga sebagai input untuk inverting oscillator amplifier dan input ke rangkaian internal clock sedangkan XTAL 2 merupakan output dari inverting oscillator amplifier.

Tabel 2.1. Fungsi pengganti dari port 3

BIT NAMA FUNGSI ALTERNATIF

P3.0 P3.1 P3.2 P3.3 P3.4 P3.5 P3.6 P3.7 RXD TXD INTO INT1 TO T1 WR RD

Untuk menerima data port serial Untuk mengirim data port serial Interupsi eksternal 0

Interupsi eksternal 1

Input eksternal waktu/pencacah 0 Input eksternal waktu/pencacah 1 Jalur menulis memori data eksternal Jalur membaca memori data eksternal

Pin 20


(21)

Pin 21 sampai 28

Ini adalah port 2 yang merupakan saluran/bus I/O 8 biit dua arah dengan internal pull-up. Saat pengambilan data dari program memori eksternal atau selama mengakses data memori eksternal yang menggunakan alamat 16 bit, port 2 berfungsi sebagai saluran/bus alamat tinggi (A8 – A15). Sedangkan pada saat mengakses ke data memori eksternal yang menggunakan alamat bit 8 bit , port 2 mengeluarkan isi dari P2 pada Special Function Register.

Pin 29

Program Store Enable (PSEN) merupakan sinyal pengontrol untuk mengakses program memori eksternal masuk ke dalam bus selama proses pemberian/pengambilan instruksi (fetching).

Pin 30

Address Latch Enable (ALE)/ PROG merupakan penahan alamat memori eksternal (pada port 1) selama mengakses ke memori eksternal. Pena ini juga sebagai pulsa/ sinyal input pemrograman (PROG)selama proses pemrograman.

Pin 31

External Access Enable (EA) merupakan sinyal kontrol untuk pembacaan memori program. Apabila diset rendah (L) maka mikrokontroler akan melaksanakan seluruh instruksi dari memori program eksternal, sedangkan apabila diset tinggi (H) maka mkrokontroler akan melaksanakan instruksi dari memori program internal ketika isi


(22)

program counter kurang dar 4096. ini juga berfungsi sebagai tegangan pemrograman (Vpp = +12 V) selama proses pemrograman.

Pin 32 sampai 39

Ini 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. Pada saat proses pemrograman dan verifikasi, port 0 digunakan sebagai saluran/bus data. Eksternal pull-ups diperlukan selama proses verifikasi.

2.1.2. Sensor Temperatur

Sensor adalah piranti yang menghasilkan sinyal keluaran yang sebanding dengan parameter yang diindera (sensing). Pengukuran temperatur merupakan hal yang penting. Pendeteksian temperatur dapat dilakukan dengan menggunakan sensor temperatur. Ada beberapa jenis sensor temperatur yang dapat digunakan dalam pengukuran temperatur, yakni:

2.1.2.1. Termokopel

Termokopel adalah sebuah sensor temperatur yang dibentuk dari dua jenis logam berbeda. Lebih tepatnya hubungan sepasang logam yang berbeda jenis. Salah satu logam befungsi sebagai penentu suhu referensi, sedangkan logam pasangannya berfungsi sebagai pengukur suhu aktual. Perbedaan suhu antara dua logam tersebut akan menghasilkan keluaran berupa tegangan.


(23)

Gambar 2.2. Sensor Temperatur Termokopel

2.1.2.2. Termistor

Termistor adalah sensor temperatur berjenis resistor yang sensitif. Memang semua resistor bila dipengaruhi suhu akan berubah resistansinya. Akan tetapi termistor tersusun atas materi semikonduktor dengan resistivitas yang khusus sensitif terhadap temperatur. Berbeda dengan kebanyakana resistor, resistansi termistor akan berkurang sejalan dengan meningkatnya temperatur. Hal ini disebabkan oleh karakteristik bahan yang menyusun termistor tersebut.

Gambar 2.3. Sensor Temperatur Termistor

2.1.2.3. LM35

LM35 adalah sensor temperatur semiconductor-junction yang tegangan out putnya sebanding dengan temperatur dalam derajat Celcius (0 C). LM35 memiliki kelebihan dibandingkan sensor suhu berpresisi Kelvin, dimana pemakai tidak perlu mengambil nilai tegangan konstan yang besar untuk mendapatkan skala celcius yang tepat. LM35


(24)

memiliki keadaaan default yaitu akurasi ±¼ 0 C pada temperatur ruang dan ±3/4 0 C

pada range maksimum –55 sampai +150 0 C.

LM35 memiliki faktor skala linier +10.0 mV/0C, ini berarti untuk tiap kenaikan satu derajat celcius pada suhu sekitar tegangan output akan naik 10 mV. Tegangan kerja dari LM35 adalah 4 sampai 30 Volt dengan kuat arus sebesar 60 µA.

Gambar 2.4. Sensor Temperatur LM35DZ

Adapun beberapa kelebihan dari LM35 dari sensor temperatur lain adalah: Hasil pengukuran lebih akurat dibandingkan dengan menggunakan

thermistor.

Rangkain sensor tertutup dan tidak bergantung (tidak terpengaruh) pada oksidasi.

LM35 menghasilkan tegangan keluaran lebih besar dibandingkan dengan


(25)

LED matriks display adalah susunan LED berbentuk matriks yang dirangkai sedemikian rupa yang apabila program dari mikrokontroler dikirim ke display matrix, maka display matrix akan menampilkan sesuai kreasi yang ada pada program. Misalnya karakter atau huruf diam/berjalan. Di kota-kota besar, biasanya display ini sudah digunakan sebagai papan iklan, tampilan informasi harian, juga sebagai pengganti pamflet di toko-toko.Dengan susunan LED 7 baris dan 16 kolom, sehingga jumlah seluruh LED yang digunakan adalah 112. Bagian horizontal terdiri dari 7 baris, karena untuk menampilkan sebuah karakter dibutuhkan 7 baris. Bagian vertikal terdiri dari 16 kolom, sesuai dengan jumlah output dari kedua IC 74LS154 yang digunakan. Adapun tampilan display matrix ditunjukkan pada gambar berikut:

Gambar 2.5. Display Matrix

Adapun komponen-komponen pendukung display matrix ini adalah:

• Transistor C 945


(26)

• Resistor 330 ohm

• Resistor 1 Kohm

• Resistor 4K7 ohm

• IC Scanning 74 LS154

2.1.4. Analog to Digital Converter (ADC)

Analog to Digital Converter (ADC) adalah sebuah piranti yang dirancang untuk mengubah sinyal-sinyal analog menjadi sinyal - sinyal digital. IC ADC 0804 dianggap dapat memenuhi kebutuhan dari rangkaian yang akan dibuat. IC jenis ini bekerja secara cermat dengan menambahkan sedikit komponen sesuai dengan spesifikasi yang harus diberikan dan dapat mengkonversikan secara cepat suatu masukan tegangan. Hal-hal yang juga perlu diperhatikan dalam penggunaan ADC ini adalah tegangan maksimum yang dapat dikonversikan oleh ADC dari rangkaian pengkondisi sinyal, resolusi, pewaktu eksternal ADC, tipe keluaran, ketepatan dan waktu konversinya.

Beberapa karakteristik penting ADC :

1. Waktu konversi

2. Resolusi

3. Ketidaklinieran


(27)

sinyal digital yang nilainya proposional. Jenis ADC yang biasa digunakan dalam perancangan adalah jenis successive approximation convertion atau pendekatan bertingkat yang memiliki waktu konversi jauh lebih singkat dan tidak tergantung pada nilai masukan analognya atau sinyal yang akan diubah. Dalam Gambar memperlihatkan diagram blok ADC tersebut.

Gambar 2.7. Diagram Blok ADC

Secara singkat prinsip kerja dari konverter A/D adalah semua bit-bit diset kemudian diuji, dan bilamana perlu sesuai dengan kondisi yang telah ditentukan. Dengan rangkaian yang paling cepat, konversi akan diselesaikan sesudah 8 clock, dan keluaran D/A merupakan nilai analog yang ekivalen dengan nilai register SAR.

Apabila konversi telah dilaksanakan, rangkaian kembali mengirim sinyal selesai konversi yang berlogika rendah. Sisi turun sinyal ini akan menghasilkan data digital yang ekivalen ke dalam register buffer. Dengan demikian, keluaran digital akan tetap tersimpan sekalipun akan dimulai siklus konversi yang baru.


(28)

2.2. Perangkat Lunak

2.2.1. Instruksi Dasar Bahasa Assembly

Mikrokontroler AT89S51 mempunyai 256 kode instruksi. Seluruh instruksi dapat dikelompokkan dalam 4 bagian yang meliputi instruksi 1 byte sampai 4 byte. Semua instruksi tersebut dapat dibagi menjadi lima kelompok menurut fungsinya, yaitu: 1. Instruksi Pemindah Data

2. Instruksi Aritmatika

3. Instruksi Logika dan Manipulasi Bit 4. Instruksi Percabangan

5. Instruksi Stack, I/O, dan Kontrol

2.2.1.1. Instruksi Pemindahan Data

Bagian instruksi ini hanya menyalin data suatu lokasi memori (sumber) ke lokasi tertentu (tujuan), tanpa terjadi perubahan isi data dari sumber. Selain lokasi memori, data juga dapat dipindahkan dari suatu register ke register lain, pemindahan (penyalinan) antar muka-register dan antar muka-memori.

2.2.1.2 Instruksi Aritmatika

Instruksi ini melaksanakan operasi aritmatika yang meliputi penjumlahan, pengurangan, penambahan satu (increment), pengurangan satu(decrement), perkalian dan pembagian.


(29)

Instruksi ini berhubungan dengan operasi-operasi logika pada accumulator dan manipulasi bit. Macam dan instruksi ini adalah AND, OR, XOR, perbandingan, pergeseran dan komplemen data.

2.2.1.4. Instruksi Percabangan

Instruksi ini mengubah urutan normal pelaksanaan suatu program. Dengan instruksi ini program yang sedang dilaksanakan akan mencabang ke suatu alamat tertentu. Instruksi ini dibedakan atas prcabangan bersyarat (misalnya CJNE) dan percabangan tanpa syarat (misalnya ACALL).

2.2.1.5. Instruksi Stack, I/O, dan Kontrol

Instruksi ini mengatur penggunaan stack, membaca/menulis port I/O, serta pengontrolan-pengontrolan.


(30)

BAB 3

PERANCANGAN ALAT DAN CARA KERJA RANGKAIAN

3.1. Rancangan Sistem

Seperti telah dijelaskan pada Bab 1 di atas, bahwa temperatur di lingkungan berkisar antara 250C hingga 420C, sehinnga dibutuhkan sensor temperatur yang mampu mendeteksi temperatur dalam range tersebut. Dengan alasan tersebut, penulis menggunakan LM35DZ sebagai sensor temperatur pada sistem ini. Sebab LM35DZ mampu mendeteksi temperatur dari 00 C hingga 1000 C.

Kemudian agar sistem dapat menghasilkan data yang akurat, mudah dikalibrasi, dan dapat ditampilkan pada display sehingga temperatur dapat dengan mudah dipantau secara terus-menerus, dibutuhkan sebuah pengkondisi sinyal serta sarana penampil hasil olahan data. Salah satu solusi yang dapat dilakukan adalah dengan mengembangkan sebuah sistem pengukur temperatur lingkungan berbasis mikrokontroler AT89S51 buatan Atmel. Berikut adalah gambar diagram blok fungsional sistem monitoring temperatur lingkungan.


(31)

Gambar 3.1. Diagram Blok Sistem Monitoring Lingkungan

Secara garis besar perancangan sistem monitoring lingkungan dengan menggunakan display matrix terdiri dari lima ( 5 ) blok rangkaian utama. Sensor suhu digunakan untuk menginputkan perubahan tegangan ke sistem ADC. Perubahan tegangan yang diterima oleh ADC masih dalam bentuk data analog. Sistem ADC akan mengubah data analog menjadi data digital agar dapat diterima oleh mikrokontroler, karena mikrokontroler hanya dapat menerima data digital. Pada sistem monitoring lingkungan ini, mikrokontroler yang digunakan ada dua buah. Jenis kedua buah mikrokontroler ini adalah sama yaitu AT89S51. Mikrokontroler yang langsung berhubungan dengan ADC, berisi program untuk tampilan suhu. Yang satunya lagi langsung berhubungan dengan display. Mikrokontroler ini berisi program untuk tampilan lain selain suhu, yaitu beberapa karakter yang berbentuk kata-kata.

3.2. Rangkaian Power Supply ( PSA )

Rangkaian ini berfungsi untuk mensupplay tegangan ke seluruh rangkaian yang ada. Rangkaian PSA yang dibuat terdiri dari dua keluaran, yaitu 5 volt dan 12 volt,

SENSOR SUHU

ADC

MASTER MIKROKONTROLER

DISPLAY MATRIX


(32)

Vreg LM7805CT

IN OUT TIP32C

100ohm

100uF

330ohm 220V 50Hz 0Deg

TS_PQ4_12

2200uF 1uF 1N5392GP

1N5392GP

12 Volt

5 Volt

keluaran 5 volt digunakan untuk mensupplay tegangan ke seluruh rangkaian, sedangkan keluaran 12 volt digunakan untuk mensuplay tegangan ke relay. Rangkaian power supplay ditunjukkan pada gambar 3.2 berikut ini :

Gambar 3.2. Rangkaian Power Supply (PSA)

Trafo CT merupakan trafo stepdown yang berfungsi untuk menurunkan tegangan dari 220 volt AC menjadi 12 volt AC. Kemudian 12 volt AC akan disearahkan dengan menggunakan dua buah dioda, selanjutnya 12 volt DC akan diratakan oleh kapasitor 2200 μF. Regulator tegangan 5 volt (LM7805CT) digunakan agar keluaran yang dihasilkan tetap 5 volt walaupun terjadi perubahan pada tegangan masukannya. LED hanya sebagai indikator apabila PSA dinyalakan. Transistor PNP TIP 32 disini berfungsi untuk mensupplay arus apabila terjadi kekurangan arus pada rangkaian, sehingga regulator tegangan (LM7805CT) tidak akan panas ketika rangkaian butuh arus yang cukup besar. Tegangan 12 volt DC langsung diambil dari keluaran 2 buah dioda penyearah.


(33)

Rangkaian ini berfungsi sebagai pusat kendali dari seluruh sistem yang ada. Rangkaian mikrokontroler ditunjukkan pada gambar berikut ini:

Gbr.3.3. Rangkaian Mikrokontroller AT89S51

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


(34)

eksternal. Pada port 0 ini masing masing pin dihubungkan dengan resistor 4k7 ohm. Resistor 4k7 ohm yan dihubungkan ke port 0 befungsi sebagai pull up( penaik tegangan ) agar output dari mikrokontroller dapat mentrigger transistor. Pin 1 sampai 8 adalah port 1. Pin 21 sampai 28 adalah port 2. Dan Pin 10 sampai 17 adalah port 3. Pin 39 yang merupakan P0.0 dihubungkan dengan sebuah resistor 330 ohm dan sebuah LED. Ini dilakukan hanya untuk menguji apakah rangkaian minimum mikrokontroller AT89S51 sudah bekerja atau belum. Dengan memberikan program sederhana pada mikrokontroler tersebut, dapat diketahui apakah rangkaian minimum tersebut sudah bekerja dengan baik atau tidak. Jika LED yang terhubug ke Pin 39 sudah bekerja sesuai dengan perintah yang diberikan, maka rangkaian minimum tersebut telah siap digunakan. Pin 20 merupakan ground dihubungkan dengan ground pada power supplay. Pin 40 merupakan sumber tegangan positif dihubungkan dengan + 5 volt dari power supply.

3.4. Rangkaian Sensor Temperatur

Sensor temperatur yang digunakan pada sistem pemantau ini adalah LM35. Sensor LM35 adalah sebuah piranti yang didisain untuk dapat memberikan tegangan keluaran (output) yang berubah-ubah secara linier seiring dengan perubahan suhu yang juga terjadi secara linier. LM35 bekerja dengan menggunakan tegangan sumber sebesar 4 volt hingga 30 volt DC. Pada aplikasi ini penulis menggunakan tegangan masukan 12 volt untuk rangkaian sensor temperatur.


(35)

kenaikan 10mV untuk setiap derajat Celcius. Dengan karakteristik LM35 tersebut, maka diperlukan sinkronisasi antara LM35 dengan ADC eksternal yang digunakan.

ADC eksternal diberikan tegangan referensi 5V, dengan lebar data yang digunakan adalah 10 bit data. Sehingga besar tegangan setiap kenaikan satu bit adalah:

Resolusi = V 4,88mV 5mV 1024

5

= =

Resolusi 5 mV pada ADC, sedangkan kenaikan pada LM35 adalah 10 mV untuk setiap derajat Celcius yang akan menjadi masukkan pada ADC. Dengan keadaan tersebut, maka setiap kenaikan 1 derajat Celcius suhu yang dideteksi LM35, diterjemahkan dalam 2 bit data oleh ADC. Sehingga pada rangkain sensor temperatur tidak perlu ditambahkan rangkaian penguat pada keluarannya.

Gambar 3.4. Rangkaian Pengukuran Sensor Temperatur

Pada gambar 3.4 di atas, pada keluaran dari sensor temperatur ditambahkan rangkaian buffer yang berupa IC LM358. Penambahan rangkaian ini dilakukan untuk menghilangkan efek pembebanan. Pada rangkaian pengukuran sensor temperatur di


(36)

atas, besarnya nilai R=75 dan C=1 µF, berfungsi sebagai damper (peredam noise) dan nilainya telah direkomendasikan oleh pabrik (data book) . Namun pada perancangan sistem monitoring temperatur lingkungan ini, penulis tidak menggunakan IC LM358 ataupun rangkaian buffer karena rangkaian ADC eksternal yang digunakan sudah cukup mengurangi pembebanan pada sensor suhu.

3.5. Rangkaian Analog to Digital Converter (ADC)

IC ADC 0804 mempunyai dua masukan analog, Vin (+) dan Vin (-), sehingga dapat menerima masukan diferensial. Masukan analog sebenarnya (Vin) sama dengan selisih antara tegangan-tegangan yang dihubungkan dengan ke dua pin masukan yaitu Vin= Vin (+) – Vin (-). Kalau masukan analog berupa tegangan tunggal, tegangan ini harus dihubungkan dengan Vin (+), sedangkan Vin (-) digroundkan. Untuk operasi normal, ADC 0804 menggunakan Vcc = +5 Volt sebagai tegangan referensi.

IC ADC 0804 memiliki generator clock intenal yang harus diaktifkan dengan menghubungkan sebuah resistor eksternal (R) antara pin CLK OUT dan CLK IN serta sebuah kapasitor eksternal (C) antara CLK IN dan ground digital. Frekuensi clock yang diperoleh di pin CLK OUT sama dengan :

Untuk sinyal clock ini dapat juga digunakan sinyal eksternal yang dihubungkan ke pin CLK IN. ADC 0804 memilik 8 keluaran digital sehingga dapat langsung dihubungkan dengan saluran data mikrokomputer. Masukan (chip select, aktif rendah)


(37)

3 2 4 8 1 LM3 58N 5 6 4 8 7 LM3 58N 5V VCC 5V VCC 50% 4.7k ohm 33 0ohm 1uF 10 0pF 33 0ohm LM35 + 33 0ohm i D1 D0 D2 D3 D4 D5 D6 D7 VCC CLK R CS RD WR CLK IN INTR V IN (+) V IN (-) A GND V REF/2 D GND i ADC0804 10 0pF 1.0k ohm 10 0pF 10 0pF 10 kohm Out Vreg LM7 809CT IN OUT Gnd 1.0k ohm

10 0uF 10 0pF Vreg LM7 805CT

IN OUT

10 0uF 10 0pF

33 0ohm

4.7k ohm

P3.7 (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

4.7k ohm 2SA7 33 5V VCC 12 V VDD 33 0ohm 10 kohm aktif (disable) dan semua keluaran berada dalam keadaan impedansi tinggi.

Masukan (write atau start convertion) digunakan untuk memulai proses konversi. Untuk itu harus diberi pulsa logika 0. Sedangkan keluaran (interrupt atauend of convertion) menyatakan akhir konversi. Pada saat dimulai konversi, akan berubah ke logika 1. Di akhir konversi akan kembali ke logika 0. Rangkaian ADC ditunjukkan seperti gambar berikut:


(38)

3.6. Rangkaian LED Display Matrix

Rangkaian LED matriks display ini merupakan susunan LED berbentuk matriks dengan 7 baris dan 16 kolom, sehingga jumlah seluruh LED yang digunakan adalah 112. Bagian horizontal terdiri dari 7 baris, karena untuk menampilkan sebuah karakter dibutuhkan 7 baris. Bagian vertical terdiri dari 16 kolom, sesuai dengan jumlah output dari kedua IC 74LS154 yang digunakan. Rangkaian LED matriks display dapat dilihat pada gambar berikut :

Bagian horizontal yang terdiri dari 7 baris, masing-masing dihubungkan ke kolektor dari transistor C945. Emitor dihubungkan ke ground dan basis dihubungkan dengan resistor 1 Kohm. Resistor ini dihubungkan dengan Port 0 dari mikrokontroller AT89S51. Untuk memastikan transistor akan aktif bila diberi sinyal high dari microprocessor, maka Port 0 juga dihubungkan dengan resistor 4K7 yang langsung ke sumber tegangan +5 volt, sehingga jika Port 0 diberi nilai high maka arus akan mengalir dari VCC ke transistor C945 yang bertipe NPN yang mengakibatkan transistor aktif karena mendapatkan tegangan basis yang lebih besar dari 0,7 volt. Sehingga, dengan memberikan suatu data (nilai) tertentu pada Port 0, maka transistor akan aktif sesuai dengan data (nilai) yang diberikan pada Port 0.

Bagian vertikal yang terdiri dari 16 kolom, masing-masing dihubungkan ke emitor dari transistor A733 yang bertipe PNP. Colektor dhubungkan dengan sumber tegangan +5 volt dan basisnya dihubungkan dengan resistor 330 ohm, kemudian resistor ini dihubungkan dengan Pin output dari IC 74LS154. Seperti telah dibahas sebelumnya bahwa jika IC 74LS154 diberi suatu masukan, maka salah satu pin


(39)

terhubung dengan Pin tersebut menjadi aktif. Aktifnya transistor tersebut menyebabkan arus arus mengalir dari sumber tegangan ke transistor A733 menuju LED. Jika transistor C945 juga dalam keadaan aktif maka arus dari LED akan menuju transistor C945 menuju ke ground, sehingga LED pada kolom tersebut akan menyala sesuai dengan data (nilai) yang diberikan oleh Port 0. Dengan demikian maka kita sudah dapat menyalakan LED pada baris dan kolom tertentu.


(40)

BAB 4

PENGUJIAN SISTEM DAN PROGRAM

4.1. Pengujian Rangkaian Mikrokontroller AT89S51

Untuk mengetahui apakah rangkaian mikrokontroller AT89S51 telah bekerja dengan baik, maka dilakukan pengujian.Pengujian bagian ini dilakukan dengan memberikan program sederhana pada mikrokontroller AT89S51. Programnya adalah sebagai berikut:

Loop:

Setb P2.7 Acall tunda Clr P2.7 Acall tunda Sjmp Loop Tunda:

Mov r7,#0ffh Tnd: Mov r6,#0ffh

Djnz r6,$ Djnz r7,tnd Ret


(41)

selama ± 0,13 detik kemudian mematikannya selama ± 0,13 detik secara terus menerus. Perintah Setb P2.0 akan menjadikan P2.7 berlogika high yang menyebabkan transistor aktif, sehingga LED hidup. Acall tunda akan menyebabkan LED ini hidup selama beberapa saat. Perintah Clr P2.7 akan menjadikan P2.7 berlogika low yang menyebabkan transistor tidak aktif sehingga LED akan mati. Perintah Acall tunda akan menyebabkan LED ini mati selama beberapa saat. Perintah Sjmp Loop akan menjadikan program tersebut berulang, sehingga akan tampak LED tersebut berkedip.

Lamanya waktu tunda dapat dihitung dengan perhitungan sebagai berikut : Kristal yang digunakan adalah kristal 12 MHz, sehingga 1 siklus mesin

membutuhkan waktu = 12 1

12MHz = mikrodetik.

Jika program tersebut diisikan ke mikrokontroller AT89S51, kemudian mikrokontroller dapat berjalan sesuai dengan program yang diisikan, maka rangkaian minimum mikrokontroller AT89S51 telah bekerja dengan normal.

4.2. Rangkaian Demultiplexer

Rangkaian demultiplexer terdiri dari tiga buah IC demultiplexer, 2 diantaranya berfungsi untuk memilih kolom yang akan diaktifkan dan yang satunya lagi digunakan untuk mengaktifkan kedua IC demultiplexer lainnya. IC demultiplexer yang digunakan untuk memilih kolom yang aktif adalah IC 74LS154 dan IC


(42)

demultiplexer yang digunakan untuk memilik IC yang yang aktif adalah IC 74LS138. IC 74LS154 ini menerima masukan dari mikrokontroller AT89S51 dan keluarannya terhubung ke LED matriks display. Sedangkan IC 74LS138 menerima masukan dari mikrokontroller AT89S51 dan keluarannya terhubung ke kedua IC 74LS154.

Prosedur pengujian dilakukan dengan merujuk pada tabel kebenaran IC tersebut.. Langkah-langkah pengujian yang dilakukan adalah sebagai berikut :

• Masukan G1 dan G2 diberi logika rendah (0). Selanjutnya masukan A, B, C dan D diberi logika rendah (0). Pada keluaran diamati logika keluarannya, dimana pada keadaan ini maka keluaran Q0 (kaki 1) harus berlogika rendah (0) sedangkan keluaran lainnya (keluaran Q1 hingga Q15) berlogika tinggi (1).

• Selanjtnya dilakukan variasi terhadap logika masukan A, B, C dan D. Misalnya masukan 0101, maka hanya keluaran Q5 (kaki 6) yang berlogika rendah (0) sedangkan keluaran lainnya (Q0-Q4, Q6-Q15) harus berlogika tinggi.

• Demikian seterusnya pengujian dilakukan dengan mengikuti logika pada tabel kebenaran IC 74LS154 tersebut. Bila kondisinya terpenuhi maka dapat disimpulkan IC ini bekerja dengan normal.

• Prosedur pengujian yang sama dijalankan pada IC 74LS154 yang lainnya (terdapat 2 buah IC 74LS154 pada bagian ini).

• Prosedur yang sama juga dijalankan pada IC 74LS138. Perbedaanya hanya terletak pada logika pada tabel kebenarannya saja.


(43)

5V VCC

Q1 2SA733

R1 33ohm Q2

2SC945

LED1 R2

1.0kohm

P0.0 (AT89S51)

IC 74154 (1)

Voltage) minimal sebesar 2,7 volt dan tegangan keluaran low (Low Level Output Voltage) maksimal sebesar 0,4 volt. Dari hasil penelitian didapatkan data sebagai berikut :

High Level Output Voltage 0,36 Volt Low Level Output Voltage 4,75 Volt

4.3. Pengujian Rangkaian LED matriks display

Rangkaian LED matriks display terhubung dengan mikrokontroller AT89S51 (pada bagian horizontal) dan demultiplexer ( pada bagian vertikal), dengan demikian untuk menguji bagian ini dibutuhkan 2 buah sinyal masukan, yaitu sinyal masukan dari mikrokontroller AT89S51 dan sinyal masukan dari IC 74LS154.

4. 3.1 Menghidupkan 1 buah LED Pada LED matriks display


(44)

Untuk menghidupkan LED di atas, maka kedua transistor yaitu transistor NPN C945 dan transistor PNP A733 harus dalam keadaan aktif. Dengan demikian maka arus dari VCC 5 volt akan mengalir ke emitor – kolektor (pada transistor PNP A733) – LED – kolektor – emitor (pada transistor NPN C945) dan sampai ke ground, sehingga LED akan hidup. Bila salah satu dari kedua transistor tersebut tidak dalam keadaan aktif, maka LED tidak akan hidup.

Transistor PNP A733 akan aktif bila basis mendapatkan tegangan yang lebih kecil dari 4,33 volt. Hal ini disebabkan karena VBE

Transistor NPN C945 akan aktif bila basis mendapatkan tegangan yang lebih besar dari 0,7 volt. Pada rangkaian di atas (gambar 1), basis dari transistor C945 dihubungkan dengan resistor 1 Kohm dan resistor tersebut dihubungkan dengan P0.0 dari mikrokontroller AT89S51. Mikrokontroller AT89S51 memiliki tegangan keluaran high ( Output High Voltage) minimal sebesar 2,4 volt dan tegangan keluaran low (Output Low Voltage) maksimal sebesar 0,45 volt, sehingga apabila kaki output untuk transistor PNP A733 adalah sekitar – 0,67 volt. Sedangkan transistor NPN C945 akan aktif bila basis mendapatkan tegangan yang lebih besar dari 0,7 volt. Dengan demikian, jika basis pada transistor PNP A733 dihubungkan dengan resistor 330 ohm dan resistor tersebut kemudian dihubungkan ke salah satu kaki yang merupakan output dari IC 74LS154, maka hanya dengan memberikan sinyal low pada kaki tersebut maka transistor PNP A733 akan aktif. Dengan demikian apabila kaki output dari IC DM74LS154 yang terhubung dengan basis pada transistor PNP A733 dalam kondisi low, maka transistor A733 akan aktif.


(45)

dalam kondisi high, maka transistor C945 akan aktif.

Dengan demikian, untuk menghidupkan LED pada rangkaian gambar 1 dibutuhkan kondisi high pada kaki mikrokontroller AT89S51 (yang terhubung dengan transistor C945 ) dan kondisi low pada kaki IC DM74LS154 (yang terhubung dengan transistor A733). Jika salah satu dari kedua syarat ini tidak dipenuhi, maka LED tidak akan hidup. Keadaan LED akibat pengaruh kondisi high/ low pada kaki mikrokontroller AT89S51 dan kaki IC DM74LS154 adalah sebagai berikut:

Tabel 4.1. Pengaruh Kondisi High/Low pada 1 Buah LED

Kaki mikrokontroller AT89S51 Kaki IC DM74LS154 Keadaan LED

High High Mati

High Low Hidup

Low High Mati


(46)

5V VCC Q1 2SA733 R1 33ohm Q2 2SC945 LED1 R2 1.0kohm P0.0 (AT89S51)

IC 74154 (1)

Q3 2SC945 LED2 R3 1.0kohm P0.1 (AT89S51) Q4 2SC945 LED3 R4 1.0kohm P0.2 (AT89S51) Q5 2SC945 LED4 R5 1.0kohm P0.3 (AT89S51) Q6 2SC945 LED5 R6 1.0kohm P0.4 (AT89S51) Q7 2SC945 LED6 R7 1.0kohm P0.5 (AT89S51) Q8 2SC945 LED7 R8 1.0kohm P0.6 (AT89S51)

4.3.2 Menghidupkan LED dalam 1 kolom.

Gambar 4.2. Rangkaian LED pada 1 Kolom

Seperti telah dijelaskan sebelumnya, untuk menghidupkan LED pada rangkaian gambar 2 dibutuhkan kondisi high pada kaki mikrokontroller AT89S51 (yang terhubung dengan transistor C945 ) dan kondisi low pada kaki IC DM74LS154 (yang terhubung dengan transistor A733). Sebagai contoh bila LED 1 akan dihidupkan, maka kaki P0.0 pada mikrokontroller AT89S51 (yang terhubung dengan transistor C945 ) harus dalam kondisi high dan kaki IC DM74LS154 (yang terhubung dengan transistor A733) harus dalam kondisi low. Jika kondisi di atas tidak dipenuhi, maka LED tidak akan hidup. Bila LED 2 akan dihidupkan, maka kaki P0.1 pada


(47)

dalam kondisi low. Dengan cara yang sama maka LED 3, LED 4, LED 5, LED 6 dan LED 7 dapat dihidupkan.

Dengan cara yang sama, kita dapat juga menghidupkan beberapa LED secara bersamaan, yaitu dengan memberikan kondisi high pada kaki-kaki mikrokontroller AT89S51 yang berhubungan dengan LED yang akan dihidupkan dan memberikan kondisi low pada kaki IC DM74LS154 .

Keadaan ketujuh LED akibat pengaruh kondisi high/ low pada kaki mikrokontroller AT89S51 dan kaki IC DM74LS154 adalah sebagai berikut:

Tabel 4.2.Pengaruh Kondisi High/Low pada LED dalam 1 Kolom

IC

74154

Port 0 AT89S51 Kondisi LED

0 1 2 3 4 5 6 LED1 LED2 LED3 LED4 LED5 LED6 LED7 Low L L L L L L L Mati Mati Mati Mati Mati Mati Mati Low H L L L L L L Hidup Mati Mati Mati Mati Mati Mati Low L H L L L L L Mati Hidup Mati Mati Mati Mati Mati Low L L H L L L L Mati Mati Mati Hidup Mati Mati Mati Low L L L H L L L Mati Mati Mati Mati Hidup Mati Mati Low L L L L H L L Mati Mati Mati Mati Mati Hidup Mati Low L L L L L L H Mati Mati Mati Mati Mati Mati Hidup Low H H L L L L L Hidup Hidup Mati Mati Mati Mati Mati Low H H H L L L L Hidup Hidup Hidup Mati Mati Mati Mati Low H H H H H L L Hidup Hidup Hidup Hidup Hidup Mati Mati


(48)

Low H L H H L H H Hidup Mati Hidup Hidup Mati Hidup Hidup :

:

Dan seterusnya.

4.4. Hasil Uji Coba Sistem

Setelah menyelesaikan rancangan secara hardware, penulis melanjutkan dengan menguji kemampuan sistem dalam mendeteksi dan memantau temperatur dengan dua kegiatan berikut:

• Kalibrasi sistem secara keseluruhan

• Uji coba sistem untuk pengukuran temperatur lingkunagan

4.4. 1 Hasil Kalibrasi Sistem Secara Keseluruhan

Setelah selesai melakukan perancangan sistem secara keseluruhan, penulis melakukan kalibrasi sistem secara keseluruhan. Kalibrasi dilakukan dengan dua metode, yaitu:

• Kalibrasi terhadap kondisi temperatur yang tetap (tidak berubah-ubah)

• Kalibrasi terhadap temperatur dengan berbagai kondisi

Pada sub bab hasil kalibrasi sistem secara keseluruhan ini akan dibahas hasil dari ke dua metode kalibrasi tersebut.


(49)

Kalibrasi ini dilakukan dengan cara memantau temperatur di ruangan ber-AC (Air Conditioner) yang diberikan suhu tetap, yakni 250 C. Pemantauan temperatur untuk kalibrasi ini dilakukan sebanyak sepuluh (10) kali pemantauan, dengan range waktu 1 menit. Dari hasil pemantauan sebanyak 10 kali tersebut diperoleh hasil pemantauan temperatur yang konstan 250

No.

C.

Tabel 4.1. Hasil Kalibrasi Sistem Terhadap Kondisi Temperatur yang Tetap

t (menit) T (0 C) Τ

(0 C) Τ−Τ (0 C)

1 1 25 25 0

2 2 25 25 0

3 3 25 25 0

4 4 25 25 0

5 5 25 25 0

6 6 25 25 0

7 7 25 25 0

8 8 25 25 0

9 9 25 25 0

10 10 25 25 0

Sehingga dengan hasil kalibrasi tersebut dapat diperoleh beberapa informasi berikut:

• Kesalahan sistem


(50)

4.4.1.1.1. Kesalahan sistem

Error sistem merupakan tingkat kesalahan dari hasil pengukuran temperatur oleh sistem. Maka dari hasil kalibrasi pada tabel di atas dapat dikatahui tingkat kesalahan sistem adalah:

Error =

ΤΤ

Τ x 100 % = 0%

Dari hasil perhitungan di atas diketahui bahwa tingkat kesalahan sistem adalah nol persen (0%). Atau dengan kata lain tidak ada kesalahan. Hal tersebut kemungkinan disebabkan kerena resolusi yang digunakan oleh penulis adalah 10

4.4.1.1.2. Akurasi pembacaan sistem

C. Sehingga memperkecil kemungkinan terjadinya kesalahan pengukuran.

Akurasi pembacaan sistem merupakan tingkat ketelitian hasil pengukuran temperatur oleh sistem. Maka dari hasil kalibrasi pada tabel di atas dapat diketahui tingkat keakuratan sisem adalah:


(51)

4.5.1. Program Baca ADC

===================================================== ; program pengecekan ADC ;

===================================================== paling_utama: setb p0.0 setb p0.1 setb p0.2 setb p0.3 setb p0.4 setb p0.5 setb p0.6 setb p0.7 setb p2.0 setb p2.1 setb p2.2 setb p2.3 setb p2.4 setb p2.5 setb p2.6 setb p2.7

clr p3.7 ; cek busy ADC acall tadc

setb p3.7 utama:

jb p3.7,$ ; ambil data interrupt acall tadc mov a,p1 mov 62h,a mov b,#100 div ab mov 72h,a mov a,b mov b,#10 div ab mov 71h,a mov 70h,b mov r0,70h acall konversi


(52)

mov r0,71h acall konversi

mov 74h,r1 ;74h nilai puluhan des mov r0,72h

acall konversi

mov 75h,r1 ;75h nilai ratusan des acall kirim_disp acall tunda mov a,62h cjne a,#0bh,test clr p0.0 sjmp paling_utama test: cjne a,#0ch,test2

setb p0.0 konversi suhu 25’C clr p0.1

sjmp paling_utama test2:

cjne a,#0dh,test3 setb p0.0

setb p0.1 konversi suhu 26’C clr p0.2

sjmp paling_utama test3:

cjne a,#0eh,test4 setb p0.0

setb p0.1 konversi suhu 27’C setb p0.2 clr p0.3 sjmp paling_utama test4: cjne a,#0fh,test5 setb p0.0 setb p0.1

setb p0.2 konversi suhu 28’C setb p0.3 clr p0.4 ljmp paling_utama test5: cjne a,#10h,test6 setb p0.0 setb p0.1

setb p0.2 konversi suhu 29’C setb p0.3


(53)

ljmp paling_utama test6: cjne a,#11h,test7 setb p0.0 setb p0.1 setb p0.2

setb p0.3 konversi suhu 30’C setb p0.4 setb p0.5 clr p0.6 ljmp paling_utama test7: cjne a,#12h,test8 setb p0.0 setb p0.1 setb p0.2 setb p0.3

setb p0.4 konversi suhu 31’C setb p0.5 setb p0.6 clr p0.7 ljmp paling_utama balik_paling_utama: ljmp utama ret tunda: mov r7,#40 tnd: mov r6,#40 djnz r6,$ djnz r7,tnd ret

tadc:

mov r7,#40 adc: mov r6,#40 djnz r6,$ djnz r7,adc ret


(54)

4.5.2. Program Display Matrix

===================================================== ; PROG_DispL@y m@RiTX ;

===================================================== paling_utama: mov p1,#0ffh mov p0,#0h mov p2,#0h jmp utama utama: jb p1.0,kedua acall awal acall delay sjmp paling_utama kedua: jb p1.1,ketiga acall awal2 acall delay sjmp paling_utama ketiga: jb p1.2,keempat acall awal3 acall delay ljmp paling_utama keempat: jb p1.3,kelima acall awal4 acall delay ljmp paling_utama kelima: jb p1.4,keenam acall awal5 acall delay ljmp paling_utama keenam: jb p1.5,ketujuh acall awal6 acall delay ljmp paling_utama ketujuh: jb p1.6,balik_utama acall awal7 acall delay ljmp paling_utama balik_utama:


(55)

delay: mov r7,#100 dly: mov r6,#100 dl: mov r5,#30 djnz r5,$ djnz r6,dl djnz r7,dly ret awal: mov dptr,#msg mov 76h,#10 loop: mov 77h,#16 jalan: acall scan inc dptr push a movc a,@a+dptr pop a acall tunda djnz 77h,jalan djnz 76h,loop ret

scan: mov r2,#20 mov r1,dph mov r0,dpl scn: clr a

movc a,@a+dptr ;0 mov p0,a mov p2,#32 inc dptr acall tunda mov r3,#32 scn1: dec r3 clr a movc a,@a+dptr mov p0,a mov p2,r3 inc dptr acall tunda


(56)

cjne r3,#0,scn1 mov dph,r1 mov dpl,r0 djnz r2,scn cjne r2,#0,scn ret

tunda: mov r7,#3 tnd: mov r6,#2 djnz r6,$ djnz r7,tnd ret msg: db 80h,80h,80h,80h,80h,80h,80h,80h db 80h,80h,80h,80h,80h,80h,80h,80h ;Normal Width

db 80h,48h,5ch,54h,54h,74h,24h,80h ;s db 80h,3ch,7ch,40h,20h,7ch,7ch,80h ;u db 80h,7fh,7fh,08h,04h,7ch,78h,80h ;h db 80h,3ch,7ch,40h,20h,7ch,7ch,80h ;u db 80h,

db 80h,42h,61h,51h,49h,46h,80h ;2 db 80h,27h,45h,45h,45h,39h,80h ;5

db 80h

db 80h,05h,03h,80h ;' db 80h,3eh,41h,41h,41h,22h,80h ;C db 80h,80h,80h,80h,80h,80h,80h,80h db 80h,80h,80h,80h,80h,80h,80h,80h db 80h,80h,80h,80h,80h,80h,80h,80h db 80h,80h,80h,80h,80h,80h,80h,80h db 80h,80h,80h,80h,80h,80h,80h,80h db 80h,80h,80h,80h,80h,80h,80h,80h db 80h,80h,80h,80h,80h,80h,80h,80h db 80h,80h,80h,80h,80h,80h,80h,80h db 80h,80h,80h,80h,80h,80h,80h,80h db 80h,80h,80h,80h,80h,80h,80h,80h db 80h,80h,80h,80h,80h,80h,80h,80h db 80h,80h,80h,80h,80h,80h,80h,80h db 80h,80h,80h,80h,80h,80h,80h,80h db 80h,80h,80h,80h,80h,80h,80h,80h db 80h,80h,80h,80h,80h,80h,80h,80h db 80h,80h,80h,80h,80h,80h,80h,80h db 0,0,0,0,0,0,0,0 awal2: mov dptr,#msg2 mov 76h,#10


(57)

mov 77h,#16 jalan2: acall scan2 inc dptr push a movc a,@a+dptr pop a acall tunda djnz 77h,jalan2 djnz 76h,loop2 ret

scan2: mov r2,#20 mov r1,dph mov r0,dpl scn2: clr a

movc a,@a+dptr ;0 mov p0,a mov p2,#32 inc dptr acall tunda mov r3,#32 scn12: dec r3 clr a movc a,@a+dptr mov p0,a mov p2,r3 inc dptr acall tunda cjne r3,#0,scn12 mov dph,r1 mov dpl,r0 djnz r2,scn2 cjne r2,#0,scn2 ret msg2: db 80h,80h,80h,80h,80h,80h,80h,80h db 80h,80h,80h,80h,80h,80h,80h,80h ;Normal Width

db 80h,48h,5ch,54h,54h,74h,24h,80h ;s db 80h,3ch,7ch,40h,20h,7ch,7ch,80h ;u db 80h,7fh,7fh,08h,04h,7ch,78h,80h ;h db 80h,3ch,7ch,40h,20h,7ch,7ch,80h ;u db 80h,

db 80h,42h,61h,51h,49h,46h,80h ;2 db 80h,3ch,4ah,49h,49h,30h,80h ;6


(58)

db 80h,05h,03h,80h ;' db 80h,3eh,41h,41h,41h,22h,80h ;C db 80h,80h,80h,80h,80h,80h,80h,80h db 80h,80h,80h,80h,80h,80h,80h,80h db 80h,80h,80h,80h,80h,80h,80h,80h db 80h,80h,80h,80h,80h,80h,80h,80h db 80h,80h,80h,80h,80h,80h,80h,80h db 80h,80h,80h,80h,80h,80h,80h,80h db 80h,80h,80h,80h,80h,80h,80h,80h db 80h,80h,80h,80h,80h,80h,80h,80h db 80h,80h,80h,80h,80h,80h,80h,80h db 80h,80h,80h,80h,80h,80h,80h,80h db 80h,80h,80h,80h,80h,80h,80h,80h db 80h,80h,80h,80h,80h,80h,80h,80h db 80h,80h,80h,80h,80h,80h,80h,80h db 80h,80h,80h,80h,80h,80h,80h,80h db 80h,80h,80h,80h,80h,80h,80h,80h db 80h,80h,80h,80h,80h,80h,80h,80h db 0,0,0,0,0,0,0,0 awal3: mov dptr,#msg3 mov 76h,#10 loop3: mov 77h,#16 jalan3: acall scan3 inc dptr push a movc a,@a+dptr pop a acall tunda djnz 77h,jalan3 djnz 76h,loop3 ret

scan3: mov r2,#20 mov r1,dph mov r0,dpl scn3: clr a

movc a,@a+dptr ;0 mov p0,a mov p2,#32 inc dptr acall tunda mov r3,#32 scn13: dec r3


(59)

movc a,@a+dptr mov p0,a mov p2,r3 inc dptr acall tunda cjne r3,#0,scn13 mov dph,r1 mov dpl,r0 djnz r2,scn3 cjne r2,#0,scn3 ret msg3: db 80h,80h,80h,80h,80h,80h,80h,80h db 80h,80h,80h,80h,80h,80h,80h,80h ;Normal Width

db 80h,48h,5ch,54h,54h,74h,24h,80h ;s db 80h,3ch,7ch,40h,20h,7ch,7ch,80h ;u db 80h,7fh,7fh,08h,04h,7ch,78h,80h ;h db 80h,3ch,7ch,40h,20h,7ch,7ch,80h ;u

db 80h,42h,61h,51h,49h,46h,80h ;2 db 80h,01h,01h,79h,05h,03h,80h ;7

db 80h,05h,03h,80h ;' db 80h,3eh,41h,41h,41h,22h,80h ;C db 80h,80h,80h,80h,80h,80h,80h,80h db 80h,80h,80h,80h,80h,80h,80h,80h db 80h,80h,80h,80h,80h,80h,80h,80h db 80h,80h,80h,80h,80h,80h,80h,80h db 80h,80h,80h,80h,80h,80h,80h,80h db 80h,80h,80h,80h,80h,80h,80h,80h db 80h,80h,80h,80h,80h,80h,80h,80h db 80h,80h,80h,80h,80h,80h,80h,80h db 80h,80h,80h,80h,80h,80h,80h,80h db 80h,80h,80h,80h,80h,80h,80h,80h db 80h,80h,80h,80h,80h,80h,80h,80h db 80h,80h,80h,80h,80h,80h,80h,80h db 80h,80h,80h,80h,80h,80h,80h,80h db 80h,80h,80h,80h,80h,80h,80h,80h db 80h,80h,80h,80h,80h,80h,80h,80h db 80h,80h,80h,80h,80h,80h,80h,80h db 0,0,0,0,0,0,0, awal4: mov dptr,#msg4 mov 76h,#10 loop4:


(60)

mov 77h,#16 jalan4: acall scan4 inc dptr push a movc a,@a+dptr pop a acall tunda djnz 77h,jalan4 djnz 76h,loop4 ret

scan4: mov r2,#20 mov r1,dph mov r0,dpl scn4: clr a

movc a,@a+dptr ;0 mov p0,a mov p2,#32 inc dptr acall tunda mov r3,#32 scn14: dec r3 clr a movc a,@a+dptr mov p0,a mov p2,r3 inc dptr acall tunda cjne r3,#0,scn14 mov dph,r1 mov dpl,r0 djnz r2,scn4 cjne r2,#0,scn4 ret msg4: db 80h,80h,80h,80h,80h,80h,80h,80h db 80h,80h,80h,80h,80h,80h,80h,80h ;Normal Width

db 80h,48h,5ch,54h,54h,74h,24h,80h ;s db 80h,3ch,7ch,40h,20h,7ch,7ch,80h ;u db 80h,7fh,7fh,08h,04h,7ch,78h,80h ;h db 80h,3ch,7ch,40h,20h,7ch,7ch,80h ;u db 80h,

db 80h,42h,61h,51h,49h,46h,80h ;2 db 80h,36h,49h,49h,49h,36h,80h ;8


(61)

db 80h,05h,03h,80h ;' db 80h,3eh,41h,41h,41h,22h,80h ;C db 80h,80h,80h,80h,80h,80h,80h,80h db 80h,80h,80h,80h,80h,80h,80h,80h db 80h,80h,80h,80h,80h,80h,80h,80h db 80h,80h,80h,80h,80h,80h,80h,80h db 80h,80h,80h,80h,80h,80h,80h,80h db 80h,80h,80h,80h,80h,80h,80h,80h db 80h,80h,80h,80h,80h,80h,80h,80h db 80h,80h,80h,80h,80h,80h,80h,80h db 80h,80h,80h,80h,80h,80h,80h,80h db 80h,80h,80h,80h,80h,80h,80h,80h db 80h,80h,80h,80h,80h,80h,80h,80h db 80h,80h,80h,80h,80h,80h,80h,80h db 80h,80h,80h,80h,80h,80h,80h,80h db 80h,80h,80h,80h,80h,80h,80h,80h db 80h,80h,80h,80h,80h,80h,80h,80h db 80h,80h,80h,80h,80h,80h,80h,80h db 0,0,0,0,0,0,0,0 awal5: mov dptr,#msg5 mov 76h,#10 loop5: mov 77h,#16 jalan5: acall scan5 inc dptr push a movc a,@a+dptr pop a acall tunda djnz 77h,jalan5 djnz 76h,loop5 ret

scan5: mov r2,#20 mov r1,dph mov r0,dpl scn5: clr a

movc a,@a+dptr ;0 mov p0,a

mov p2,#32 inc dptr acall tunda mov r3,#32


(62)

scn15: dec r3 clr a movc a,@a+dptr mov p0,a mov p2,r3 inc dptr acall tunda cjne r3,#0,scn15 mov dph,r1 mov dpl,r0 djnz r2,scn5 cjne r2,#0,scn5 ret msg5: db 80h,80h,80h,80h,80h,80h,80h,80h db 80h,80h,80h,80h,80h,80h,80h,80h ;Normal Width

db 80h,48h,5ch,54h,54h,74h,24h,80h ;s db 80h,3ch,7ch,40h,20h,7ch,7ch,80h ;u db 80h,7fh,7fh,08h,04h,7ch,78h,80h ;h db 80h,3ch,7ch,40h,20h,7ch,7ch,80h ;u db 80h,

db 80h,42h,61h,51h,49h,46h,80h ;2 db 80h,06h,49h,49h,29h,1eh,80h ;9

db 80h

db 80h,05h,03h,80h ;' db 80h,3eh,41h,41h,41h,22h,80h ;C db 80h,80h,80h,80h,80h,80h,80h,80h db 80h,80h,80h,80h,80h,80h,80h,80h db 80h,80h,80h,80h,80h,80h,80h,80h db 80h,80h,80h,80h,80h,80h,80h,80h db 80h,80h,80h,80h,80h,80h,80h,80h db 80h,80h,80h,80h,80h,80h,80h,80h db 80h,80h,80h,80h,80h,80h,80h,80h db 80h,80h,80h,80h,80h,80h,80h,80h db 80h,80h,80h,80h,80h,80h,80h,80h db 80h,80h,80h,80h,80h,80h,80h,80h db 80h,80h,80h,80h,80h,80h,80h,80h db 80h,80h,80h,80h,80h,80h,80h,80h db 80h,80h,80h,80h,80h,80h,80h,80h db 80h,80h,80h,80h,80h,80h,80h,80h db 80h,80h,80h,80h,80h,80h,80h,80h db 80h,80h,80h,80h,80h,80h,80h,80h db 0,0,0,0,0,0,0,0 awal6: mov dptr,#msg6


(63)

loop6: mov 77h,#16 jalan6: acall scan6 inc dptr push a movc a,@a+dptr pop a acall tunda djnz 77h,jalan6 djnz 76h,loop6 ret

scan6: mov r2,#20 mov r1,dph mov r0,dpl scn6: clr a

movc a,@a+dptr ;0 mov p0,a mov p2,#32 inc dptr acall tunda mov r3,#32 scn16: dec r3 clr a movc a,@a+dptr mov p0,a mov p2,r3 inc dptr acall tunda cjne r3,#0,scn16 mov dph,r1 mov dpl,r0 djnz r2,scn6 cjne r2,#0,scn6 ret msg6: db 80h,80h,80h,80h,80h,80h,80h,80h db 80h,80h,80h,80h,80h,80h,80h,80h ;Normal Width

db 80h,48h,5ch,54h,54h,74h,24h,80h ;s db 80h,3ch,7ch,40h,20h,7ch,7ch,80h ;u db 80h,7fh,7fh,08h,04h,7ch,78h,80h ;h db 80h,3ch,7ch,40h,20h,7ch,7ch,80h ;u db 80h,


(64)

db 80h,21h,41h,45h,4bh,31h,80h ;3 db 80h,3eh,51h,49h,45h,3eh,80h ;0

db 80h

db 80h,05h,03h,80h ;' db 80h,3eh,41h,41h,41h,22h,80h ;C db 80h,80h,80h,80h,80h,80h,80h,80h db 80h,80h,80h,80h,80h,80h,80h,80h db 80h,80h,80h,80h,80h,80h,80h,80h db 80h,80h,80h,80h,80h,80h,80h,80h db 80h,80h,80h,80h,80h,80h,80h,80h db 80h,80h,80h,80h,80h,80h,80h,80h db 80h,80h,80h,80h,80h,80h,80h,80h db 80h,80h,80h,80h,80h,80h,80h,80h db 80h,80h,80h,80h,80h,80h,80h,80h db 80h,80h,80h,80h,80h,80h,80h,80h db 80h,80h,80h,80h,80h,80h,80h,80h db 80h,80h,80h,80h,80h,80h,80h,80h db 80h,80h,80h,80h,80h,80h,80h,80h db 80h,80h,80h,80h,80h,80h,80h,80h db 80h,80h,80h,80h,80h,80h,80h,80h db 80h,80h,80h,80h,80h,80h,80h,80h db 0,0,0,0,0,0,0,0 awal7: mov dptr,#msg7 mov 76h,#10 loop7: mov 77h,#16 jalan7: acall scan7 inc dptr push a movc a,@a+dptr pop a acall tunda djnz 77h,jalan7 djnz 76h,loop7 ret

scan7: mov r2,#20 mov r1,dph mov r0,dpl scn7: clr a

movc a,@a+dptr ;0 mov p0,a

mov p2,#32 inc dptr


(65)

mov r3,#32 scn17: dec r3 clr a movc a,@a+dptr mov p0,a mov p2,r3 inc dptr acall tunda cjne r3,#0,scn17 mov dph,r1 mov dpl,r0 djnz r2,scn7 cjne r2,#0,scn7 ret msg7: db 80h,80h,80h,80h,80h,80h,80h,80h db 80h,80h,80h,80h,80h,80h,80h,80h ;Normal Width

db 80h,48h,5ch,54h,54h,74h,24h,80h ;s db 80h,3ch,7ch,40h,20h,7ch,7ch,80h ;u db 80h,7fh,7fh,08h,04h,7ch,78h,80h ;h db 80h,3ch,7ch,40h,20h,7ch,7ch,80h ;u db 80h,

db 80h,21h,41h,45h,4bh,31h,80h ;3 db 80h,42h,7fh,40h,80h ;1

db 80h

db 80h,05h,03h,80h ;' db 80h,3eh,41h,41h,41h,22h,80h ;C db 80h,80h,80h,80h,80h,80h,80h,80h db 80h,80h,80h,80h,80h,80h,80h,80h db 80h,80h,80h,80h,80h,80h,80h,80h db 80h,80h,80h,80h,80h,80h,80h,80h db 80h,80h,80h,80h,80h,80h,80h,80h db 80h,80h,80h,80h,80h,80h,80h,80h db 80h,80h,80h,80h,80h,80h,80h,80h db 80h,80h,80h,80h,80h,80h,80h,80h db 80h,80h,80h,80h,80h,80h,80h,80h db 80h,80h,80h,80h,80h,80h,80h,80h db 80h,80h,80h,80h,80h,80h,80h,80h db 80h,80h,80h,80h,80h,80h,80h,80h db 80h,80h,80h,80h,80h,80h,80h,80h db 80h,80h,80h,80h,80h,80h,80h,80h db 80h,80h,80h,80h,80h,80h,80h,80h db 80h,80h,80h,80h,80h,80h,80h,80h db 0,0,0,0,0,0,0,0


(66)

(67)

PENUTUP

4.1. Kesimpulan

Dari hasil prototype aplikasi alat yang dapat memantau (memonitoring) temperatur lingkungan, serta dari hasil percobaan yang telah dilakukan, maka dapat disimpulkan beberapa hal sebagai berikut:

• Pengolahan data masukan analog pada AT89S51 menggunakan ADC eksternal sangat mempermudah proses perancangan Sistem Pengukuran Temperautur secara hardware.

• Dengan pemrograman bahasa assembler, perancangan Sistem Pengukur Tempertatur menjadi lebih mudah dan membutuhkan waktu yang lebih singkat.

• Menggunakan Sistem Monitoring Temperatur ini, mempermudah pemantauan temperatur yang dilakukan secara terus-menrus melaui display matrix.

• Sistem Monitoring Temperatur Lingkungan yang telah dibuat dapat bekerja dengan baik, dan menampilkan kondisi suhu lingkungan yang sebenarnya secara real-time display matrix.


(68)

4.2. Saran

Agar diperoleh informasi temperatur terukur lebih teliti, lebih baik apabila resolusi sistem di-set lebih kecil, misalnya 0,50 C. Sehingga sistem dapat mendeteksi perubahan kecil dari temperatur.

Untuk pemantauan temperatur melalui display matrix, penulis menyarankan untuk menggunakan mikrokontroler yang mendukung penggunaan aplikasi wireless.

Dengan menggunakan wireless pemantauan temperatur dapat dilakukan di tempat yang terpisah dari alat (sensor).


(69)

DAFTAR PUSTAKA

Agfianto, Belajar Mikrokontroler AT89C51/52/55 Teori dan Aplikasi, Edisi Kedua, Penerbit: Gava Media, Yogyakarta, 2004.

Anonim, LM35 PrecisionCentigradeTemperature Sensors November 2000.

Andi, Panduan Praktis Teknik Antarmuka dan Pemrograman Mikrokontroler AT89C51, Penerbit PT Elex Media Komputindo, Jakarta, 2003.

Clayton George, Winder Steve, Operational Amplifiers, Edisi Kelima, Penerbit Erlangga, Jakarta, 2004.

Malvino, Albert paul, Prinsip-prinsip Elektronika, Jilid 1 & 2, Edisi Pertama, Penerbit: Salemba Teknika, Jakarta, 2003.


(70)

(71)

(72)

LAMPIRAN 3a

GAMBAR SISTEM MONITORING TEMPERATUR LINGKUNGAN TAMPAK DEPAN

LAMPIRAN 3b

GAMBAR SISTEM MONITORING TEMPERATUR LINGKUNGAN TAMPAK ATAS


(1)

BAB 5

PENUTUP

4.1. Kesimpulan

Dari hasil prototype aplikasi alat yang dapat memantau (memonitoring) temperatur lingkungan, serta dari hasil percobaan yang telah dilakukan, maka dapat disimpulkan beberapa hal sebagai berikut:

• Pengolahan data masukan analog pada AT89S51 menggunakan ADC eksternal sangat mempermudah proses perancangan Sistem Pengukuran Temperautur secara hardware.

• Dengan pemrograman bahasa assembler, perancangan Sistem Pengukur Tempertatur menjadi lebih mudah dan membutuhkan waktu yang lebih singkat.

• Menggunakan Sistem Monitoring Temperatur ini, mempermudah pemantauan temperatur yang dilakukan secara terus-menrus melaui display matrix.

• Sistem Monitoring Temperatur Lingkungan yang telah dibuat dapat bekerja dengan baik, dan menampilkan kondisi suhu lingkungan yang


(2)

4.2. Saran

Agar diperoleh informasi temperatur terukur lebih teliti, lebih baik apabila resolusi sistem di-set lebih kecil, misalnya 0,50 C. Sehingga sistem dapat mendeteksi perubahan kecil dari temperatur.

Untuk pemantauan temperatur melalui display matrix, penulis menyarankan untuk menggunakan mikrokontroler yang mendukung penggunaan aplikasi wireless. Dengan menggunakan wireless pemantauan temperatur dapat dilakukan di tempat yang terpisah dari alat (sensor).


(3)

DAFTAR PUSTAKA

Agfianto, Belajar Mikrokontroler AT89C51/52/55 Teori dan Aplikasi, Edisi Kedua, Penerbit: Gava Media, Yogyakarta, 2004.

Anonim, LM35 PrecisionCentigradeTemperature Sensors November 2000.

Andi, Panduan Praktis Teknik Antarmuka dan Pemrograman Mikrokontroler AT89C51, Penerbit PT Elex Media Komputindo, Jakarta, 2003.

Clayton George, Winder Steve, Operational Amplifiers, Edisi Kelima, Penerbit Erlangga, Jakarta, 2004.

Malvino, Albert paul, Prinsip-prinsip Elektronika, Jilid 1 & 2, Edisi Pertama, Penerbit: Salemba Teknika, Jakarta, 2003.


(4)

LAMPIRAN 1

SKEMA RANGKAIAN DISPLAY MATRIX


(5)

(6)

LAMPIRAN 3a

GAMBAR SISTEM MONITORING TEMPERATUR LINGKUNGAN TAMPAK DEPAN

LAMPIRAN 3b

GAMBAR SISTEM MONITORING TEMPERATUR LINGKUNGAN TAMPAK ATAS