PENGHITUNGAN DENYUT JANTUNG MENGGUNAKAN · PDF filelaporan uas penghitungan denyut jantung...

27
LAPORAN UAS PENGHITUNGAN DENYUT JANTUNG MENGGUNAKAN GROVE CHEST STRAP HEART RATE SENSOR DENGAN ARDUINO UNO DISUSUN OLEH : Fitria Agista Santi (1110091000035) Eka Risky Firmansyah (1110091000043) Teknik Informatika 2010 Fakultas Sains dan Teknologi Universitas Islam Negeri (UIN) Syarif Hidayatullah Jakarta 2013

Transcript of PENGHITUNGAN DENYUT JANTUNG MENGGUNAKAN · PDF filelaporan uas penghitungan denyut jantung...

Page 1: PENGHITUNGAN DENYUT JANTUNG MENGGUNAKAN · PDF filelaporan uas penghitungan denyut jantung menggunakan grove chest strap heart rate sensor dengan arduino uno disusun oleh : fitria

LAPORAN UAS

PENGHITUNGAN DENYUT JANTUNG MENGGUNAKAN

GROVE CHEST STRAP HEART RATE SENSOR DENGAN

ARDUINO UNO

DISUSUN OLEH :

Fitria Agista Santi (1110091000035)

Eka Risky Firmansyah (1110091000043)

Teknik Informatika 2010

Fakultas Sains dan Teknologi

Universitas Islam Negeri (UIN) Syarif Hidayatullah Jakarta

2013

Page 2: PENGHITUNGAN DENYUT JANTUNG MENGGUNAKAN · PDF filelaporan uas penghitungan denyut jantung menggunakan grove chest strap heart rate sensor dengan arduino uno disusun oleh : fitria

2

KATA PENGANTAR

Puji syukur kami ucapkan kepada Allah SWT, karena dengan rahmat – Nya

penyusun telah dapat menyelesaikan makalah yang berjudul “PENGHITUNGAN

DENYUT JANTUNG MENGGUNAKAN GROVE CHEST STRAP HEART RATE SENSOR

DENGAN ARDUINO UNO”. Tidak lupa kami ucapkan shalawat dan salam kepada

junjungan kita Nabi besar Muhammad SAW.

Penyusun menyampaikan ucapan terima kasih yang tak terhingga kepada pihak-

pihak yang membantu dalam menyelesaikan makalah ini, khususnya kepada Ibu Neni

selaku dosen matakuliah Embedded System, teman – teman, dan semua pihak yang tidak

dapat disebutkan satu persatu.

Dalam penyusunan makalah ini, penyusun merasa masih banyak kekurangan-

kekurangan baik pada teknis penulisan maupun materi, mengingat akan kemampuan

yang dimiliki penyusun. Untuk itu kritik dan saran dari semua pihak sangat penyusun

harapkan demi penyempurnaan pembuatan makalah ini. Semoga makalah ini dapat

bermanfaat bagi kita semua.

Ciputat, 15 Januari 2013

Penyusun

Page 3: PENGHITUNGAN DENYUT JANTUNG MENGGUNAKAN · PDF filelaporan uas penghitungan denyut jantung menggunakan grove chest strap heart rate sensor dengan arduino uno disusun oleh : fitria

DAFTAR ISI

KATA PENGANTAR ................................................................................................................ 2

DAFTAR ISI ............................................................................................................................ 3

BAB 1 PENDAHULUAN .......................................................................................................... 4

1.1. LATAR BELAKANG......................................................................................................... 4 1.2. TUJUAN ..................................................................................................................... 4 1.3. RUMUSAN MASALAH .................................................................................................... 5 1.4. BATASAN MASALAH ..................................................................................................... 5

BAB 2 LANDASAN TEORI ....................................................................................................... 6

2.1. DENYUT NADI ................................................................................................................. 6 2.2. EMBEDDED SYSTEM .......................................................................................................... 7

2.2.1. Pengertian ............................................................................................................ 7 2.2.2. Karakteristik ......................................................................................................... 7 2.2.3. Contoh Penggunaan ............................................................................................. 7

2.3. GRAPH INTERFACE............................................................................................................ 8 2.4. TEORI KOMPONEN ........................................................................................................... 8

2.4.1. Komponen Utama ................................................................................................ 8 2.4.2. Komponen Tambahan ........................................................................................ 12

BAB 3 PEMBAHASAN .......................................................................................................... 14

3.1. KOMPONEN UTAMA DAN TAMBAHAN ............................................................................. 14 3.1.1. Komponen Utama .............................................................................................. 14 3.1.2. Komponen Tambahan ........................................................................................ 14

3.2. PERANCANGAN ALAT .................................................................................................. 14 3.2.1. Skematik Rangkaian ........................................................................................... 14 3.2.2. Langkah Percobaan ............................................................................................ 15

3.3. HASIL PERCOBAAN ......................................................................................................... 24

BAB 4 PENUTUP .................................................................................................................. 26

4.1. KESIMPULAN ................................................................................................................. 26 4.2. SARAN ........................................................................................................................ 26

DAFTAR PUSTAKA ............................................................................................................... 27

Page 4: PENGHITUNGAN DENYUT JANTUNG MENGGUNAKAN · PDF filelaporan uas penghitungan denyut jantung menggunakan grove chest strap heart rate sensor dengan arduino uno disusun oleh : fitria

