20
1 1. Pendahuluan Di era globalisasi dan era informasi, teknologi informasi berkembang begitu pesat dan telah merambah ke berbagai bidang termasuk kesehatan. Di era globalisasi dan informasi ini seakan telah membuat standar baru yang harus dipenuhi oleh dunia kesehatan. Hal tersebut telah membuat dunia keperawatan di Indonesia menjadi tertantang untuk terus mengembangkan kualitas pelayanan kesehatan yang berbasis teknologi informasi. Namun memang kita tidak bisa menutup mata akan hambatan-hambatan yang akan dihadapi oleh keperawatan di Indonesia., di antaranya adalah keterbatasan SDM yang menguasai bidang kesehatan dan teknologi informasi secara terpadu, masih minimnya infrastruktur untuk menerapkan sistem informasi di dunia pelayanan kesehatan, dan masih rendahnya minat para perawat di bidang teknologi informasi kesehatan. Dengan permasalahan tersebut dapat mempengaruhi rendahnya pelayanan kesehatan di Indonesia dengan demikian perlu adanya peningkatan kualitas pelayanan kesehatan di rumah sakit [1]. Contoh rendahnya pelayanan kesehatan Indonesia sudah terlalu banyak kasus akibat kelalaian penggantian cairan infus, pada kasus di Bangka Belitung misalnya diduga akibat kelalaian perawat rumah sakit seorang bayi yang baru berumur 4 hari tewas karena kekurangan oksigen dan kekurangan cairan akibat infus yang melekat di tubuh sang bayi kering dan terlambat diganti oleh suster rumah sakit umum daerah Pangkalpinang, Bangka Belitung. Bayi yang diberi nama Muhammad Aidil itu mengembuskan nafas terakhirnya di ruang perawatan RSUD Depati Hamzah Pangkal pinang Bangka Belitung. Anak pertama dari pasangan Fandi dan Finnie ini diduga tewas akibat kelalaian suster rumah sakit yang terlambat mengganti cairan infus yang sudah kosong dengan yang baru [2]. Kesehatan manusia sangat penting untuk selalu diperhatikan apalagi setelah seseorang sudah dinyatakan mengidap suatu penyakit yang dapat menghambat aktifitas positif. Berdasarkan The World Health Report, 2005 angka kematian seseorang akibat diagnosa kesehatan yang lambat serta penanganan yang buruk oleh tim medis di Indonesia pada mencapai 8-11/100.000 populasi manusia hidup, hal ini merupakan angka yang termasuk tinggi di ASEAN[11]. Berdasarkan latar belakang tersebut maka dibutuhkan sebuah sistem yang mampu mengidentifikasi dan memonitoring infus pada ruangan pasien untuk memudahkan kinerja perawat di rumah sakit. Dan masalah yang benar-benar mengkhawatirkan dapat cepat teratasi secara terpadu, dengan pengiriman informasi yang dapat diterima jarak jauh dan akurat. Sehingga dirancanglah sebuah prototype sistem pemantauan level cairan infus menggunakan Arduino platform dengan komunikasi secara wireless pada ruang perawat.

Perancangan Prototype Sistem Pemantauan Level Cairan …repository.uksw.edu/bitstream/123456789/8655/3/T1_672009043_Full... · Dengan permasalahan ... dan Identifikasi Gangguan Infus

  • Upload
    dangdat

  • View
    232

  • Download
    5

Embed Size (px)

Citation preview

Page 1: Perancangan Prototype Sistem Pemantauan Level Cairan …repository.uksw.edu/bitstream/123456789/8655/3/T1_672009043_Full... · Dengan permasalahan ... dan Identifikasi Gangguan Infus

1

1. Pendahuluan

Di era globalisasi dan era informasi, teknologi informasi berkembang begitu

pesat dan telah merambah ke berbagai bidang termasuk kesehatan. Di era

globalisasi dan informasi ini seakan telah membuat standar baru yang harus

dipenuhi oleh dunia kesehatan. Hal tersebut telah membuat dunia keperawatan di

Indonesia menjadi tertantang untuk terus mengembangkan kualitas pelayanan

kesehatan yang berbasis teknologi informasi. Namun memang kita tidak bisa

menutup mata akan hambatan-hambatan yang akan dihadapi oleh keperawatan di

Indonesia., di antaranya adalah keterbatasan SDM yang menguasai bidang

kesehatan dan teknologi informasi secara terpadu, masih minimnya infrastruktur

untuk menerapkan sistem informasi di dunia pelayanan kesehatan, dan masih

rendahnya minat para perawat di bidang teknologi informasi kesehatan. Dengan

permasalahan tersebut dapat mempengaruhi rendahnya pelayanan kesehatan di

Indonesia dengan demikian perlu adanya peningkatan kualitas pelayanan

kesehatan di rumah sakit [1].

Contoh rendahnya pelayanan kesehatan Indonesia sudah terlalu banyak

kasus akibat kelalaian penggantian cairan infus, pada kasus di Bangka Belitung

misalnya diduga akibat kelalaian perawat rumah sakit seorang bayi yang baru

berumur 4 hari tewas karena kekurangan oksigen dan kekurangan cairan akibat

infus yang melekat di tubuh sang bayi kering dan terlambat diganti oleh suster

