usb ekg projesİ - eee.ktu.edu.tr · ile matlab ara yüzünde, usb iletimiyle sürekli olarak...

52
T.C. KARADENİZTEKNİKÜNİVERSİTESİ Mühendislik Fakültesi Elektrik-Elektronik Mühendisliği Bölümü USB EKG PROJESİ SERHAT TOSUN 196077 ÖMER YAZICI 238316 Yrd. Doç. Dr. Yusuf SEVİM Mayıs 2012 TRABZON

Upload: others

Post on 27-Oct-2019

27 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: USB EKG PROJESİ - eee.ktu.edu.tr · ile MATLAB ara yüzünde, USB iletimiyle sürekli olarak gösterilmesi amaçlanmaktadır. EKG iaretinin bir örneği ùekil 1.1’de gösterilmitir

T.C.

KARADENİZTEKNİKÜNİVERSİTESİ

Mühendislik Fakültesi

Elektrik-Elektronik Mühendisliği Bölümü

USB EKG PROJESİ

SERHAT TOSUN

196077

ÖMER YAZICI

238316

Yrd. Doç. Dr. Yusuf SEVİM

Mayıs 2012

TRABZON

Page 2: USB EKG PROJESİ - eee.ktu.edu.tr · ile MATLAB ara yüzünde, USB iletimiyle sürekli olarak gösterilmesi amaçlanmaktadır. EKG iaretinin bir örneği ùekil 1.1’de gösterilmitir
Page 3: USB EKG PROJESİ - eee.ktu.edu.tr · ile MATLAB ara yüzünde, USB iletimiyle sürekli olarak gösterilmesi amaçlanmaktadır. EKG iaretinin bir örneği ùekil 1.1’de gösterilmitir

T.C.

KARADENİZTEKNİKÜNİVERSİTESİ

Mühendislik Fakültesi

Elektrik-Elektronik Mühendisliği Bölümü

USB EKG PROJESİ

SERHAT TOSUN

196077

ÖMER YAZICI

238316

Yrd. Doç. Dr. Yusuf SEVİM

Mayıs 2012

TRABZON

Page 4: USB EKG PROJESİ - eee.ktu.edu.tr · ile MATLAB ara yüzünde, USB iletimiyle sürekli olarak gösterilmesi amaçlanmaktadır. EKG iaretinin bir örneği ùekil 1.1’de gösterilmitir

ii

Page 5: USB EKG PROJESİ - eee.ktu.edu.tr · ile MATLAB ara yüzünde, USB iletimiyle sürekli olarak gösterilmesi amaçlanmaktadır. EKG iaretinin bir örneği ùekil 1.1’de gösterilmitir

iii

LİSANS BİTİRME PROJESİ ONAY FORMU

Ömer YAZICI ve Serhat TOSUN tarafından Yrd. Doç. Dr. Yusuf SEVİM yönetiminde

hazırlanan “USB EKG PROJESİ” başlıklı lisans bitirme projesi tarafımızdan incelenmiş,

kapsamı ve niteliği açısından bir Lisans Bitirme Projesi olarak kabul edilmiştir.

Danışman : Unvanı Adı ve SOYADI ………………………………

Jüri Üyesi 1 : Unvanı Adı ve SOYADI ………………………………

Jüri Üyesi 2 : Unvanı Adı ve SOYADI ………………………………

Bölüm Başkanı : Unvanı Adı ve SOYADI ………………………………

Page 6: USB EKG PROJESİ - eee.ktu.edu.tr · ile MATLAB ara yüzünde, USB iletimiyle sürekli olarak gösterilmesi amaçlanmaktadır. EKG iaretinin bir örneği ùekil 1.1’de gösterilmitir

iv

Page 7: USB EKG PROJESİ - eee.ktu.edu.tr · ile MATLAB ara yüzünde, USB iletimiyle sürekli olarak gösterilmesi amaçlanmaktadır. EKG iaretinin bir örneği ùekil 1.1’de gösterilmitir

v

ÖNSÖZ

İnsanın en önemli organlarından biri olan kalp, geçmişten günümüze büyük bir araştırma

konusu olmuştur. Kalbin ritmini ve kalp rahatsızlıklarını belirlemek ve sinirsel iletim

sistemini incelemek için geliştirilen elektrokardiyografi ile kalpte meydana gelen

elektriksel faaliyetlerin belirli teknikler kullanarak kaydedilmesi yıllar boyunca amaç

edinilmiştir. Biz de bu amaçla yola çıkarak EKG sinyalini bilgisayarda görüntülemeyi

sağlayan USB bağlantılı bir EKG cihazı gerçekleştirdik ve grafik kullanıcı ara yüzünü

yazdık.

Çalışmalarımız boyunca bize destek veren KTÜ Elektrik Elektronik Mühendisliği

hocalarından Yrd. Doç. Dr. Yusuf SEVİM’e ve Arş. Gör. Oğuzhan ÇAKIR’a

teşekkür ederiz.

Serhat Tosun

Ömer Yazıcı

TRABZON, 2012

Page 8: USB EKG PROJESİ - eee.ktu.edu.tr · ile MATLAB ara yüzünde, USB iletimiyle sürekli olarak gösterilmesi amaçlanmaktadır. EKG iaretinin bir örneği ùekil 1.1’de gösterilmitir

vi

Page 9: USB EKG PROJESİ - eee.ktu.edu.tr · ile MATLAB ara yüzünde, USB iletimiyle sürekli olarak gösterilmesi amaçlanmaktadır. EKG iaretinin bir örneği ùekil 1.1’de gösterilmitir

vii

İÇİNDEKİLER

Lisans Bitirme Projesi Onay Formu …………... iii

Önsöz …………... v

İçindekiler …………... vii

Özet …………... ix

Semboller Ve Kısaltmalar …………... xi

1. Giriş …………... 1

1.1. Kalbin Elektriksel İletim Sistemi …………... 1

1.2. EKG Sinyali ve Oluşumu …………... 2

1.3. EKG Tarihi ve Gelişimi …………... 4

1.4. Üç Elektrotlu EKG …………... 6

1.5. Elektrot Elektriksel Devre Modeli …………... 7

1.6. Elektrotlar …………... 8

1.6.1. Metal Plaka Elektrotlar …………... 8

1.6.2. Emici Düzenli Elektrotlar …………... 9

1.6.3. Gezici Tip Elektrotlar …………... 9

1.6.4. Tek Kullanımlık Elektrotlar …………... 9

1.6.5. Kuru Elektrotlar …………... 10

2. Teorik Altyapı …………... 11

2.1. AD624 Enstrümantasyon Yükselteci …………... 11

2.2. Mikro Denetleyicinin Tanıtımı Ve Bilgiler …………... 13

3. Tasarım …………... 14

4. Deneysel Çalışmalar …………... 15

4.1. Alçak Geçiren Süzgeç …………... 17

4.2. Katlı Yükselteç Bölümü …………... 17

4.3. Veri İşleme Bölümü …………... 18

4.4. USB Haberleşmesi …………... 19

4.5. USB Veri Düzeni …………... 19

4.5.1. USB Paket Alanları …………... 20

4.5.1.1. SYNC Alanı …………... 20

4.5.1.2. Paket Tanımlayıcı Alanı …………... 20

4.5.1.3. Adres Alanı …………... 20

4.5.1.4. Uç Nokta Alanı …………... 20

4.5.1.5. CRC Alanı …………... 21

4.5.1.6. EOP Alanı …………... 21

4.5.1.7. Veri Alanı …………... 21

4.6. USB Sürücüsü …………... 21

4.7. USB_konfigurasyon.h Dosyası …………... 22

4.8. Bilgisayara Veri Aktarımı …………... 24

4.9. MATLAB’da Verilerin Gösterilmesi …………... 25

4.10. MATLAB Filtreleri …………... 26

4.11. Projenin Bitmiş Hali …………... 26

5. Sonuçlar …………... 29

6. Kaynaklar …………... 30

7. Ekler …………... 31

Page 10: USB EKG PROJESİ - eee.ktu.edu.tr · ile MATLAB ara yüzünde, USB iletimiyle sürekli olarak gösterilmesi amaçlanmaktadır. EKG iaretinin bir örneği ùekil 1.1’de gösterilmitir

viii

Ek-1 …………... 31

Ek-2 …………... 33

Özgeçmişler …………... 36

Standartlar ve Kısıtlar Formu …………... 37

Bitirme Projesi Öğrenci Takip Formu …………... 38

Page 11: USB EKG PROJESİ - eee.ktu.edu.tr · ile MATLAB ara yüzünde, USB iletimiyle sürekli olarak gösterilmesi amaçlanmaktadır. EKG iaretinin bir örneği ùekil 1.1’de gösterilmitir

ix

ÖZET

Kalp hastalıklarının teşhisinde EKG sinyalinin ölçümü hayati değer taşımaktadır. EKG

sinyali kalbin elektriksel faaliyeti sonucu oluşan ve deriden elektrotla ölçülebilen

biyopotansiyel sinyallerdir. Sinyallerin genlikleri, süreleri ve tekrarlama sıklıkları kalbin

fizyolojik durumu hakkında bilgi verir. Bu sinyaller enstrümantasyon yükselteçleri ile

güçlendirilerek işlenebilir sinyallere dönüştürülür. EKG cihazı kalp kasıldığı zaman deri

yüzeyinde veya vücut içerisinde oluşan küçük genlikli elektriksel sinyali algılayıp bunu

grafiğe dönüştürebilen bir aygıttır.

Yaptığımız çalışmada EKG sinyallerini vücuttan elektrotlar ile alarak özel yükselteçler ile

kuvvetlendirip filtreden geçirdik. Daha sonra bu analog sinyali dijitale çevirip USB

bağlantı noktası üzerinden bilgisayarda yazdığımız grafik kullanıcı ara yüzüne gönderdik

ve orada hem grafiğin görüntülenmesini sağladık hem de sinyal işleme uygulamaları

yaptık.

Page 12: USB EKG PROJESİ - eee.ktu.edu.tr · ile MATLAB ara yüzünde, USB iletimiyle sürekli olarak gösterilmesi amaçlanmaktadır. EKG iaretinin bir örneği ùekil 1.1’de gösterilmitir

x

Page 13: USB EKG PROJESİ - eee.ktu.edu.tr · ile MATLAB ara yüzünde, USB iletimiyle sürekli olarak gösterilmesi amaçlanmaktadır. EKG iaretinin bir örneği ùekil 1.1’de gösterilmitir

xi

SEMBOLLER VE KISALTMALAR

EKG :Elektrokardiyograf

USB :Universal Serial Bus

PIC :Programmable Interface Controller

AHA :American Heart Association

IEC :International Electrotechnical Commission

Hz :Hertz

KHz :Kilohertz

MHz :Megahertz

CPU :Central Processing Unit

PLL :Phase-Locked Loop

nF :Nanofarad

uF :Mikrofarad

R :Direnç

C :Kondansatör

EEPROM :Electronically Erasable Programmable Read Only Memory

A/D :Analog Dijital

GND :Groun

DC :Direct Current

AC :Alternative Current

KΩ :Kilo Ohm

Ω :Ohm

V :Volt

A :Akım

CRC :Cyclic Redundancy Check

PID :Proportional-Integral-Derivative

SYNC :Synchronization

EOP :End of Packet

SE0 :Single Ended Zero

2CO :Karbondioksit

Page 14: USB EKG PROJESİ - eee.ktu.edu.tr · ile MATLAB ara yüzünde, USB iletimiyle sürekli olarak gösterilmesi amaçlanmaktadır. EKG iaretinin bir örneği ùekil 1.1’de gösterilmitir

