#define NB_LIGNES 8 #define NB_COLONNES 8 #define ADRESSE_MUX 0x70
PCF8574 multiplexeur; uint16_t matricePression[NB_LIGNES][NB_COLONNES];
void acquisitionDonnees() { for (uint8_t colonne = 0; colonne < NB_COLONNES; colonne++) { multiplexeur.pinMode(colonne, OUTPUT_HIGH); delayMicroseconds(120); // Stabilisation du signal
for (uint8_t ligne = 0; ligne < NB_LIGNES; ligne++) {
uint16_t valeurBrute = analogRead(ligne);
matricePression[ligne][colonne] = constrain(map(valeurBrute, 0, 4095, 0, 500), 0, 50);
}
multiplexeur.pinMode(colonne, OUTPUT_LOW);
} }
Le traitement des signaux s'effectue sur une plateforme ESP32-S3 dotée de 8 Mo de mémoire RAM. Le pipeline inclut un filtrage médian pour éliminer les pics, une compensation thermique, et une calibration dynamique du zéro. La transmission s'appuie sur Bluetooth Low Energy avec une configuration spécifique exploitant la caractéristique *Notify* : ```
#include <BLE2201.h>
BLECharacteristic* caractDonnees;
bool connexionActive = false;
class GestionnaireServeur : public BLEServerCallbacks {
void onConnect(BLEServer* serveur) override {
connexionActive = true;
}
void onDisconnect(BLEServer* serveur) override {
connexionActive = false;
}
};
void configBLE() {
BLEDevice::init("Capteur_Pression_TaiChi");
BLEServer* serveur = BLEDevice::createServer();
serveur->setCallbacks(new GestionnaireServeur());
BLEService* service = serveur->createService("181A");
caractDonnees = service->createCharacteristic(
"2A6D",
BLECharacteristic::PROPERTY_NOTIFY
);
service->start();
serveur->getAdvertising()->start();
}
L'architecture minimise la latence à moins de 60 ms grâce à une fréquence d'échantillonnage de 50 Hz et une bande passante BLE optimisée à 1.2 Mbps. L'application réceptrice convertit les matrices brutes en cartes thermiques via OpenGL ES, avec superposition de vecteurs représentant la direction des forces. Le système calcule trois indicateurs biométriques clés : - L'entropie spatiale de pression (homogénéité de la distribution)
- La vitesse de déplacement du centre de gravité dynamique
- Le coefficient de synergie bilatérale (0-100%)
Les défis techniques rencontrés incluent l'immmunité aux interférences électromagnétiques (résolue par blindage et filtrage analogique), l'adaptation ergonomique des capteurs (solution textile élastique), et la gestion des données biométriques sensibles (stockage local par défaut). Les tests d'utilisabilité ont conduit à adopter une échelle chromatique bleu-rouge normalisée pour améliorer l'interprétation visuelle. Cette méthodologei trouve des applicaitons dans la rééducation post-accident vasculaire cérébral, l'optimisation gestuelle des sportifs de haut niveau, et la création d'archives numériques de techniques martiales traditionnelles. L'intégration future de capteurs IMU et d'électromyographie permettra d'analyser les corrélats musculaires des schémas de force observés.