4

BAB 1

PENDAHULUAN

1.1. Latar Belakang

Kesehatan merupakan bagian yang penting bagi manusia karena dengan

sehat kita dapat melakukan berbagai kegiatan dan berpikir dengan baik. Jantung

yang mengontrol peredaran darah. Untuk mengetahui keadaan jantung

diperlukan alat yang menghitung denyut jantung kita.

Mahalnya alat kedokteran dan kurangnya waktu seseorang untuk

melakukan pemeriksaan di rumah sakit menyulitkan seseorang untuk

mengawasi kesehatan, terutama kesehatan jantung. Untuk itu dibutuhkan alat

sederhana yang memiliki kemudahan dalam pengoperasiannya dan dapat

digunakan di rumah walaupun saat sedang beraktifitas.

Alat perekam denyut jantung berbasis mikrokontroler dapat

menggunakan Grove Chest Strap Heart Rate Sensor yang mampu menangkap

sinyal denyut jantung. Dengan menggunakan pengantarmukaan parallel pada

komunikasinya, proses ini mengubah sinyal analog menjadi sinyal digital yang

akan diteruskan ke komputer melalui perangkat Arduino UNO, komunikasi

antara sensor dengan Arduino UNO menggunakan gelombang radio AM

(nirkabel). Bahasa pemrograman C pada Arduino digunakan untuk menampilkan

data denyut jantung dalam bentuk stream pada serial port, kemudian

menggunakan software processing dengan bahasa pemrograman Java untuk

merubah data serial tersebut menjadi grafik dari denyut jantung yang nantinya

dapat dihitung besarnya frekuensi dari denyutan jantung tersebut dalam satuan

bpm (beats per minute).

1.2. Tujuan

Tujuan yang ingin dicapai dalam penelitian ini adalah :

Membuktikan sistem Grove - Chest Strap Heart Rate Sensor mampu

menghitung denyut jantung.

Membuat alat penghitung frekuensi denyut jantung dengan hasil tampilan

dalam bentuk angka dan grafik di komputer atau laptop.

Page 5: PENGHITUNGAN DENYUT JANTUNG MENGGUNAKAN · PDF filelaporan uas penghitungan denyut jantung menggunakan grove chest strap heart rate sensor dengan arduino uno disusun oleh : fitria

Membuat alat penghitung denyut jantung nirkabel.

1.3. Rumusan Masalah

Komponen apa saja yang dibutuhkan dalam pembuatan alat penghitung

denyut jantung?

Bagaimana langkah-langkah pembuatannya?

Bagaimana hasil outputnya?

1.4. Batasan Masalah

Batasan masalah yang dilakukan pada penelitian ini, yaitu:

Alat ini memanfaatkan program dan teknologi dari perangkat Arduino UNO.

Hanya melakukan analisa teknis dan tidak melakukan analisa medis.

Frekuensi detak jantung ini dinyatakan dalam satuan BPM (beats per minute).

Page 6: PENGHITUNGAN DENYUT JANTUNG MENGGUNAKAN · PDF filelaporan uas penghitungan denyut jantung menggunakan grove chest strap heart rate sensor dengan arduino uno disusun oleh : fitria

6

BAB 2

LANDASAN TEORI

2.1. Denyut Nadi

Denyut merupakan pemeriksaan pada pembuluh nadi atau arteri. Ukuran

kecepatannya diukur pada beberapa titik denyut misalnya denyut arteri radialis

pada pergelangan tangan, arteri brachialis pada lengan atas, arteri karotis pada

leher, arteri poplitea pada belakang lutut, arteri dorsalis pedis atau arteri tibialis

posterior pada kaki. Pemeriksaan denyut dapat dilakukan dengan bantuan

stetoskop.

Denyut jantung yang normal yakni 60-100 kali setiap menit, sedang denyut

jantung lambat kurang dari 60 kali per menit dan yang cepat lebih dari 100 kali

per menit.

Nadi adalah denyut nadi yang teraba pada dinding pembuluh darah arteri

yang berdasarkan systol dan gystole dari jantung.

Jumlah denyut nadi yang normal berdasarkan usia seseorang adalah:

1. Bayi baru lahir :140 kali per menit

2. Umur di bawah umur 1 bulan : 110 kali per menit

3. Umur 1 - 6 bulan :130 kali per menit

4. Umur 6 - 12 bulan :115 kali per menit

5. Umur 1 - 2 tahun :110 kali per menit

6. Umur 2 - 6 tahun :105 kali per menit

7. Umur 6 - 10 tahun : 95 kali per menit

8. Umur 10 - 14 tahun : 85 kali per menit

9. Umur 14 - 18 tahun : 82 kali per menit

10. Umur di atas 18 tahun : 60 - 100 kali per menit

11. Usia Lanjut : 60 -70 kali per menit

llmu Kedokteran olahraga FKUI-RSCM, mengetahui denyut nadi merupakan

dasar untuk melakukan latihan fisik yang benar dan terukur. "Dari denyut nadi,

dapat diketahui intensitas atau seberapa keras seseorang melakukan latihan. Atau

seberapa keras jantungnya bekerja."

Page 7: PENGHITUNGAN DENYUT JANTUNG MENGGUNAKAN · PDF filelaporan uas penghitungan denyut jantung menggunakan grove chest strap heart rate sensor dengan arduino uno disusun oleh : fitria