xii

2O :Oksijen

SA :Sinotrial Node

AV :Antrioventricular Node

CNS :Cental Noise System

ASD :Atrial Septal Defect

CMRR :Common Mode Rejection Ratio

PSP :Parallel Slave Port

RAM :Random Access Memory

SRAM :Static Random Access Memery

cm :Santimetre

RISC :Reduced Istruction Set Computer

K :Katyon

A :Anyon

ADC :Analog Digital Converter

BPM :Bit Per Minute

VID :Vendor-Integral-Derivative

API :Application Programming Interface

GUI :Graphical User Interface

Page 15: USB EKG PROJESİ - eee.ktu.edu.tr · ile MATLAB ara yüzünde, USB iletimiyle sürekli olarak gösterilmesi amaçlanmaktadır. EKG iaretinin bir örneği ùekil 1.1’de gösterilmitir

1. GİRİŞ

Hastaya bazı ölçümler sonunda tanının konulup, onun ameliyatından iyileşip sağlıklı bir

hayata devam etmesine kadar her an yanında olan tıbbi cihazlar insan hayatında önemli bir

yere sahiptir. Bu cihazların kan basıncı, akış hızı, debisi ve daha birçok fizyolojik olay

mühendislik teknikleri sayesinde ölçülüp gerekli hesaplamalar yapılmaktadır. Günümüzde

meydana gelen ani ölümlerin büyük bir kısmı kalp rahatsızlıklarından dolayıdır. Bu

ölümleri en aza indirmek için mühendislik teknikleri ve tıbbi cihazlar her geçen gün

geliştirilmeye devam etmektedir.

Kalp, anatomik ve fizyolojik yapısı gereği insan vücuduna temiz kan pompalamaktadır.

Bu işlem sırasında gevşeme ve kasılma işlemleri gerçekleşir. Kalbin kasılıp gevşemesi

sırasında küçük genlikli sinyaller oluşur. Elektrokardiyografi (EKG) kalpteki bu elektriksel

aktivitenin izlenmesine yardımcı olan bir yöntemdir. Kalp her attığında EKG küçük

elektrik sinyalleri üretir. Kalbin yaydığı sinyallerinin incelenmesi ve takibi, dolaşım

sisteminde meydana gelebilecek herhangi bir düzensizliğin teşhis edilip gerekli tedavinin

yapılmasına bir olanak sağlamaktadır. Bu nedenle kalp sinyallerini izlemek üzere

elektrokardiyografi cihazları geliştirilmiştir. Bu cihazlar çeşitli yöntemlerle cilt yüzeyine

veya vücudun içerisine yerleştirilir. Elektrot ismi verilen sensörler aracılığıyla kalp

tarafından üretilen biyopotansiyel sinyaller alınıp kullanılarak kalbin fizyolojik durumunu

saptanır. Bu işlemi yapan cihaza ise elektrokardiyograf denilir.

1.1. Kalbin Elektriksel İletim Sistemi

Sinüs düğümü (SA), atrioventriküler düğüm(AV), his demeti kolları ve purkinje

fiberleri kalbin elektriksel sistemini oluştururlar.

SA düğümünde sodyum ve potasyum iyonlarının hücre içine ve dışına hareketleri

sonucunda oluşan potansiyel değişiklikler sonucu oluşan aksiyon potansiyeli,

depolarizasyon dalgası halinde tüm kalbe yayılır. Kalp hücreleri arasındaki geçiş ise

hücreler arası alçak direnç bölgelerini oluşturan geçit bölgeleri üzerinden olur. SA düğümü

aksiyon potansiyeli sayesinde elektrik sinyali üretmiş olur. Kalbin bu şekilde çalışma

işlemi merkezi sinir sisteminin (CNS) kontrolündedir. Böylece kalp ritmi değişik koşullara

göre ayarlanabilir. SA düğümü elektrik ürettiği anda akım atria’lara ulaşır ve onların

Page 16: USB EKG PROJESİ - eee.ktu.edu.tr · ile MATLAB ara yüzünde, USB iletimiyle sürekli olarak gösterilmesi amaçlanmaktadır. EKG iaretinin bir örneği ùekil 1.1’de gösterilmitir

2

kasılmasını sağlar. Atriaların içindeki kan ventriküllere doğru pompalanır. Elektrik

akımının yayılma hızı atrialar dokusunda 30 cm/s’dir. SA düğümü ile AV düğümü

arasında özel bir doku vardır ve bu dokudaki yayılım hızı atriadakinden daha fazladır (45

cm/s). Bu dâhili iletim yolu sinyali ventriküllere taşır. Atrialar boşalmadan ventriküllerin

kasılması istenmez. Böyle bir olay meydana gelmemesi için bir gecikme gereklidir. Bu da

AV düğümünün görevidir. 45 cm/s ile sinyal AV düğümüne SA düğümünden çıktıktan

sonra 30-50 ms içerisinde ulaşır. Sinyal AV düğümüne ulaştığı zaman 110 ms geciktirilir.

Bu demektir ki AV düğümü, elektrik iletim sistemi içerisinde sinyal geciktirme işlemi

yapar [2].

Ventriküllerin kas hücreleri purkinje fiberlerinden oluşur ve aksiyon potansiyeli bu

dokuda çok hızlı (2-4 m/s) yol alır. Fiberler iki düğüm halinde düzenlenmiştir. Birisi solda,

diğeri ise sağdadır. Purkinje fiberlerindeki iletim çok hızlıdır. SA-AV düğümü arası 40 ms

sürer. AV düğümü tarafından 110ms geciktirilir ve bu sayede alt odacıkların kasılması üst

odaların boşalması ile eşzamanlı hale getirilir [2].

Elektrik sinyali kas fiberlerini miyokardiyum kas fiberlerini uyarır. Kaslar kasılmış

halde iken ventrikül odacığının hacmi azalır ve içerideki kan dışarıya pompalanır. Tek bir

seferde birçok kas hücresinin uyarımı büyük bir elektriksel işaret yaratır ve bu işaret göğse

yerleştirilen elektrotlar ile algılanabilir [2].

1.2. EKG Sinyali ve Oluşumu

Purkinje fiberleri uyarıldıktan sonra miyokardiyum kasılma hareketi yapar. Bu sayede

kan arterlere pompalanır. Kalpte bulunan bu kasların eşzamanlı olarak kasılması

neticesinde genliği büyük, Elektrokardiyogram (EKG) olarak adlandırılan elektriksel işaret

oluşur. Bu işaret, vücut yüzeyinden veya vücut içine yerleştirilen elektrotlarla ölçülebilir.

Elektrokardiyografi kalpteki elektriksel süreçlerin kayıt edilmesidir. Bu kayıta EKG denir.

Kayıt yapan cihaza da elektrokardiyograf denir.

Kalp kasıldığı zaman ürettiği biyopotansiyel işaretler vücuda eşzamanlı yayılır. Bu

biyopotansiyel işaretler vücuda yerleştirilen elektrotlarla ölçülür. EKG kalp sorunlarının

erken teşhisinde de kullanılmaktadır. Örneğin, hızlı kalp atışı (taşikardi), yavaş kalp atışı

ve bunun gibi birçok kalp problemlerinin teşhisinde EKG cihazları son derece önem

taşımaktadır. Bu cihazlar çoğunlukla, acil servis, kardiyoloji servisi, dâhiliye servisi, yoğun

bakım, ameliyathane gibi yerlerde başta olmak üzere birçok yerde kullanılmaktadır [1].

Page 17: USB EKG PROJESİ - eee.ktu.edu.tr · ile MATLAB ara yüzünde, USB iletimiyle sürekli olarak gösterilmesi amaçlanmaktadır. EKG iaretinin bir örneği ùekil 1.1’de gösterilmitir

3

Elektrokardiyograf olarak da bilinen bu projede vücut yüzeyine yerleştirilen elektrotlar

yardımıyla kalbin üretmiş olduğu elektriksel sinyaller algılanır ve PIC mikro denetleyicisi

ile MATLAB ara yüzünde, USB iletimiyle sürekli olarak gösterilmesi amaçlanmaktadır.

EKG işaretinin bir örneği Şekil 1.1’de gösterilmiştir.

Şekil 1.1 EKG işareti

EKG işareti Willem Einthoven tarafından 1895’te bazı harflerle karakterize etmiş ve o

günden günümüze kadar bu işaretin her farklı kısmı bu harflerle ifade edilmiştir. P dalgası

olarak adlandırılan bölüm, atriumların kasılması sonucu oluşur. Bu dalganın genliği,

atrium kaslarının fonksiyonel aktivitesini belirtir. PQ aralığı, his demeti iletim zamanına

karşılık gelmektedir. QRST dalgası, ventriküler kompleks olarak isimlendirilir ve ventrikül

kaslarının depolarize aktivitesini gösterir. EKG sinyalinin QRS dalgasını, his demeti ve

kollarındaki iletim bozuklukları yüksek ölçüde etkiler. R dalgasının yukarı çıkışı ile

Ventriküllerin kasılması aynı anda olur. ST aralığında, ventrikül kas hücreleri yavaş, T

sürecinde ise hızlı repolarize olur. Dakikada ki kalp atım hızı 75 olan sağlıklı bir insanda P,

PR ve QRS süreleri sırasıyla 0.1, 0.13 ve 0.08 ms kadardır. Bu değerler Tablo 1.1’de

gösterilmiştir [1].

Page 18: USB EKG PROJESİ - eee.ktu.edu.tr · ile MATLAB ara yüzünde, USB iletimiyle sürekli olarak gösterilmesi amaçlanmaktadır. EKG iaretinin bir örneği ùekil 1.1’de gösterilmitir

4

Tablo 1.1 EKG süreleri [1].

Dalga Aralığı Zaman (sn)

PR Aralığı 0.16-0.20 saniye

QT Aralığı 0.32-0.39 saniye

PR Bölümü 0.09-0.11 saniye

ST Bölümü 0.08-0.09 saniye

QRS Süresi 0.06-0.09 saniye

Yapacağımız devrede çeşitli EKG derivasyonlarını ve çeşitli ölçüm tiplerinden herhangi

birini kullanabilirdik. Bu tamamen isteğe bağlıdır ve biz bu projede hala popüler olan ve

klasik EKG derivasyonunu görüntülemek için 3 prob EKG ölçümü yaptık. Günümüzde

kullanılan EKG ölçüm yöntemleri 3 probdan başlayıp 5 ve 12 problu EKG’ye kadar

gitmektedir.

Kullandığımız elektrotların takıldığı konumları değiştirerek değişik derivasyonlar elde

edebiliriz. Pozitif ve negatif elektrotları kullanarak elde edeceğimiz derivasyonlar bipolar

(standart) derivasyonlar adını alacaktır. Tek bir pozitif elektrot kullanırsak ölçüm için, bu

derivasyona da unipolar adını alır.

1.3. EKG Tarihi ve Gelişimi

Rene Decartes’ın, 1662’de insan hareketlerini lifler, kanallar ve hayvan ruhlarının

karmaşık mekanik etkileşimleri şeklinde tanımlamış ve hayvan ruhlarının kas hacmini

arttırdığını (kasılan kasın şişmesi) öne sürmesiyle başlamıştır [3].

1729’da İngiliz bilim adamı Stephen Gray, statik elektrik yükünü pirinç kablo

kullanarak 150 metreden daha uzağa iletebilmiştir. Bu olay her ne kadar EKG ile birinci

derecen alakalı olmasa da kalpten sinyalin alınıp işlenebilmesi için o sinyalin belli bir yol