rumah sakit umum daerah Pangkalpinang, Bangka Belitung.

Bayi yang diberi nama Muhammad Aidil itu mengembuskan nafas terakhirnya di

ruang perawatan RSUD Depati Hamzah Pangkal pinang Bangka Belitung. Anak

pertama dari pasangan Fandi dan Finnie ini diduga tewas akibat kelalaian suster

rumah sakit yang terlambat mengganti cairan infus yang sudah kosong dengan

yang baru [2].

Kesehatan manusia sangat penting untuk selalu diperhatikan apalagi setelah

seseorang sudah dinyatakan mengidap suatu penyakit yang dapat menghambat

aktifitas positif. Berdasarkan The World Health Report, 2005 angka kematian

seseorang akibat diagnosa kesehatan yang lambat serta penanganan yang buruk

oleh tim medis di Indonesia pada mencapai 8-11/100.000 populasi manusia hidup,

hal ini merupakan angka yang termasuk tinggi di ASEAN[11].

Berdasarkan latar belakang tersebut maka dibutuhkan sebuah sistem yang

mampu mengidentifikasi dan memonitoring infus pada ruangan pasien untuk

memudahkan kinerja perawat di rumah sakit. Dan masalah yang benar-benar

mengkhawatirkan dapat cepat teratasi secara terpadu, dengan pengiriman

informasi yang dapat diterima jarak jauh dan akurat. Sehingga dirancanglah

sebuah prototype sistem pemantauan level cairan infus menggunakan Arduino

platform dengan komunikasi secara wireless pada ruang perawat.

Page 2: Perancangan Prototype Sistem Pemantauan Level Cairan …repository.uksw.edu/bitstream/123456789/8655/3/T1_672009043_Full... · Dengan permasalahan ... dan Identifikasi Gangguan Infus

2

2. Tinjauan Pustaka

Fathur (Fathur,2010) pada penelitian yang pertama berjudul

Pengembangan Prototipe Sistem Kontrol dan Monitoring Infus Untuk Pasien

Berbasis Jaringan Nirkabel (ZigBee), Penelitian ini mengaplikasikan sistem

kontrol dan monitoring infus dalam bentuk prototype. Kontrol tetesan infus

ditampilkan dalam bentuk lampu indikator LED yang terintegrasi dengan

mikrokontroler dan pengindraan tetes infus menggunakan dioda laser dan

photodioda, yang memberikan sinyal-sinyal listrik ke komparator, selanjutnya

diproses oleh mikrokontroler yang hasilnya dikirim ke server, sehingga dapat

memberikan informasi dan memudahkan bagi para paramedis dalam mengetahui

kondisi infus melalui GUI (Graphical User Interface). Paramedis cukup

mengendalikan dan memonitoring keadaan infus pasien pada GUI yang terdiri dari

Visual Basic dan SQL Server [3].

Akhmad (Akhmad,2012) pada penelitian yang kedua berjudul Monitoring

dan Identifikasi Gangguan Infus Menggunakan Mikrokontroler AVR. Dalam

penelitian ini Akhmad membuat sistem pendeteksian kondisi cairan infus yang

secara realtime dimonitoring oleh perawat. Komponen yang digunakan untuk

pembuatan alat ini menggunakan sensor strain gauge, RPS, mikrokontroler

ATMEGA8535 dan modul Rx-Tx sebagai transmitter dan receiver. Cara kerja

pada alat ini strain gauge diletakkan diatas cairan infus. Setiap perubahan pada

kondisi infus ditransformasi oleh sensor tersebut menjadi sinyal elektrik yang

sebanding. Rangkaian pengondisi sinyal (RPS) merupakan rangkaian yang terdiri

dari beberapa komponen meliputi rangkaian multivibrator dan resistor. RPS

berfungsi merubah nilai resistansi dari strain gauge menjadi tegangan analog yang

memiliki range antara 0 sd 2,56V. Nilai ini disesuaikan dengan range masukan

dari ADC. Selanjutnya sinyal analog dikonversi oleh ADC internal yang berada

dalam chip mikrokontroler, keluarannya berupa nilai digital dengan range

bilangan 0 sd 512 desimal. Data ini selanjutnya disimpan dalam register dan

diolah secara program matematis untuk menentukan kondisi dan identifikasi

masalah infus. Kondisi yang dideteksi diantaranya adalah level cairan infus, laju

cairan yang dihitung dalam satuan ml permenit, dan penyumbatan pada infus.

Keluaran dari mikrokontroler berupa kode heksa desimal yang selanjutnya dikirim

ke bagian penerima via modul transmitter wireless [4]

Berbeda dengan penelitian-penelitian sebelumnya, dalam penelitian ini

akan dirancang suatu sistem pendeteksian level cairan infus yang secara realtime

dimonitoring oleh perawat. Penelitian ini membahas tentang : 1) sensor load cell

sebagai sensor berat untuk menghitung berat pada infus; 2) board Arduino Uno

R3 sebagai pengendali utama sistem untuk perantara antara hasil pembacaan

sensor dari load cell agar data yang dihasilkan dapat dibaca di komputer; 3)

Komunikasi antara mikrokontroler dengan komputer menggunakan modul Xbee,

dimana data berat infus akan dikirimkan secara wireless.

Level adalah alat untuk mengukur ketinggian dengan batasan ketinggian