2.2. Embedded System

2.2.1. Pengertian

Merupakan sebuah sistem yang memiliki fungsi utama bukan hanya

untuk komputasi, melainkan juga dikontrol oleh komputer. [2] Embedded

within it. Embedded system merupakan sebuah sistem (rangkaian

elektronik) digital yang merupakan bagian dari sebuah sistem yang lebih

besar, yang biasanya bukan berupa sistem elektronik. Kata embedded

menunjukkan bahwa dia merupakan bagian yang tidak dapat berdiri

sendiri. Embedded system biasanya merupakan application-specific system

yang didisain khusus untuk aplikasi tertentu. Contoh sistem atau

aplikasinya antara lain adalah instrumentasi medik (medical

instrumentation), process control, automated vehicles control, dan perangkat

komunikasi (networking and communication systems). Ini berbeda dengan

sistem digital yang didesain untuk general purpose. Embedded system

biasanya diimplementasikan dengan menggunakan mikrokontroler

(microcontroller). Berikut ini contoh penggunaan embedded system :

2.2.2. Karakteristik

Menjadi bagian dari system yang lebih besar : Periferal terbatas

Application-specific:

Baik hardware maupun software dirancang khusus untuk aplikasi

yang spesifik

Tetapi, re-programmability merupakan suatu kebutuhan

‘HALT’ merupakan suatu badstate

Interaksi dengan dunia fisik

2.2.3. Contoh Penggunaan

Signal processing systems, Real-time video, settopboxes, DVD players,

medical equipment,residential gateways

Distributed control, Network routers, switches,firewalls, mass transit

systems, elevators

“Small” systems, Mobile phones, pagers, homeappliances, toys,

smartcards, MP3 players, PDAs,digital cameras, sensors, smart badges

Page 8: PENGHITUNGAN DENYUT JANTUNG MENGGUNAKAN · PDF filelaporan uas penghitungan denyut jantung menggunakan grove chest strap heart rate sensor dengan arduino uno disusun oleh : fitria

8

2.3. Graph Interface

Ketika source code di upload, Arduino akan mengirim byte data denyut

jantung ke komputer pribadi dalam bentuk serial port, kemudian data tersebut

akan dirubah hasilnya berupa grafik dengan menggunakan program Processing.

Hal ini disebut komunikasi serial karena sambungan Arduino dan komputer

sebagai port serial, meskipun sebenarnya dapat menggunakan kabel USB. Untuk

melihat data yang dikirim, atau dapat dibaca oleh aplikasi untuk pengolahan data,

Flash, PD, Max / MSP, dll menggunakan monitor Arduino.

Dengan hasil berupa grafik, dokter dapat memonitor pasien secara simultan

dan untuk membuat keputusan kesehatan seseorang berdasarkan subyek yang

diteliti. Untuk dapat menghasilkan interface berupa grafik, diperlukan source code

program Processing.

2.4. Teori Komponen

2.4.1. Komponen Utama

a. Arduino UNO

Arduino UNO adalah sebuah board mikrokontroler yang

didasarkan pada ATmega328. Arduino UNO mempunyai 14 pin digital

input/output (6 di antaranya dapat digunakan sebagai output PWM), 6

input analog, sebuah osilator Kristal 16 MHz, sebuah koneksi USB,

sebuah power jack, sebuah ICSP header, dan sebuat tombol reset.

Arduino UNO memuat semua yang dibutuhkan untuk menunjang

mikrokontroler, mudah menghubungkannya ke sebuah computer

dengan sebuah kabel USB atau mensuplainya dengan sebuah adaptor AC

ke DC atau menggunakan baterai untuk memulainya.

Arduino Uno berbeda dari semua board Arduino sebelumnya,

Arduino UNO tidak menggunakan chip driver FTDI USB-to-serial.

Sebaliknya, fitur-fitur Atmega16U2 (Atmega8U2 sampai ke versi R2)

diprogram sebagai sebuah pengubah USB ke serial. Revisi 2 dari board

Arduino Uno mempunyai sebuah resistor yang menarik garis 8U2 HWB

ke ground, yang membuatnya lebih mudah untuk diletakkan ke dalam

Page 9: PENGHITUNGAN DENYUT JANTUNG MENGGUNAKAN · PDF filelaporan uas penghitungan denyut jantung menggunakan grove chest strap heart rate sensor dengan arduino uno disusun oleh : fitria

DFU mode. Revisi 3 dari board Arduino UNO memiliki fitur-fitur baru

sebagai berikut:

Pinout 1.0: ditambah pin SDA dan SCL yang dekat dengan pin AREF

dan dua pin baru lainnya yang diletakkan dekat dengan pin RESET,

IOREF yang memungkinkan shield-shield untuk menyesuaikan

tegangan yang disediakan dari board. Untuk ke depannya, shield akan

dijadikan kompatibel/cocok dengan board yang menggunakan AVR

yang beroperasi dengan tegangan 5V dan dengan Arduino Due yang

beroperasi dengan tegangan 3.3V. Yang ke-dua ini merupakan sebuah

pin yang tak terhubung, yang disediakan untuk tujuan kedepannya.

Sirkuit RESET yang lebih kuat

Atmega 16U2 menggantikan 8U2

“Uno” berarti satu dalam bahasa Italia dan dinamai untuk