alması gerekmektedir. Bu yüzden sinyal iletimi de EKG gelişimi için önemlidir [3].

İlk elektrokardiyografi cihazı ise 1895’te Hollandalı fizyolojist Willem Einthoven,

gelişmiş bir elektrometre kullanarak gerçekleştirmiştir. Geliştirilen bu ilk cihaz 270 kg

ağırlığındaydı. Einthoven bu cihaz ile “P, Q, R, S, T” olarak adlandırdığı beş eğri

seçmiştir. Bu harflerin seçilmesin nedeni, matematikte alfabenin ikinci yarısından itibaren

Page 19: USB EKG PROJESİ - eee.ktu.edu.tr · ile MATLAB ara yüzünde, USB iletimiyle sürekli olarak gösterilmesi amaçlanmaktadır. EKG iaretinin bir örneği ùekil 1.1’de gösterilmitir

5

harf kullanma alışkanlığından gelmektedir. Einthoven’ın “tel galvanometre” adını verdiği

makinede iki ayrı kutup parçası olan güçlü bir elektromıknatıs vardı. Bu iki kutup parçası

arasında sabitlenmiş, ayarlanabilir mekanik gerilimli, gümüş kaplı bir kuartz tel

bulunmaktaydı. Kutup parçalarının ortasında, telin pozisyonunu görmek için gözetleme

delikleri bulunmaktaydı. Yansıtan ve büyüten mercekler ile yapılan yansıtma sistemiyle,

tel üzerinden geçebilecek 11

10

A akım, ekran üzerinde telin gölgesini 1 mm hareket

ettirmekteydi ve makinenin yapısındaki güçlü elektromıknatıslar için su soğutmasına

ihtiyaç vardı. Kullanılması için beş kişi gerekiyordu. Einthoven, elde ettiği

elektrokardiyogramları telefon kabloları kullanarak hastaneden 1,5 km uzaklıktaki

laboratuarına gönderdi. 1912’de I, II ve III standart bağlantılarından oluşan, daha sonra

“Einthoven Üçgeni” diye adlandırılacak olan bir eşkenar üçgen tanımladı. Aynı sene

Hoffman, insandaki ventriküler fibrilasyonun, yani ventrikül kasının düzensiz depolarize

olması sonucu koordine kasılamama halinin, ilk EKG kaydını yayınladı [3].

Bizim yapmakta olduğumuz EKG cihazının bileşenleri; EKG sinyallerini algılamak için

kullanılan elektrotlar, bu elektrotlar ile alınan sinyallerin yükseltilmesi için bir yükselteç

katı, yükselteç çıkışındaki sinyal içinden gürültüsüz, temiz bir EKG sinyallerinin geçişine

olanak tanıyacak filtreleme katı ve bu sinyalleri işleyip görüntüleyecek olan veri işleme ve

görüntüleme katlarıdır.

EKG sinyali birkaç mili volt kadar küçük olup genel olarak bu sinyaller elektriksel

gürültü ile karışıktır. Bu kadar küçük bir sinyali gürültüden ayırmak ve yaklaşık birkaç bin

defa yükseltmek gerekmektedir. Bu yüzden elektrotlar tarafından algılanan analog kalp

sinyali veri algılama bölümüne verilir. Bu bölümde sinyal süzgeç kullanılarak gürültüden

ayrılır ve birkaç bin defa yükseltilir. Daha sonra sinyal veri işleme bölümüne verilir ve

burada analogdan sayısala çevrilir.

Derleyici olarak PIC C Compiler CCS PCWHD 4.093 kullandık. Kodları MPLAB

ortamında da yazıp derleyebiliriz ancak biz direkt CCS Compiler içerisinde yazıp

derlemeyi seçtik. MATLAB’a yazılacak kodlarda Microchip tarafından kullanıcılara

uygulama geliştirmeleri için verilmiş hazır mpusbapi.h kütüphanesini kullanacağız.

MATLAB’ın içerisinde bunun içindeki fonksiyonları çağırarak iletişim kuracağız. En son

ise elektrotlarla gelen sinyal USB kablosu ile bilgisayara aktarıp MATLAB’da sürekli

olarak EKG sinyalinin görüntülenmesi sağlanmıştır.

Page 20: USB EKG PROJESİ - eee.ktu.edu.tr · ile MATLAB ara yüzünde, USB iletimiyle sürekli olarak gösterilmesi amaçlanmaktadır. EKG iaretinin bir örneği ùekil 1.1’de gösterilmitir

6

1.4. Üç Elektrotlu EKG

Üç prob EKG uzun yıllardır kullanılmaktadır. Günümüzde 5 prob EKG bir norm olarak

alınsa da, 3 prob EKG hala hastanelerin acil bölümlerinde, uzaktan izleme

uygulamalarında ve medikal protokoller süresince hala kullanılmaktadır. Üçlü EKG

probları bir üçgen oluşturacak şekilde hastanın üstündeki problara takılır ve bu üçgene

önceki bölümlerde anlatıldığı gibi Einthoven Üçgeni (Şekil 1.2) adı verilmektedir.

Bipolar derivasyonda, Lead I’de pozitif elektrot sol kolda, negatif elektrot sağ kolda,

Lead II’de pozitif elektrot sol bacakta, negatif elektrot sağ kolda, Lead III’de ise pozitif

elektrot sol bacakta, negatif elektrot sol kolda yer alır. Bu üç vektör değeri “I-II+III=0”

eşitliği şeklindedir.

Einthoven Üçgeni’nde görüldüğü gibi Lead I °0 , Lead II

°60 , Lead III °120

değerlerindedir. Kalbin oluşturduğu elektriksel dipolün negatif yükten pozitif yüke doğru

hareket eden vektöre ise cardiac vektör denir. Bu vektör ise °30 dir.

Genelde kollar haricindeki elektrot referans nokta oluşturmak için sol bacağa

takılmayıp göğsün alt bölümlerine yerleştirilir. III numaralı proba paralel çizilen ok bir

vektörü gösterir. Eğer elektriksel depolarizasyon bu vektöre paralel ve aynı yönde hareket

ederse, dalga formu yukarıya doğru ve en maksimum genlikte olur.

Şekil 1.2 Einthoven Üçgeni

Page 21: USB EKG PROJESİ - eee.ktu.edu.tr · ile MATLAB ara yüzünde, USB iletimiyle sürekli olarak gösterilmesi amaçlanmaktadır. EKG iaretinin bir örneği ùekil 1.1’de gösterilmitir

7

Şekil 1.2’de gösterilen elektrotların renkleri genellikle sarı, kırmızı ve yeşildir. Sarı sol

kola, kırmızı sağ kola, yeşil ise sol bacağa takılır. Bu renkler dünya standardı değildir.

Bu yüzden benimsenmiş iki ayrı standart vardır ve bunlar Tablo 1.2’deki gibi

gösterilmiştir. Bu standartların birincisi American Heart Association (AHA) ve ikincisi ise

The International Electrotechnical Commission (IEC)’dır [4]. Biz bu projede EKG probu

olarak Drager’in 3’lü EKG probunu kullanacağız bu yüzden IEC’nin belirttiği ve

Avrupa’da kullanılan EKG standardını temel alacağız.

Tablo 1.2 EKG elektrotlarının renk standardı [4].

AHA Kuzey Amerika Konum

IEC Avrupa

Gösterim Prob Rengi Prob Rengi Gösterim

RA Beyaz Sağ Kol Kırmızı R

LA Siyah Sol Kol Sarı L

RL Yeşil Sağ Bacak Siyah N

LL Kırmızı Sol Bacak Yeşil F

V1-6 Kahverengi Göğüs Beyaz C1-6

1.5. Elektrot Elektriksel Devre Modeli

EKG elektrotunun elektriksel eşdeğer modeli Şekil 1.3’de gösterildiği gibidir. Bu

benzetmede, Cd elektrot ile elektrolit arasındaki yük birikimine neden olduğu kapasiteyi,

Rd ise bu kapasite etkisinin kaçak direncidir. Devredeki batarya, elektrotun yarı hücre

potansiyeline karşılık gelen doğru akım gerilim kaynağıdır. R1 direnci elektrolitin

direncini göstermektedir. Ag-AgCl tip elektrotlardan bahsediyorsak Cd kapasitesi oldukça

küçük alınması gerekir.

Page 22: USB EKG PROJESİ - eee.ktu.edu.tr · ile MATLAB ara yüzünde, USB iletimiyle sürekli olarak gösterilmesi amaçlanmaktadır. EKG iaretinin bir örneği ùekil 1.1’de gösterilmitir

8

Şekil 1.3 EKG elektrotu elektriksel devre modeli.

1.6. Elektrotlar

Biyopotansiyel işaretlerin algılanabilmesi maksadıyla deriye veya vücudun içine

yerleştirilen sensörlere ve ayrıca tedavi amacı ile vücuda elektriksel enerji transfer etmeyi

elverişli kılan elemanlara elektrot adı verilir.

Elektrotların kullanımında bazı etkenlere dikkat edilmesi gerekmektedir. Elektriksel

iletkenlik, fizyolojik zehirlilik ve mekanik dayanıklılık bunların başında gelen önemli

faktörlerdir. Tıbbi elektronikte en çok kullanılan elektrot metalleri; platin, altın, gümüş,

paslanmaz çelik, tungsten, tantal ve alüminyumdur. Platinin pahalı olmasına karşın, yüksek

iletkenliği, aşınmaya ve deformasyona dayanıklılığı nedenleriyle en uygun metaldir. EKG

elektrotları genellikle Ag/AgCl elektrotlar şeklinde imal edilir. Ag/AgCl’ün tercih

nedenleri başında insan vücuduna zararlı etkilerinin bulunmaması, kararlı davranması,

ölçüm sonuçlarının güvenilir olması gibi etkenler vardır [5].

1.6.1. Metal Plaka Elektrotlar

Çok sık kullanılan bir elektrot türü olup çoğunlukla EMG, EEG ve EKG işaretlerinin

görüntülenmesinde kullanılır. Deri ile temas eden metalik bir yüzey metal plaka düz veya

uygulanacak yüzeyin şeklini alacak şekilde bir silindir yüzey parçası biçimindedir.

Yüzeyleri büyük olduğundan empedansları küçüktür (2-10 KΩ). Ni-Ag alaşımından

oluşur.

Cd

100nF

R1

500Ω

Rd

10kΩ

Ve

0.2 V

Elektrot yarım

hücre potansiyeli

Jel direnci

Çift tabaka empedans

Page 23: USB EKG PROJESİ - eee.ktu.edu.tr · ile MATLAB ara yüzünde, USB iletimiyle sürekli olarak gösterilmesi amaçlanmaktadır. EKG iaretinin bir örneği ùekil 1.1’de gösterilmitir

9

1.6.2. Emici Düzenli Elektrotlar

Herhangi bir şekilde yapışkan veya bağlama bandı gerektirmeksizin bir ucu vücut ile

bağlantıyı sağlarken diğer ucunda ise vakum pompası vardır. Hacimleri biraz büyüktür,

buna karşın empedansları da büyüktür (Şekil 1.4).

Şekil 1.4 Emici düzenli elektrot

1.6.3. Gezici Tip Elektrotlar

Elektrot şapka muhafazanın içindedir. Şapkanın içinde jel vardır ve şapka hareket etse

bile metal elektroda göre hareket etmeyeceğinden dolayı aralarındaki yük dağılımı

bozulmaz ve daha kararlı işaretler elde edilir.

1.6.4. Tek Kullanımlık Elektrotlar

EKG sinyallerinin alınmasında genellikle bu elektrotlar kullanılır ve daha sonra atılırlar.