tertentu. Misalnya, level meter pada tangki air, berguna untuk mengukur

ketinggian air dalam tangki dengan satuan panjang (meter) maupun prosentase

[5].

Page 3: Perancangan Prototype Sistem Pemantauan Level Cairan …repository.uksw.edu/bitstream/123456789/8655/3/T1_672009043_Full... · Dengan permasalahan ... dan Identifikasi Gangguan Infus

3

Opamp (Operasional Amplifiers) pada hakekatnya merupakan sejenis IC.

Didalamnya terdapat suatu rangkaian elektronik yang terdiri atas beberapa

transistor, resistor dan dioda. Jika pada IC jenis ini ditambahkan suatu jenis

rangkaian, masukan dan suatu jenis rangkaian umpan balik, maka IC ini dapat

dipakai untuk mengerjakan berbagai operasi matematika, seperti menjumlah,

mengurangi, membagi, mengali, dan mengintegrasi. Oleh karena itu IC jenis ini

dinamakan penguat operasi atau operasional amplifier, disingkat Opamp [6].

Simbol Opamp ditunjukkan pada Gambar 1.

Gambar 1 Simbol Op amp.

Arduino Uno R3 (Revision 3) adalah board mikrokontroler yang

menggunakan ATmega328. Board Arduino Uno R3 ditunjukkan pada Gambar 2.

Board ini memiliki 14 digital input/output pin, 6 input analog, koneksi USB,

tombol reset. Arduino Uno R3 dapat diaktifkan melalui koneksi USB atau catu

daya eksternal. Eksternal (non-USB) daya dapat menggunakan AC-DC adaptor

atau baterai. Rentang daya yang dianjurkan adalah 7 – 12V [7].

Gambar 2 Board Arduino Uno R3

Page 4: Perancangan Prototype Sistem Pemantauan Level Cairan …repository.uksw.edu/bitstream/123456789/8655/3/T1_672009043_Full... · Dengan permasalahan ... dan Identifikasi Gangguan Infus

4

Load cell adalah sebuah alat uji perangkat listrik yang dapat mengubah

suatu energi menjadi energi lainnya yang biasa digunakan untuk mengubah suatu

gaya menjadi sinyal listrik. Secara umum, load cell dan sensor gaya berisi pegas

(spring) logam mekanik dengan mengaplikasikan beberapa foil metal strain

gauges. Strain dari pegas mekanik muncul sebagai pengaruh dari pembebanan

yang kemudian ditransmisikan pada strain gauges. Pengukuran sinyal yang

dihasilkan dari load cell adalah dari perubahan resistansi strain gauge yang linier

dengan gaya yang diaplikasikan [8]. Sensor load cell ditunjukkan pada gambar 3.

Gambar 3 Sensor Load cell

ZigBee adalah standar dari IEEE 802.15.4 untuk komunikasi data pada alat

konsumen pribadi maupun untuk skala bisnis. ZigBee didesain dengan konsumsi

daya yang rendah dan bekerja untuk jaringan personal tingkat rendah. Perangkat

ZigBee biasa digunakan untuk mengendalikan sebuah alat lain maupun sebagai

sebuah sensor wireless. ZigBee memiliki fitur dimana mampu mengatur jaringan

sendiri, maupun mengatur pertukaran data pada jaringan. Kelebihan dari ZigBee

lainnya adalah membutuhkan daya rendah, sehingga bisa digunakan sebagai alat

pengatur secara wireless yang penginstalan hanya perlu dilakukan sekali, karena

hanya dengan satu baterai dapat membuat ZigBee bertahan hingga setahun. Selain

itu ZigBee juga memiliki topologi jaringan “mesh” sehingga mampu membentuk

jaringan yang lebih luas dan data yang lebih diandalkan [9].

Page 5: Perancangan Prototype Sistem Pemantauan Level Cairan …repository.uksw.edu/bitstream/123456789/8655/3/T1_672009043_Full... · Dengan permasalahan ... dan Identifikasi Gangguan Infus

5

3. Metode Penelitian

Penelitian yang dilakukan, diselesaikan melalui tahapan penelitian yang

terbagi dalam empat tahapan seperti ditunjukkan pada Gambar 4, yaitu: (1)

Pengembangan Konsep Sistem, (2) Perancangan sistem, (3) Implementasi Sistem,

(4) pengujian sistem.

Gambar 4 Tahapan Penelitian

Tahapan penelitian pada Gambar 4 dapat dijelaskan sebagai berikut.

Tahap pertama : Pengembangan Konsep Sistem, pada tahap ini dilakukan studi

pustaka yaitu mempelajari konsep dasar sistem dan mengumpulkan informasi

tentang kebutuhan sistem yang akan dibuat; Tahap kedua : Perancangan Sistem

yang meliputi pemenuhan kebutuhan hardware dan software yang dibutuhkan

dalam pembuatan prototype alat pengukur level cairan infus dan aplikasi

pendukungnya; Tahap ketiga : Implementasi Sistem, pada tahap ini dilakukan

implementasi sistem yang sesuai dengan perancangan sistem, dimana alat

diletakkan di atas pengait botol sebagai penimbang berat infus. Ketika tingkat

cairan infus turun di bawah pada batasan tertentu, maka akan memberikan sinyal