menandakan keluaran (produk) Arduino 1.0 selanjutnya. Arduino UNO

dan versi 1.0 akan menjadi referensi untuk versi-versi Arduino

selanjutnya. Arduino UNO adalah sebuah seri terakhir dari board

Arduino USB dan model referensi untuk papan Arduino, untuk suatu

perbandingan dengan versi sebelumnya, lihat indeks dari board Arduino.

Ringkasan

Mikrokontroler ATmega328

Tegangan pengoperasian 5V

Tegangan input yang disarankan

7-12V

Batas tegangan input 6-20V

Jumlah pin I/O digital 14 (6 di antaranya menyediakan keluaran PWM)

Jumlah pin input analog 6

Arus DC tiap pin I/O 40 mA

Page 10: PENGHITUNGAN DENYUT JANTUNG MENGGUNAKAN · PDF filelaporan uas penghitungan denyut jantung menggunakan grove chest strap heart rate sensor dengan arduino uno disusun oleh : fitria

10

Arus DC untuk pin 3.3V 50 mA

Memori Flash 32 KB (ATmega328), sekitar 0.5 KB digunakan oleh bootloader

SRAM 2 KB (ATmega328)

EEPROM 1 KB (ATmega328)

Clock Speed 16 MHz

b. Grove - Chest Strap Heart Rate Sensor

Sensor untuk mendeteksi denyut jantung yang berbentuk sabuk

yang dipakai di dada ini memiliki modul penerima sinyal dengan ukuran

5,3 KHz yang digunakan untuk memantau detak jantung. Hasilnya dapat

ditampilkan pada layar melalui port serial dan dapat disimpan untuk

dianalisis. Sensor ini sangat sensitive dan menggunakan daya yang

sangat sedikit (menggunakan CR2032 koin baterai). Jangkauan efektif

yang dapat diterima sensor nirkabel yang ditransfer oleh gelombang

radio AM adalah sekitar 30 cm. Sabuk dada ini harus memiliki kontak

dengan kulit Anda untuk mendapatkan akurasi tinggi.

Berikut contoh gambarnya :

Page 11: PENGHITUNGAN DENYUT JANTUNG MENGGUNAKAN · PDF filelaporan uas penghitungan denyut jantung menggunakan grove chest strap heart rate sensor dengan arduino uno disusun oleh : fitria

c. Kabel Listrik

Kabel berfungsi sebagai penghantar arus listrik. Kabel juga

memiliki beberapa jenis dan ukuran kapasitas. Berikut ini beberapa

jenis-jenis kabel, yaitu :

Kabel NYA : Kabel jenis ini di gunakan untuk instalasi rumah dan

dalam instalasi rumah yang sering di gunakan adalah NYA dengan

ukuran 1,5 mm2 dan 2,5 mm2. Yang berinti tunggal, berlapis bahan

isolasi PVC Kode warna isolasi ada warna merah, kuning, biru dan

hitam. Lapisan isolasinya hanya 1 lapis sehingga mudah cacat,

tidak tahan air (NYA adalah tipe kabel udara) dan mudah digigit

tikus. agar aman jika menggunakan kabel tipe ini lebih baik kabel

di pasang di dalam pipah atau saluran penutup, karena selain tidak

bisa di ganggu sama hewan pengerat dan tidak kenah air, juga

apabila ada isolasi yang terkelupas (terbuka) tidak bisa tersentuh

langsung sama manusia.

Kabel NYM : Kabel jenis ini hanya direkomendasikan khusus untuk

instalasi tetap di dalam bangunan yang dimana penempatannya

biasa diluar/ didalam tembok ataupun didalam pipa (conduit).

Kabel NYM berinti lebih dari 1, memiliki lapisan isolasi PVC

(biasanya warna putih atau abu-abu), ada yang berinti 2, 3 atau 4.

Kabel NYM memiliki lapisan isolasi dua lapis, sehingga tingkat

keamanannya lebih baik dari kabel NYA (harganya lebih mahal

dari NYA). Kabel ini dapat dipergunakan dilingkungan yang kering

dan basah, namun tidak boleh ditanam.

Page 12: PENGHITUNGAN DENYUT JANTUNG MENGGUNAKAN · PDF filelaporan uas penghitungan denyut jantung menggunakan grove chest strap heart rate sensor dengan arduino uno disusun oleh : fitria

12

Kabel NYY : Kabel ini dirancang untuk instalasi tetap didalam

tanah yang dimana harus tetap diberikan perlindungan khusus

(misalnya duct, pipa PVC atau pipa besi). Kabel protodur tanpa

sarung logam. Instalasi bisa ditempatkan didalam dan diluar

ruangan, dalam kondisi lembab ataupun kering. memiliki lapisan

isolasi PVC (biasanya warna hitam), ada yang berinti 2, 3 atau 4.

Dan memiliki lapisan isolasi yang lebih kuat dari kabel NYM

(harganya lebih mahal dari NYM). Kabel NYY memiliki isolasi yang

terbuat dari bahan yang tidak disukai tikus.

2.4.2. Komponen Tambahan

a. Buzzer Module

Buzzer adalah suatu alat yang dapat mengubah sinyal listrik

menjadi sinyal suara. Pada umumnya buzzer digunakan untuk alarm,

karena penggunaannya cukup mudah yaitu dengan memberikan

tegangan input maka buzzer akan mengeluarkan bunyi. Frekuensi suara