Yüzeyinde bulunan jel ile deri yüzeyine yapıştırılarak kullanılır. Şekil 1.5’de bu tip bir

elektrot gösterilmektedir.

Page 24: USB EKG PROJESİ - eee.ktu.edu.tr · ile MATLAB ara yüzünde, USB iletimiyle sürekli olarak gösterilmesi amaçlanmaktadır. EKG iaretinin bir örneği ùekil 1.1’de gösterilmitir

10

Şekil 1.5 Tek kullanımlık elektrotun ön yüzü ve arka yüzü

1.6.5. Kuru Elektrotlar

Jel ya da tutucu madde gerektirmeksizin deri üzerine direkt olarak uygulanabilen bu

elektrotların arasında kapasitif bir kuplaj oluşur. Üst deri iyice temizlenmeden deri

yüzeyine uygulandığında temas yüzeyindeki direnç büyük olur.

Bizim projede kullanacağımız elektrot tipi tek kullanımlık ve kelepçeli kuru

elektrotlardır. Çünkü bu tür elektrotlar, hem sağlıklı hem jele gereksin duyulmadan ölçüm

yapılabilen türdendir. Kuru elektrotların deri ile temas eden yüzeyleri altın kaplama

sinyalin alınması daha iyi olacaktır. Ancak kelepçe tarzı kuru elektrotların yapısı gereği

kollara ve bacaklara sabitlenerek sinyal alımı amaçlanmaktadır. Göğüsten ölçüm almak

istediğimizde ise tek kullanımlık yapışkan elektrotlar ile sinyal alınmaktadır.

Page 25: USB EKG PROJESİ - eee.ktu.edu.tr · ile MATLAB ara yüzünde, USB iletimiyle sürekli olarak gösterilmesi amaçlanmaktadır. EKG iaretinin bir örneği ùekil 1.1’de gösterilmitir

2. TEORİK ALTYAPI

Projemizin yapımı için gerekli olan teorik altyapımız aşağıdaki aşamalarda

anlatılacaktır.

2.1. AD624 Enstrümantasyon Yükselteci

İnsandan alınan EKG sinyali genellikle birkaç mV genlikli olup bu sinyal analog

haldedir. Bu sinyalin PIC tarafından işlenebilmesi için genliğinin defalarca yükseltilmesi

gerekmektedir. Bu yükseltme işlemi basit yükselteçler tarafından karşılanamamaktadır. Bu

yüzden çeşitli kademelerde olup kolayca ayarlanabilen gerilim kazançları sayesinde mili

voltlar seviyesindeki bu değer bizim devremizde yaklaşık 1 V’a kadar yükseltilmektedir.

Analog Devices Şirketi tarafından üretilen AD624, enstrümantasyon bir yükselteçtir. Bu

yükselteç düşük seviyeli transdüserler için tasarlanmış, yüksek hassasiyet ve düşük gürültü

özelliklerine sahip bir tümleşik devredir. Şekil 2.1’de içyapısı gösterilmektedir. 1, 100,

200, 500 veya 1000 kazanç sağlaması için dışarıdan herhangi bir elemana gerek duymaz,

uç bağlantıları ile bu kazançlar sağlanabilir. Biz yükselteci, kazancı 1000 olarak ayarlayıp

kullanacağız. Daha sonra LM747 ile 1-5 volt arasındaki değerlere yükselterek ve DC

kaydırma yaparak sinyalin 1-5 volt arasında bulunmasını sağlayacağız. Ek olarak, 250 ve

333 gibi kazançlar, harici bağlantılar ile %100 bir doğruluk ile kazanç programlanabilir.

Gürültü değeri 0.1 Hz ile 10 Hz arasında 2uV değerindedir. Bant genişliği 25 MHz’dir [6].

Şekil 2.1 AD624’ün içyapısı [6].

Page 26: USB EKG PROJESİ - eee.ktu.edu.tr · ile MATLAB ara yüzünde, USB iletimiyle sürekli olarak gösterilmesi amaçlanmaktadır. EKG iaretinin bir örneği ùekil 1.1’de gösterilmitir

12

AD624’ün içyapısında görüleceği gibi bir fark yükselteci ve bu fark yükseltecinin

çıkışında ise bir ortak yükselteç devresi görülmektedir. Enstrümantasyon yükseltici her iki

uçta da ortak olan sinyalleri (elektriksel gürültü gibi) yükseltmemekte fakat her iki uçta

bulunan diferansiyel gerilimi yükseltmektedir. Giriş gürültüsü 1 KHz’de 4 nV/ Hz ’den

daha azdır.

AD624’ün en büyük özelliklerinden birisi ortak modu bastırma oranı (CMRR-common

mode rejection ratio) diye bilinen ortak sinyalleri itme özellikleridir. Vücuttan gelen EKG

sinyali ile entegrenin toprağı aynı yerde topraklanmıştır.

CMRR=Acm

Ad (2.1)

Eşitlik 2.1’de Ad fark kazancı, Acm ise ortak mod kazancıdır. CMRR yüksek oldukça

yükseltecin performansı da o kadar artmaktadır. Teoride ideal yükselteçlerde CMRR oranı

sonsuz alınmaktadır. AD624 için CMRR=130 dB olarak verilmiştir. Biz fark kazancını

1000 olarak seçmiştik bu durumda, ortak mod kazancı çok düşük bir değer alır.

Enstrümantasyon yükseltici her iki uca da ortak olan sinyalleri yükseltmemekte, tam

tersi bu sinyalleri 1010 oranında azaltmaktadır. Böylece elektriksel gürültü sinyali

yükselteç tarafından yükseltilmemiş olur.

8 bitlik kullandığımız ADC'nin hassasiyeti 5/256 volt = 19.53125 mu’dur. Örnekleme

frekansı ise 2280 Hz dir. Bu da EKG sinyali için yeterli seviyededir. Şekil 2.2’de

entegrenin bacak bağlantıları gözükmektedir.

Şekil 2.2 AD624 bacak bağlantıları [6].

Page 27: USB EKG PROJESİ - eee.ktu.edu.tr · ile MATLAB ara yüzünde, USB iletimiyle sürekli olarak gösterilmesi amaçlanmaktadır. EKG iaretinin bir örneği ùekil 1.1’de gösterilmitir

13

2.2. Mikro Denetleyicinin Tanıtımı ve Bilgiler

Microchip firmasının ürettiği PIC; Periheral Interface Controller (çevresel ünite

denetleme arabirimi), giriş-çıkış işlemlerini çok hızlı gerçekleştirebilecek şekilde

tasarlanmış bir mikro denetleyicidir. Bizim bu projede kullandığımız PIC18F2550 tümleşik

devresi firmanın ürettiği diğer mikro denetleyicilerle özellikleri bakımından benzerlik

gösterse de bazı yönleri farklıdır. Şekil 2.3’de bacak bağlantıları gösterilmektedir.

PIC18F2550’nin işlemcisi yüksek performanslı RISC işlemcidir. Kaynak kodları PIC16

ve PIC17 komut takımıyla uyumludur. 32 kilobayt yazılıp okunabilen bellek, 256 bayt

EEPROM bellek ve 2048 bayt SRAM bellek bulunmaktadır. 40 MHz’e kadar harici saat

kaynağında çalışabilir ve 25 mA’e kadar çıkış akımı sağlayabilir. İki adet 16-bit

time/counter (TMR1, TMR3), 3 adet harici interrupt pini, 16 bitlik adres yolu ve 8 bitlik

veri yoluna sahiptir. PIC mikro denetleyicisinin en önemli özelliği uyku modudur. Bu mod

sayesinde işlem yapılmadığı zaman PIC uyku moduna geçer ve çok düşük miktarda akım

çeker. Kullanıcılar interrupt yaparak ile PIC’i uyku modundan çıkarabilir. PIC kodları ve

çalışma algoritması Ek-1’de verilmiştir.

Şekil 2.3 PIC18F2550 bacak bağlantıları [7].

Page 28: USB EKG PROJESİ - eee.ktu.edu.tr · ile MATLAB ara yüzünde, USB iletimiyle sürekli olarak gösterilmesi amaçlanmaktadır. EKG iaretinin bir örneği ùekil 1.1’de gösterilmitir

3. TASARIM

İnsan vücudundan EKG sinyalini alınıp örneklendikten sonra USB aracılığıyla

bilgisayar ekranında görüntüleyene kadar bazı evrelerden geçirilmesi gerekmektedir. Bu

evreler Şekil 3.1’de gösterilmiştir. Kalbin yaydığı küçük çaplı biyopotansiyelleri

elektrotlar vasıtasıyla alarak enstrümantasyon yükselteçleri ile güçlendirildikten sonra

işlenebilir sinyallere dönüştürülecek. Daha sonrasında da sinyaller PIC mikro denetleyici

sayesinde USB aracılığıyla MATLAB programının grafik kullanıcı ara yüzünde (GUI)

gösterini gerçekleştirilecektir.

Şekil 3.1 Yapım aşamaları

PIC18F2550

EKG

ÖNYÜKSELTEÇ

EKG SİNYALİ

KULLANICI

MATLAB

ARAYÜZÜ(GUI)

USB İLETİŞİMİ

Page 29: USB EKG PROJESİ - eee.ktu.edu.tr · ile MATLAB ara yüzünde, USB iletimiyle sürekli olarak gösterilmesi amaçlanmaktadır. EKG iaretinin bir örneği ùekil 1.1’de gösterilmitir

4. DENEYSEL ÇALIŞMALAR

Vücuttan alınan sinyalin işlenip bilgisayar tarafından kullanıcıya aktarılması işlemi

tasarlanan bir devre tarafından yapılmaktadır. Bu devreye elektrotlar ile alınan sinyal

aktarılıp, devre üzerine monte edilen enstrümantasyon yükselteç ile güçlendirildikten sonra

işlenebilir sinyallere dönüştürüldü. Daha sonrasında ise sinyaller PIC mikro denetleyici

sayesinde USB aracılığıyla MATLAB programının grafik kullanıcı ara yüzünde (GUI)

gösterini gerçekleştirdik. Bu devre tasarımını önce breadboard üzerinde denedik ancak

topraklama iyi olmadığı ve parazit karıştığı için EKG sinyalini istediğimiz şekilde

göremedik. Proteus’un alt programı olan ISIS’ta devre tasarımını

gerçekleştirdik (Şekil 4.1). Daha sonra yine Proteus’un alt programı olan ARES programı

ile baskı devre tasarımını gerçekleştirdik.

Şekil 4.1 Devre Şeması

Çizdiğiz ARES (Şekil 4.2) baskı devresini pnp kağıdına çıktı aldık. Daha sonra

11x14.5 cm olarak ön yüzü metal, arka yüzü plastik plaketin üzerine ütüleme pnp

kağıdının boyasını plakete kopyaladık (Şekil 4.3). Ardından metal plaketimizi

IN+1

IN-2

RG23

IPNULL14

IPNULL25

REF6

VS-

7

VS+

8

RG116

OPNULL214

OPNULL115

G=10013

G=20012

G=50011

SENSE10

OUTPUT9

AD624

R2

56k

R1

56k

R11

15kRA0/AN0

2

RA1/AN13

RA2/AN2/VREF-/CVREF4

RA3/AN3/VREF+5

RA4/T0CKI/C1OUT/RCV6

RA5/AN4/SS/LVDIN/C2OUT7

RA6/OSC2/CLKO10

OSC1/CLKI9

RB0/AN12/INT0/FLT0/SDI/SDA21

RB1/AN10/INT1/SCK/SCL22

RB2/AN8/INT2/VMO23

