Documente Academic
Documente Profesional
Documente Cultură
4.5.1 Introducere
Datorită unor limitări hardware în cazul folosirii platformei Arduino UNO, trebuiesc făcute
câteva observații privind modul de conectare a senzorilor la interfața e-Health:
- Modulul de afișare LCD și modulele tensiometru și comunicații folosesc portul UART
și nu pot lucra simultan.
- Glucometrul este compatibil cu alte dispozitive UART și are propriul conector, dar nu
poate lucra cu tensiometrul conectat.
- Senzorii EMG și ECG nu pot lucra simultan. Pentru a stabili care din ei lucrează sunt
utilizați jumperi integrați pe modul pentru a stabilii utilizarea tipului de senzori doriți.
Pentru a utiliza senzorul EMG, va trebui ca jumperii să fie în poziția EMG, iar pentru a
utiliza senzorul ECG, va trebui ca jumperii să fie în poziția ECG.
Unele din aceste limitări pot fi eliminate prin folosirea unor platforme cu microcontroler mai
puternice, care pot asigura o mai mare conectivitate.
Precizia senzorului de temperatură este cam aceeași în majoritatea aplicațiilor, dar putem mări
această precizie cu ajutorul unui proces de calibrare. Când folosim senzorul de temperatură, de
fapt măsurăm o tensiune. Dacă putem evita erorile în măsurarea tensiunii și putem reprezenta
relația dintre tensiune si temperatură cu mai mare precizie, vom putea obține rezultate termice
mai exacte. Calibrarea este un proces de măsurare a tensiunii si a valorii reale a rezistenței. În
fişierul eHealth.cpp, putem găsi funcția de achizţie a temperaturii. Valorile [Rc, Ra, Rb,
RefTensiune] sunt implicit definite într-un mod imprecis. Circuitul de adaptare conținut în
platforma interfaţă este prezentat în figura 4.67.
Figura 4.67. Senzorul de temperatură şi circuitul de adaptare pentru măsurarea temperaturii
Pentru măsurarea temperaturii, se conectează senzorul în conectorul jack. Trebuie avut
grijă ca să avem un contact bun între partea metalică și pielea pacientului, eventual se poate
folosi o bucată de bandă adezivă pentru a ține senzorul lipit de piele. Secvenţa de cod pentru
citirea temperaturii este:
După mai multe măsurători putem calcula o valoare medie. Această valoarea este rezultatul
calibrării şi o vom folosi în continuare prin setarea ei în soft.
Conectarea senzorului pentru măsurarea tensiunii arteriale la interfață se face pritr-un jack.
Pentru o măsurarea corectă plasăm tensionometrul pe braț, cu palma în sus, înfășurând manșeta
în jurul încheieturii mâinii stângi, fiind important să se mențină mâna în paralel cu inima, în plan
orizontal. Se apasă butonul pornit/oprit și așteptăm ca tensionometrul să ia tensiunea. După
câteva secunde rezultatul este afișat pe tensionometru si pe monitorul sistemului de achiziţie.
O secvenţă din codul pentru citirea tensiunii arteriale este:
eHealth.initBloodPressureSensor(parameter);
Serial.println("****************************");
Serial.print("Systolic blood pressure value : ");
Serial.println(eHealth.getSystolicPressure());
delay(10);
Serial.println("****************************");
Serial.print("Diastolic blood pressure value : ");
Serial.println(eHealth.getDiastolicPressure());
delay(10);
Senzorul are un singur mod de conectare pentru a preveni erorile și a face conexiunea mai
ușoară. Pentru achiziţia de date introducem degetul în senzor și apăsăm butonul.După câteva
secunde, vom obține valorile pe ecranul senzorului şi pe monitorul PC. Pentru citirea acestui
senzor folosm întreruperi și este necesar să se includă o bibliotecă special, < PinChangeInt.h >.
O parte din secvenţa de cod pentru citirea valorilor date de pulsoximetru este:
Serial.print("PRbpm : ");
Serial.print(eHealth.getBPM());
Serial.print(" %SPo2 : ");
Serial.print(eHealth.getOxygenSaturation());
Serial.print("\n");
Serial.println("=============================");
delay(500)
4.5.4.4 Măsurarea rezistenţei pielii
Galvanic skin rezistance (GSR) este o metodă de măsurare a conductanței electrice a
pielii, care variază în funcție de nivelul de umidificare a acesteia. Acest lucru este esenţial
deoarece glandele sudoripare sunt controlate de sistemul nervos, deci momentele de emoție
puternică, modifică rezistența electrică a pielii. Conductanţa pielii este utilizată ca o indicație de
excitare psihologică sau fiziologică. Senzorul GSR măsoară conductivitatea electrică între 2
puncte, și este în esență un fel de ohmmetru. Conductivitatea electrică a pielii este măsurată la
buricul degetului şi pentru măsurare se conectează cei doi electrozi pe două degete apropiate.
Măsurarea conductanței pielii este o componentă a dispozitivelor poligraf și este folosită în
cercetarea științifică în domeniul excitării emoţionale sau fiziologice.
Senzorul GSR are două contacte care funcționează ca un ohmmetru măsurând rezistenței
materialelor, în cazul nostru a pieli. Principiul de măsurare reiese din circuitul prezentat în figura
4.71, în care se compară tensiunea furnizată de senzor cu o tensiune de referinţă şi rezultatul este
apoi convertit în valoare de conductanţă sau rezistenţă, prin softul de achiziţie a datelor.
Figura 4.71. Senzorul GSR şi circuitul de adaptare conţinut în iterfaţă
Calibrarea este un proces de măsurare a valorilor reale ale tensiunii pe modulul interfaţă şi dacă
aceasta diferă de valoarea 0.5V care este definită in mod implicit, modificăm în soft noua valoare
citită. La conectarea senzorului nu contează modul cum legăm cele două fire deoarece nu avem
polaritate. O parte din secvenţa de cod pentru citirea senzorului este:
Serial.print("Conductance : ");
Serial.print(conductance, 2);
Serial.println("");
Serial.print("Resistance : ");
Serial.print(resistance, 2);
Serial.println("");
Serial.print("Conductance Voltage : ");
Serial.print(conductanceVol, 4);
Serial.println(""); Serial.print("\n"); // wait for a second
Pentru măsurarea corectă senzorul se pune pe poziție exact în calea fluxului de aer.
Un om normal adult are o rată respiratorie de 15-30 respirații pe minut. La conectarea senzorului
trebuie să ţinem cont de polaritate, aşa cum reiese şi din figura 4.72, firul roșu se conectează la
borna pozitivă şi firul negru la borna negativă.
Pentru achiziţia de date, senzorul pentru măsurarea fluxului de aer este conectat la modulul
Arduino pe de o intrare analogică și redă pe serial o valoare între 0-1024. Putem obține această
valoare în mod direct sau se poate reprezenta sub formă de grafic pe monitorul serial. Secvenţa
de cod pentru aceasta este:
int airFlow = eHealth.getAirFlow();
eHealth.airFlowWave(air);
Cele trei cabluri pentru măsurarea activităţii cardiac (roşu = +, negru = -, gri = neutru) se
conectează pe trei electrozi speciali pentru a asigura contactul cu corpul uman, electrozi plasaţi
după regulile de achiziţie cu trei electrozi a datelor pentru ECG, aşa cum se prezintă în figura
4.75.
Figura 4.75.Conectarea celor trei electrozi pe subiect
La ieşirea circuitului interfaţă avem un semnal analogic, iar sistemul returnează o valoare
analogică între 0şi 5V pentru a reprezenta forma de undă ECG. Secvenţa de cod pentru citirea
senzorului este:
Încărcăm codul și urmărim pe monitorul serial utilizând terminalul portului serial Arduino IDE.
Pentru măsurarea ritmului respiraţiei şi măsurarea activităţii inimii există şi o aplicaţie pe
smartphone care permite vizualizarea acestor semnale, aşa cum se prezintă în figura 4.76.
Figura 4.76. Aplicaţia pentru vizualizarea ritmului respiraşiei şi a semnalului ECG pe smartphone
Teoretic putem interacționa cu mediul cu proprii noștri mușchi. Putem folosi mușchii pentru a
controla orice tip de acționare (motoare, servo, lumini, etc). Acest senzor conține toate
instrumentele necesare pentru a începe activitatea de detectare musculară folosind o platform cu
microcontroler Arduino sau Raspberry Pi. Conectarea senzorului se face prin conectarea celor
trei electrozi (MID, END și GND) la interfața eHealth, cei trei electrozi având culori diferite
pentru diferenţierea lor. Un exemplu de conectare al electrozilor pe corp, pentru a măsura
activitatea muşchilor braţului este prezentată în figura 4.78.
Figura 4.78. Conectarea electrozilor pe corp, pentru a măsura activitatea muşchilor braţului
Acești electrozi de unică folosință şi de o bună calitate trebuie să fie utilizaţi pentru a măsura
ECG și EMG. Ei trebuie să fie folosit o singură dată și sunt foarte uşor aderanţi la piele datorită
gelului
integrat. Putem ajusta câștigul senzorului EMG folosind potențiometrul situat pe interfața
eHealth, aşa cum se observă şi în circuitul interfaţă din figura 4.77.
Sistemul de achiziţie pentru senzorul EMG returneaza o valoare analogică în volţi, convertită de
convertorul analog- digital în intervalul 0-1023, folosită pentru a reprezenta grafic semnalul
achiziţionat. Secvenţa de cod care permite citirea senzorului este:
Pentru a configurara glucometrul trebuie să setăm parametrii acestuia, putând seta data(ora, ziua,
luna, anul) și unitatea de măsură (mg / dl sau mmol/l). După setare putem obține toate
informațiile dorite (data, valoarea glucozei), pornid glucometrul și punând un test în el când
aparatul este gata. Cantitatea de sânge utilizată este determinată de tipul de bandă pe care o
utilizăm. Picătura de sânge se pune în partea laterală a benzii.
Pentru a achiziţiona datele din glucometru cu platformele cu microcontroller Arduino sau
Raspberry Pi, conectăm cu un cablu aparatul la interfaţa sistemului de achiziţie.
O parte din secvenţa de cod utilizată pentru achiziţie este:
eHealth.readGlucometer();
Serial.print(F("Number of measures : "));
Serial.println(numberOfData, DEC);
Serial.print(F("Date -> "));
Serial.print(eHealth.glucoseDataVector[i].day);
Serial.print(F("Glucose value : "));
Serial.print(eHealth.glucoseDataVector[i].glucose);
Serial.println(F(" mg/dl"));
Eşantioanele de tensiune obţinute în urma măsurătorilor pot fi reprezentate grafic, rezultatul unei astfel de
reprezentări fiind prezentat în figura 4.85.
Măsurarea temperaturii şi rezultatul obţinut în urma achiziţiei sunt prezentate în figura 4.86.
În figura 4.87 este reprezentat grafic rezultatul măsurătorilor de temperatură în două pucte de pe corp,
într-un interval mai mare de timp.
Figura 4.87. Reprezentarea grafică a rezultatului măsurătorilor de temperatură