yang di keluarkan oleh buzzer yaitu antara 1-5 KHz.

b. LED (Light Emitting Diode)

Light emitting diode atau dioda pemancar cahaya merupakan

sebuah jenis dioda yang dapat memancarkan cahaya apabila diberikan

tegangan 1.8V dengan arus sebesar 1.5 mA. Dioda pemancar cahaya

banyak digunakan sebagai lampu indicator atau lampu pilot serta peraga

Page 13: PENGHITUNGAN DENYUT JANTUNG MENGGUNAKAN · PDF filelaporan uas penghitungan denyut jantung menggunakan grove chest strap heart rate sensor dengan arduino uno disusun oleh : fitria

(Display). Dioda pemancar cahaya juga dapat digunakan sebagai

pemancar cahaya yang tidak terlihat oleh mata yaitu sinar inframerah.

Bahan dasar pembuat dioda adalah Silicon Carbide (SiC),dioda ini dapat

berbentuk bulat atau segi empat / Warna dioda pemancar cahaya ini ada

berbagai macam, antara lain merah,kuning,hijau, biru dan sebagainya.

Page 14: PENGHITUNGAN DENYUT JANTUNG MENGGUNAKAN · PDF filelaporan uas penghitungan denyut jantung menggunakan grove chest strap heart rate sensor dengan arduino uno disusun oleh : fitria

14

BAB 3

PEMBAHASAN

3.1. Komponen Utama dan Tambahan

3.1.1. Komponen Utama

a. Arduino UNO

b. Grove - Chest Strap Heart Rate Sensor

c. Kabel

d. Kabel USB ( menghubungkan Arduino UNO dengan PC)

3.1.2. Komponen Tambahan

a. Buzzer

b. Resistor

c. LED (Light Emitting Diode)

3.2. Perancangan Alat

3.2.1. Skematik Rangkaian

Page 15: PENGHITUNGAN DENYUT JANTUNG MENGGUNAKAN · PDF filelaporan uas penghitungan denyut jantung menggunakan grove chest strap heart rate sensor dengan arduino uno disusun oleh : fitria

3.2.2. Langkah Percobaan

a. Persiapan

Peralatan yang dibutuhkan adalah :

Arduino UNO

Grove - Chest Strap Heart Rate Sensor

Kabel

Kabel USB ( menghubungkan Arduino UNO dengan PC)

Buzzer Module

LED

b. Membuat Rangkaian

Pasang kabel hitam pada Radio Receiver AM dengan kabel jumper

ke ground analog pin pada arduino uno.

Pasang kabel merah pada Radio Receiver AM dengan kabel jumper

ke pin 5v pada arduino uno.

Pasang kabel kuning pada Radio Receiver AM dengan kabel jumper

ke pin 2 digital pada arduino uno.

Hubungkan 2 kabel pada buzzer module ke pin ground analog pin

dan pin 9 digital pada arduino uno.

Pasang 1 buah LED dengan posisi kaki LED positif ke ground digital

pin dan kaki LED negatif ke 13 digital pin pada arduino uno.

Page 16: PENGHITUNGAN DENYUT JANTUNG MENGGUNAKAN · PDF filelaporan uas penghitungan denyut jantung menggunakan grove chest strap heart rate sensor dengan arduino uno disusun oleh : fitria

16

c. Buat sketch pada program Arduino dengan source code :

unsigned int speakerPin = 9; unsigned char LEDpin = 13; unsigned char counter=0; unsigned int heart_rate=0; unsigned long temp[21]; unsigned long sub=0; volatile unsigned char state = LOW; bool data_effect=true; const int max_heartpluse_duty=5000;//you can change it follow your system's request.2000 meams 2 seconds. System return error if the duty overtrip 5 second. void setup() { Serial.begin(9600); //Serial.println("Please ready your chest belt."); //delay(1000); array_init(); Serial.println("Heart rate test begin."); attachInterrupt(0, interrupt, RISING);//set interrupt 0,digital port 2 } void loop() { } void beepon(){ analogWrite(speakerPin, 150); digitalWrite(LEDpin, HIGH); delay(10000); } void beepoff(){ analogWrite(speakerPin, 0); digitalWrite(LEDpin, LOW); } void sum()//calculate the heart rate { if(data_effect) { heart_rate=1200000/(temp[20]-temp[0]);//60*20*1000/20_total_time Serial.print("Your heart rate is : "); Serial.print(heart_rate); Serial.println(" bpm"); } data_effect=1;//sign bit } void interrupt() { temp[counter]=millis(); state = !state; //Serial.println(counter,DEC); //Serial.println(temp[counter]); switch(counter) { case(0):

Page 17: PENGHITUNGAN DENYUT JANTUNG MENGGUNAKAN · PDF filelaporan uas penghitungan denyut jantung menggunakan grove chest strap heart rate sensor dengan arduino uno disusun oleh : fitria

sub=temp[counter]-temp[20]; Serial.println(sub); break; default: sub=temp[counter]-temp[counter-1]; Serial.println(sub); beepon(); delay(10); beepoff(); break; } if(sub>max_heartpluse_duty)//set 5 seconds as max heart pluse duty { data_effect=0;//sign bit counter=0; //Serial.println("Heart rate measure error,test will restart! or your dead" ); beepon(); array_init(); } if (counter==20&&data_effect) { counter=0; sum(); } else if(counter!=20&&data_effect) counter++; else { counter=0; data_effect=1; } } void array_init() { for(unsigned char i=0;i!=20;++i) { temp[i]=0; } temp[20]=millis(); }

