Anda di halaman 1dari 12

Sistem Akuisisi Data Suhu Menggunakan 

Mikrokontroller AT89S51
Dengan Penampilan LCD

oleh : Jaenal Arifin

Abstrak

Makalah ini membahas perancangan sistem akuisisi data suhu yang menggunakan komponen-konponen
dasar berupa sebuah sensor suhu, mikrokontroller dan LCD sebagai fasilitas penampil. Sistem akuisisi
data suhu menjadi satu hal yang sangat penting dalam kegiatan perindustrian, karena merupakan
sebagian kecil dari sebuah proses kontrol. Berkenaan dengan pentingnya sistem, maka dilakukan
perancangan sistem akusisi data suhu yang mampu melakukan kegiatan monitoring suhu suatu plant.
Data yang akan diukur merupakan sebuah besaran fisis temperature sehingga untuk dapat diolah dan
ditampilkan dalam bentuk sistem elektris digunakan sensor suhu LM35 yang mampu mengkonversi
besaran tersebut dengan kenaikan 10mV/ºC. Untuk dapat merancang sistem maka pertama kali dilakukan
proses mengubah suhu menjadi tegangan analog menggunakan sensor suhu LM35. Setelah melalui
proses pengkondisian sinyal dengan cara dikuatkan, tegangan analog diubah menjadi data digital
menggunakan ADC 0804. Data digital yang diperoleh kemudian diolah oleh Mikrokontroller AT89S51 dan
ditampilkan, sehingga didapatkan suatu informasi mengenai suhu plant dengan satuan ºC pada sebuah
LCD. Dari perancangan sistem akuisisi data suhu didapatkan hasil bahwa sistem ini memiliki kemampuan
untuk mengukur suhu dari 25ºC sampai 100ºC dengan error rata-rata penunjukan suhu sebesar
0,2125°C.

I. PENDAHULUAN

1.1 Latar Belakang

Sistem Instrumentasi yang berbentuk akuisisi data telah dipergunakan secara luas dalam kegiatan
perindustrian, karena merupakan bagian dari proses kontrol. Pengukuran besaran fisis adalah salah satu
langkah dalam akuisisi data. Temperatur merupakan salah satu besaran fisis yang sering dipakai dalam
suatu sistem kontrol baik hanya untuk sistem monitoring saja atau untuk proses pengendalian lebih
lanjut. Dalam kaitannya dengan hal tersebut, maka kami membuat sebuah alat pendeteksi suhu yang
dapat di kontrol oleh sebuah mikrokontroller. Dengan menampilkan suatu hasil pengukuran secara digital,
pemantauan terhadap proses dapat dilakukan dengan lebih mudah.

1.2 Tujuan

" Merancang sistem akuisisi data suhu untuk kemudian ditampilkan di LCD dengan menggunakan
Mikrokontroller AT89S51.
" Untuk memenuhi tugas mata kuliah Komponen Sitem Kontrol pada Jurusan Teknik Elektro
Fakultas Teknik Universitas Diponegoro.

1.3 Batasan Masalah

Dalam pembuatan tugas ini penulis membatasi permasalahan sebagai berikut :


1. Range akuisisi data adalah 25ºC sampai dengan 100ºC.
2. Data pengukuran ditampilkan pada sebuah LCD sebagai peralatan monitoring tanpa melakukan
proses pengendalian.
3. Konfigurasi ADC diatur secara free running.

II. DASAR TEORI

2.1 Sensor Suhu LM35

Untuk mendeteksi suhu digunakan sebuah sensor suhu LM 35 yang dapat dikalibrasikan langsung dalam
C, LM 35 ini difungsikan sebagai basic temperature sensor seperti pada gambar 1.

Gambar 1. LM 35 basic temperature sensor

Vout dari LM 35 ini dihubungkan dengan ADC (Analog To Digital Converter). Dalam suhu kamar (25oC)
tranduser ini mampu mengeluarkan tegangan 250mV dan 1,5V pada suhu 150oC dengan kenaikan sebesar
10mV/oC.

2.2 Penguat Operasional (Operasional Amplifier)

Penguat operasional adalah rangkaian terpadu (IC) yang mempunyai 5 buah terminal dasar. Dua terminal
untuk catu daya, 2 yang lain digunakan untuk isyarat masukan yang berupa masukan membalik (-) dan
masukan tak membalik (+) serta 1 terminal untuk keluaran.

2.2.1 Penguat Tak Membalik (Non-inverting Amplifier)

Penguat tak membalik merupakan suatu penguat dimana tegangan keluarannya atau Vo mempunyai
polaritas yang sama dengan tegangan masukan atau Vi. Rangkaian penguat tak membalik ditunjukkan
pada Gambar 2.

