OXYGEN ANALYZER DILENGKAPI DENGAN PENYIMPANAN DATA BERBASIS MIKROKONTROLER Nova Marta Anggarianto, Syaifudin,ST,MT, Moch. Prastawa Assalim T.P.,ST.M.Si. Jurusan Teknik Elektromedik POLITEKNIK KESEHATAN KEMENTRIAN KESEHATAN SURABAYA Oxygen Analyzer merupakan alat ukur kadar oksigen dalam suatu gas. Dalam bidang kesehatan Oxygen Analyzer difungsikan untuk mengukur kadar gas oksigen pada Tabung Oksigen, Outlet Gas Medis, Alat Terapi Oksigen, Continuous Positive Airway Pressure (CPAP), Ventilator. Pada umumnya alat CPAP model lama masih sering digunakan untuk pelayanan medis di rumah sakit. Dimana alat ini memiliki pengaturan kadar oksigen tetapi tidak dilengkapi dengan tampilan kadar oksigen, sehingga kadar oksigen yang dikeluarkan belum diketahui kesesuaiannya dengan pengaturan kadarnya. Berdasarkan masalah tersebut, maka penulis membuat alat Oxygen Analyzer, untuk mengetahui kadar oksigen yang dikeluarkan oleh alat sehingga pemberian oksigen ke pasien sesuai dengan pengaturan. Penelitian dan pembuatan modul ini menggunakan metode Pre-eksperimental dengan rancangan After Only Design yaitu membuat alat “Oxygen Analyzer” yang hasil pengukurannya dibandingkan dengan alat yang tertelusur untuk mendapatkan nilai akurasi yang tinggi. Berdasarkan hasil pengukuran pada alat Oksigen Konsentrator di POLTEKKES Surabaya maka diperoleh tingkat kesalahan pembacaan (%error) yaitu 0,007% pada kadar oksigen 21%, 0,007% pada kadar oksigen 22%, 0,07% pada kadar oksigen 23%, 0,006% pada kadar oksigen 24%, 0,006% pada kadar oksigen 25%, 0,006% pada kadar oksigen 26%. Kata Kunci: Kadar oksigen, sensor oksigen, oxygen analyzer, CPAP
PENDAHULUAN Oxygen Analyzer merupakan alat ukur kadar oxygen dalam suatu gas yang berperan penting dalam berbagai bidang industri maupun bidang kesehatan. Dalam bidang kesehatan Oxygen Analyzer difungsikan untuk mengukur kadar gas oksigen pada Tabung Oksigen, Alat Terapi Oksigen, Outlet Gas Medis, Ventilator, Continuous Positive Airway Pressure (CPAP) serta Baby Incubator yang dilengkapi dengan pemberian oxygen di dalamnya (Los Alamos National Laboratory, 2007). Dalam suatu Rumah Sakit dipersyaratkan kadar oksigen sentral yang digunakan dalam pelayanan medis yaitu sebesar > 99,5% (Keputusan Menteri Kesehatan Republik Indonesia Nomor 1439/menkes/sk/xi/2002). Pada umumnya alat CPAP model lama masih sering digunakan untuk pelayanan medis di sebuah rumah sakit. Dimana alat ini memiliki pengaturan kadar oksigen tetapi tidak dilengkapi dengan tampilan kadar oksigen, sehingga kadar oksigen yang dikeluarkan belum diketahui kesesuaiannya dengan pengaturan kadarnya. Hal ini bisa berakibat buruk terhadap pasien. Menurut pendapat Arthur C Guyton dan John E Hall (2007), apabila tubuh kekurangan oksigen sel-sel akan mati sehingga metabolism dalam tubuh tidak berjalan dengan baik. Begitu juga jika kadar oksigen terlalu berlebih bisa mempengaruhi
paru-paru. Untuk itu saat pemberian oksigen terhadap pasien perlu diperhatikan kadarnya. Berdasarkan masalah tersebut, maka perlu adanya alat Oxygen Analyzer untuk mengetahui kadar oksigen yang dikeluarkan oleh alat sehingga pemberian oksigen ke pasien sesuai dengan pengaturan. Alat Oxygen Analyzer ini sebelumnya telah di buat oleh saudara (Kholikul Akram Radianto tahun 2014) yang sebelumnya tidak terdapat fasilitas penyimpanan data. Dari permasalahan di atas penulis ingin menambahkan fasilitas penyimpanan data di alat Oxygen Analyzer tersebut. Dengan ini penulis mengharapkan dapat memudahkan user dalam melakukan pencatatan pada saat pengoprasian Oxygen Analyzer terhadap alat yang di ukur kadar Oxygen nya. BATASAN MASALAH 1) Menggunakan sensor gas Oxygen jenis KE-50 2) Hasil kadar oksigen ditampilkan pada LCD 2x16 3) Menampilkan hasul pengukuran kadar oxygen dalam 2 digit angka 4) Range pengukuran dari 20% sampai 90% oxygen 5) Penyimpanan data maksimal 10 data
1
RUMUSAN MASALAH “Dapatkah dibuat fasilitas penyimpanan maksimal 10 data pada alat oxygen analyzer dengan sensor gas KE-50?”
TUJUAN PENELITIAN 1) Tujuan Umum Dibuatnya alat Oxygen Analyzer dilengkapi dengan penyimpanan data. 2) Tujuan Khusus a. Membuat rangkaian minimum system mikrokontroler ATmega16 b. Membuat rangkaian pengolah sinyal analog c. Membuat program pengkonversi dan program penyimpanan data internal pada system mikrokontroler d. Membuat rangkaian display menggunakan LCD 2x16 MANFAAT PENELITIAN 1) Manfaat Teoritis Untuk menambah pengetahuan mahasiswa teknik elektromedik mengenai alat Oxygen Analyzer yang dilengkapi dengan penyimpanan data. 2) Manfaat Praktis Dengan adanya alat ini diharapkan dapat membantu user dalam melakukan pencatatan dan pengukuran kadar oksigen.
TINJAUAN PUSTAKA 1) Oxygen Atmosfer bumi terdiri atas Nitrogen (78.17%) dan Oxygen (20.97%), dengan sedikit Argon (0.9%) dan gas lainnya (sekitar 0.0357%).
Gambar.1.Komposisi Atmosfer Bumi 2) Manfaat Oxygen Bagi Tubuh Oxygen memegang peranan penting dalam semua proses tubuh secara fungsional. Tidak adanya oxygen akan menyebabkan tubuh, secara fungsional mengalami kemunduran atau bahkan dapat menimbulkan kematian. Oleh karena itu, kebutuhan oxygen merupakan
kebutuhan yang paling utama dan sangat vital bagi tubuh. Pemenuhan kebutuhan oxygen ini tidak terlepas dari fungsi sistem pernapasan secara fungsional. Bila ada gangguan pada salah satu organ sistem respirasi, maka kebutuhan oxygen akan mengalami gangguan. Oxygen dipasok ke dalam tubuh melalui proses pernapasan/ respirasi yang melibatkan sistem pernapasan. Sistem pernapasan terdiri atas serangkaian organ yang berfungsi melakukan pertukaran gas antara atmosfer dengan plasma melalui proses ventilasi paruparu, difusi, transportasi oxygen, dan perfusi ke jaringan. Fungsi ini berlangsung selama kehidupan untuk mempertahankan homeostasis dengan mengatur penyediaan oxygen, mengatur penggunaan nutrisi, melakukan eliminasi sisa metabolisme (karbondioksida), dan mengatur keseimbangan asam basa. 3) Dampak Kekurangan Oxygen Bagi Tubuh Kebutuhan tubuh terhadap oxygen merupakan kebutuhan yang sangat mendasar dan mendesak. Tanpa oxygen dalam waktu tertentu, sel tubuh akan mengalami kerusakan yang menetap dan mengalami kematian. Otak merupakan organ yang sangat sensitif terhadap kekurangan oxygen. Otak masih mampu menoleransi kekurangan oxygen dalam waktu tiga sampai lima menit. Apabila kekurangan oxygen berlangsung lebih dari lima menit, dapat terjadi kerusakan sel otak secara permanen (Kozier dan Erb 1998). Selain memicu timbulnya kanker, kekurangan oxygen juga menurunkan berat badan yang dikarenakan nafsu makan berkurang. Keseimbangan oxygen bisa terganggu salah satunya karena meningkatkan kadar CO yang bisa beraasal dari asap rokok. Kekurangan oxygen juga dapat mengakibatkan terjadinya penyakit Hipoksia (kekurangan oxygen). Jika seseorang berada dalam keadaan hipoksia (kekurangan oxygen) maka suatu gen akan terinduksi dalam suatu kondisi, dimana gen ini juga berpengaruh pada gen-gen yang lain. Hal inilah yang menjadi alasan kuat bahwa saat tubuh kekurangan oxygen maka nafsu makan akan berkurang dan berat badan menurun (Merry Wahyuningsih, 2011).
2
4) Dampak Kelebihan Oxygen Bagi Tubuh Keracunan oxygen pada manusia membawa akibat buruk pada tiga organ yang amat vital. Dia bisa menimpa pada sistem syaraf yang mengakibatkan kejang-kejang dan tidak sadar (dinamakan Paul Bert effect), pada paru-paru yang mengakibatkan sesak nafas dan sakit dada (dinamakan Lorrain Smith effect), dan pada mata yang mengakibatkan rabun jauh (myopia). Umumnya gangguan ini tidak bersifat menetap pada orang dewasa dan membaik dengan berjalannya waktu. Namun pada bayi yang lahir prematur, efek pemberian oxygen yang berlebihan ini dapat mengakibatkan kelainan mata yang lebih serius bahkan sampai menjadi buta. Hal ini terutama disebabkan pada bayi prematur, organ paru-paru dan organ matanya belum berkembang secara sempurna, sehingga tekanan oxygen yang berlebihan ini mengakibatkan kerusakan sel pada bronchus dan retina mata. Kerusakan pada retina yang „terlepas‟ (detached) ini dinamakan Retinopathy Of Prematurity (ROP). (Gustaaf Kusno, 2011).
Modul Oxygen Analyzer ini menggunakan sensor gas oksigen KE-50 yang khusus untuk mendeteksi kadar gas oksigen dengan output berupa tegangan. Dimana sensor ini mempunyai struktur yang sama dengan baterai yang terdiri dari elektroda dan elektrolit. Elektroda dibagi menjadi anoda berupa Pb (timbal) dan katoda yang terbuat dari emas (Ag) serta elektrolit berupa asam lemah atau alkaline. Elektroda emas merupakan sebuah padatan yang berupa selaput yang tidak berongga (Mochamad Yusuf Santoso).
Metodologi 1) Diagram Blok Modul
5) Oxygen Analyzer
2) Diagram Alir Program
Gambar.1.Oxygen Analyzer Oxygen Analyzer adalah alat ukur yang berfungsi untuk mengukur kadar oxygen dalam suatu gas. Di bidang kesehatan Oxygen Analyzer difungsikan untuk mengukur kadar gas oxygen pada tabung oxygen, outlet gas medis, alat terapi oxygen, Continuous Positive Airway Pressure (CPAP), dan ventilator. Dengan cara menghubungkan sensor ke selang output dari sumber oxygen maka kadar oxygen dapat diukur. 6) Sensor Gas Oxygen
Jenis Penelitian Gambar.1.Sensor Gas Oxygen
Dalam penelitian ini menggunakan metode pre eksperimental dengan jenis peneltian “After Only Design” karena langsung dilakukan perlakuan terhadap alat tanpa
3
melakukan pengukuran keadaan awal terlebih dahulu dan hasil dari perlakuan tersebut dibandingkan dengan kelompok kontrol. Kelemahan dari rancangan ini adalah tidak tahu keadaan awalnya, sehingga hasil yang didapat sulit disimpulkan.
Variabel Penelitian 1) Variabel Bebas Sebagai variabel bebas adalah gas oksigen 2) Variabel Terikat Sebagai variabel terikat yaitu sensor gas oksigen KE 50 untuk mendeteksi gas oksigen 3) Variabel terkendali Sebagai variabel terkendali yaitu mikrokontroller ATmega16 untuk mengontrol sistem kerja alat. Hasil Pengukuran Test Point Untuk pengukuran test point pada modul dilakukan pengukuran pada test point output tegangan sensor, output tegangan penguatan op-amp pertama (2kali penguatan) dan output tegangan penguatan op-amp kedua (2kali penguatan). Tabel 4.1 Data hasil pengukuran test point
Tegangan Tegangan output opTegangan output opKadar amp output amp kedua oksigen pertama sensor (2kali (2kali penguatan) penguatan)
21% 22% 23% 24% 25% 26%
0.046 V 0.048 V 0.050 V 0.053 V 0.055 V 0.057 V
0.198 V 0.228 V 0.241 V 0.244 V 0.249 V 0.257 V
Tabel 4.3 Data hasil perhitungan statistic
Kad ar Oksi gen
21% 22% 23% 24% 25% 26%
X
21,16% 22,16% 23,16% 24,16% 25,16% 26,16%
Simpa ngan
Error%
SD
Ua
0,16% 0,16% 0,16% 0,16% 0,16% 0,16%
0,007% 0,007% 0,007% 0,006% 0,006% 0,006%
0,408 0,408 0,408 0,408 0,408 0,408
0,166 0,166 0,166 0,166 0,166 0,166
Pembahasan Rangkaian 1) Pembahasan Rangkaian Minimum Sistem ATmega16 Rangkaian ini adalah rangkaian mikrokontroler yang berfungsi mengatur jalannya sistem. Spesifikasi modul rangkaian minimum sistem ATmega16 yang diperlukan adalah: 1. Tegangan supply yang dibutuhkan 4.5 – 5.5 Vdc dan ground. 2. Membutuhkan sambungan MOSI, MISO, SCK, RESET dan GROUND dengan Programer untuk dapat memprogram ATmega16. 3. Membutuhkan tombol/saklar ON/OFF. Jadi didapatkan rangkaian seperti gambar sebagai berikut:
0.331 V 0.339 V 0.350 V 0.369 V 0.378 V 0.391 V
Hasil Perhitungan/Analisis Data Berdasarkan perhitungan menggunakan rumusrumus statistik yang tercantum di Bab 3.8 didapatkan data hasil perhitungan seperti pada tabel dibawah ini:
Penjelasan Rangkaian Minimum Sistem: Saklar ON/OFF berfungsi untuk menghubungkan dan memutuskan tegangan yang menyupplay semua rangkaian agar alat dapat beroperasi. PORTA.2 – PORTD.7 terhubung ke LCD yang berfungsi sebagai display untuk menampilkan hasil
4
pembacaan sensor. PORTA.1 (ADC0) terhubung ke output dari rangkaian Pengkondisi Sinyal Analog. Tombol RESET merupakan proses mengembalikan sistem ke kondisi default atau semula tanpa mematikan alat. Pin reset ATmega16 adalah active low resistor, ini berfungsi untuk pull up yang cara kerjanya secara default ic akan mengenal logika 1 / high jika mendapat triger (saklar ditekan) maka input akan terhubung langsung dengan ground dan mendapat logika nol. Kapasitor yang diparalelkan dengan tombol adalah untuk memberikan delay reset pada waktu rangkaian dinyalakan. Konektor programmer yang terhubung dengan pin Mosi, Miso, Sck, Reset dan Ground berfungsi untuk memasukkan dan menghapus program pada mikrokontroller. Langkah-langkah pengaturan/pengujian : 1. Mengukur tegangan supply pada kaki 10(vcc) dan 11 (ground). 2. Memasukkan Program menggunakan Programer. 3. Menjalankan program pembacaan data ADC. 4. Mengamati tampilan LCD dengan kesesuaian program. Pembahasan Rangkaian Pengkondisi Sinyal Analog (PSA) Rangkaian ini merupakan rangkaian untuk menguatkan sinyal tegangan output sensor. Spesifikasi modul rangkaian PSA yang diperlukan adalah: 1. Membutuhkan tegangan supply 6V dan ground untuk mengaktifkan IC LM358. 2. Membutuhkan tegangan input dari sensor berupa tegangan DC. 3. Membutuhkan resistor feedback bernilai 1k dan resistor ground 1k. maka penguatan non inverting dihitung dengan cara: 1.
Penguatan 2 kali non inverting op-amp pertama a. Untuk penguatan tegangan sensor saat kadar oksigen 21% (0.046V) Vout = Vin x (1+(Rf / Rg)) Vout = 0.046V x (1+(1k / 1k)) Vout = 0.046V x (1+1) Vout = 0.046V x 2 Vout = 0.092V b.
Untuk penguatan tegangan sensor saat kadar oksigen 22% (0.048V) Vout = Vin x (1+(Rf / Rg)) Vout = 0.048V x (1+(1k / 1k)) Vout = 0.048V x (1+1) Vout = 0.048V x 2 Vout = 0.096V
2.
c.
Untuk penguatan tegangan sensor saat kadar oksigen 23% (0.050V) Vout = Vin x (1+(Rf / Rg)) Vout = 0.050V x (1+(1k / 1k)) Vout = 0.050V x (1+1) Vout = 0.050V x 2 Vout = 0.100V
d.
Untuk penguatan tegangan sensor saat kadar oksigen 24% (0,053V) Vout = Vin x (1+(Rf / Rg)) Vout = 0.053V x (1+(1k / 1k)) Vout = 0.053V x (1+1) Vout = 0.053V x 2 Vout = 0.106V
e.
Untuk penguatan tegangan sensor saat kadar oksigen 25% (0,055V) Vout = Vin x (1+(Rf / Rg)) Vout = 0.055V x (1+(1k / 1k)) Vout = 0.055V x (1+1) Vout = 0.055V x 2 Vout = 0.110V
f.
Untuk penguatan tegangan sensor saat kadar oksigen 26% (0,057V) Vout = Vin x (1+(Rf / Rg)) Vout = 0.057V x (1+(1k / 1k)) Vout = 0.057V x (1+1) Vout = 0.057V x 2 Vout = 0.114V
Penguatan 2 kali non inverting op-amp kedua: a. Untuk penguatan tegangan sensor setelah penguatan op-amp pertama kadar 21% (0.092V) Vout = Vin x (1+(Rf / Rg)) Vout = 0.092V x (1+(1k / 1k)) Vout = 0.092V x (1+1) Vout = 0.092V x 2 Vout = 0.184V b.
Untuk penguatan tegangan sensor saat kadar oksigen 22% (0.096V) Vout = Vin x (1+(Rf / Rg)) Vout = 0.096V x (1+(1k / 1k)) Vout = 0.096V x (1+1) Vout = 0.096V x 2 Vout = 0.192V
c.
Untuk penguatan tegangan sensor saat kadar oksigen 23% (0.100V) Vout = Vin x (1+(Rf / Rg)) Vout = 0.100V x (1+(1k / 1k)) Vout = 0.100V x (1+1) Vout = 0.100V x 2 Vout = 0.200V
5
d.
e.
f.
Untuk penguatan tegangan sensor saat kadar oksigen 24% (0,106V) Vout = Vin x (1+(Rf / Rg)) Vout = 0.106V x (1+(1k / 1k)) Vout = 0.106V x (1+1) Vout = 0.106V x 2 Vout = 0.212V Untuk penguatan tegangan sensor saat kadar oksigen 25% (0,110V) Vout = Vin x (1+(Rf / Rg)) Vout = 0.110V x (1+(1k / 1k)) Vout = 0.110V x (1+1) Vout = 0.110V x 2 Vout = 0.220V
1.
Menggunakan tegan supply minimum sistem pada pin8 saat rangkaian di operasikan dan menggunakan Vbat pada pin3 saat kodisi minimum sistem di matikan.
2.
Pin 1 dan 2 di hubungkan pada kristal eksternal.
3.
Pada pin 5,6 dan 7 adalah sinyal data dari RTC ke microcontroller.
Jadi didapatkan rangkaian seperti gambar dibawah ini:
Untuk penguatan tegangan sensor saat kadar oksigen 26% (0,114V) Vout = Vin x (1+(Rf / Rg)) Vout = 0.114V x (1+(1k / 1k)) Vout = 0.114V x (1+1) Vout = 0.114V x 2 Vout = 0.228V
Jadi didapatkan rangkaian seperti gambar dibawah ini: J8
TES POIN PENGUAT 2 J9
1
TES POIN PENGUAT 1 1
J6
1
TES POIN SENSOR
Subprogram real time clock(RTC)
vcc
2
J2
+
1
5
-
6 LM358
+
1 2 3
7
LM358
1
KE ADC MIKRO
2
2
1k R3
4
4
1k R1
U9B
8
3
1 2
vcc
U8A
8
DARI SENSOR J1
3
1
R2 POT
Gambar 5.4 Rangkaian real time clock(RTC)
3 R4 POT
Gambar 5.3 Rangkaian penguatan 4 kali non inverting
Pembahasan rangkaian Real Time Clock (RTC) Rangkaian real time clock (RTC) ini menggunakan IC DS1307 yang mempunyai clock sumber sendiri dan internal batery untuk menyimpan data waktu dan tanggal. Sehingga jika system mikrocontroller mati waktu dan tanggal didalam memori RTC tetap uptodate. Spesifikasi modul rangkaian display LCD yang diperlukan adalah:
PORTC.0 dan PORTC.1 terhubung ke sinyal data dari IC DS1307 di pin5 dan pin6. Berikut listing programnya: Dim Weekday As Byte Config Date = Dmy , Separator = / Config Clock = User Config Scl = Portc.0 Config Sda = Portc.1 Const Ds1307w = &HD0 Const Ds1307r = &HD1 { Getdatetime: I2cstart I2cwbyte Ds1307w I2cwbyte 0 I2cstart I2cwbyte Ds1307r I2crbyte _sec , Ack I2crbyte _min , Ack I2crbyte _hour , Ack I2crbyte Weekday , Ack I2crbyte _day , Ack I2crbyte _month , Ack I2crbyte _year , Nack I2cstop _sec = Makedec(_sec) _min = Makedec(_min) _hour = Makedec(_hour)
6
_day = Makedec(_day) _month = Makedec(_month) _year = Makedec(_year) Return PORTB.0=1; PORTB.1=1; PORTB.2=0; delay_ms(10); }
Subprogram tampilan LCD 2X16 PORTA.2 - PORTA.7 mikrocontroller terhubung pada pin data dan control LCD Berikut listing programnya: Config Lcdpin = Pin , Db4 = Porta.5 , Db5 = Porta.4 , Db6 = Porta.3 , Db7 = Porta.2 , E = Porta.6 , Rs = Porta.7 { Cls Cursor Off Do Cursor Off Locate 1 , 1 : Lcd Time$ Locate 1 , 11 : Lcd "SENSOR" Locate 2 , 1 : Lcd Date$ }
Subprogram EEPROM internal Merupakan fasilitas penyimpanan data dalam memori internal microcontroller. Berikut listing programnya: $eeprom { If K = 0 Then Readeeprom Detik1 , 0 Readeeprom Menit1 , 2 Readeeprom Jam1 , 3 Readeeprom Data_adc1 , 4 Readeeprom Hari1 , 41 Readeeprom Bulan1 , 42 Readeeprom Tahun1 , 43 Locate 1 , 1 : Lcd Jam1 ; ":" ; Menit1 ; ":" ; Detik1 ; " " Locate 1 , 11 : Lcd "DATA1" ; " " Locate 2 , 1 : Lcd Hari1 ; "/" ; Bulan1 ; "/" ; Tahun1 ; " " Locate 2 , 11 : Lcd " " ; Data_adc1 ; " " Locate 2 , 14 : Lcd " % " ; " "
Elseif K = 1 Then Readeeprom Detik2 , 5 Readeeprom Menit2 , 6 Readeeprom Jam2 , 7
Readeeprom Data_adc2 , 8 Readeeprom Hari2 , 44 Readeeprom Bulan2 , 45 Readeeprom Tahun2 , 46 Locate 1 , 1 : Lcd Jam2 ; ":" ; Menit2 ; ":" ; Detik2 ; " " Locate 1 , 11 : Lcd "DATA2" ; " " Locate 2 , 1 : Lcd Hari2 ; "/" ; Bulan2 ; "/" ; Tahun2 ; " " Locate 2 , 11 : Lcd " " ; Data_adc2 ; " " Locate 2 , 14 : Lcd " %" ; " "
Elseif K = 2 Then Readeeprom Detik3 , 9 Readeeprom Menit3 , 10 Readeeprom Jam3 , 11 Readeeprom Data_adc3 , 12 Readeeprom Hari3 , 47 Readeeprom Bulan3 , 48 Readeeprom Tahun3 , 49 Locate 1 , 1 : Lcd Jam3 ; ":" ; Menit3 ; ":" ; Detik3 ; " " Locate 1 , 11 : Lcd "DATA3" ; " " Locate 2 , 1 : Lcd Hari3 ; "/" ; Bulan3 ; "/" ; Tahun3 ; " " Locate 2 , 11 : Lcd " " ; Data_adc3 ; " " Locate 2 , 14 : Lcd " % " ; " "
Elseif K = 3 Then Readeeprom Detik4 , 13 Readeeprom Menit4 , 14 Readeeprom Jam4 , 15 Readeeprom Data_adc4 , 16
Readeeprom Hari4 , 50 Readeeprom Bulan4 , 51 Readeeprom Tahun4 , 52 Locate 1 , 1 : Lcd Jam4 ; ":" ; Menit4 ; ":" ; Detik4 ; " " Locate 1 , 11 : Lcd "DATA4" ; " " Locate 2 , 1 : Lcd Hari4 ; "/" ; Bulan4 ; "/" ; Tahun4 ; " " Locate 2 , 11 : Lcd " " ; Data_adc4 ; " " Locate 2 , 14 : Lcd " % " ; " "
Elseif K = 4 Then Readeeprom Detik5 , 17 Readeeprom Menit5 , 18 Readeeprom Jam5 , 19 Readeeprom Data_adc5 , 20
7
Readeeprom Data_adc8 , 32 Readeeprom Hari5 , 53 Readeeprom Bulan5 , 54 Readeeprom Tahun5 , 55 Locate 1 , 1 : Lcd Jam5 ; ":" ; Menit5 ; ":" ; Detik5 ; " " Locate 1 , 11 : Lcd "DATA5" ; " " Locate 2 , 1 : Lcd Hari5 ; "/" ; Bulan5 ; "/" ; Tahun5 ; " " Locate 2 , 11 : Lcd " " ; Data_adc5 ; " " Locate 2 , 14 : Lcd " % " ; " "
Elseif K = 5 Then Readeeprom Detik6 , 21 Readeeprom Menit6 , 22 Readeeprom Jam6 , 23 Readeeprom Data_adc6 , 24
Readeeprom Hari6 , 56 Readeeprom Bulan6 , 57 Readeeprom Tahun6 , 58 Locate 1 , 1 : Lcd Jam6 ; ":" ; Menit6 ; ":" ; Detik6 ; " " Locate 1 , 11 : Lcd "DATA6" ; " " Locate 2 , 1 : Lcd Hari6 ; "/" ; Bulan6 ; "/" ; Tahun6 ; " " Locate 2 , 11 : Lcd " " ; Data_adc6 ; " " Locate 2 , 14 : Lcd " % " ; " "
Elseif K = 6 Then Readeeprom Detik7 , 25 Readeeprom Menit7 , 26 Readeeprom Jam7 , 27 Readeeprom Data_adc7 , 28
Readeeprom Hari7 , 59 Readeeprom Bulan7 , 71 Readeeprom Tahun7 , 61 Locate 1 , 1 : Lcd Jam7 ; ":" ; Menit7 ; ":" ; Detik7 ; " " Locate 1 , 11 : Lcd "DATA7" ; " " Locate 2 , 1 : Lcd Hari7 ; "/" ; Bulan7 ; "/" ; Tahun7 ; " " Locate 2 , 11 : Lcd " " ; Data_adc7 ; " " Locate 2 , 14 : Lcd " % " ; " "
Elseif K = 7 Then Readeeprom Detik8 , 29 Readeeprom Menit8 , 30 Readeeprom Jam8 , 31
Readeeprom Hari8 , 62 Readeeprom Bulan8 , 63 Readeeprom Tahun8 , 64 Locate 1 , 1 : Lcd Jam8 ; ":" ; Menit8 ; ":" ; Detik8 ; " " Locate 1 , 11 : Lcd "DATA8" ; " " Locate 2 , 1 : Lcd Hari8 ; "/" ; Bulan8 ; "/" ; Tahun8 ; " " Locate 2 , 11 : Lcd " " ; Data_adc8 ; " " Locate 2 , 14 : Lcd " % " ; " "
Elseif K = 8 Then Readeeprom Detik9 , 33 Readeeprom Menit9 , 34 Readeeprom Jam9 , 35 Readeeprom Data_adc9 , 36
Readeeprom Hari9 , 65 Readeeprom Bulan9 , 66 Readeeprom Tahun9 , 67 Locate 1 , 1 : Lcd Jam9 ; ":" ; Menit9 ; ":" ; Detik9 ; " " Locate 1 , 11 : Lcd "DATA9" ; " " Locate 2 , 1 : Lcd Hari9 ; "/" ; Bulan9 ; "/" ; Tahun9 ; " " Locate 2 , 11 : Lcd " " ; Data_adc9 ; " " Locate 2 , 14 : Lcd " % " ; " "
Elseif K = 9 Then Readeeprom Detik10 , 37 Readeeprom Menit10 , 38 Readeeprom Jam10 , 39 Readeeprom Data_adc10 , 40
Readeeprom Hari10 , 68 Readeeprom Bulan10 , 69 Readeeprom Tahun10 , 70 Locate 1 , 1 : Lcd Jam10 ; ":" ; Menit10 ; ":" ; Detik10 ; " " Locate 1 , 11 : Lcd "DATA10" ; " " Locate 2 , 1 : Lcd Hari10 ; "/" ; Bulan10 ; "/" ; Tahun10 ; " " Locate 2 , 11 : Lcd " " ; Data_adc10 ; " " Locate 2 , 14 : Lcd " % " ; " "
End If Loop Goto Main
8
segmen puluhan pul = pul % 10; rat = data2 / 100; //untuk menampilkan data2 di segmen ratusan rat = rat % 10; }
Subprogram konversi data ADC Berikut listing programnya: Config Adc = Single , Prescaler = Auto , Reference = Avcc Start Adc Dim Data_adcku As Word , Adc_convert As Single , Adc_string As String * 10 Dim Data_sen As Single Dim Data_adcs1 As Single Dim Data_adcs2 As Single Dim Data_adcs3 As Single Dim Data_adc As Single Dim Data_oksigen As Integer Dim Data_sensor As String * 5 { Data_adcku = Getadc(1) Data_sen = Data_adcku Data_adcs1 = 3.55 * Data_sen Data_adcs1 = Data_adcs1 / 1023 Data_adcs1 = Data_adcs1 * 1000 Data_adcs2 = 0.1 * Data_adcs1 Data_adcs2 = Data_adcs2 - 0.8 Data_adc = Data_adcs2 Data_sensor = Fusing(data_adc , "##.#") Locate 2 , 11 : Lcd " " ; Data_sensor Locate 2 , 14 : Lcd " % " Proses konversi data menggunakan ADC0 pada PORTC.0. Konversi dari tegangan ke persen menggunakan persamaan y=m.x+c. Dimana “y” merupakan kadar oksigen dan “x” merupakan tegangan saat kadar oksigen tertentu. Nilai “m” dan “c” didapatkan dari perhitungan sebagai berikut: y = m.x+c 20 = m.208+c 30 = m.308+c -10 = m.(-100) -10 =m -100 m = 0,1 jadi, m=0,1 y 20 20 c c
= m.x+c = 0,1 . 208+c = 20,8 + c = 20 – 20,8 = -0,8
jadi, c=-0,8
Setelah nilai “m” dan “c” sudah diketahui maka persamaan y=m.x+c menjadi y=0,1.x+(-0,8). Persamaan tersebut digunakan sebagai rumus konversi. Didalam rumus yang terdapat pada listing program diatas, “y” sebagai data2 atau data yang akan ditampilkan. Sedangkan “x” sebagai data1 atau data tegangan saat kadar oksigen tertentu. Dari rumus tersebut akan dikonversikan dari tegangan ke satuan persen kadar oksigen. Berikut perhitungan dari persamaan y=0,1.x+(-0,8): Untuk x = 208 mV yaitu: y = 0,1.208+(-0.8) y = 20,8-0,8 y = 20 Untuk x = 308 mV yaitu: y = 0,1.308+(-0,8) y = 30,8-0,8 y = 30 Untuk x = 407 mV yaitu: y = 0,1.407+(-0,8) y = 40,7-0,8 y = 39,9 Untuk x = 508 mV yaitu: y = 0,1.508+(-0,8) y = 50,8-0,8 y = 50 Untuk x = 607 mV yaitu: y = 0,1.607+(-0,8) y = 60,7-0,8 y = 59,9 Untuk x = 709 mV yaitu: y = 0,1.709+(-0,8) y = 70,9-0,8 y = 70,1 Untuk x = 811 mV yaitu: y = 0,1.811+(-0,8) y = 81,1-0,8 y = 80,3 Untuk x = 912 mV yaitu: y = 0,1.912+(-0,8) y = 91,2-0,8 y = 90,4
Pembahasan Kinerja Sistem Keseluruhan Minimum sistem berkerja sesuai dengan program yang diberikan dan dapat mengatur jalannya sistem dari alat, minimum sistem dapat menampilkan pembacaan kadar oxygen dan real time clock(RTC) pada LCD karakter, mengkonversi nilai tegangan yang diberikan pada ADC menjadi nilai kadar oksigen pada display LCD dengan menggunakan persamaan y=m.x+c sebagai rumus konversi. Display LCD dapat menampilkan nilai kadar oksigen yang
9
dideteksi oleh sensor gas oksigen jenis KE-50 dan bekerja sesuai program yang diberikan. Keluaran sensor dikondisikan menggunakan rangkaian penguat non inverting sebanyak 4 kali penguatan, sehingga tegangan keluaran sensor yang semulanya kecil menjadi lebih besar untuk masuk ke pin ADC mikrokontroller. Setelah tegangan keluaran sensor dikuatkan sebesar 4 kali penguatan, pembacaan data oleh ADC mikrokontroller lebih mudah dan tampilan pada LCD karakter lebih stabil. Berdasarakan sistem pengujian dan pengukuran modul dengan alat pembanding Oksigen konsentrat yang berada di Lab Terpadu POLTEKKES Surabaya yang terdapat pada gambar 4.7 dan berdasarkan data perbandingan pengukuran kadar oksigen pada tabel 4.2 Pada kadar oksigen 21%, 22%, 23%, 24%, 25% dan 26% dimana masing - masing pengukuran dilakukan sebanyak 6 kali. Modul lebih stabil pembacaan kadar oksigennya dan didapat nilai pembacaan pada modul dengan nilai simpangan 0,016%. Modul layak digunakan untuk pengukuran karena nilai simpangan kurang dari toleransi yaitu 4%. Dengan dibuatnya modul untuk mengukur kadar gas oksigen ini akan mempermudah dalam pengukuran kadar gas oksigen dan juga dapat menghindari pasien dari terjadinya keracunan oksigen karena kelebihan atau kekurangan oksigen, akan tetapi penggunaan sensor gas oksigen KE-50 secara terus menerus akan mengurangi Life Time dari sensor, sensor akan kurang sensitif dalam mendeteksi gas oksigen, sehingga pembacaan kadar oksigen tidak stabil. Jadi perlu dilakukan penggantian sensor dengan yang baru agar modul bisa digunakan kembali.
PENUTUP Kesimpulan Setelah melakukan proses pembuatan dan study literature serta perencanaan, pengujian alat dan pendataan maka penulis dapat menyimpulkan sebagai berikut: 1) Dapat dibuat rangkaian minimum sistem mikrokontroller ATmega16 sebagai pemroses dan berjalan sesuai program. 2) Desain pengkondisi sinyal analog menggunakan penguat non inverting dengan penguatan tegangan sensor sebesar 4 kali penguatan. Penguatan sebesar 4 kali sudah stabil untuk pembacaan pada ADC mikrokontroller ATmega16. Namun nilai pengukuran tegangan di test poin tidak sesuai dengan teori yang tertulis. Hal itu bisa dipengaruhi oleh kualitas komponen yang dipakai.
Saran Setelah dilakukan pembuatan modul dan pengujian hasil modul yang dibuat, agar lebih sempurna maka penulis memberikan saran sebagai berikut: 1) Menggunakan sensor gas oksigen dengan tipe lain yang mempunyai nilai sensitifitas tinggi dan sensor tersebut juga sudah di sediakan pengkondisi sinyal analog(PSA) oleh pabrikannya, agar bisa lebih mudah mengkonfersikan data ADC nya.
UCAPAN TERIMA KASIH Terima kasih kepada semua keluarga besar Teknik Elektromedik Surabaya yang telah membantu penulis dan memberikan saran-saran sehingga penulis dapat menyelesaikan Tugas Akhir ini. Tidak lupa kepada para dosen terima kasih atas saran-saran dan masukkannya. DAFTAR PUSTAKA Analox Sensor Technology. Analox O2 Portable User Manual. Diakses tanggal 17-12-2014 di www.analoxsensortechnology.com Arthur C Guyton & John E Hall. 2007. Buku Ajar Fisiologi Kedokteran Edisi 11. Jakarta : EGC Gustaaf Kusno. 2011. Mungkinkah Kita Keracunan Oksigen?. Diakses tanggal 16-11-2014 di www.kompasiana.com Kozier Barbara, Erb Glenora. 1998. Buku Ajar Praktek Keperawatan Klinis Kozier Erb. Jakarta: EGC Mading Sahabat. 2011. Manfaat Oksigen Bagi Tubuh. Juni 2012. http://tanyapadaku.blogspot.com/ Merry Wahyuningsih. 2011. Perokok Kurus Karena Kekurangan Oksigen. Jakarta Mochamad Yusuf Santoso. Sistem sensor oksigen. Diakses tanggal 16-11-2014 di www.scribd.com Soekidjo Notoatmodjo. 2010. Metodologi penelitian kesehatan. Jakarta : Rineka Cipta
10
11