d. Buat Buat sketch Java pada program Processing dengan source code :

import processing.serial.*; // Step 2: Declare PFont variable PFont f; Serial myPort; // The serial port float[] vals; PrintWriter output; String heartrate = "Calculating your heart rate"; void setup() { size(400, 300); f = createFont("Arial", 18, true); frameRate(5); // List all the available serial ports

Page 18: PENGHITUNGAN DENYUT JANTUNG MENGGUNAKAN · PDF filelaporan uas penghitungan denyut jantung menggunakan grove chest strap heart rate sensor dengan arduino uno disusun oleh : fitria

18

println(Serial.list()); // Open whatever port is the one you're using. myPort = new Serial(this, Serial.list()[12], 9600); // don't generate a serialEvent() unless you get a newline character: myPort.bufferUntil('\n'); // An array of initiate values vals = new float[width]; for (int i = 0; i < vals.length; i++) { vals[i] = 250; } int d = day(); // Values from 1 - 31 int m = month(); // Values from 1 - 12 int y = year(); // 2003, 2004, 2005, etc. int se = second(); // Values from 0 - 59 int mi = minute(); // Values from 0 - 59 int h = hour(); // Values from 0 - 23 String s = String.valueOf(d) + String.valueOf(m) + String.valueOf(y) + String.valueOf(h) + String.valueOf(mi) + String.valueOf(se); output = createWriter("data" + s + ".txt"); } void draw() { background(0); // Draw lines connecting all points for (int i = 0; i < vals.length-1; i++) { stroke(255, 123, 0); strokeWeight(1.5); line(i, vals[i], i+1, vals[i+1]); } // Slide everything down in the array for (int i = 0; i < vals.length-1; i++) { vals[i] = vals[i+1]; } // get the ASCII string: String inputString = myPort.readStringUntil('\n'); if (inputString != null) { // trim off any whitespace: String inString = trim(inputString); output.println(inString); output.flush(); // convert to an int and map to the screen height: int inByte = int(inString); // Add a new value vals[vals.length-1] = 250 - (inByte/5); println(inByte); textFont(f, 18); // Step 4: Specify font to be used fill(255); // Step 5: Specify font color // Step 6: Display Text text (inByte, 5, 290); } else { vals[vals.length-1] = 250; } if (inputString != null) { if (inputString.charAt(0) == 'Y') {

Page 19: PENGHITUNGAN DENYUT JANTUNG MENGGUNAKAN · PDF filelaporan uas penghitungan denyut jantung menggunakan grove chest strap heart rate sensor dengan arduino uno disusun oleh : fitria

heartrate = inputString; } } textFont(f, 18); // Step 4: Specify font to be used fill(255); // Step 5: Specify font color // Step 6: Display Text text (heartrate, 180, 290); }

e. Testing (Pengujian)

Dekatkan Radio Receiver AM dengan Grove - Chest Strap Heart Rate

Sensor dengan jarak maksimum 30cm.

Save dan Upload source code pada sketch program arduino. Lalu

klik pojok kanan atas pada Arduino untuk membuka Serial Monitor.

Jika berhasil maka akan tampil seperti gambar berikut :

Rubah serial port list yang digunakan pada source code sesuai

dengan port dan baut-rate yang digunakan oleh Arduino, pada

percobaan kali ini digunakan serial list nomor 12 pada COM port 27

dan baut-rate 9600 (Serial.list()[12], 9600).

Save dan Upload source code tersebut. Jangan jalankan serial

monitor yang sama dengan COM port arduino karena akan terjadi

bentrok. Jika berhasil maka akan tampil seperti gambar berikut :

Page 20: PENGHITUNGAN DENYUT JANTUNG MENGGUNAKAN · PDF filelaporan uas penghitungan denyut jantung menggunakan grove chest strap heart rate sensor dengan arduino uno disusun oleh : fitria

20

3.2.3.Analisa Program

Sketch Program Arduino 1

Source Code Penjelasan

unsigned char counter=0;

unsigned int heart_rate=0;

unsigned long temp[21];

unsigned long sub=0;

volatile unsigned char state = LOW;

bool data_effect=true;

const int max_heartpluse_duty=2000;

Menginisialisasi variabel

counter, heart_rate, temp, sub,

state, data_effect dan

max_heartpluse_duty.

HeartPulse 2000 berarti 2 detik,

jika terjadi overtrip selama 2

detik, sustem menampilkan

error.

void setup()