Gambar 2. Penguat tak membalik


Arus i mengalir ke Ri karena impedansi masukan op - amp sangat besar sehingga tidak ada arus yang
mengalir pada kedua terminal masukannya. Tegangan pada Ri sama dengan Vi karena perbedaan
tegangan pada kedua terminal masukannya mendekati 0 V.

Tegangan pada Rf dapat dinyatakan sebagai

Tegangan keluaran Vo didapat dengan menambahkan tegangan pada Ri yaitu Vi dengan tegangan pada Rf
yaitu VRf.

2.2.2 Penguat Differensial

Penguat differensial merupakan suatu penguat dimana tegangan keluarannya atau Vo merupakan hasil
selisih antara kedua buah tegangan masukan pada terminal inverting dan non-invertingnya. Rumus umum
yang berlaku untuk penguat differensial adalah sebagai berikut :

Rangkaian penguat differensial ditunjukkan pada Gambar 3.

Gambar 3. Penguat differensial


Rangkaian Analog to Digital Converter (ADC)

ADC pada rancangan ini digunakan untuk mengubah masukan analog keluaran sensor suhu yang sudah
dikuatkan menjadi data digital 8 bit. Tipe ADC yang digunakan adalah ADC 0804 pada mode kerja free
running. Rangkaian free running ADC 0804 ditunjukkan pada Gambar 4.

Gambar 4. Rangkaian Free running ADC.

Untuk membuat mode kerja ADC 0804 menjadi free running, maka harus diketahui bagaimana urutan
pemberian nilai pada -RD dan -WR serta perubahan nilai pada -INTR. Urutan pemberian nilai pada -RD ,
-WR perubahan nilai pada -INTR ditunjukkan pada Tabel 1.

Tabel 1 Pemberian nilai pada -RD dan -WR serta perubahan nilai pada -INTR

Mode kerja free running ADC diperoleh jika -RD dan -CS dihubungkan ke ground agar selalu mendapat
logika 0 sehingga ADC akan selalu aktif dan siap memberikan data. Pin -WR dan -INTR dijadikan satu
karena perubahan logika -ITNR sama dengan perubahan logika pada -WR, sehingga pemberian logika
pada -WR dilakukan secara otomatis oleh keluaran -INTR.

Nilai tegangan masukan (Vx) dari sebuah adc secara umum dapat dirumuskan sebagai berikut:

dimana: Vx = tegangan masukan

Vref= tegangan referensi

Sedangkan resolusi dari sebuah adc secara umum dapat dirumuskan sebagai berikut:
dimana:

2.4 Mikrokontroller AT89S51

Gambar 5. Mikrokontroller AT89S51

Keterangan

Vcc : Suplai Tegangan


GND : Ground atau pentanahan
RST : Masukan reset. Kondisi logika '1' selama siklus mesin
saat osilator bekerja dan akan mereset mikrokontroler
yang bersangkutan.

Fungsi - fungsi Port :

Port0 : Merupakan port paralel 8 bit open drain dua arah. Bila
digunakan untuk mengakses memori luar, port ini akan
memultipleks alamat memori dengan data.
Port1 : merupakan port paralel 8 bit dua arah yang dapat
digunakan untuk berbagai keperluan.
Port2 : merupakan port paralel selebar 8 bit dua arah. Port ini
melakukan pengiriman byte alamat bila dilakukan
pengaksesan memori eksternal.
P3.0 : Saluran masukan serial
P3.1 : Saluran keluaran serial
P3.2 : Interupsi eksternal 0
P3.3 : Interupsi eksternal 1
P3.4 : Masukan eksternal pewaktu / pencacah 0
P3.5 : Masukan eksternal pewaktu / pencacah 1
P3.6 : Sinyal tanda baca memori data ekstrenal.
P3.7 : Sinyal tanda tulis memori data ekstrenal.

AT89S51 adalah sebuah mikrokontroller 8 bit terbuat dari CMOS, yang berkonsumsi daya rendah dan
mempunyai kemampuan tinggi. Mikrokontroller ini memiliki 4Kbyte In-System Flash Programmable
Memory, RAM sebesar 128 byte, 32 input/output, watchdog timer, dua buah register data pointer, dua
buah 16 bit timer dan counter, lima buah vektor interupsi, sebuah port serial full-duplex, osilator on-chip,
dan rangkaian clock.

AT89S51 dibuat dengan teknologi memori non-volatile dengan kepadatan tinggi oleh ATMEL.
Mikrokontroller ini cocok dengan instruksi set dan pinout 80C51 standart industri.