RB3/AN9/CCP2/VPO24

RB4/AN11/KBI0/CSSPP25

RB5/KBI1/PGM26

RB6/KBI2/PGC27

RB7/KBI3/PGD28

RC0/T1OSO/T1CKI11

RC1/T1OSI/CCP2/UOE12

RC2/CCP113

VUSB14

RC4/D-/VM15

RC5/D+/VP16

RC6/TX/CK17

RC7/RX/DT/SDO18

RE3/MCLR/VPP1

R7

180k

R10

180k

R8

180k

R9

180k

-9V

+9

V

2

1

13

4

12

3

14

747:A

UA747C

6

7

94

10

5 8

747:B

UA747C

C11100n

C9

100n

C10

100n

VCC

D+

D-

GND

JUSB

AU-Y1005-R

RV2

10K

R3

10k

R4

10k

RV3100K

3

2

6

74 1 5

741

UA741

C2100n

C5100n

Sağ Kol

Sol Kol

Sol Bacak

R5

56k

Page 30: USB EKG PROJESİ - eee.ktu.edu.tr · ile MATLAB ara yüzünde, USB iletimiyle sürekli olarak gösterilmesi amaçlanmaktadır. EKG iaretinin bir örneği ùekil 1.1’de gösterilmitir

16

peridrol ve tuz ruhu karışımına atarak boyalı olan yolları ve toprak hattını metal halde

kalıp, diğer yerlerdeki metalin erimesini sağladık.

Şekil 4.2 Devrenin Ares ortamında tasarlanmış hali

Daha sonra elemanların takılacak yerlerini matkap ile delip elemanları yerleştirerek

metal plakete lehimledik. Devreyi şebekeye bağlamadan iki tane 9V pil ile besledik. Bu

sayede şebeke gürültüsünün devreye olabildiğince az karışmasını sağladık. Ayrıca devreye

Şekil 4.2’de görüldüğü gibi toprak çevrimi yaptık. Bu sayede dış kaynaklardan gelen

girişimi azaltmayı başardık.

Şekil 4.1.’deki bu devre dört ana bölmeden oluşmaktadır. Devrenin girişi olan

enstrümantasyon yükselteç (AD624), onun arkasında gelen çift katla AGS daha sonra

ardarda gelen üç tane UA747C yükselteç ve en son kısım ise PIC18F2550

mikrodenetleyicisinden oluşmaktadır.

Devrenin girişinde bulunan R1 direncini sol koldan gelen elektroda, R2 direncini sağ

koldan gelen elektroda, vücüttan gelen 3. elektrot ise toprağa gitmektedir. Daha sonra

gelen enstrümantasyon yükselteç (AD624) ile parazitli gelen küçük genlikli sinyaller

entegrenin kazanç ayarı sayesinde 3-11-13 ve 12-16 pinlerini kendi aralarında kısa devre

Page 31: USB EKG PROJESİ - eee.ktu.edu.tr · ile MATLAB ara yüzünde, USB iletimiyle sürekli olarak gösterilmesi amaçlanmaktadır. EKG iaretinin bir örneği ùekil 1.1’de gösterilmitir

17

yaparak 1000 değerine ayarlayıp yükseltttik. AD624’ün 8. pini +9V, 7. pini ise -9V’luk

besleme ile çalışmaktadır.

Şekil 4.3 Ares çiziminin metal plakete basılan devre şeması

4.1. Alçak Geçiren Süzgeç

Alçak geçiren süzgeçler ise devreye şehir şebekesinden veya dışarıdan girebilecek

parazitlerin önlenmesi amaçlanmaktadır. Girişten süzgecin kesim frekansını geçen bir

frekans geldiğinde birinci süzgeç kazancı 3dB düşürken, ikinci süzgeç ise tekrar 3dB daha

düşürüyor ve toplamda kazançta 6 dB’lik bir zayıflama söz konusu oluyor. Ancak

süzgeçlerin girişinde 50 Hz’i geçen bir frekans değerine ölçümlerimiz sırasında

rastlamadık.

4.2. Katlı Yükselteç Bölümü

EKG sinyali negatif ve pozitif genliklere sahiptir. AD624 çıkışından 1V’a yükseltilmiş

olan sinyal PIC mikrodenetleyicisinin ADC’si için yeterli değildir. Bu yüzden işaretin

genliğinin 0-5 arasında yükseltilmesi gerekmektedir. Şekil 4.4’te devreinin bir parçası

olarak verilmiş olan yükselteçlerden ilk UA747C’nin ‘+’ kısım EKG işareti verilirke, ‘–‘

ucu ise potansiyometre yardımıyla sinyal seviyesi yukarıya doğru çıkarılması

Page 32: USB EKG PROJESİ - eee.ktu.edu.tr · ile MATLAB ara yüzünde, USB iletimiyle sürekli olarak gösterilmesi amaçlanmaktadır. EKG iaretinin bir örneği ùekil 1.1’de gösterilmitir

18

amaçlanmaktadır. İkinci yükselteç ise işaretin genliğini 0-5V arasında yükseltmeyi

sağlamaktadır. Üçüncü yükselteç ise izolasyon için tampon görevi görmektedir.

Şekil 4.4 UA747C çok katlı yükselteç devresi

4.3. Veri İşleme Bölümü

Bu kısımda gelen analog sinyalin, bilgisayarın anlayabilmesi için sayısal hale

çevrilmesi, USB konfigürasyonu kodları bulunmaktadır. Bu işlemler için Microchip

firmasının PIC18F2550 modelini kullandık. Mikrodenetleyicimiz 20 MHz’lik kristal ile

çalışmaktadır. PIC mikrodenetleyicisinin özellikleri, bacak bağlantı yapısı ve gerekli

kodları dokuzuncu bölümde ayrıntılı olarak anlatılacaktır. Bu devrenin çıkışında ise

bilgisayar ile iletişimi sağlayacak olan erkek USB kısmı bulunmaktadır. Bu kısım PIC’in

15. ve 16. bacaklarına Şekil 4.5’teki gibi bağlanmıştır.

R11

15k

R7

180k

R10

180k

R8

180k

R9

180k

-9V

+9

V

2

1

13

4

12

3

14

747:A

UA747C

6

7

94

10

5 8

747:B

UA747C

RV2

10K

RV3100K

3

2

6

74 1 5

741

UA741

PIC Girişi

AGS Çkışı

Page 33: USB EKG PROJESİ - eee.ktu.edu.tr · ile MATLAB ara yüzünde, USB iletimiyle sürekli olarak gösterilmesi amaçlanmaktadır. EKG iaretinin bir örneği ùekil 1.1’de gösterilmitir

19

Şekil 4.5 Veri işleme bölümü

4.4. USB Haberleşmesi

Günümüzde elektronik ürünlerin iletişimi ve veri aktarımı sırasında sık karşımıza USB

(Universal Serial Bus) karşılığı olarak Evrensel Seri Yolu bağlantısı çıkmaktadır. Piyasada

üç türde USB bulunmaktadır. USB 1.0 olarak bilinen ilk USB çeşidi 12 Mbit/saniye’lik bir

hızla veri aktarımı yapmaktadır. USB 2.0 protokolü çok uzun yıllar boyunca kullanılmıştır

ve hala çoğu elektronik alette bu USB çeşidi kullanılmaktadır. Bu USB’nin veri aktarım

hızı 480 Mbit/saniye’dir. Günümüzde ise USB 3.0 sürümü yavaş yavaş piyasaya

girmektedir. Bu son sürümün veri aktarım hızı ise, 4800 Mbit/saniye’dir.

Çalışma aralığı 4.4 ile 5.25 Volt arasında olup 100 mA'lik bir akım gereksinimi

duymaktadır. Tabi ki bu değerler kullanılan elektronik ürünün yapısına göre değişebilir

USB’lerde kullanılan kablolarının iç direnci ve boyutları çok önemlidir. Uzun ve iç direnci

yüksek kablolar veri kayıplarına ve iletişimde kopukluklara yol açabilir.

4.5. USB Veri Düzeni

USB veri paketlerinin ilk En az Anlamlı Bit (LSB) gönderilir. Token, Veri, Handshake

ve Frame Başlangıç olmak üzere dört ana USB paket tipi vardır. Her paket farklı alan

RA0/AN02

RA1/AN13

RA2/AN2/VREF-/CVREF4

RA3/AN3/VREF+5

RA4/T0CKI/C1OUT/RCV6

RA5/AN4/SS/LVDIN/C2OUT7

RA6/OSC2/CLKO10

OSC1/CLKI9

RB0/AN12/INT0/FLT0/SDI/SDA21

RB1/AN10/INT1/SCK/SCL22

RB2/AN8/INT2/VMO23

RB3/AN9/CCP2/VPO24

RB4/AN11/KBI0/CSSPP25

RB5/KBI1/PGM26

RB6/KBI2/PGC27

RB7/KBI3/PGD28

RC0/T1OSO/T1CKI11

RC1/T1OSI/CCP2/UOE12

RC2/CCP113

VUSB14

RC4/D-/VM15

RC5/D+/VP16

RC6/TX/CK17

RC7/RX/DT/SDO18

RE3/MCLR/VPP1

C11100n

C9

100n

C10

100n

VCC

D+

D-

GND

JUSB

AU-Y1005-R

Yükselteç GirişiADC GİRİŞi

Page 34: USB EKG PROJESİ - eee.ktu.edu.tr · ile MATLAB ara yüzünde, USB iletimiyle sürekli olarak gösterilmesi amaçlanmaktadır. EKG iaretinin bir örneği ùekil 1.1’de gösterilmitir

20

türlerinden inşa edilmiştir. Bunlar SYNC, Paket Tanımlayıcı Alanı(PID), Adres Alanı, Uç

Nokta (Endpoint), CRC, EOP ve Veri adlı paketlerdir. Bunlar daha sonra birleştirilip USB

hattına gönderilirler. Bu alanlar USB paketinin temel yapı taşlarıdır.

4.5.1. USB Paket Alanları

4.5.1.1. SYNC Alanı

Her paket bir SYNC alanı ile başlar. Bu temel de alıcı ve vericiyi senkronize etmek için

kullanılır.

4.5.1.2. Paket Tanımlayıcı Alanı

SYNC alınan paket, Paket Tanımlayıcı Alanına gelir. Bu alan dört tanımlayıcı bitten ve

sonra bu bitlerin birer tamamlayıcıları olan diğer dört bitten meydana gelir.

4.5.1.3. Adres Alanı

Bu alan 7 bit uzunluğundadır. Bir fonksiyonu adreslemek için uç nokta ile birlikte

kullanılırlar. Adres 0 özel bir durumdur ve yeniden başlamasından sonra ve açılıştan sonra

ulaşım için ayrılmıştır. Bu paket tipi Şekil 4.6’da gösterilmiştir.

ADDR0 ADDR1 ADDR2 ADDR3 ADDR4 ADDR5 ADDR6

Şekil 4.6 Adres alanının 7 bit uzunluğunda olan paketi

4.5.1.4. Uç Nokta Alanı

Uç nokta alanı 4 bit uzunluğundadır (Şekil 4.7). Uç noktalar genellikle giren ve çıkan

veriyi ayırmak için kullanılırlar. Uç nokta-0 kontrol uç noktası olarak tanımlanan özel bir

uç noktadır ve her cihazda bu vardır.

Page 35: USB EKG PROJESİ - eee.ktu.edu.tr · ile MATLAB ara yüzünde, USB iletimiyle sürekli olarak gösterilmesi amaçlanmaktadır. EKG iaretinin bir örneği ùekil 1.1’de gösterilmitir

