« PROCEDES ET SYSTEME POUR LA DETECTION DE SITUATIONS ANORMALES D'UNE PERSONNE DANS UN LIEU DE VIE »
La présente invention concerne d'une façon générale les systèmes de détection notamment pour la surveillance à distance des personnes âgées.
Elle concerne plus particulièrement un système perfectionné avec une « levée de doute » améliorée par rapport aux systèmes existants, c'est-à-dire qui permette une meilleure discrimination entre les véritables anomalies telles que des chutes de la personne, et différentes actions ou situations de la vie quotidienne qui peuvent être détectées alors que la personne n'est pas en danger. Plus particulièrement encore, l'invention vise à renforcer la sensibilité et la spécificité d'un capteur d'une variable vitale de la personne, tel qu'un capteur de chute, porté par la personne en combinant une indication détectée par un tel capteur avec des informations fournies par d'autres capteurs portés ou placés dans l'environnement de la personne. On sait qu'un capteur tel qu'un capteur de chute, un capteur de rythme cardiaque, etc., porté par la personne ne peut à lui tout seul atteindre une fiabilité maximale face aux diverses situations qui peuvent se présenter et qui sont sources de :
« Faux négatifs » : par exemple certaines chutes ne sont pas détectables parce qu'elles ne résultent pas d'un mouvement d'une amplitude significative, alors que la personne est pourtant dans l'incapacité de se relever sans aide (syncope) ;
- « Faux positifs » : toujours avec un détecteur de chute, certains mouvements atteignent une intensité inhabituelle sans pourtant donner lieu à l'impossibilité pour la personne de se relever seule (par exemple trébucher, se laisser tomber dans son lit).
La performance d'un capteur de chute ne peut ainsi être appréciée que par les facteurs de sensibilité (capacité du système à détecter toutes les chutes) et de spécificité (capacité du système à ne détecter que les chutes).
Or, la chute peut prendre des formes multiples (avant, arrière, latérale, droite ou avec rotation du corps, se terminant en position allongée ou assise, etc.). Il est donc pratiquement impossible de tester un capteur de chute de manière exhaustive. De plus, un même mouvement de chute, même le plus simple (par exemple la chute arrière après glissade) peut se dérouler de manière variable suivant le contexte et le sujet. Par conséquent il n'est pas possible d'atteindre une sensibilité totale (pas de faux négatifs) et une spécificité totale (pas de faux positifs) avec des moyens de détection de chute raisonnables en termes d'encombrement, de complexité et de coût. Le même type de problème peut se rencontrer avec un capteur de rythme cardiaque, où une situation peut être normale dans un certain contexte et alarmante dans un autre.
On sait par ailleurs améliorer encore la performance d'un capteur tel qu'un capteur de chute en combinant les informations qu'il délivre avec des informations de nature géographique ou temporelle (géolocalisation GPS, durée d'immobilisation, ...).
On citera notamment les documents EP 0 877 346, US 6,201 ,476, US 6,160,478, US 6,433,690, WO 2006/000605, WO 2004/100092, EP 1 128 349, WO 98/29852 et WO 99/56262. La présente invention vise à pallier au moins en partie ces limitations de l'état de la technique et à proposer un procédé et un système qui notamment, effectuent une discrimination améliorée, dictée à la fois par les contextes de lieu et de temps, de situations normale, anormale et d'alerte en réponse à des informations vitales fournies par un capteur porté par la personne, de préférence sans surcroît de complexité technique ou de coût.
On propose à cet effet selon un premier aspect de l'invention un procédé pour la détection de situations anormales d'une personne dans un lieu de vie, notamment pour la télésurveillance des personnes âgées, caractérisé en ce qu'il comprend les étapes suivantes : - recevoir des informations fournies par un capteur porté par la personne et relatives à au moins une variable vitale de la personne,
- recevoir des informations en provenance d'une série de capteurs de mouvement prévus en différents endroits du lieu de vie, et
- confronter lesdites informations avec des règles prédéterminées mettant en jeu des temporisations établies en fonction de l'endroit et de la période de la journée, et
- en réponse à l'étape précédente, déclencher ou non une signalisation de situation anormale.
On obtient ainsi une discrimination de situations anormale qui peut être codifiée d'une manière extrêmement fine, en fonction notamment des caractéristiques du lieu de vie, des habitudes de vie de la personne, etc.
On propose selon un deuxième aspect un procédé pour la détection de situations anormales d'une personne dans un lieu de vie, notamment pour la télésurveillance des personnes âgées, caractérisé en ce qu'il comprend les étapes suivantes : - recevoir des informations fournies par un capteur porté par la personne et relatives à au moins une variable vitale de la personne,
- recevoir des informations en provenance d'une série de capteurs de mouvement prévus en différents endroits du lieu de vie, et
- confronter lesdites informations avec des règles prédéterminées mettant en jeu des temporisations différentes selon qu'une anomalie a été détectée au niveau de la variable vitale, et
- en réponse à l'étape précédente, déclencher ou non une signalisation de situation anormale.
L'invention permet ainsi de modifier les modalités de surveillance dès qu'un événement anormal (chute, augmentation de la fréquence cardiaque, etc.) a été détecté.
L'invention propose selon un troisième aspect un procédé pour la détection de situations anormales d'une personne dans un lieu de vie, notamment pour la télésurveillance des personnes âgées, caractérisé en ce qu'il comprend les étapes suivantes :
- recevoir des informations fournies par un capteur porté par la personne et relatives à au moins une variable vitale de la personne,
- recevoir des informations en provenance d'une série de capteurs de mouvement prévus en différents endroits du lieu de vie, et - confronter lesdites informations avec des règles prédéterminées mettant en jeu des temporisations, selon un processus commun relancé à chaque arrivée dans un nouvel endroit alors qu'aucune situation anormale n'existe, et
- en réponse à l'étape précédente, déclencher ou non une signalisation de situation anormale.
On réalise ainsi un procédé simple à mettre en œuvre avec une algorithmique commune au cours des différentes phases de vie dans le lieu dé vie.
Certains aspects préférés, mais non limitatifs, de ces procédés sont les suivants :
* dans les procédés des deuxième et troisième aspects, les temporisations peuvent différer en fonction de la période de la journée, de même que les temporisations peuvent avoir des valeurs différentes selon l'endroit où une présence de la personne est détectée. * le procédé est apte à signaler deux niveaux de situation anormale.
* les deux niveaux de situation anormale sont déterminés par deux situations d'absence de mouvement pendant deux temporisations distinctes.
* une situation anormale de niveau le plus élevé est déterminée soit par écoulement de deux temporisations distinctes sans mouvement, soit par détection d'une anomalie au niveau de la variable vitale avec écoulement d'au moins une temporisation sans mouvement.
* le capteur porté par la personne comprend un capteur cinématique.
* le capteur porté par la personne comprend un capteur de rythme cardiaque. * le procédé est mis en œuvre dans l'unité centrale d'un système d'alarme préexistant doté de capteurs de présence.
L'invention propose enfin un système pour la détection de situations anormales d'une personne dans un lieu de vie, notamment pour la télésurveillance des personnes âgées par la mise en œuvre d'un procédé tel que défini dans ce qui précède, caractérisé en ce qu'il comprend en combinaison :
- une unité centrale,
- une pluralité de capteurs de mouvement aptes à fournir des informations de mouvement à l'unité centrale,
- un capteur porté par la personne et apte à fournir des informations relatives à au moins une variable vitale de la personne à l'unité centrale via un canal de communication dans fil,
- une horloge reliée à l'unité centrale et apte à fournir des informations de période de la journée et de temporisation,
- un dispositif de télétransmission pour envoyer des alertes à un poste de télésurveillance distant, l'unité centrale comprenant des moyens pour commander le dispositif de télétransmission en fonction de combinaisons déterminées d'informations provenant des capteurs de mouvement, du capteur porté par la personne et de l'horloge. Certains aspects préférés de ce système sont les suivants :
* le capteur porté par la personne comprend un capteur cinématique.
* le capteur porté par la personne comprend un capteur de rythme cardiaque.
* l'horloge est apte à dérouler des temporisations de valeurs différentes en fonction de l'endroit et de la période de la journée.
* l'horloge est apte à dérouler des temporisations de valeurs différentes selon qu'une anomalie a été détectée au niveau de la variable vitale.
* les moyens de commande sont aptes à mettre en œuvre un processus commun relancé à chaque arrivée dans un nouvel endroit alors qu'aucune situation anormale n'existe.
D'autres aspects, buts et avantages de la présente invention apparaîtront mieux à la lecture de la description détaillée suivante d'une forme de réalisation préférée de celle-ci, donnée à titre d'exemple non limitatif et faite en référence aux dessins annexés, sur lesquels : La figure 1 est une vue schématique d'un système selon la présente invention, et
La figure 2 est un schéma d'un automate à états finis générique pouvant être utilisé dans le système de la présente invention.
On va décrire dans la suite un système de surveillance à distance de personnes basé sur :
- un ou plusieurs détecteurs de chute sensibles aux mouvements du corps de la personne ;
- des détecteurs de présence placés dans les différences pièces de l'endroit où évolue la personne, typiquement de son domicile, - une prise en compte de la durée écoulée depuis la dernière détection de présence,
- une prise en compte du moment de la journée dans lequel on se trouve.
L'idée sous-jacente à cette combinaison réside essentiellement en ce que l'information fournie par le détecteur de chute n'a pas le même « poids » selon qu'elle se produit par exemple dans la chambre ou la salle de bains, la nuit ou le jour, et selon qu'elle est suivie par une inactivité prolongée ou au contraire une reprise normale d'activité.
Le système selon l'invention comprend à cet effet, sur le lieu de vie de la personne télésurveillée, et en référence à la figure 1 , une unité centrale de traitement UC reliée à un récepteur RC communiquant par un canal sans fil avec un capteur tel qu'un capteur cinématique de chute CC porté par la personne (par exemple fixé sur sa cuisse) et avec une pluralité de détecteurs de présence ici au nombre de cinq, DP1 , DP2, ..., DP5, situés dans les différentes pièces P1 , P2, ... P5 du lieu de vie, et doté d'un dispositif d'horodatage à horloge permanente CLK.
En alternative au capteur de chute ou en complément de celui-ci, on peut prévoir tout autre capteur porté par la personne et susceptible de délivrer une information sur une variable vitale de la personne (par exemple un capteur de rythme cardiaque, de pression artérielle, etc. et plus généralement de toute variable captée sur le corps humain et susceptible d'avoir une corrélation avec l'état de santé).
Le système est également doté de moyens de communication tels qu'un télétransmetteur TT pour transmettre des messages vers un centre de télésurveillance, par exemple via le réseau téléphonique commuté RTC ou encore via un réseau de téléphonie sans fil tel que cellulaire, de préférence en s'inspirant des protocoles utilisés par les professionnels de la téléalarme.
Bien entendu, le système est conçu pour être suffisamment robuste et fiable pour garantir un service 7/24 en toutes situations (coupure de l'alimentation, problèmes sur le réseau téléphonique, etc.). Ainsi, le système de l'invention est préférentiellement basé sur une plateforme de téléalarme plutôt que sur une plateforme de type ordinateur personnel, dont la fiabilité est sensiblement inférieure.
Dans une forme de réalisation préférée mais nullement limitative, la mise en œuvre de la présente invention peut être basée sur un dispositif connu sous la dénomination commerciale « QUIATIL+ » (marque déposée) et commercialisé par la société française Intervox Systèmes.
Il s'agit à la base d'un dispositif capable de relayer les alarmes provenant de plusieurs médaillons d'alarme portés par des personnes vers un centre de télésurveillance en empruntant une ligne du réseau téléphonique commuté RTC.
Aspects algorithmiques
Les fonctionnalités du système de l'invention en termes de détermination de situations d'anomalie ou d'alarme sont ici décrites par des automates à états finis dans lesquels les états stables suivants peuvent être définis :
- Normal (tout va bien),
- Doute ou anomalie (on suspecte qu'il se passe quelque chose d'anormal),
- Alarme (une situation grave a été détectée),
- Retour à la normale (une situation anormale avait été détectée mais le doute a été levé en faveur d'un retour à la normale).
Le passage d'un état stable à un autre s'effectue via une transition qui est déclenchée lorsqu'une combinaison de conditions (ici des conditions booléennes, 0 ou 1 ou vrai/faux) est remplie (changement de pièce par la personne, signal de chute, etc.). II est possible selon l'invention de prendre en compte le temps écoulé depuis le franchissement d'une transition à l'aide de variables de temporisation. Les conditions prennent également en compte différents moments de la journée en définissant des variables booléennes qui proviennent d'un découpage, figé ou flou, des périodes la journée (par exemple nuit, matin, après-midi, soir). Machine à états finis
Comme il a été mentionné plus haut, les états internes du système peuvent être représentés dans une machine à états finis dont les transitions dépendent de la dernière pièce occupée, du moment de la journée et du niveau d'activité de la personne, lui même déterminé par des temporisations. A cet égard, une étude approfondie des comportements de la personne a permis de déterminer que l'on pouvait rendre compte des diverses situations par un modèle unique d'automate dont les paramètres dépendent du contexte. On va ainsi décrire ci-dessous et en référence à la figure 2 un automate intitulé « Pièce » à partir duquel un programme pouvant être exécuté par l'unité centrale de traitement peut être écrit par l'homme du métier par de simples opérations de routine. Exemple SI « l'état présent est valide » ET « les conditions de la transition sont remplies »
ALORS
« l'état précédent est dévalidé » ET « le nouvel état est validé » ET « les actions correspondantes au nouvel état sont entreprises ».
Un exemple de programme est fourni en annexe de la présente description.
Processus de mise au point
La mise au point de la machine a états de la figure 2 et du programme correspondant fourni en annexe est avantageusement effectuée par un processus de simulation particulier, mis en œuvre cette fois-ci sur une plateforme informatique ordinaire de type PC et que l'on va maintenant décrire. Principe général
L'objectif du simulateur est d'évaluer la pertinence d'un développement algorithmique et de le confronter à différents types de scénarios de divers niveaux de gravité.
Il permet de connaître instantanément la « réponse » de l'algorithme face à un scénario proposé.
Pour simplifier l'élaboration des scénarios, on a recours à un langage semi-naturel, structuré par des « balises » et suivant des règles syntaxiques simples.
Par exemple, le scénario suivant : <scenario> 12:14:02,Chambre 12:14:03,Chute 12:14:36,Chambre
12:14:37,Sejour 12:14:47,Sejour 18:22:50,Sejour </scenario> signifie qu'une présence a été détectée à 12 h 14 mn 02 s dans la pièce
« chambre », que dans la seconde suivante le capteur de chute envoyait une
alarme, suivie par une période d'inactivité de 33 secondes, jusqu'à ce qu'on note un nouveau un signe d'activité dans la chambre, suivi par une entrée dans le séjour une seconde plus tard, et une activité plus régulière dans cette pièce. On peut ainsi supposer que le sujet a chuté dans la chambre, a perdu connaissance quelques secondes et est parvenu à se déplacer péniblement jusqu'au séjour où il a tenté d'attirer l'attention.
Un avantage d'un tel scénario dans le contexte de la présente invention est qu'il peut être écrit sans aucune connaissance informatique et transcrit directement à l'aide d'un simple logiciel d'édition de texte. Préférentiellement, un concepteur de scénario peut s'appuyer sur une interface utilisateur spécifique permettant par des actions simples de créer des scénarios plus ou moins complexes, sur des périodes plus ou moins longues, et qui permette en outre de dérouler un scénario de manière contrôlée, soit en « temps naturel », soit « pas à pas »,avec une vision des états successifs pris par la machine à états.
Un fichier de scénario est structuré en deux parties: - les paramètres de configuration délimités par des balises de configuration (<config>, </config>) - la description du scénario, délimitée par des balises de scénario
(<scenaho>, </ scenaho>), avec pour chaque événement du scénario, une balise d'événement (hh:mm, pièce, event).
L'interface utilisateur présente trois options prtincipales : a) Configuration du système Le simulateur doit être configuré en fonction des caractéristiques du lieu de vie pour lequel on va tester des scénarios. Une interface de configuration est ainsi prévue pour définir :
1 ) la liste des pièces d'un appartement,
2) les moments précis de début et fin des périodes de la journée, 3) les durées d'un certain nombre de temporisations propres à chacune des pièces et des périodes, ce qui revient à remplir un tableau du type
suivant :
L'ensemble de ces données est mémorisé dans un fichier structuré (balisé) dont l'annexe B de la présente description donne un exemple, avec la partie initialisation entre les balises (<config>, </config>) et la partie scénario entre les balises (<scenario>, </ scenario>). On notera ici que les différentes valeurs de temporisations peuvent être simplement lues dans les emplacements correspondants de la structure, ou encore calculées (par
10 exemple on peut prévoir qu'une temporisation courte est une fraction déterminée d'une temporisation longue elle-même mémorisée). b) Saisie des scénarios
L'interface de saisie des scénarios comprend de préférence des boutons, à savoir une série de 5 boutons permettant de saisir les lignes du
15 scénario, soit : hh:mm, pièce, événement, suitesuite, finfin, et un bouton permettant la visualisation du scénario créé, en utilisant de préférence un outil d'édition de texte du commerce (par exemple Wordpad, marque déposée) . c) Lancement de la simulation
20 L'interface utilisateur permet également de lancer la simulation en permettant à l'utilisateur d'identifier le scénario (chemin d'accès), et de choisir le mode « temps réel » ou « pas-à-pas ». Le simulateur affiche ensuite les valeurs résultant de l'exécution du scénario, par exemple sous la forme d'un tableau comme suit :
Implémentation
Comme on l'a indiqué plus haut, une implémentation possible et actuellement préférée de l'invention est réalisée par apport de nouvelles fonctionnalités à la plateforme de télésurveillance « QUIATIL+ » (marque déposée) commercialisée par la société française Intervox, et plus particulièrement de nouvelles fonctionnalités d'interprétation d'informations issues des capteurs disposés du système (capteur de chute CC sur la personne et détecteurs de présence CPn disposés dans les différentes zones), en vue de déterminer l'état de la personne télésurveillée parmi trois états pré-définis :
- état normal,
- alerte non vitale (ex : déambulations nocturnes anormales, station anormalement prolongée, etc.), - alerte d'urgence vitale (chute, malaise grave, etc.).
Principales fonctionnalités
Comme on l'a indiqué plus haut, le procédé selon l'invention est de préférence construit autour d'un automate à états finis du type de celui illustré sur la figure 2 et dont chaque changement d'état est induit par les données des capteurs et les données temporelles comprenant en particulier les temporisations et les moments de la journée. Les fonctions mises en jeu sont les suivantes : a) Fonction temporisation « TempoX » : boucle temporelle avec émission d'un signal à l'expiration du délai. Le délai est un paramètre de la fonction, prenant ses valeurs dans un intervalle par exemple de 1 minute à
24 heures ; le signal d'expiration est émis de façon asynchrone au
fonctionnement du programme de l'unité centrale de traitement, soit par une interruption, soit par un message de synchronisation sur événement. b) Fonction « Horaire » : fonction qui retourne l'information « moment de la journée » en fonction de l'information délivrée par l'horloge CLK interne à la plateforme ; la variable de sortie « moment de la journée » appartient à une liste de 4 éléments (valeur entière ou de type énuméré ={matin, après- midi, soir, nuit}). c) Fonction mouvement « MVT » : fonction booléenne à seuil qui prend la valeur 1 lorsqu'il y a mouvement ou 0 s'il n'y pas de mouvement. Il y a « mouvement » si un événement détecté par un capteur de présence CPn s'est produit depuis moins de x secondes pour le même lieu ; il y a au contraire absence de mouvement si le délai depuis le dernier événement capteur est supérieur ou égal à x secondes ; cette fonction peut être bâtie sur un modèle de type chien de garde qui est composé d'une temporisation de durée fixe et d'un dispositif de remise à zéro qui doit être activé avant l'échéance de la temporisation ; le paramètre, éventuellement réglable lors de la configuration du système, est placé en zone mémoire sauvegardée (Flash), avec en outre une possibilité de modification à distance via le réseau téléphonique. d) Fonction « Pièce » : fonction qui signale qu'un changement de zone vient de se produire et met à jour la zone occupée courante ; le signal d'événement est positionné (c'est-à-dire mis à 1 ) lors d'un événement issu d'un capteur de présence si ce capteur est différent du capteur courant (à savoir du capteur ayant émis l'événement de présence précédent), signalant ainsi un changement de lieu). Sa valeur est remise à zéro par la fonction automate que l'on va décrire ci-dessous ; la valeur de la zone occupée appartient à une liste de N éléments (variable entière ou énumérée). e) Fonction « Chute » : fonction qui signale que le capteur de chute CC a détecté une chute ; f) Fonction « Automate » : fonction qui calcule le nouvel état de l'automate en fonction de l'état courant et de l'événement qui vient de se
produire. Cette fonction est chargée de prendre les décisions-actions à chaque entrée dans un nouvel état.
En dehors de ces fonctions, le système inclut des fonctions de communication (fonction « Appel ») vers un centre de contrôle distant (serveur du poste de commande de téléalarme), et principalement la transmission des messages d'alerte (anomalie ou alarme) au centre de télésurveillance, avec attente d'acquittement (par le matériel distant ou mieux par un personnel du centre de télésurveillance). Il inclut également une fonction de journalisation « Journal » consistant à enregistrer les différents événements et actions dans une base de données stockée dans l'unité centrale UC.
Communications entre le système d'alarme préexistant et le système de l'invention
Le programme qui anime le système de la présente invention, exécuté dans l'unité centrale UC, effectue des appels vers le programme préexistant du système d'alarme, également exécuté dans l'unité centrale, pour :
- obtenir les valeurs des temporisations, étant rappelé ici que s'il y a N zones à surveiller et si une journée est découpée en P périodes, il existe alors NxP valeurs (l'unité étant la minute dans le présent exemple, avec une valeur comprise entre 1 et 1440 minutes pour couvrir une fenêtre temporelle de 24 heures ;
- obtenir la valeur de la temporisation « mouvements », encodée de préférence en secondes avec une valeur comprise entre 1 et 65535 (codage sur 16 bits) ; - être informé des événements externes qui se produisent sur les différents canaux correspondant aux détecteurs de présence et au capteur de chute ;
- fournir des messages destinés à être placés dans le journal des événements, avec le codage approprié ; - enfin fournir les messages d'alarme qui doivent être émis par le télétransmetteur TT vers le centre de télésurveillance.
Sur le plan de l'implémentation pratique, l'homme du métier saura concevoir une telle interface en fonction des spécifications du système de traitement hébergeant l'intelligence du système de la présente invention. Dans le présent exemple, le programme de surveillance de la personne communique avec le programme du système commercial QUIATIL+ à l'aide d'un tampon de données tournant (file) dans lequel on vient écrire les événements, au fur et à mesure qu'ils se produisent, sous la forme :
[Time/Event/Number] où
Time est un mot de 32 bits exprimant le temps écoulé, en secondes, depuis une date initiale arbitrairement fixée.
Event est un octet de codage du type d'événement,, et par exemple des événements 'e'=canal externe, 't'= tempo, 'a'=acquittement distant . Number est un mot de 16 bits qui indique le numéro de l'événement ou de la temporisation, par exemple selon l'affectation suivante :
E 0 Capteur de chute
E 1 IR entrée
E 2 IR chambre
E 3 IR salon
E 4 IR cuisine
E 5 IR WC
E 6 IR salle de bains
T 0 Tempo MVT à échéance
T 1 Tempo 1 à échéance
T 2 Tempo 2 à échéance
T 3 Tempo 3 à échéance
T 4 Tempo 4 à échéance
A 0 Acquittement distant
On va maintenant décrire, à nouveau en référence à la figure 2, un
exemple de mise en œuvre de l'invention et plus précisément quels événements conduisent à quels changements d'état et comment les alertes de premier niveau (anomalie) et de second niveau (alarme) sont générées.
Une détection de présence par un capteur de présence CPn dans la pièce Pn (référence 200) amène via la fonction Pièce 201 à l'état « présence pièce » 202. La temporisation Tempol est lancée en 203. Des mouvements au sein de cette pièce sans que la temporisation Tempol n'expire signifient une activité normale de la personne surveillée, et l'état « présence pièce » se poursuit via la fonction MVT 204. Lorsque la temporisation Tempol expire alors qu'aucun nouveau mouvement dans la pièce n'a été détecté par le capteur CPn, la fonction correspondante 206 amène à l'état « Alerte Orange » 208.
Si un nouveau mouvement est détecté avant l'expiration d'une temporisation Tempo2 lancée en 209 à l'arrivée dans l'état « Alerte Orange » 208, alors la fonction MVT/Pièce 210 amène à l'état « Invalidé » 212 suivi d'un retour à l'éat « Présence Pièce » 202 par une transition 214.
Si dans l'état « Alerte Orange » 208, à l'issue de la temporisation Tempo2, aucun mouvement n'est détecté, la fonction correspondante 216 amène à l'état « Alerte Rouge » 218, où une fonction « Appel » 220 de signalisation au centre de télésurveillance est déclenchée.
Si maintenant dans l'état 202, le capteur de chute CC donne un signal de chute, alors la fonction « Chute » 222 amène dans un état dit « Expectative » 224 où deux temporisations Tempo3 et Tempo4 sont lancées en 226. Des mouvements détectés dans cet état avant l'expiration de la temporisation Tempo3 laissent la machine à états dans le même état (transition 228). En revanche, l'absence de mouvement pendant cette durée amène via la fonction correspondante 230 à l'état « Alerte Rouge » 218 décrit plus haut. De même, la Temporisation Tempo4, de durée plus longue que
Tempo3, amène par la transition 232 à l'état susdit 218, et ce même si des
mouvements ont été détectés dans cette pièce. Ceci permet de détecter une présence prolongée dans une même pièce à la suite d'une situation d'anomalie (premier niveau). Ceci peut correspondre par exemple au cas d'une personne en difficulté mais encore un peu mobile, qui tente d'attirer l'attention des secours par exemple en agitant le bras.
On observe en outre sur la figure 2 qu'à partir des états « Présence Pièce », « Alerte Orange » et « Expectative », une fonction de type « Pièce » (234 ou 236 en particulier) peut amener la machine a états dans l'état 202 « Présence Pièce », mais correspondant à une autre pièce du lieu de vie, dotée en particulier de ses propres temporisations Tempol à Tempo4, celles-ci pouvant comme on l'a dit plus haut avoir des valeurs différentes selon les moments de la journée et pouvant être propres à la pièce considérée. On notera ici que l'on peut également prévoir des machines à états différentes selon les pièces du lieu de vie, en fonction du comportement attendu de la personne dans chaque type de pièce (un comportement « normal » dans une salle de séjour est différent d'un comportement « normal » dans une cuisine, une salle de bains, une chambre...), dans le cas où le choix de valeurs de temporisation différentes selon les pièces ne permettent pas de traiter tous les scénarios. Avantageusement, un changement de pièce induit également la remise à zéro de l'information « Chute ». On peut toutefois prévoir qu'une information chute produite dans une certaine pièce et journalisée, combinée à une absence de mouvement dans la pièce suivante, puisse donner lieu à une « Alerte Orange ». On notera également que la fonction « Journal » est mise en œuvre notamment dans des états « Alerte Orange », « Expectative », « Alerte Rouge » et « Invalidé », afin d'enregistrer tous les événements intervenus, comme on l'a mentionné plus haut.
On notera également qu'une « Alerte jaune », de niveau de gravité inférieur à celui d'une « Alerte Orange », pourra être déclenchée si on relève dans le journal des fréquences élevées d'apparition du signal «chute» suivi
d'un état dit «Expectative» qui ne sont suivies ni d'un état «Alerte orange», ni d'un état «Alerte rouge», ceci pendant une période prédéterminée, par exemple plusieurs fois par période de 24 heures.
On notera enfin qu'un acquittement ACK est nécessaire après l'appel résultant de l'état « Alerte Rouge » et le retour à l'état « Présence Pièce » faisant suite à l'état « Alerte Orange ».
Bien entendu, de nombreuses modifications peuvent être apportées au comportement de la machine à états et au programme correspondant.
De même, de nombreuses modifications peuvent être apportées quant aux types de signaux détectés, qui peuvent aller au delà d'une détection de chute et d'une détection de présence pièce par pièce.
Annexe A : Exemple de programme en langage algorithmique
//configurations horloge=00:00 Tempol=0 Tempo2=0 Tempo3=0 Tempo4=0
Compteur mouvement=0 Compteur mouvement max=4
Mouvement=l piece=nouvelle-piece=chambre deplacement=O
Event=0
//Mise à Jour des entrées
Ouvrir fichier (scénario)
Lire fichier (scénario)
Lire la liste des tempos Lire la liste des pièces
Lire le scénario
Lire l'horloge du scénario
Lire l' horloge_suivant du scénario
Moment= Déterminer le moment ( Nuit, Matin, Après-midi, Soir) piece=scenario (pièce)
Tempol=Tempol (pièce, moment) event=scenario (événement) etat=presence Tant qu'il existe un événement à traiter {
Selon (état)
{ cas présence: si (Tempol ==0 ) alors si ( MVT==0) alors etat=alerte_orange
Tempo2=Tempo2 (pièce, moment) Journal (état, pièce, horloge, tempol) envoi message (« ... ») sinon
Tempol=tempol (pièce, moment) Journal (état, pièce, horloge, tempol)
Finsi Sinon
Tempol-1 Finsi
Projet GATEM Rapport Final
12 si (event=Chute) alors etat=etat_expectative Tempo4=Tempo4 (pièce, moment) Tempo3=Tempo3 (pièce, moment) journal (état, pièce, horloge, tempol) finsi cas alerte_orange : si (MVT==1 I I déplacements) alors
Journal ("Etat invalidé", pièce, horloge) etat=presence
Tempol=Tempol (pièce, moment)
BREAK; si (Tempo2 ==0 ) alors etat=alerte-rouge
Journal (état, pièce, horloge) envoi message (« « ) sinon Tempo2 -1 Finsi
cas expectative: si (Tempo4==0) alors etat=alerte-rouge journal (état, pièce, horloge) break; sinon
Tempo4-1 finsi
Si(Tempo3 ==0) alors si (MVT ==0) alors etat=alerte-rouge journal (état, pièce, horloge) sinon // Cpt_tempo3 - 1
Tempo3=Tempo3 (pièce, moment) Finsi Sinon tempo3-l finsi si (deplacement=l) alors etat=Etat_presence tempol=tempol (pièce, moment) finsi break cas alerte_rouge : si (ACK==1) alors chute=0 etat=presence Tempol=Tempol (pièce)
default: journal (« Erreur Interne ») break;
} fin selon (état)
horloge+1;
Moment= Déterminer le moment ( Nuit, Matin, Tantôt, Soir)
si (horloge= horloge_suivant) alors
Compteur_mouvement=Compteur_mouvement_max Mouvement=l Si (event != "Ack" et event !="Chute") alors
Piece_avant=Piece Piece=event
Si (pièce avant==piece suivante) alors Piece=piece suivante Deplacement=l Sinon Déplacements Finsi sinon
Compteur mouvement= -1 si Compteur mouvement==0 alors mouvement=0 finsi finsi
} fin WHILE (1)
Annexe B : Exemple de scénario
<--chute matin, appart . 6 pièces-->
<config> <liste_pièces> chambre, cuisine, séjour, toilettes, salle-de-bain, entrée
<moment nuit, matin, tantôt, soir>
22-8, 8-12, 12-18, 18-22
<tempo_l> 5 45 12!0 120
5 45 360 360
5 45 45 45
5 45 60 60
480 45 120 30 5 15 15 15
<tempo 2>
10 10 Ï0 10
10 10 10 10
10 10 10 10 10 10 10 10
10 10 10 10
10 10 10 10
<tempo_3>
10 10 10 10 10 10 10 10
10 10 10 10
10 10 10 10
10 10 10 10
10 10 10 10 <tempo_4>
360 360 360 360 360 360 360 360 360 360 360 360 360 360 360 360 360 360 360 360 360 360 360 360 </config> <scenario> 07:50, chambre 07:51, chambre
07:52, cuisine 08:06, sdb 08:10, chute 08:30, ack </scenario>