Flash on-chip memungkinkan memori program untuk diprogram ulang dengan programmer memory
nonvolatile yang biasa.

III. PERANCANGAN SISTEM

3.1 Perancangan Perangkat Keras

Gambar 6. Diagram blok sistem akuisisi suhu

3.1.1 Sensor Suhu ( LM35 )

Sensor suhu LM35 berfungsi untuk mengubah besaran fisis yang berupa suhu menjadi besaran elektris
tegangan. Sensor ini memiliki parameter bahwa setiap kenaikan 1ºC tegangan keluarannya naik sebesar
10mV dengan batas maksimal keluaran sensor adalah 1,5 V pada suhu 150°C.

Pada perancangan kita tentukan keluaran adc mencapai full scale pada saat suhu 100°C, sehingga saat
suhu 100°C tegangan keluaran transduser (10mV/°C x 100°C) = 1V.

Dari pengukuran secara langsung saat suhu ruang, keluaran LM35 adalah 0.3V (300mV ). Tegangan ini
diolah dengan menggunakan rangkaian pengkondisi sinyal agar sesuai dengan tahapan masukan ADC.

3.1.2 Pengkondisi Sinyal

Pengkondisi sinyal berfungsi untuk menguatkan tegangan keluaran sensor suhu LM35 agar mampu
diproses pada peralatan selanjutnya dalam hal ini oleh ADC 0804.

Diinginkan bahwa pengukuran suhu dapat dilakukan pada range 25°C - 100°C, sedangkan saat suhu
kamar LM35 sudah mengeluarkan tegangan sebesar 0,3V, sehingga untuk dapat mengatur agar masukan
ADC sebesar 0V pada suhu ruang, ditambahkan sebuah penguat differensial dengan konfigurasi sebagai
berikut :

Gambar 7. Penguat differensial.

Keluaran penguat differensial dikuatkan lagi dengan rangkaian penguat non inverting dengan konfigurasi
seperti pada gambar 6. Dengan Vin = 1V pada 100°C dan Vout yang diinginkan sebesar 5V (Vx) maka
dapat dihitung nilai tahanan untuk penguat non-inverting sebagai berikut :

Jika Ri = 1K maka, Rf = 4K dalam aplikasi digunakan potensiometer 50K untuk Rf

Gambar 8. Penguat non_inverting.

3.1.3 Analog to Digital Converter ( ADC 0804 )

Perancangan untuk rangkaian adc digunakan mode free running. Mode ini dipilih karena waktu konversi
adc jauh lebih cepat terhadap tingkat perubahan suhu dari plant, sehingga setiap kali suhu berubah, adc
selalu telah selesai melakukan konversi data sehingga data sudah valid untuk dicuplik.

Untuk ADC 0804 dengan jumlah bit sebesar 8 bit dan Vref = 5V maka resolusinya :
Masukan tegangan analog adc yang berasal dari keluaran pengkondisi sinyal saat full scale dengan nilai
sebesar Vx dapat dihitung sebagai berikut:

dengan demikian saat tegangan masukan adc 4,9804 keluaran adc akan bernilai FFH.

3.1.4 Mikrokontroller ( AT89S51 )

Data digital 8 bit dari ADC diambil oleh mikokontroller melalui Port 2 ( P2.0-P2.7 dihubung dengan DB0-
DB7 ). Sedangkan data masukan untuk penampil LCD dikeluarkan melalui Port 1 ( P1.0-P1.7 dihubung
dengan D0-D7 ). Untuk mengontrol kaki RS dan E pada LCD mikrokontroller memanfaatkan kaki P3.6 dan
P3.7

Proses pengambilan data dan pengolahan data dapat dilihat dalam gambar 7. Data yang diambil dari P2
dikalibrasi terlebih dahulu, setelah dikalibrasi data tersebut kemudian diubah ke dalam kode ASCII supaya
tertampil angka 0-100 pada LCD, jika tidak diubah maka yang tertampil adalah angka 0-255.

Gambar 9. Flowchart program akuisisi data suhu.

IV. PENGUJIAN DAN ANALISA

4.1 Pengujian setiap blok

4.1.1 Pengujian LM35


Sensor suhu LM35 diuji dengan cara memberikan catu 5V dan memberikan pemanasan secara tidak
langsung, sedangkan tegangan keluaran langsung diamati dengan voltmeter. Dari pengujian didapatkan
data sebagai berikut.

Tabel 2. Hasil pengujian sensor LM35

Dari hasil pengujian diketahui tegangan keluaran sensor naik sebesar 50mV untuk setiap 5°C atau
10mV/°C, maka sensor telah bekerja dengan baik.