21

EP0 EP1 EP2 EP3

Şekil 4.7 Uç nokta alanının 4 bit uzunluğundaki paketi

4.5.1.5. CRC Alanı

CRC alanı hata tespiti için kullanılır. Verilerimizin doğru olup olmadığının tespitinde

kullanılır. Veri transferi esnasında hata kontrolünde kullanılır. İki adet CRC alanı vardır.

Bunlardan bir tanesi 5 bit uzunluğunda diğer ise 16 bit uzunluğundadır.

4.5.1.6. EOP Alanı

Her paket bir EOP ile sonlandırılır. Bu tek sonlu sıfırdan (SE0) oluşur.

4.5.1.7. Veri Alanı

Veri alanının belirli bir uzunluğu yoktur. 0 ile 8192 bit uzunluğunda olabilir. Bu projede

biz bilgisayara, her seferinde 64 byte veri gönderiyoruz.

Bu paketlerin birleşimi ile toplu halde gönderilecek olan aşağıdaki USB paketi

oluşturulur (Tablo 4.1).

Tablo 4.1. Toplu halde gönderilen USB paketi

ALAN SYNC PID VERİ CRC16 EOP

#BIT 8/32 8 0-8192 16 3

4.6. USB Sürücüsü

USB sürücünün kur bilgileri projemiz için kullanılacak USB sürücüsünün içeriğidir.

Cihaz takıldıktan sonra aygıt yöneticisine girip cihazımıza Mchpusb.inf adlı dosya notepad

ile açılır. Bu dosyanın içeriği Ek-2 verilmiştir. Bu kur bilgileri Microchip firması

Page 36: USB EKG PROJESİ - eee.ktu.edu.tr · ile MATLAB ara yüzünde, USB iletimiyle sürekli olarak gösterilmesi amaçlanmaktadır. EKG iaretinin bir örneği ùekil 1.1’de gösterilmitir

22

tarafından uygulama geliştirme için kullanıcılarına USB haberleşmesi için sunduğu

kodlardır. Bu kodları kendi projemiz için bazı değişiklikler yaparak düzenledik.

Class=K.T.Ü. USB UYGULAMALARI

Bu değişiklik aygıt yöneticisine girdiğimiz zaman ana listede çıkan dizinin adıdır.

Bunun altında KTU USB EKG projemiz çıkacaktır. Bu aşağıda tanımlanacaktır.

USB aygıtı geliştirilirken, bilgisayar programı MATLAB’da ve PIC’in içine yazılan

VID ve PID numaraları eşleşmelidir. VID ve PID numaralını kendi seçimimize göre

değiştirdik. Kullanacağımız PID ve VID numaralını PIC programını yazarken

USB_konfigurasyon.h dosyası içerisine yazdık.

[DeviceList]

%DESCRIPTION%=DriverInstall, USB\VID_04D8&PID_000C,

Aşağıdaki alanları değiştirerek kendi uygulamamıza göre uyarladık.

[Strings]

DEVICEMANAGERCATEGORY="K.T.Ü. USB UYGULAMALARI"

MFGFILENAME="mchpusb"

MFGNAME="Ömer YAZICI & Serhat TOSUN"

INSTDISK="---"

DESCRIPTION="K.T.Ü. USB EKG CİHAZI”

4.7. USB_konfigurasyon.h Dosyası

Bu dosyayı PIC programını yazarken CCS derleyicisin içinde ana programla beraber

derliyoruz. Bu başlık dosyasında aygıtımızı kişiselleştirmek için gerekli ayarları yapıyoruz

ve USB aygıtının kendini bilgisayara tanıtmasını sağlıyoruz. Bu bilgiler cihaz bilgisayar

takıldığı anda çekilen ilk bilgilerdir. Bilgisayar bu dosya içerisindeki bilgilere bakarak

cihazın tipini, yaptığı işi ve nasıl haberleşme kurduğu hakkında bilgiler edinir. Daha sonra

buradaki bilgiler ve USB sürücüsündeki bilgilerle beraber aygıt yöneticisinden

görülebilirler. Burada cihazımızın VID ve PID değerlerini belirtiyoruz. USB sürücüsü

içersindeki [DeviceList] bölümünde bizim belirttiğimiz VID ve PID numaraları

bulunmalıdır. Aksi takdirde o USB sürücüsü bizim cihazımızla eşleşmeyecektir ve

problem olacaktır. Aşağıda USB_konfigurasyon.h dosyası ve detayları.bulunmaktadır. Bu

Page 37: USB EKG PROJESİ - eee.ktu.edu.tr · ile MATLAB ara yüzünde, USB iletimiyle sürekli olarak gösterilmesi amaçlanmaktadır. EKG iaretinin bir örneği ùekil 1.1’de gösterilmitir

23

kodlar ana program kodlarıyla beraber derlenen kodlardır. Bu kodlar Ek-2’de

açıklamalarıyla birlikte verilmiştir. Aşağıda bu proje için önemli olan satırlar belirtilmiştir.

char const USB_CONFIG_DESC[] =

//endpoint descriptor

0x02, //desteklenen transfer tipi (0 kontrol, 1 iso, 2 bulk, 3 interrupt) biz

burada 2 olanı yani BULK tipi transferi kullanıyoruz.

//device descriptor

char const USB_DEVICE_DESC[] =

0xD8,0x04, //vendor id (Microchip ürünleri 0x04D8 VID numarasına sahiptir.

0x0C,0x00, //product id (Ürün Kimliği Entegreden entegreye göre değişebilir.)

Bilgisayara takılan her cihazın VID ve PID numaraları özel olmalıdır. Aynı VID ve PID

numaraları olan 2 cihaz birbirine karışır. PIC18F2550 entegremiz için 0x000C PID ürün

kimliğini tercih ettik. USB sürücüsü dosyasının içerisinde devicelist başlığı altında bu VID

ve PID numaraları olmalı ki cihazımız tanınsın.

char const USB_STRING_DESC[]=

USB_DESC_STRING_TYPE, //Burada aygıtı projemize göre kişiselleştiriyoruz.

'K',0,

'T',0,

'U',0,

30,

USB_DESC_STRING_TYPE,

'K',0,

'.',0,

'T',0,

'.',0,

'Ü',0,

'.',0,

' ',0,

'U',0,

'S',0,

'B',0,

' ',0,

'E',0,

'K',0,

'G',0,

' ',;

Yukarıda en sonda yazılan “KTU” ve “KTU USB EKG” dizisi cihaz bir bilgisayara ilk

takıldığı zaman çıkan dizilerdir ve sağ alt köşede yeni donanım bulundu yazısı ile belirir ve

Page 38: USB EKG PROJESİ - eee.ktu.edu.tr · ile MATLAB ara yüzünde, USB iletimiyle sürekli olarak gösterilmesi amaçlanmaktadır. EKG iaretinin bir örneği ùekil 1.1’de gösterilmitir

24

bilgisayar daha sonra bu cihaz için sürücü aramaya başlar. Bu diziler bir nevi cihazın

kendini bilgisayara tanıtması gibidir. Daha sonraki takılmalarda eğer USB sürücü

yüklenmişse cihaz aygıt yöneticisinde bu isimlerle belirir. Daha detaylı bilgiler için USB.h

dosyası da incelenmelidir.

4.8. Bilgisayara Veri Aktarımı

Bilgisayar tarafında usb haberleşmesi yapmak için Microchip firması tarafından

yazılmış olan mpusbapi.h başlık dosyası yazılacak API’nin yada GUI’nin olduğu klasöre

kopyalanmalıdır. Bu dosya C++ derleyicileri tarafından derlenir ve ilgili entegre ile

haberleşme yapmak için yazılmış kodları çalıştırır. Buradaki kodları uygun şekilde

çağırarak entegreden veri alabiliriz ve ona veri gönderebiliriz ve bu kütüphane dosyasını

alıp C++ programı yazılabilir. MATLAB’da C++ derleyicileri kullanabildiği için biz

MATLAB’da grafik kullanıcı arayüzü (GUI) yapmayı tercih ettik. MATLAB’da ilk önce

bu kütüphane dosyasını loadlibrary komutunu kullanarak yüklememiz gerekiyor. Ancak

bu işlemi yaptıktan sonra içerisindeki kodları C++ derleyicisi yardımı ile MATLAB

içerisinde kullanabiliriz. Bu dosyanın içeriği aşağıdaki gibidir.

#define MAX_NUM_MPUSB_DEV 127 // Maksimum USB cihazlarının sayısı

// MPUSBGetDeviceCount : Girilen VID & PID numaraları ile eşleşen cihazların sayısını

verir. Bizim projede bu sayı bir olacaktır.

DWORD (*MPUSBGetDeviceCount)(PCHAR pVID_PID);

//MPUSBRead :

//handle - Okunacak uç nokta USB hattını tanımlar.

//pData - USB hattından veri alacak tamponu tanımlar.

//dwLen - USB hattından okunacak byte sayısını tanımlar. Biz her ölçümde 64 byte

okuyoruz.

//pLength – Okunacak byte sayısını gösterir (64 byte).

//dwMilliseconds - zaman aşımı süresini milisaniye cinsinden ifade eder. Eğer süre aşılır

ise fonksiyon işlem bitmese bile geri döner. Eğer bu değer sıfır ise fonksiyon USB hattını

test eder ve hemen geri döner. Eğer sonsuz ise hiçbir zaman zaman aşımı olmaz.

DWORD (*MPUSBRead)(HANDLE handle,

Page 39: USB EKG PROJESİ - eee.ktu.edu.tr · ile MATLAB ara yüzünde, USB iletimiyle sürekli olarak gösterilmesi amaçlanmaktadır. EKG iaretinin bir örneği ùekil 1.1’de gösterilmitir

25

PVOID pData,

DWORD dwLen,

PDWORD pLength,

DWORD dwMilliseconds);

Biz MATLAB’da programımızda okuma yapıyoruz ve entegreye herhangi bir veri

göndermiyoruz. Yani veri akışı tek yönlü ve entegreden bilgisayara doğru oluyor.

MPUSBRead komutu çalışınca her seferinde 64 byte örnek MATLAB tarafından alınıyor.

Örnekleme periyodu (1/2280)= 0.4386 ms olduğuna göre her ölçümde 64x0.4386=28.0702

ms’lik örnek alıyoruz demektir.

4.9. MATLAB’da Verilerin Gösterilmesi

Biz MATLAB’daki programımızda okuma yapıyoruz. Entegreye herhangi bir veri

göndermiyoruz. Yani veri akışı tek yönlü ve entegreden bilgisayara doğru oluyor.

MPUSBRead komutu çalışınca her seferinde 64 byte örnek MATLAB tarafından alınıyor.

Örnekleme periyodu 0.4386 ms olduğuna göre her ölçümde 28.0702 ms’lik örnek alıyoruz

demektir.

MATLAB kodları çalıştırıldığı zaman, bizi GUI penceresi karşılamaktadır. Bu pencere

Grafiksel Kullanıcı Arayüzü (GUI) diye bilinmektedir. Arayüze çeşitli butonlar, grafik

bölmeleri, kaydırıcılar, seçim menüleri eklenerek MATLAB’ı kullanımı daha kolay ve

görsel yönden daha zengin olan bir hale getiriyoruz.

GUI’den ölçüm uzunluklarını seçerek “ÖLÇÜM AL” tuşuna basıp ölçümleri alıyoruz.

Her ölçüm 64 byte’lık paketlerin peşpeşe alınmasıyla elde edilir. Bu paketler peşpeşe

eklenerek EKG sinyalini oluşturur. Daha sonra bu sinyal çizdirilir ve ardından genlik

