Misurare il battito cardiaco con Arduino e sensore XD-58C

Misurare il battito cardiaco con Arduino e sensore XD-58C

Nel post di oggi vedremo come Misurare il battito cardiaco con Arduino e sensore XD-58C. Il PulseSensor può essere utilizzato per controllare il battito cardiaco durante un allenamento, il sonno, o altre attività in cui vogliamo monitorare il battito. N.B questo sensore non è medico o approvato dalla FDA. È destinato esclusivamente a progetti / demo di hobby e non deve essere utilizzato per applicazioni critiche per la salute, per le quali è consigliato consultare il medico.


Misurare il battito cardiaco con Arduino e sensore XD-58C

Cenni sul progetto

Il progetto si basa sull’utilizzo si un sensore abbastanza economico e di facile utilizzo: PulseSensor XD-58C. Lo collegheremo alla board Arduino (un clone di Arduino Nano in questo caso) e vedremo come leggere i valori tramite il Serial Plotter

Materiale occorrente

Ecco l’elenco dei componenti che utilizzeremo per questo progetto

materiale occorrente

Panoramica sul sensore XD-58C

Il sensore XD-58C utilizza un circuito di amplificazione ottica integrata, abbinato ad un circuito che fa da filtro per l’eliminazione del rumore. Può essere alimentato sia a 3.3 volt che a 5 volt e il segnale di uscita può avere un valore massimo pari alla tensione di alimentazione. Per leggere i battiti basta posizionare il sensore sul lobo dell’orecchio o tenerlo premuto tra il pollice e l’indice.

Queste sono le caratteristiche principali

  • Lunghezza d’onda di picco del LED: 515nm
  • Tensione di funzionamento: + 5 V o + 3,3 V.
  • Tipo di uscita: analogico
  • Segnale di uscita: 0 ~ 3,3 (con alimentazione a 3,3 V) / 0 ~ 5 V (con alimentazione a 5 V)
  • Massima corrente assorbita: 4mA

E questa è la vista fronte/retro del PulseSensor

sensore XD-58C

Per maggiori informazioni sul sensore XD-58C potete consultare questo link.

Montaggio e collegamenti

Il collegamento del sensore XD-58C alla board Arduino Nano è molto semplice. In base al modello i colori potrebbero differire da quelli che mostro nello schema, prima di effettuare i collegamenti verificate le sigle dei contatti presenti sulla parte posteriore del sensore: a sinistra il contatto del segnale (S), al centro il contatto per l’alimentazione positiva (+) e a destra il contatto per la massa (-)

contatti sensore XD-58C

Nel mio caso i colori dei Jumper sono collegati al sensore in questo modo:

  • + : Arancione
  • : Giallo
  • S : Rosso

Effettuiamo i collegamenti come mostrato nella tabella seguente:

COLLEGAMENTO PIEDINI
Arduino Nano XD-58C Jumper Wire
3.3 +      Arancione
GND      Giallo
A0 S      Rosso

Questo lo schema realizzato con Fritzing

Misurare il battito cardiaco con Arduino e sensore XD-58C collegamento Arduino Nano e sensore XD-58C Fritzing

e questa un’immagine del circuito reale

circuito collegamento Arduino e PulseSensor XD-58C


Misurare il battito cardiaco con Arduino e sensore XD-58C

Sketch e test lettura

Questo lo sketch che utilizzeremo per leggere il valore del PulseSensor

Il codice è abbastanza semplice e commentato.
Con la variabile PulseSensorPin indichiamo al micro controllore che il sensore è collegato sul pin A0.
I valori sono compresi in un range da 0 a 1024, una volta effettuata la lettura l’assegnamo alla variabile Signal e la inviamo al Serial Plotter.

Ora non ci resta che caricare e testare lo sketch.
Colleghiamo la board Arduino Nano ad una delle porte USB del PC e configuriamo, dalla tab Strumenti dell’IDE, la Scheda, il Processore e la Porta relative alla board:

  • Scheda: Arduino Nano
  • Processore: ATmega328P
  • Porta: CM3

configurazione Arduino IDE Scheda Processore Porta

Carichiamo lo sketch cliccando sul pulsante Carica (contrassegnato da una freccia rivolta verso destra)

Caricare sketch su Arduino da IDE

A differenza dei progetti che abbiamo visto nei post precedenti, per questo progetto utilizzeremo il Serial Plotter invece del Serial Monitor.
Avviamolo da Strumenti Plotter Seriale

avviare Serial Plotter da Arduino IDE

Ora non ci resta che misurare i battiti cardiaci tenendo premuto il sensore tra il pollice e l’indice, o posizionandolo sul lobo dell’orecchio.

Misurare il battito cardiaco con Arduino e sensore XD-58C lettura valori dal sensore XD-58C

Nel Serial Plotter vedremo il grafico creato dalle letture del sensore XD-58C collegato ad Arduino

visualizzazione letture del PulseSensor su Serial Plotter

Per progetti più complessi, sull’utilizzo del sensore XD-58C, è possibile utilizzare le varie librerie che sono presenti in rete, come la PulseSensor Playground.

A presto 😉

Lascia un commento

Il tuo indirizzo email non sarà pubblicato. I campi obbligatori sono contrassegnati *