4.1.2 Pengujian rangkaian pengkondisi sinyal

Pengujian rangkaian pengkondisi sinyal dilakukan dengan cara memberikan tegangan berubah-ubah pada
bagian masukan penguat akhir ( penguat non inverting ) kemudian mengukur keluarannya untuk
kemudian dihitung tingkat penguatan tegangan.

Tabel 3. Hasil pengujian pengkondisi sinyal

4.1.3 Pengujian ADC 0804

Pengujian dilakukan dengan cara memberi tegangan masukan pada ADC dan mencatat data digital
keluaran yang dihasilkan melalui tampilan led 8 bit.
Tabel 4. Hasil pengujian ADC.

Data hasil pengujian ADC menunjukkan bahwa komponen ini dapat bekerja dengan baik.

Keterangan: data digital untuk proses perhitungan dalam bentuk desimal

Tabel 5. Hasil pengujian tampilan suhu

Dari tabel diketahui bahwa antara suhu tertampil di LCD dengan suhu hasil perhitungan terdapat
perbedaan dalam hal ketelitian, dimana suhu tertampil di LCD adalah nilai bulat tanpa menampilkan nilai
dibelakang koma, sedangkan suhu terhitung adalah sebagai patokan suhu yang harus tertampil.
Penghilangan nilai koma ini bertujuan untuk memudahkan proses pembuatan program, namun dengan
konsekuensi adanya tingkat error suhu tertampil akibat penghilangan tersebut. Software telah dapat
mengkalibrasi data digital dan menampilkan nilai suhu dari suatu plant, maka software telah dapat
bekerja dengan baik.

4.2 Pengujian sistem keseluruhan

Pengujian sistem keseluruhan dilakukan dengan menempatkan sensor LM35 dan termometer dalam plant
suhu yang sama kemudian membandingkan antara suhu penunjukan yang tertampil pada LCD terhadap
penunjukan suhu pada termometer selama 30 menit.
Tabel 6. Hasil pengujian sistem

Hasil percobaan menunjukkan bahwa sistem akuisisi data suhu memiliki error rata-rata sebesar 0,2125°C,
nilai ini didapat dengan menjumlahkan semua nilai error dari setiap pengujian dibagi jumlah pengujian ( 8
kali ). Secara rumus adalah sebagai berikut.

V. PENUTUP

5.1 Kesimpulan

Dari hasil perancangan dan pembuatan perangkat sistem akuisisi suhu dapat disimpulkan hal - hal sebagai
berikut :

1. Hasil pengujian ADC menunjukkan bahwa untuk masukan sebesar 4,9V data digital sudah
mencapai FFh, maka akan mengakibatkan terjadinya kesalahan penunjukkan suhu dimana saat
tegangan masukan 4,9V suhu tertampil sudah mencapai 100°C.
2. Error rata-rata penunjukan suhu pada sistem akuisisi data suhu adalah 0,2125°C.
3. LM35 memiliki tegangan keluaran sensor dengan kenaikan sebesar 50 mV untuk setiap 5°C atau
10 mV/°C, maka sensor memiliki kenaikan yang cukup linier.

5.2 Saran

1. Pada bagian keluaran akhir rangkaian pengkondisi sinyal sebaiknya ditambahkan rangkaian
clipper yang berfungsi untuk membatasi masukan ADC agar maksimal sebesar 5V.
2. Untuk mempermudah pengaturan nol dari rangkaian penguat differensial sebaiknya keluaran
LM35 diperkuat terlebih dahulu sehingga tegangan referensi pengurang tidak terlalu kecil.
3. Sumber tegangan referensi pengurang sebaiknya menggunakan diode zener agar didapatkan
tegangan yang stabil.
4. Untuk membuat tampilan data suhu lebih presisi maka dapat dibuat program kalibrasi data suhu
yang lebih baik.

DAFTAR PUSTAKA
[1] Coughlin, Robert and Federick Driscoll, Penguat Operasional dan Rangkaian Terpadu Linier, Jakarta : Erlangga.

[2] Malvino, Prinsip ­ Prinsip Elektronika, Jakarta, Erlangga, 1996.

[3] Malik, M, I, Anistardi, Bereksperimen dengan Mikrokontroler 8031, Jakarta, Elex Media Komputindo, Gramedia Group, 1997.

[4] Putra, A, E, Belajar Mikrokontroler AT89C51/52/55 Teori dan Aplikasi, Yogyakarta, Gava Media, 2002.

[5] Ogata, Katsuhiko, Teknik Kontrol Otomatik, Jilid 1, Erlangga, Jakarta, 1991.