peringatan yang akan menghidupkan LED. Pada saat yang sama, sinyal akan

dikirim ke host komputer melalui jaringan ZigBee; Tahap keempat : Pengujian

Sistem, pada tahap ini dilakukan monitoring level cairan infus, apakah alat dan

aplikasi sudah berjalan sesuai hasil dari perancangan sebelumnya.

.Langkah-langkah atau proses yang dilakukan pada sistem ini dimana level

tersebut dihasilkan dari pembacaan oleh sensor load cell dengan perintah dari

mikrokontroler, setelah itu pada mikrokontroler data diolah, diatur semua dan

Page 6: Perancangan Prototype Sistem Pemantauan Level Cairan …repository.uksw.edu/bitstream/123456789/8655/3/T1_672009043_Full... · Dengan permasalahan ... dan Identifikasi Gangguan Infus

6

diberi parameter apabila berat infus kurang dari parameter yang telah ditentukan

maka mikrokontroler akan menghidupkan LED warna merah kemudian apabila

lebih dari parameter yang telah ditentukan maka mikrokontroler akan

menghidupkan LED hijau. Selanjutnya data dari mikrokontroler tersebut akan di

tampilkan dengan LCD dan dikirim melalui Xbee. Data yang dikirim dari Xbee

tersebut akan diterima oleh Xbee Adapter untuk dihubungkan pada port komputer

dan data yang dihasilkan dari port tersebut akan ditampilkan pada aplikasi

komputer. Alur sistem yang dibuat ditunjukkan pada Gambar 5.

Gambar 5 Flowchart Sistem Monitoring Infus

Perancangan sistem yang dibuat terlebih dahulu adalah blok diagram alur

kerja sistem, yang terdiri dari perangkat keras serta program komputer. Rancangan

arsitektur ditunjukkan pada Gambar 6.

Page 7: Perancangan Prototype Sistem Pemantauan Level Cairan …repository.uksw.edu/bitstream/123456789/8655/3/T1_672009043_Full... · Dengan permasalahan ... dan Identifikasi Gangguan Infus

7

Gambar 6 Rancangan Arsitektur

Blok diagram pada Gambar 6 menjelaskan bagaimana modul terkonfigurasi

dengan board Arduino Uno, sensor load cell dihubungkan dengan board Arduino

Uno dengan pin analog0 karena sinyal yang dihasilkan load cell kecil maka

sebelum masuk pada pin analog0 diberi Opamp untuk penguatan sinyal untuk

dapat mengirimkan data digital hasil pembacaan sensor ke mikrokontroler. LED

terhubung pada pin digital 2 dan 3 berfungsi sebagai indikator level infuse Low

dan High. Xbee berfungsi sebagai komunikasi wireless, Xbee sendiri harus

dihubungkan dengan Xbee shield agar dapat dipasang pada board. LCD berfungsi

menampilkan hasil pembacaan sensor yang terhubung pada pin digital 8,9,4,5,6,7.

Dan dari sisi komputer penerima, Xbee dipasang pada Xbee adapter dan

dihubungkan dengan komputer menggunakan USB.

Secara umum sistem yang akan dibuat terdiri dari 2 blok yaitu blok

pengirim(Transmitter) seperti yang ditunjukkan dalam Gambar 7 dan blok

penerima (Receiver) seperti yang ditunjukkan dalam Gambar 8. Blok pengirim

tersusun dari sensor Load Cell, rangkaian pengondisi sinyal (RPS),

mikrokontroler, modul transmitter wireless dan unit penampil. Bagian penerima

tersusun atas modul Xbee dan PC

Page 8: Perancangan Prototype Sistem Pemantauan Level Cairan …repository.uksw.edu/bitstream/123456789/8655/3/T1_672009043_Full... · Dengan permasalahan ... dan Identifikasi Gangguan Infus

8

