Skip to content
elaasahli85 edited this page Oct 11, 2026 · 32 revisions

❤️ Moniteur de fréquence cardiaque connecté

Projet Home Trainer : Arduino UNO R4 WiFi, MQTT et Node-RED

Ce projet consiste à développer un prototype de surveillance de la fréquence cardiaque à partir d'un capteur ECG. Une carte Arduino traite le signal et transmet les mesures à une interface Node-RED grâce au protocole MQTT.

Prototype électronique Home Trainer

Figure 1 : Vue générale du projet.


🎯 1. Présentation du projet

Le système permet de suivre la fréquence cardiaque et de signaler certaines situations selon des seuils définis dans le programme.

Les principales fonctionnalités sont :

  • affichage de la fréquence cardiaque en BPM sur un graphique ;
  • activation et désactivation du système depuis Node-RED ou avec un bouton physique ;
  • clignotement d'une LED en fonction de la fréquence cardiaque ;
  • déclenchement d'un buzzer lorsque la fréquence cardiaque est inférieure à 50 BPM ou supérieure à 120 BPM, si le système est activé.

Ce projet est un prototype pédagogique. Il ne constitue pas un dispositif médical.

🧩 2. Architecture générale

Le système repose sur trois éléments principaux :

  1. Arduino UNO R4 WiFi : lit le signal ECG, estime la fréquence cardiaque et commande les composants électroniques.
  2. Broker MQTT : assure l'échange des mesures et des commandes entre Arduino et Node-RED.
  3. Node-RED : affiche les données, mémorise l'état du système et gère la logique de l'alarme.

En résumé, Arduino mesure et exécute, tandis que Node-RED supervise et décide du déclenchement de l'alarme et la led.

flowchart LR
    ECG["Capteur ECG"] --> A["Arduino UNO R4 WiFi"]
    BTN["Bouton physique"] --> A
    A -->|"BPM, bouton, état"| M(("Broker MQTT"))
    M --> N["Node-RED"]
    N -->|"Commandes LED et alarme"| M
    M --> A
    A --> LED["LED"]
    A --> BZ["Buzzer"]
Loading

Figure 2 : Architecture générale du système.

⚙️ 3. Fonctionnement

Fonction Réalisation
Acquisition ECG Le capteur fournit un signal analogique à Arduino.
Calcul du BPM Arduino détecte les battements à partir du signal mesuré.
Visualisation Node-RED affiche les mesures sous forme de graphique.
Commande du système Le bouton physique ou le dashboard permet de changer l'état du système.
Signalisation lumineuse Arduino fait clignoter la LED selon la cadence reçue.
Alarme sonore Node-RED détermine si l'alarme doit être activée ; Arduino commande le buzzer.

Logique d'alarme :

Condition Système activé Système désactivé
BPM < 50 Alarme Aucune alarme
50 ≤ BPM ≤ 120 Normal Normal
BPM > 120 Alarme Aucune alarme

Ces seuils correspondent aux paramètres du prototype et ne sont pas des seuils médicaux universels.

🧰 4. Matériel et logiciels

Le prototype utilise une carte Arduino UNO R4 WiFi, un capteur ECG, une LED avec sa résistance, un buzzer, un bouton-poussoir, des fils de connexion et une breadboard.

Les outils logiciels sont :

⚠️ 5. Limites du prototype

La fiabilité du calcul du BPM dépend de la qualité du signal ECG, du positionnement des électrodes et des seuils utilisés dans le programme. La communication dépend également de la disponibilité du réseau Wi-Fi et du broker MQTT.


Projet pédagogique : cycle ingénieur ISIS.

Clone this wiki locally