spektrumu çıkartılır. Kullanıcı arayüzünde simülasyon paneli de bulunmaktadır. Burada

sinyale 50 Hz şebeke gürültüsü ve gauss gürültüsünü ayrı ayrı ekleyebilriz. Bu sayede kötü

ve zor şartlar altında yapılan bir ölçümü taklit edebiliriz. Filtrele tuşu ile 45 Hz üstündeki

frekansları sinyalden filtreleriz. Bu sayede eklediğimiz şebeke gürültüsü ve gauss

gürültüsünün bir bölümü filtrelenmiş olur.

Page 40: USB EKG PROJESİ - eee.ktu.edu.tr · ile MATLAB ara yüzünde, USB iletimiyle sürekli olarak gösterilmesi amaçlanmaktadır. EKG iaretinin bir örneği ùekil 1.1’de gösterilmitir

26

4.10. MATLAB Filtreleri

MATLAB programının içerisinde yazdığımız grafik kullanıcı ara yüzünde filtrele

butonu oluşturduk. Butona basıldığı zaman EKG sinyaline iki adet filtreleme

yapılmaktadır. Birincisi 71.5 Hz kesim frekanslı alçak geçiren filtredir. İkincisi sadece 50

Hz’i süzen çentik filtredir. Sinyalin DC bileşeni ise kendisinin ortalaması alınıp

çıkartılarak filtrelenmeye çalışılmıştır. MATLAB’da fdatool ara yüzü ile tasarladığımız

filtrelerin kat sayılarını “.mat” uzantılı olarak kaydettik. Program her açıldığı zaman bu

katsayılar import komutu ile programın bulunduğu konumdan çekilirler. Filtreleme komutu

denendiği zaman şebekeden kaynaklanan 50 Hz frekansındaki girişim başarılı bir şekilde

süzüldüğü görülmüştür. Filtreleme yaparken MATLAB’da filtfilt komutunu kullandık. Bu

sayede sinyal filtrelendikten sonra yeniden çizdirildiği zaman x ekseninde kaymamaktadır.

4.11.Projenin Bitmiş Hali

Vücuttan alınan biyopotansiyel sinyalin işlenebilmesi için öncelikli olarak gürültüden

arındırılıp yükseltilmesi gerekmektedir. Bu işlevi görece olan devremizin bilgisayar

ortamında çizildikten sonra metal plakete baskısının yapılış kısmı 8. bölümde detaylı bir

şekilde anlatılmıştır. Elemanları lehimledikten sonra devrenin çalışıp çalışmadığını kontrol

etmek için osiloskopta bazı ölçümler gerçekleştirdik. Bunun için PIC devresine gerek

yoktur çünkü sinyali analog olarak alıp yükselttikten sonra yine analog olarak osiloskopta

gözlemledik (Şekil 4.8).

Şekil 4.8 EKG sinyalinin yükseltilmiş halinin osiloskopta gözlemi

Page 41: USB EKG PROJESİ - eee.ktu.edu.tr · ile MATLAB ara yüzünde, USB iletimiyle sürekli olarak gösterilmesi amaçlanmaktadır. EKG iaretinin bir örneği ùekil 1.1’de gösterilmitir

27

Osiloskopta EKG sinyalini başarılı bir şekilde gözlemledikten sonra sistemin PIC

devresini dahil ederek kutulama ve dizaynını gerçekleştirdik. Bunun için 140x150x86 mm

ebatlarında olan bilgisayar güç kaynağını kullandık. Devre giriş çıkış yapan kablolar, erkek

USB konnektör ve buton için gerekli boyutlarda yerler kestikten sonra, devre elemanları

tamamlanmış olan metal plaketimizi kutunun içine vidalardık. Devrenin son hali Şekil 4.9

ve Şekil 4.10’daki gibidir. Şekil 4.11’de ise MATLAB arayüzü ile götüntülediğimiz 70

BPM’lik EKG sinyali görüntülenmektedir.

Şekil 4.9 Kutunun içerisi

Page 42: USB EKG PROJESİ - eee.ktu.edu.tr · ile MATLAB ara yüzünde, USB iletimiyle sürekli olarak gösterilmesi amaçlanmaktadır. EKG iaretinin bir örneği ùekil 1.1’de gösterilmitir

28

Şekil 4.10 Projenin tamamlanmış hali

Şekil 4.11 MATLAB’da yazılan grafik kullanıcı arayüzünün bir fotoğrafı

Page 43: USB EKG PROJESİ - eee.ktu.edu.tr · ile MATLAB ara yüzünde, USB iletimiyle sürekli olarak gösterilmesi amaçlanmaktadır. EKG iaretinin bir örneği ùekil 1.1’de gösterilmitir

5. SONUÇLAR

Sonuç olarak projemiz başarılı bir şekilde çalışmıştır ve istenilen performansı

sağlamaktadır. Bu proje daha da küçültülebilir ve bilgisayar yazılımı genişletilerek farklı

özellikler eklenebilir. Devrede kullandığımız alçak geçiren filtre katı kaldırılıp aynısı

dijital filtre olarak MATLAB’ın içine eklenebilir. Ayrıca ön yükselteç devresinde

kullanılan AD624 entegresinin kazancı pin kontrollü değil de direnç kontrollü

konfigürasyon ile seçilir ise kazanç 1000’den fazla olabilir ve bu da ikinci yükselteç katına

olan ihtiyacı kaldırır. PIC18F2550 mikrodenetleyicisinin diğer analog girişleri kullanılarak

başka biyolojik sinyallerin bilgisayara gönderimi mümkündür. Gerekli olan sadece bu

bacakların önlerine ön yükselteç katlarını koymak ve gerekli ölçümleri bu bacaklara

göndermektir. Bu proje şimdilik sadece MATLAB programı yüklenmiş bir bilgisayarda