`

Gambar 7 Diagram Blok Sistem bagian Transmiter

Gambar 8 Diagram Blok Sistem bagian Receiver

4. Hasil dan Pembahasan

Hasil dan Pembahasan berisi hasil rangkaian alat, konfigurasi Xbee,

pengkodean program yang ditanamkan ke mikrokontroler dan penjelasan

mengenai bagaimana aplikasi monitoring level cairan infus dibuat menggunakan

bahasa C# pada Microsoft Visual Studio.

Prototype alat pengukur suhu dan kelembaban ditunjukkan pada Gambar

9, dimana sensor Load cell, LCD, LED dan modul Xbee disambungkan dengan

board Arduino Uno R3 menggunakan kabel jumper berdasarkan pin yang sesuai.

SENSOR RPS MIKROKONTROLER

MODUL Xbee

POWER

SUPPLY

TAMPILAN

PC MODUL Xbee

Page 9: Perancangan Prototype Sistem Pemantauan Level Cairan …repository.uksw.edu/bitstream/123456789/8655/3/T1_672009043_Full... · Dengan permasalahan ... dan Identifikasi Gangguan Infus

9

Gambar 9 Prototype Alat

Berikut merupakan kode program pada board Arduino

Kode Program 1 Library LCD, dan LED

Kode program 1 menunjukkan pemanggilan library LED dan LCD.

Perintah pada baris ke-1 menunjukkan library LCD. Perintah pada baris ke-2 dan

baris ke-3 menunjukkan library LED. Dimana semua dihubungkan pada board

Arduino, LED hijau diletakkan pada pin digital-2 dan LED merah diletakkan pada

pin digital-3.

1. #include <LiquidCrystal.h>

2. #define lampu_hijau 2

3. #define lampu_merah 3

Page 10: Perancangan Prototype Sistem Pemantauan Level Cairan …repository.uksw.edu/bitstream/123456789/8655/3/T1_672009043_Full... · Dengan permasalahan ... dan Identifikasi Gangguan Infus

10

Kode Program 2 Fungsi Utama Program

Kode program 2 merupakan fungsi utama dari program. Perintah pada

baris ke-2 merupakan library dari LCD 16X2 dan penempatan pin pada board

Arduino yaitu pada pin digital 8,9,4,5,6,7. Perintah pada baris ke-5 sampai ke-9

berfungsi untuk membaca data pada serial port dilayar monitor, menjalankan

perintah output untuk LCD dan output untuk LED . Perintah pada baris ke-10

sampai ke-13 merupakan perintah untuk membaca dimana pin dari sensor load

cell disambungkan pada board Arduino. Perintah pada baris ke-14 sampai baris

ke-19 merupakan pengaturan parameter untuk kalibrasi apabila berat yang

dihasilkan load cell lebih dari 10 maka nilai akan dikurang 28. Perintah pada baris

1. float massa;

2. LiquidCrystal lcd(8,9,4,5,6,7);

3. void setup()

4. {

5. Serial.begin(9600);

6. lcd.begin(16,2);

7. pinMode(lampu_hijau, OUTPUT);

8. pinMode(lampu_merah, OUTPUT);

9. }

10. void loop()

11. {

12. massa = analogRead(0) - 145;

13. massa = (massa/800)*700;

14. if (massa >= 10)

15. {

16. massa = massa - 28 ;

17. }

18. if(massa <= 100)

19. {

20. lcd.setCursor(0,0);

21. lcd.print("Berat Infus");

22.

23. digitalWrite(lampu_hijau, LOW);

24.

25. digitalWrite(lampu_merah, HIGH);

26. delay(500);

27. digitalWrite(lampu_merah, LOW);

28. delay(500);

29. else

30. {

31. digitalWrite(lampu_hijau, HIGH);

32. }

33. int berat = massa;

34. Serial.print("Berat Infus : ");

35. Serial.print(massa);

36. Serial.println(" ml");

37. lcd.setCursor(0,0);

38. lcd.print("Berat Infus : ");

39. delay(1000);

40. lcd.setCursor(0,1);

41. lcd.print(massa);

42. lcd.setCursor(4,1);

43. lcd.print(" ml");

44. }

Page 11: Perancangan Prototype Sistem Pemantauan Level Cairan …repository.uksw.edu/bitstream/123456789/8655/3/T1_672009043_Full... · Dengan permasalahan ... dan Identifikasi Gangguan Infus

11

ke-18 sampai baris ke-32 merupakan pengaturan LCD dan pengaturan LED. LED

ini berfungsi sebagai indikator, jika level berada di bawah batasan yang ditentukan

yaitu 50 ml akan ditampilkan peringatan LED berwarna merah dan jika tidak

melebihi batasan yang ditentukan akan menampilkan LED berwarna hijau.

Perintah pada baris ke-33 sampai ke-44 merupakan pengaturan tampilan di serial

monitor dan di LCD dengan delay 1 second.

Selanjutnya agar dua modul Xbee dapat saling berkomunikasi, maka perlu

ada pengaturan pada modul Xbee. Masuk dalam Modem Configuration kemudian

isi nilai parameter yang ada pada folder networking & security. Untuk komunikasi

point to point, umumnya hanya 3 parameter yang diatur, yaitu PAN ID (personal

area network ID), DL (destination address low), dan MY (16 bit source address).

Pengaturan parameter untuk Xbee1 dan Xbee2 agar dapat saling berkomunikasi

adalah:

Nilai parameter DL Xbee1 = MY Xbee2.

Nilai parameter MY Xbee1 = DL Xbee2.

Xbee1 dan Xbee2 menggunakan alamat PAN ID yang sama [10].

Pengaturan parameter Xbee ditunjukkan pada Gambar 10 dan Gambar 11

Gambar 10 Pengaturan Xbee1

Page 12: Perancangan Prototype Sistem Pemantauan Level Cairan …repository.uksw.edu/bitstream/123456789/8655/3/T1_672009043_Full... · Dengan permasalahan ... dan Identifikasi Gangguan Infus

12

Gambar 11 Pengaturan Xbee2

Pada desain aplikasi ini akan dijelaskan mengenai bagaimana aplikasi

monitoring infus dibuat menggunakan bahasa C# pada Microsoft Visual Studio.

Tampilan aplikasi pada Gambar 12 yang terdiri dari satu form yang di

dalamnya memuat ComboBox untuk menampilkan serial port yang terhubung

pada PC. Kemudian terdapat Button Start yang berfungsi untuk mengaktifkan port

agar data berat infus dapat tampil pada RichTextBox, Button Stop untuk berhenti

mengaktifkan port, DateTimePicker berfungsi untuk mengetahui tanggal hari ini,

Label Connection berfungsi untuk menampilkan status port apakah sudah

terkoneksi atau belum, TextBox berfungsi untuk menampilkan data yang sedang

berjalan, Button Clear berfungsi untuk menghapus isi RichTextBox,

OvalShapeRed berfungsi sebagai indikator level pada posisi low, OvalShapeGreen

berfungsi sebagai indikator level pada posisi high, Button OpenFile berfungsi

untuk melihat history data yang telah berlalu dan Button exit untuk menutup

aplikasi.

Tampilan aplikasi pada Gambar 12 menampilkan aplikasi pada saat

streaming pengambilan data pada serial port. Dan pada Gambar 13 menampilkan

data hasil penyimpanan data level infus.

Page 13: Perancangan Prototype Sistem Pemantauan Level Cairan …repository.uksw.edu/bitstream/123456789/8655/3/T1_672009043_Full... · Dengan permasalahan ... dan Identifikasi Gangguan Infus

13

Gambar 12 Tampilan Aplikasi

Gambar 13 Tampilan Data Monitoring Infus

Gambar 14 Menunjukkan Data Hasil Penyimpanan Data Level Infus.

Gambar 14 Hasil Penyimpanan Data Level Infus

Page 14: Perancangan Prototype Sistem Pemantauan Level Cairan …repository.uksw.edu/bitstream/123456789/8655/3/T1_672009043_Full... · Dengan permasalahan ... dan Identifikasi Gangguan Infus

14

Kode Program 3 Perintah Komunikasi Port dan LogFile

1. public partial class Form1 : Form

2. {

3. SoundPlayer soundPlayer = new SoundPlayer(@"C:\Users\Faryz\Downloads\beep-

01a.wav");

4. string data = "";

5. StreamWriter log;

6. public Form1()

7. {

8. InitializeComponent();

9. }

10. private void Form1_Load(object sender, EventArgs e) 11. { 12. serialPort.DataReceived += new

System.IO.Ports.SerialDataReceivedEventHandler(DataReceived);

13. string[] portNames = System.IO.Ports.SerialPort.GetPortNames(); 14. for (int i = 0; i <= portNames.Length - 1; i++) 15. { 16. cbbCOMPorts.Items.Add(portNames[i]); 17. } 18. btnDisconnect.Enabled = false; 19. } 20. private void btnConnect_Click(object sender, EventArgs e) 21. { 22. txtDataReceived.Clear(); 23. try 24. { 25. if (!File.Exists(@"D:\logfile.txt")){ 26. log = new StreamWriter(@"D:\logfile.txt", true); 27. } 28. else 29. { 30. log = File.AppendText(@"D:\logfile.txt"); 31. } 32. log.WriteLine("\n"); 33. log.WriteLine(DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss")); 34. log.WriteLine("========================"); 35. if (serialPort.IsOpen) 36. { 37. serialPort.Close(); 38. } 39. try 40. { 41. serialPort.PortName = cbbCOMPorts.Text; 42. serialPort.BaudRate = 9600; 43. serialPort.Parity = System.IO.Ports.Parity.None; 44. serialPort.DataBits = 8; 45. serialPort.StopBits = System.IO.Ports.StopBits.One; 46. serialPort.Open(); 47. lblMessage.Text = cbbCOMPorts.Text + " connected."; 48. btnConnect.Enabled = false; 49. btnDisconnect.Enabled = true; 50. } 51. catch 52. { 53. log.Close(); 54. MessageBox.Show("Port tidak sesuai"); 55. } 56. } 57. catch 58. { 59. MessageBox.Show("Terjadi kesalahan mohon ulang kembali"); 60. } 61. }

Page 15: Perancangan Prototype Sistem Pemantauan Level Cairan …repository.uksw.edu/bitstream/123456789/8655/3/T1_672009043_Full... · Dengan permasalahan ... dan Identifikasi Gangguan Infus

15

Kode Program 3 menjelaskan Perintah komunikasi port, menampilkan

data pada txtDataReceived dan LogFile. Perintah pada baris ke-3 SoundPlayer

merupakan variable sound yang berfungsi sebagai indikator suara apabila level

pada posisi low. Perintah pada baris ke-4 untuk menampung string data yang

diterima dari port, pada baris ke-11 sampai ke-19 merupakan perintah untuk

mengambil port yang tersedia atau yang terkoneksi dengan PC kemudian

ditampung ke dalam cbbCOMPorts. Perintah pada baris ke-21 sampai ke-38

berada pada posisi tombol start berfungsi sebagai penghapus data pada tampilan

txtDataReceived dan pembuka serial port untuk menampilkan data pada

txtDataReceived juga untuk menyimpan data pada logfile dengan format txt

secara realtime. Perintah pada baris ke-39 sampai ke-61 berfungsi mengatur

beberapa parameter untuk koneksi serial port dan terdapat MessageBox sebagai

peringatan apabila terjadi kesalahan dalam memilih port.

Kode Program 4Perintah untuk menampilkan data pada TextBox

Kode Program 4 merupakan perintah untuk menampilkan data yang

diterima pada TextBox. Perintah pada baris ke-1 sampai baris ke-4 berfungsi

untuk memanggil delegasi untuk mengambil data yang diterima dari port. Perintah

pada baris ke-5 sampai baris ke-21 berfungsi menampilkan delegasi pada textbox,

dan diberi parameter jika jumlah karakter yang dihasilkan mesin melalui delegasi

dari txtDataReceived diatas 23 akan menampilkan kata pada textbox.

1. private void DataReceived(object sender,

System.IO.Ports.SerialDataReceivedEventArgs e)

2. {

3. txtDataReceived.BeginInvoke(new myDelegate(updateTextBox));

4. }

5. public delegate void myDelegate();

6. public void updateTextBox()

7. {

8. if (data.Length < 23)

9. {

10. data += serialPort.ReadExisting(); 11. } 12. else 13. { 14. txtDataReceived.AppendText(data); 15. txtDataReceived.ScrollToCaret(); 16. int totalLines = txtDataReceived.Lines.Length; 17. string lastLine = txtDataReceived.Lines[totalLines - 1]; 18. textBox1.Text = data; 19. data = ""; 20. } 21. }

Page 16: Perancangan Prototype Sistem Pemantauan Level Cairan …repository.uksw.edu/bitstream/123456789/8655/3/T1_672009043_Full... · Dengan permasalahan ... dan Identifikasi Gangguan Infus

16

Kode Program 5 Perintah untuk menampilkan indikator dan open file.

1. private void btnExit_Click(object sender, EventArgs e){

2. Application.Exit();

3. }

4. private void btnOpenFile_Click(object sender, EventArgs e){

5. Process.Start(@"D:\logfile.txt");

6. }

7. private void btnClear_Click(object sender, EventArgs e){

8. txtDataReceived.Clear();

9. }

10. private void textBox1_TextChanged(object sender, EventArgs e){

11. try

12. {

13. string strdata = textBox1.Text.Replace("Berat Infus : ",

"").Replace(" ml", "");

14. double data = Double.Parse(strdata);

15. if (data < 50)

16. {

17. soundPlayer.PlayLooping(); // can also use soundPlayer.PlaySync()

18. timer1.Start();

19. timer2.Stop();

20. ovalShape1.BackColor = Color.Red;

21. }

22. else

23. {

24. soundPlayer.Stop();

25. timer1.Stop();

26. timer2.Start();

27. ovalShape2.BackColor = Color.GreenYellow;

28. }}

29. catch

30. {

31. }}

32. private void timer1_Tick(object sender, EventArgs e){

33. if (ovalShape1.BackColor == Color.Red)

34. {

35. ovalShape1.BackColor = Color.WhiteSmoke;

36. }

37. else

38. {

39. ovalShape1.BackColor = Color.Red;

40. }}

41. private void timer2_Tick(object sender, EventArgs e){

42. if (ovalShape2.BackColor == Color.Green)

43. {

44. ovalShape2.BackColor = Color.GreenYellow;

45. }

46. else

47. {

48. ovalShape2.BackColor = Color.Green;

49. }}}}

Page 17: Perancangan Prototype Sistem Pemantauan Level Cairan …repository.uksw.edu/bitstream/123456789/8655/3/T1_672009043_Full... · Dengan permasalahan ... dan Identifikasi Gangguan Infus

17

Kode Program 5 menjelaskan perintah untuk menampilkan indikator dan

open file. Perintah pada baris ke-1 sampai baris ke-3 berfungsi untuk menutup

aplikasi. Perintah pada baris ke-4 sampai baris ke-6 posisi pada button OpenFile

berfungsi untuk melihat history data yang telah berlalu. Perintah pada baris ke-7

sampai baris ke-9 posisi pada button Clear berfungsi sebagai penghapus data pada

tampilan txtDataReceived. Perintah pada baris ke-10 sampai baris ke-49 berfungsi

sebagai parameter untuk indikator penghitungan berat untuk ditampilkan pada

ovalShape maupun suara. Jika berat infus pada posisi kurang dari 50 maka

ovalShape berwarna merah akan berkedip bersamaan dengan bunyi suara beep

dan apabila berat infus pada posisi lebih dari 50 maka ovalShape berwarna hijau

akan berkedip menandakan bahwa level infus masih aman.

Pengujian ini dilakukan agar sistem yang digunakan dapat bekerja dengan

baik sesuai dengan kebutuhan pengguna. Pengujian dilakukan dengan

menggunakan metode black box, yaitu metode pengujian perangkat lunak yang

berfokus pada sisi fungsionalitas, khususnya pada input dan output aplikasi

(apakah sudah sesuai dengan apa yang diharapkan atau tidak). Pengujian

dilakukan pada rangkaian sistem monitoring level infus dan aplikasinya.

Tabel 1 Hasil Pengujian Black-box

Proses Hasil yang diharapkan Hasil yang Muncul Kesimpulan

Klik Start Modul Xbee dapat

mengirimkan data berat

cairan infus dari

mikrokontroler ke aplikasi

komputer

Modul Xbee dapat

mengirimkan data

berat cairan infus

Valid

Data berat

cairan infus

berada pada

batas 50 ml

Menampilkan indikator

low dan bunyi beep

Dapat menampilkan

indikator low dengan

tombol berkedip

merah dan bunyi beep

Valid

Klik Stop Modul Xbee dapat

menutup akses data berat

cairan infus dari

mikrokontroler ke aplikasi

komputer

Modul Xbee dapat

menutup akses data

berat cairan infus

Valid

Klik open file Menampilkan history data

berat cairan infus

Menampilkan history

data berat cairan infus

Valid

Berdasarkan hasil pengujian program pada Tabel 1, dapat disimpulkan

bahwa alat monitoring level cairan infus dapat berjalan dengan baik.

Page 18: Perancangan Prototype Sistem Pemantauan Level Cairan …repository.uksw.edu/bitstream/123456789/8655/3/T1_672009043_Full... · Dengan permasalahan ... dan Identifikasi Gangguan Infus

18

Grafik dalam Gambar 13 dan data dalam Tabel 2 merupakan data

sampling saat pengujian terjadi. Selanjutnya akan memberikan warning berupa

pengiriman kode ke bagian penampil di ruang perawat. Data kode tersebut

selanjutnya ditampilkan pada aplikasi komputer sebagai tombol indikator dan

bunyi. Sehingga, diketahui bahwa infus sudah habis.

Time sampling

Data berat infus (ml)

1 500,75

2 450

3 400,13

4 349,38

5 299,5

6 251,38

7 201,5

8 150,75

9 140,25

10 100,87

11 50,13

12 41,38

Tabel 2 Data Sampling Hasil Pengujian Level Cairan Infus

Gambar 13 Grafik Pengujian Level Cairan Infus

0

100

200

300

400

500

600

1 2 3 4 5 6 7 8 9 10 11 12

Grafik isi cairan infus

isi cairan infus

50ml (batas ganti infus)

Page 19: Perancangan Prototype Sistem Pemantauan Level Cairan …repository.uksw.edu/bitstream/123456789/8655/3/T1_672009043_Full... · Dengan permasalahan ... dan Identifikasi Gangguan Infus

19

5. Simpulan

Berdasarkan hasil perancangan, pembahasan dan pengujian prototype alat

untuk sistem pemantauan level cairan infus menggunakan Arduino platfrom, dapat

diambil kesimpulan bahwa alat ini dapat membantu perawat dalam memonitoring

infus dan hasilnya dapat disimpan dalam log file. Sehingga mengurangi

kemungkinan terjadi kesalahan pencatatan. Dan efisien waktu perawat dalam

bekerja biasa teratasi. Alat ini mudah dalam penggunaannya, karena dapat

diaplikasikan dengan komunikasi wireless jadi, tidak memerlukan kabel yang

panjang untuk mengirimkan data. Saran untuk pengembang aplikasi dan alat ke

depan adalah menambahkan jangkauan wireless agar lebih jauh jangakuannya.

Menambahkan beberapa alat lagi apabila ruangan dihuni oleh beberapa orang

pasien. Menambahkan fitur cetak data agar data yang disimpan dapat dicetak.

Page 20: Perancangan Prototype Sistem Pemantauan Level Cairan …repository.uksw.edu/bitstream/123456789/8655/3/T1_672009043_Full... · Dengan permasalahan ... dan Identifikasi Gangguan Infus

20

6. Daftar Pustaka

[1] Ikbal Muhammad, “Teknologi Informasi Dalam Pelayanan di Ruang

Rawat”, detikNews.com. Diakses tanggal 24 September 2013.

[2] M Fathurrakhman, “Diduga Akibat Perawat Lalai, Bayi 4 Hari Tewas”,

news.okezone.com. Diakses tanggal 22 September 2013.

[3] Fathur Zaini Rachman, 2010, Pengembangan Prototipe Sistem Kontrol

dan Monitoring Infus Untuk Pasien Berbasis Jaringan Nirkabel (ZigBee),

Surabaya: Jurusan Teknik Elektro, Institut Teknologi Sepuluh Nopember,.

[4] Akhmad Zainuri, 2012, Monitoring dan Identifikasi Gangguan Infus

Menggunakan Mikrokontroler AVR, Malang : Jurusan Elektronika

Fakultas Teknik, Universitas Brawijaya,.

[5] artikel non-personal, 14 Februari 2008., Level, Wikipedia Bahasa

Indonesia, http://id.wikipedia.org/wiki/Level. Diakses tanggal 28

November 2013

[6] OpAmp, http://www.scribd.com/doc/133748547/Op-Amp. Diakses

tanggal 5 November 2013.

[7] Arduino Uno, http://arduino.cc/en/Main/ArduinoBoardUno. Diakses

tanggal 14 agustus 2013.

[8] Sugriwan Iwan., 2013. Desain Dan Karakterisasi Load cell Tipe CZL601

Sebagai Sensor Massa Untuk Mengukur Derajat Layu Pada Pengolahan

The Hitam, Surabaya : Laboratorium Elektonika-Instrumentasi Jurusan

Fisika FMIPA ITS Surabaya

[9] Arkan Fardhan, Zaini., 2014. Aplikasi Teknologi Zigbee Pada Sistem

Detektor Kebakaran pada Rumah Susun, Padang : Pascasarjana Teknik

Elektro Universitas Andalas Padang

[10] Digi, 2008, X-CTU Configuration & Test Utility Software, Minnetonka :

Digi International Inc

[11] Ratna Adil, 2010, Pembuatan Alat Bantu Pemantauan Kondisi Tubuh dan

Keberadaan Seseorang Saat Beraktifitas Dengan Tampilan Web,

Surabaya: Politeknik Elektronika Negeri Surabaya, Institut Teknologi

Sepuluh Nopember,.