Kali ini saya akan mencoba membahas experimen digital yang pernah saya coba, salah satunya adalah Experimen pembuatan termometer digital berbasis MCS-51. termometer ini terbukti sangat akurat dikarenakan sensor yang digunakan sangat presisi. bahan-bahan yang digunakan adalah :
1. MCU 8051 sebagai pemroses (AT89S51,AT89S52,....)
2. ADC 0804 sebagai converter tegangan analog dari sensor agar menjadi data digital
3. LM 35 sebagai sensor suhu
Gambar diagram blok rangkaiannya
Sensor LM 352. ADC 0804 sebagai converter tegangan analog dari sensor agar menjadi data digital
3. LM 35 sebagai sensor suhu
4. LCD 16x2
Gambar diagram blok rangkaiannya
Sensor ini mempunyai range suhu dari 0-150 celcius dengan kenaikan tegangan per step suhunya adalah 0,01 volt sehingga range tegangannya adalah dari 0 volt sampai 1,5 volt. Sensor ini dapat dioperasikan antara 4 volt sampai 20 volt
ADC 0804
ADC 1 channel ini hanya mempunyai inputan type + / - dan mempunyai keluaran data 8 bit. Vref yang digunakan adalah tegangan output dari pembagi tegangan VR(variabel resistor).
perhitungan nilai Vref--->> apabila kita menginginkan suhu maksimal adalah 100 Celcius maka keluaran dari sensor adalah 1Volt Maksimal. tegangan 1volt ini dijadikan sebagai acuan untuk menentukan nilai Vref. Nilai Vref untuk ADC 0804 sendiri sudah ditentukan dengan menggunakan rumus Vref= Vin/2 maka untuk nilai input maksimal untuk 1 volt diketemukan nilai Vref sebesar 0,5 volt agar ADC mengeluarkan data 1111 1111 atau FF pada saat suhu 100 celcius....
Mode Rangkaian yang digunakan--->> mode rangkaian yang digunakan adalah termasuk jenis rangkaian ADC free running. maksud dari free running sendiri adalah ADC akan langsung mengkonverter tegangan analog menjadi digital begitu saat pin WR-INT dihubungkan dan di triger dengan logic 0 (ground) (lihat saklar start)
MCU 8051
MCU ini sudah sangat familiar dikalangan hobi digital karena fitur murah, mudah didapat dan mudah diaplikasikan. mempunyai 4 port I/o dengan kapasitas memori 4kb untuk S51 dan 8kb untuk S52
LCD 16x2
Namanya juga LCD 16x2 jadi mempunyai 16 kolom dan 2 baris dengan 8bit input. mempunyai 2 mode penulisan data LCD dapat menggunakan mode 8 bit data atau menggunakan mode 4bit data MSB. disini rangkaian yang digunakan adalah dengan menggunakan mode 4 bit data MSB dikarenakan lebih irit pemakaian port.
Bahasa pemrograman
yang digunakan adalah Bahasa Bascom(basic compiller), saat ini bascom menjadi pilihan utama dalam memprogram MCU dikarenakan bahasa pemrograman ini sangat dekat dengan bahasa manusia. berikut adalah program termometer :
$crystal = 11059200
$baud = 9600
Enable Interrupts
Config Lcdpin = Pin , Db4 = P0.4 , Db5 = P0.5 , Db6 = P0.6 , Db7 = P0.7 , E = P0.3 , Rs = P0.2
Config Lcd = 16 * 2
Cursor Off
Display On
Cls
Dim Adc As Word , Suhu As Word
P2.0 = 0 'WR-INT triger
Waitms 500
P2.0 = 1
Awal:
Suhu:
Adc = 0
Adc = P3
Adc = Adc * 100
Suhu = Adc * 2
Suhu = Suhu / 5
Suhu = Suhu / 100
Locate 1 , 1
Lcd "Suhu Saat Ini"
Locate 2 , 1
Lcd Suhu
Locate 2 , 4
Lcd "Celcius"
Goto Awal
End
Rumus yang dipakai mengkonversi data digital menjadi derajat celcius
apabila suhu 100 celsius maka data ADC 1111 1111 atau FF atau 256-1 = 255 , Maka :
Adc = 255 * 100
Suhu = 25500 * 2
Suhu = 51000 / 5
Suhu = 10200 / 100
suhu = 102 ----->> mbleset atau lebih 2 derajat
Kelebihan 2 derajat dapat ditanggulangi dengan memutar VR pada Vref ADC sehingga dapat pas 100 derajat.......
saatnya beraksi............................demo.........................................................................
Percobaan dengan Suhu ruangan
Percobaan mengukur suhu dengan solder
SELAMAT MENCOBAAAAA.......................... SEMOGA BERHASILLLLL.....................................