{

pinMode(pin, OUTPUT);

Serial.begin(9600);

Serial.println("Please ready your chest

belt.");

delay(1000);//

array_init();

Serial.println("Heart rate test begin.");

attachInterrupt(0, interrupt,

RISING);//set interrupt 0,digital port 2

}

Mempersiapkan program untuk

menghitung detak jantung.

void loop()

{

}

Page 21: PENGHITUNGAN DENYUT JANTUNG MENGGUNAKAN · PDF filelaporan uas penghitungan denyut jantung menggunakan grove chest strap heart rate sensor dengan arduino uno disusun oleh : fitria

void sum()//calculate the heart rate

{

if(data_effect)

{

heart_rate=1200000/(temp[20]-

temp[0]);//60*20*1000/20_total_time

Serial.print("Heart_rate_is:\t");

Serial.println(heart_rate);

}

data_effect=1;//sign bit

}

Menghitung jumlah detak

jantungdari array temp.

void interrupt()

{

temp[counter]=millis();

state = !state;

Serial.println(counter,DEC);

Serial.println(temp[counter]);

switch(counter)

{

case(0):

sub=temp[counter]-temp[20];

Serial.println(sub);

break;

default:

sub=temp[counter]-temp[counter-1];

Serial.println(sub);

break;

}

if(sub>max_heartpluse_duty)//set 2

seconds as max heart pluse duty

{

data_effect=0;//sign bit

counter=0;

Serial.println("Heart rate measure

error,test will restart!" );

array_init();

}

if (counter==20&&data_effect)

{

Melakukan pengecekan secara

looping terus menerus terhadap

terjadinya interupsi atau jika

terjadi overtrip.

Page 22: PENGHITUNGAN DENYUT JANTUNG MENGGUNAKAN · PDF filelaporan uas penghitungan denyut jantung menggunakan grove chest strap heart rate sensor dengan arduino uno disusun oleh : fitria

22

counter=0;

sum();

}

else if(counter!=20&&data_effect)

counter++;

else

{

counter=0;

data_effect=1;

}

}

void array_init()

{

for(unsigned char i=0;i!=20;++i)

{

temp[i]=0;

}

temp[20]=millis();

}

Menginisialisasi nilai array temp

agar bernilai o.

Sketch Pada Program Processing

Source Code Penjelasan

import processing.serial.*;

PFont f;

Serial myPort;

float[] vals;

PrintWriter output;

String heartrate = "Calculating your heart rate";

Mengimport library untuk

melakukan hubungan data

melalui serial dan

menginisialisasi variabel font,

serial, output untuk menulis data

ke dalam teks dan string awal.

void setup() {

size(400, 300);

f = createFont("Arial", 18, true);

frameRate(5);

// List all the available serial ports

println(Serial.list());

// Open whatever port is the one you're using.

myPort = new Serial(this, Serial.list()[12],

9600);

Prosedur setup ini dijalankan

satu kali oleh program.

Program akan membuat

jendela tampilan dengan

lebar 400px dan tinggi

300px, kemudian

menggunakan font Arial

berukuran 18 dengan frame

Rate tampilan sebanyak 5

Page 23: PENGHITUNGAN DENYUT JANTUNG MENGGUNAKAN · PDF filelaporan uas penghitungan denyut jantung menggunakan grove chest strap heart rate sensor dengan arduino uno disusun oleh : fitria

// don't generate a serialEvent() unless you get

a newline character:

myPort.bufferUntil('\n');

// An array of initiate values

vals = new float[width];

for (int i = 0; i < vals.length; i++) {

vals[i] = 250;

}

int d = day(); // Values from 1 - 31

int m = month(); // Values from 1 - 12

int y = year(); // 2003, 2004, 2005, etc.

int se = second(); // Values from 0 - 59

int mi = minute(); // Values from 0 - 59

int h = hour(); // Values from 0 - 23

String s = String.valueOf(d) + String.valueOf(m)

+ String.valueOf(y) + String.valueOf(h) +

String.valueOf(mi) + String.valueOf(se);

output = createWriter("data" + s + ".txt");

}

fps.

Lalu program akan

menmpilkan daftar serial

port yang terhubung dengan

computer, ubah data

Serial.list()[i] sesuai dengan

list serial port arduino, kali

ini menggunakan 12 karena

arduino terhubung pada

COM port 27 dan berada

pada list 12.

myPort.buffer untuk

membaca data yang

didapatkan dari serial port

diatas.

Kemudian inisialisasi waktu

sistem untuk membuat file

teks dengan format “data” +

waktu sistem untuk

menyimpan seluruh data

yang diterima.

void draw() {

background(0);

// Draw lines connecting all points

for (int i = 0; i < vals.length-1; i++) {

stroke(255, 123, 0);

strokeWeight(1.5);

line(i, vals[i], i+1, vals[i+1]);

}

// Slide everything down in the array

for (int i = 0; i < vals.length-1; i++) {

vals[i] = vals[i+1];

}

// get the ASCII string:

String inputString =

myPort.readStringUntil('\n');

Prosedur draw ini dijalankan

berulang kali oleh program.

Program akan membuat

garis untuk membuat grafik

dari setiap titik point pada

kurva grafik.

Program membaca data pada

serial port kemudian

menghapus whitespace

(spasi) dan konversi ke

dalam integer. Data inilah

yang digunakan sebagai

point (titik pada grafik), data

ini juga ditampilkan pada

program secara realtime.

Data ini merupakan data

kuatnya denyut jantung.

output.println(inString); dan

Page 24: PENGHITUNGAN DENYUT JANTUNG MENGGUNAKAN · PDF filelaporan uas penghitungan denyut jantung menggunakan grove chest strap heart rate sensor dengan arduino uno disusun oleh : fitria

24

if (inputString != null) {

// trim off any whitespace:

String inString = trim(inputString);

output.println(inString);

output.flush();

// convert to an int and map to the screen

height:

int inByte = int(inString);

// Add a new value

vals[vals.length-1] = 250 - (inByte/5);

println(inByte);

textFont(f, 18); // Step 4: Specify font to be

used

fill(255); // Step 5: Specify font color

// Step 6: Display Text

text (inByte, 5, 290);

}

else {

vals[vals.length-1] = 250;

}

if (inputString != null) {

if (inputString.charAt(0) == 'Y') {

heartrate = inputString;

}

}

textFont(f, 18); // Step 4: Specify font to be

used

fill(255); // Step 5: Specify font color

// Step 6: Display Text

text (heartrate, 180, 290);

}

output.flush(); merupakan

fungsi untuk menulis data

pada teks file pada prosedur

setup.

Jika data pada serial port

berisi data rata-rata denyut

jantung maka denyut jantung

tersebut akan ditampilkan

pada bagian kanan bawah

program.

3.3. Hasil Percobaan

Dari percobaan yang telah dijelaskan dan dilakukan sebelumnya,

percobaan penghitungan denyut jantung menggunakan Grove Chest Strap Heart

Rate Sensor dengan Arduino Uno mendapatkan hasil sebagai berikut:

Arduino Uno dapat dihubungkan dengan Grove Chest Strap Heart Rate Sensor.

Page 25: PENGHITUNGAN DENYUT JANTUNG MENGGUNAKAN · PDF filelaporan uas penghitungan denyut jantung menggunakan grove chest strap heart rate sensor dengan arduino uno disusun oleh : fitria

Pada program, arduino melakukan konversi data analog (dari sensor suhu)

menjadi digital dengan kekuatan denyut jantung dan frekuensi jantung dengan

satuan BPM (beats per minute) yang ditampilkan dengan grafik dan angka.

Data denyut jantung tersebut dapat ditampilkan baik menggunakan serial

monitor pada computer, lalu data serial tersebut dapat ditampilkan ke dalam

bentuk grafik.

Suara yang dihasilkan buzzer mengikuti tempo denyut jantung yang terdeteksi,

apabila denyut berhenti sekitar 5 detik, maka buzzer akan menghasilkan bunyi

yang panjang.

Cahaya yang dihasilkan LED mengikuti tempo denyut jantung.

Hasil rekam denyut jantung akan tersimpan datanya secara otomatis dengan

formati teks ekstensi .txt dengan format nama file “data” + waktu percobaan.

Page 26: PENGHITUNGAN DENYUT JANTUNG MENGGUNAKAN · PDF filelaporan uas penghitungan denyut jantung menggunakan grove chest strap heart rate sensor dengan arduino uno disusun oleh : fitria

26

BAB 4

PENUTUP

4.1. Kesimpulan

Dari keseluruhan rangkaian pembuatan dan pemrograman sampai hasil yang

didapat dari alat penghitung denyut jantung yang memanfaatkan perangkat Grove -

Chest Strap Heart Rate dan Arduino UNO ini, maka dapat diambil beberapa

kesimpulan, yaitu :

Alat ini dapat digunakan untuk melakukan penghitungan denyut jantung per

menit dalam bentuk angka maupun grafik dan menyimpan data kedalam file text.

Jarak radio AM Receiver dengan Grove - Chest Strap Heart Rate (nirkabel) hanya

dapat menjangkau sensor denyut jantung sejauh 30 cm. Jika jarak melebihi batas

maksimal, data tidak dapat diterima.

Pada perangkat ini, Grove - Chest Strap Heart Rate harus benar-benar

menyentuh kulit dan berada di area dekat jantung. Jika tidak, maka denyut

jantung tidak terdeteksi dan error.

Alat Grove - Chest Strap Heart Rate ini masih belum akurat untuk melakukan

penghitungan denyut jantung karena dipengaruhi beberapa faktor seperti detak

jarak, gerakan dan kuat/tidaknya denyut.

LED dan buzzer akan menghasilkan cahaya dan suara mengikuti tempo denyut

jantung yang terdeteksi oleh sensor Grove - Chest Strap Heart Rate.

4.2. Saran

Alat penghitung detak jantung ini masih terdapat banyak kekurangan dan perlu

dilakukan pengembangannya guna hasil yang lebih baik. Berikut uraiannya :

Pembuatan alat sejenis ini dapat dibuat lebih akurat dan jarak penerimaan data

denyut bisa sejauh mungkin.

Source code aplikasi arduino yang digunakan belum memiliki fungsi yang

lengkap.

Page 27: PENGHITUNGAN DENYUT JANTUNG MENGGUNAKAN · PDF filelaporan uas penghitungan denyut jantung menggunakan grove chest strap heart rate sensor dengan arduino uno disusun oleh : fitria

DAFTAR PUSTAKA

Bräunl, Thomas. Embedded Robotics - Mobile Robot Design and Applications with

Embedded Systems, Second Edition.Springer, Jerman,Juni 2006. [3]

Byte Craft Limited. First Steps with Embedded Systems. Byte Craft Limited,

Kanada, November 2012. [1]

Wilmshurst, Tim.Designing Embedded Systems with PIC Microcontrollers -

Principles and Applications.Elsevier Ltd, Inggris, 2007. [2]

Internet :

http://www.seeedstudio.com/wiki/Grove_-_Heart_rate_chest_belt_kit

http://irpan91.blogspot.com/2012/05/cara-menghitung-denyut-nadi.html

http://arduino.cc/en/Tutorial/Graph

http://cmuems.com/2012/c/arduino-processing/