çalışacaktır. Ancak MATLAB arayüzü başka bir dilde yazılır ise (C++ veya C#) devre

herhangi bir bilgisayarda da çalışabilir. Belirtilmesi gereken başka bir nokta ise EKG ön

yükselteç devresinin elektrot offset voltajını bastıramamasıdır. Bu nedenle EKG ana hattı

diye tabir edilen düz çizgi bir zaman sonra kayma yapmaktadır. Bu nedenle ön yükselteç

doyuma gitmektedir. ve sinyal görülmemektedir. Bunu engellemek için sağ bacak sürücülü

bir yükselteç devresi tasarımı yapılmalıdır. Ayrıca diğer kaynaklardan gelen 50 Hz şebeke

grişimini azaltmak için EKG elektrotlarının bağlantı yerleri daha pürüzsüz ve dış ortamdan

yalıtılmış bir şekilde yapılabilir. Bunlara ek olarak devre elemanları SMD tipi seçilebilir ve

bu sayede devrenin fiziksel boyutları küçülerek hem daha taşınabilir olur hem de gürültü

ve girişimden daha az etkilenir.

Page 44: USB EKG PROJESİ - eee.ktu.edu.tr · ile MATLAB ara yüzünde, USB iletimiyle sürekli olarak gösterilmesi amaçlanmaktadır. EKG iaretinin bir örneği ùekil 1.1’de gösterilmitir

6. KAYNAKLAR

[1]. E. Yazgan, M. Korürek, Tıp Elektroniği, İTÜ Rektörlüğü Yayını, İstanbul, 1995.

[2]. J. J. Carr, J. M. Brown, Introduction to Biomedical Equipment Technology, 3rd ed.,

R. R. Donnelley&Sons Company, New Jersey, U. S., 1998

[3]. (2012) EKG tarihi hakkında bilgi. [Online]. http://en.ecgpedia.org/wiki/History

[4]. “Recording standart 12-lead ECG”, British Cardiovascular Society, 2010

[5]. Biyomedikal Cihaz Teknolojileri, Elektrotlar, T.C. Milli Eğitim Bakanlığı, MEGEP,

Ankara, 2011

[6]. “AD624 Precision Instrumentation Amplifier Data Sheet”, Analog Devices, 1999

[7]. “PIC18F2455/2550/4455/4550 Data Sheet”, Microchip, 2009

Page 45: USB EKG PROJESİ - eee.ktu.edu.tr · ile MATLAB ara yüzünde, USB iletimiyle sürekli olarak gösterilmesi amaçlanmaktadır. EKG iaretinin bir örneği ùekil 1.1’de gösterilmitir

7. EKLER

Ek-1

#include <18F2550.h>

#device ADC=8

#fuses

HSPLL,USBDIV,PLL5,PUT,CPUDIV1,VREGEN,NOWDT,NOPROTECT,NOLVP,NOD

EBUG,NOMCLR

#use delay(clock=20000000)

#define USB_HID_DEVICE FALSE

#define USB_EP1_TX_ENABLE USB_ENABLE_BULK //Uçnokta1'de Yığın transferi

aktif

#define USB_EP1_RX_ENABLE USB_ENABLE_BULK

#define USB_EP1_TX_SIZE 64 //Uçnokta1 için maksimum gonderilecek veri boyutu

#define USB_EP1_RX_SIZE 64 //Uçnokta1 için maksimum alınacak veri boyutu

#include <pic18_usb.h>

#include <USB_Konfigurasyon.h> //USB konfigurasyon bilgileri bu dosyadadır.

Bilgisayar bu dosyadan entegrenin özelliklerini okuyacak.

#include <usb.c>

#define UcNokta1 1 //Uçnokta 1 kullanılacak

static unsigned int16 ADC = 0;

unsigned int8 i ;

void user_init(void)

set_tris_a(0x01); //RA0 ANALOG giriş

set_tris_b(0xFF); //PORTB GİRİŞ

setup_adc_ports(AN0); //Analog portlar tanıtıldı.

setup_adc(ADC_CLOCK_INTERNAL);

Page 46: USB EKG PROJESİ - eee.ktu.edu.tr · ile MATLAB ara yüzünde, USB iletimiyle sürekli olarak gösterilmesi amaçlanmaktadır. EKG iaretinin bir örneği ùekil 1.1’de gösterilmitir

32

unsigned int16 Olcum_al(byte kanal) //ADC ölçüm alma fonksiyonu. Ölçüm alırken

kullanılacak.

unsigned int16 olcum=0;

set_adc_channel(kanal);

delay_us(20);

olcum = read_adc();

return olcum;

void main(void)

byte sayac=0;

byte gond_paket[64]; //Gönderilecek paketin tanımlanması

user_init();

usb_init();

usb_task();

usb_wait_for_enumeration(); //Cihaz bağlanana kadar bekle

for (;;) //Sonsuz döngü

while(usb_enumerated()) //Cihaz bağlı iken

for (i=0;i<=63;++i) //0'dan 63'e kadar. 64 defa ölçüm alan döngü

delay_ms(1); //1 ms 'lik gecikmeler.

ADC=Olcum_al(0); //Analog girişi okumak.

gond_paket[i] = (byte) ADC; //Okunan değeri gönderilecek pakete yazmak.

sayac = 0x40;

Page 47: USB EKG PROJESİ - eee.ktu.edu.tr · ile MATLAB ara yüzünde, USB iletimiyle sürekli olarak gösterilmesi amaçlanmaktadır. EKG iaretinin bir örneği ùekil 1.1’de gösterilmitir

33

if(sayac!=0)

usb_put_packet(UcNokta1, gond_paket, sayac, USB_DTS_TOGGLE); //USB

portuna paketi yazmak.

sayac = 0;

Ek-2

[Version]

Signature=$Windows NT$

Class=K.T.Ü. USB UYGULAMALARI;CustomUSBDevices

ClassGuid=a503e2d3-a031-49dc-b684-c99085dbfe92

Provider=%MFGNAME%

CatalogFile=%MFGFILENAME%.cat

DriverVer=20/01/2012,1.0.0.1

[Manufacturer]

%MFGNAME%=DeviceList,ntamd64

[DestinationDirs]

DefaultDestDir=12

[SourceDisksNames]

1=%INSTDISK%,,,

[ClassInstall32]

AddReg=ClassInstall_AddReg

[ClassInstall_AddReg]

HKR,,,,%DEVICEMANAGERCATEGORY%HKR,,Icon,,"-20"

Page 48: USB EKG PROJESİ - eee.ktu.edu.tr · ile MATLAB ara yüzünde, USB iletimiyle sürekli olarak gösterilmesi amaçlanmaktadır. EKG iaretinin bir örneği ùekil 1.1’de gösterilmitir

34

;------------------------------------------------------------------------------

; Windows 2000/XP/Vista 32 Section

;------------------------------------------------------------------------------

[DriverInstall]

CopyFiles=DriverCopyFiles

[DriverCopyFiles]

%MFGFILENAME%.sys,,,2

[DriverInstall.Services]

AddService=MCHPUSB,2,DriverService

[DriverService]

ServiceType=1

StartType=3

ErrorControl=1

ServiceBinary=%12%\%MFGFILENAME%.sys

;------------------------------------------------------------------------------

; Windows XP/Vista 64 Section

;------------------------------------------------------------------------------

[DriverInstall64]

CopyFiles=DriverCopyFiles64

[DriverCopyFiles64]

%MFGFILENAME%64.sys,,,2

[DriverInstall64.Services]

AddService=MCHPUSB,2,DriverService64

[DriverService64]

ServiceType=1

StartType=3

ErrorControl=1

ServiceBinary=%12%\%MFGFILENAME%64.sys

;------------------------------------------------------------------------------

; Vendor and Product ID Definitions

;------------------------------------------------------------------------------

Page 49: USB EKG PROJESİ - eee.ktu.edu.tr · ile MATLAB ara yüzünde, USB iletimiyle sürekli olarak gösterilmesi amaçlanmaktadır. EKG iaretinin bir örneği ùekil 1.1’de gösterilmitir

35

; When developing your custom USB device, the VID and PID used in the PC side

; application program and the firmware on the microcontroller must match.

; Modify the below line to use your VID and PID. Use the format as shown below.

; Note: One INF file can be used for multiple devices with different VID and PIDs.

; For each supported device, append ",USB\VID_xxxx&PID_yyyy" to the end of the line.

;------------------------------------------------------------------------------

[DeviceList]

%DESCRIPTION%=DriverInstall, USB\VID_04D8&PID_000B,

USB\VID_04D8&PID_000C, USB\VID_04D8&PID_01F0 USB\VID_04D8&PID_01F1,

USB\VID_04D8&PID_01F2, USB\VID_04D8&PID_01F3, USB\VID_04D8&PID_01F4,

USB\VID_04D8&PID_01F5, USB\VID_04D8&PID_01F6

[DeviceList.ntamd64]

%DESCRIPTION%=DriverInstall64, USB\VID_04D8&PID_000B,

USB\VID_04D8&PID_000C, USB\VID_04D8&PID_01F0 USB\VID_04D8&PID_01F1,

USB\VID_04D8&PID_01F2, USB\VID_04D8&PID_01F3, USB\VID_04D8&PID_01F4,

USB\VID_04D8&PID_01F5, USB\VID_04D8&PID_01F6

;------------------------------------------------------------------------------

; String Definitions

;------------------------------------------------------------------------------

;Modify these strings to customize your device

;------------------------------------------------------------------------------

[Strings]

DEVICEMANAGERCATEGORY="K.T.Ü. USB UYGULAMALARI"

MFGFILENAME="mchpusb"

MFGNAME="Ömer YAZICI & Serhat TOSUN"

INSTDISK="---"

DESCRIPTION="K.T.Ü. USB EKG CİHAZI"

;------------------------------------------------------------------------------

; Source Files

;------------------------------------------------------------------------------

;The source file name prefixes need to be the same name as the string MFGFILENAME

;above

;------------------------------------------------------------------------------

[SourceDisksFiles]

mchpusb.sys=1

mchpusb64.sys=1

Page 50: USB EKG PROJESİ - eee.ktu.edu.tr · ile MATLAB ara yüzünde, USB iletimiyle sürekli olarak gösterilmesi amaçlanmaktadır. EKG iaretinin bir örneği ùekil 1.1’de gösterilmitir

ÖZGEÇMİŞ – SERHAT TOSUN

Adı Soyadı: Serhat Tosun

Doğum Yeri Ve Tarihi : Ankara, 14.05.1989

İletişim Bilgileri:05054139309 [email protected]

Eğitim

Lisans Karadeniz Teknik Üniversitesi/Elektrik Elektronik Müh. (2007-2012)

Lisans Anadolu Üniversitesi/İşletme (2011-2015

Lise Çubuk Anadolu Lisesi (2003-2007)

Staj Tarih

İnform Elektronik San. Ve Tic. A.Ş. 2011 (20 İş Günü)

General Electrıc 2011 (30 İş Günü)

Orman Ve Su İşleri Bakanlığı 2010 (30 İş Günü)

ÖZGEÇMİŞ-ÖMER YAZICI

Adı Soyadı: Ömer Yazıcı

Doğum Tarihi Ve Tarihi: İstanbul, 14.11.1989

Eğitim

Lisans Karadeniz Teknik Üniversitesi/Elektrik Elektronik Müh. (2009-2012)

Önlisans Marmara Üniversitesi – Biyomedikal Cihaz Teknolojisi (2006-2008)

Lise Haydarpaşa Anadolu Teknik Lisesi -Elektronik (2003-2006)

Staj Tarih Yeri

ELECTRICITE DE FRANCE (EDF) 01.07.2011-01.10.2011 Nancy-Fransa

MAQUET MEDICAL SYSTEMS 01.06.2010-01.08.2010 İstanbul

BAYER TÜRK KİMYA 01.08.2008-01.09.2008 İstanbul

KADIKÖY FLORENCE NIGHTINGALE 01.06.2007-01.08.2008 İstanbul

HASTANESİ

Page 51: USB EKG PROJESİ - eee.ktu.edu.tr · ile MATLAB ara yüzünde, USB iletimiyle sürekli olarak gösterilmesi amaçlanmaktadır. EKG iaretinin bir örneği ùekil 1.1’de gösterilmitir

Bitirme projesinin hazırlanması ile ilgili olarak, aşağıdaki soruları cevaplayınız.

1. Projenizde sizce tasarım boyutu nedir? Açıklayınız.

Projemiz oldukça küçük boyutlu olmuştur.

2. Projenizde bir mühendislik problemini kendiniz formüle edip, çözdünüz mü?

Evet, USB iletişimi yaparken aktaracağımız bilgi hızını ve iletim kapasitesini hesaba katıp

bunu sorun yaratmayacak bir şekilde projeyi tasarladık.

3. Önceki derslerde edindiğiniz hangi bilgi ve becerileri kullandınız:

Yazılımsal olarak MATLAB ve C++ programlamayı, donanımsal olarak ise mikro

denetleyicileri, genel ölçme bilgilerimizi, temel elektronik bilgilerimizi, devre tasarımı

bilgilerimizi kullandık.

4. Kullandığınız veya dikkate aldığınız mühendislik standartları:

IEC 60601-1, Class I - İletim parçalarının toprağa fiziksel olarak bağlandığı ve elektriksel

şoklara karsı ilave yalıtım sağlandığı tipte medikal cihazlardır.

Elektromanyetik uyumluluk CISPR 11, Class B – Ekipman bina içi sistemlere ve direkt

olarak düşük gerilim kaynak ağına bağlı olan sistemlerde kullanılmaya uygundur.

Kullandığınız veya dikkate aldığınız gerçekçi kısıtlar;

Ekonomi:

Proje düşük maliyeti olması nedeniyle tercih edilebilir. Ekonomik olarak piyasada olan

EKG cihazlarına kıyasla oldukça düşük maliyetlidir.

Çevre sorunları:

Proje herhangi bir çevre sorunu doğurmamaktadır.

Sürdürülebilirlik:

Projede kullandığımız ekipmanlar veya onların eşdeğerleri piyasa koşullarında her daim

bulunabileceği için bu proje sürdürülebilir bir projedir.

Üretilebilirlik:

Projemizin üretilebilirliği son derece yüksektir. Piyasadan bulabileceğimiz düşük maliyetli

elektriksel malzemelerle bu projeyi çok sayıda üretebiliriz.

Etik:

Projemizin etik açıdan hiçbir sorun doğurmamaktadır.

Sağlık:

Projemiz çevredeki canlıların sağlıklarını negatif yönde etkileyecek bir sonuç doğurmaz.

Güvenlik:

EKG projemizde, cihaz hasta ile direkt elektriksel bağlantı halinde olmadığı için uluslar

arası kuruluşlarca belirlenmiş medikal cihaz standartlarına uygun bir cihaz tasarladık.

Sosyal ve politik sorunlar:

Projenin yapımı herhangi bir sosyal veya politik sorun doğurmamaktadır. Hâlihazırda

dünyada EKG cihazları kullanıldığı ve herhangi bir sorun yaratmadığından ve de insan

sağlığına hizmet ettiğinden, bu projenin yapımı sosyal sağlık hizmetlerinde de

kullanılabilir.

Karadeniz Teknik Üniversitesi Mühendislik Fakültesi Elektrik-Elektronik Mühendisliği Bölümü

STANDARTLAR VE KISITLAR FORMU

Page 52: USB EKG PROJESİ - eee.ktu.edu.tr · ile MATLAB ara yüzünde, USB iletimiyle sürekli olarak gösterilmesi amaçlanmaktadır. EKG iaretinin bir örneği ùekil 1.1’de gösterilmitir

Öğrencinin Adı ve Soyadı: ÖMER YAZICI ve SERHAT TOSUN

Numaraları: 238316 ve 196077

Çalışmanın Başlığı: KTÜ USB EKG PROJESİ

Danışmanın Unvanı, Adı ve Soyadı: YRD. DOÇ. DR. YUSUF SEVİM

TAKİP ÇİZELGESİ

Tarih Bitirme Çalışmasının durumu Danışman İmzası

22.02.12 Bilgisayarda baskı devre tasarımı yapıldı.

29.02.12 Baskı devre kuruldu ancak çalışmadı.

07.03.12 Yeni baskı devrenin malzemeleri sipariş edildi.

14.03.12 Yeniden baskı devre kuruldu ve çalıştı.

21.03.12 Devrede değişiklikler yapıldı. EKG sinyali alındı.

28.03.12 PIC yazılımı yazılmaya başlandı.

04.04.12 PIC yazılımı geliştirildi ve bitirildi.

11.04.12 Kitaptan MATLAB’da GUI yazmak öğrenildi.

18.04.12 GUI kodları yazılmaya başlandı ve geliştirildi.

25.04.12 GUI’de EKG sinyali başarı ile görüntülendi.

02.05.12 GUI’ye fazladan fonksiyonlar eklendi ve geliştirildi.

09.05.12 GUI’nin son tasarımı yapıldı ve bitirildi.

16.05.12 Projenin kutusu ve dış tasarımı yapıldı.

23.05.12 Proje kutulandı ve bitirildi.

Karadeniz Teknik Üniversitesi Mühendislik Fakültesi Elektrik-Elektronik Mühendisliği Bölümü

BİTİRME PROJESİ ÖĞRENCİ TAKİP FORMU