Brevet FR2822006A1 — publié le 20020913

La présente invention concerne un procédé et un système de transmission de flux de données entre deux postes distants, reliés par un réseau de télécommunication. L'invention trouve une application avantageuse dans le domaine général de la télé-présence, notamment la télé-expertise, et plus spécifiquement dans les domaines impliquant la réalisation d'actes à distance comme la télé-échographie ou la télé-chirurgie. D'autres applications peuvent également être envisagées comme les jeux en réseau, et tous les domaines dans lesquels la manipulation à distance est nécessaire. Les techniques relevant de la télé-expertise, comme la télé- échographie, mettent en oeuvre en général deux postes distants, à savoir un poste maître, ou poste expert, qui, dans l'exemple de la télé-échographie, est celui où se trouve le médecin ou la sage-femme, et un poste esclave, ou poste patient, qui est celui où se trouve la femme enceinte à examiner. Ces deux postes sont reliés par un réseau de télécommunication qui peut être un réseau RNIS, un réseau IP ou autre. L'échange d'informations entre deux postes distants de ce type exige la transmission d'un poste à l'autre d'un certain nombre de flux de données complexes devant être traités selon des contraintes spécifiques différentes. On peut citer par exemple : - le flux de données vidéo, ou canal visio, qui véhicule dans un sens et dans l'autre les images de l'expert et du patient, ainsi que de leur environnement respectif. Ces images doivent être de bonne qualité. Il faut donc réaliser un compromis entre le débit, le nombre d'images par seconde, la définition et la taille de l'image pour une bonne vision de la scène par l'expert et une bonne communication visuelle expert/patient, essentielle dans l'établissement d'un climat de confiance face à ce nouveau type de communication. - le flux de données audio, ou canal son, qui véhicule dans un sens et dans l'autre la parole et les sons provenant des postes de l'expert et du patient. Pour obtenir une bonne qualité sonore, il faut un débit et un codage adaptés ainsi que des émetteurs et des récepteurs susceptibles d'assurer un confort d'écoute et d'expression aux participants là où ils se trouvent. Cette qualité sonore contribue également au climat de confiance. - le flux de données échographiques, ou canal échographique, qui transmet au poste de l'expert les images saisies par une sonde échographique déplacée sur l'abdomen de la patiente. Le même compromis que pour le canal visio est recherché, avec toutefois des contraintes différentes en fonction de la phase de l'acte. On peut ainsi distinguer deux modes de fonctionnement : *la phase de recherche qui peut se contenter d'images de faible définition mais qui exige un nombre d'images par seconde élevé, dû à la rapidité du mouvement de la sonde, et des délais d'encodage et de transport minimum. *ta phase de saisie ou de recherche avancée pour laquelle un nombre d'images par seconde faible suffit dans la mesure où la sonde échographique est stationnaire ou se déplace lentement. Par contre, des images de bonne définition et des délais d'encodage et de transport plus importants sont requis. - le flux de données haptiques, ou canal haptique, par lequel transitent, d'une part, les ordres de commande de la sonde échographique émis par le poste expert et, d'autre part, les informations de retour d'effort transmises par la sonde à l'expert au cours de sa télé-manipulation. Les contraintes sur ce canal sont les délais d'un bout à l'autre de la chaîne qui, idéalement, devraient être inférieurs à 10ms, la gigue et l'agencement des informations. Il faut noter qu'avec un réseau synchrone RNIS, l'agencement est résolu, la gigue est minimisée et les délais sont faibles. - le flux de données de commande, ou canal de contrôle de commande. Ce canal doit toujours être disponible, mais ne présente pas de contraintes particulières. Il concerne, d'une manière générale, les initialisations, les réglages, les changements d'état des flux visiophonique (visio et audio), échographique et haptique. Or, il est essentiel que, malgré les contraintes qui leur sont imposés, tous ces flux soient traités avec la plus grande précision afin que l'examen effectué sous télé-échographie fournisse des résultats aussi fiables que possible. Il est en effet nécessaire de permettre à l'expert distant de contrôler dans les meilleures conditions le déplacement de la sonde échographique. A tout instant de l'examen, l'expert doit, en temps réel, disposer d'une vision complète de l'ensemble de la scène, dialoguer avec la patiente et avec le personnel soignant présent, contrôler les paramètres d'acquisition de l'échographe, visualiser les images échographiques, et indiquer, en déplaçant une sonde virtuelle qu'il tient à la main, le sens des déplacements souhaités pour la sonde réelle. De plus, l'expert doit contrôler sur la qualité des images échographiques la manière dont ses ordres de déplacement sont effectivement pris en compte, et, éventuellement, adapter ses ordres grâce aux informations de retour d'effort qu'il reçoit sur sa sonde virtuelle concernant la pression exercée sur la sonde réelle. De leur côté, la patiente ou le personnel présent doivent pouvoir initialiser la position du système de déplacement de la sonde échographique, dialoguer avec l'expert situé sur l'autre poste, interrompre le déplacement de la sonde et redonner les commandes à l'expert après une telle interruption, éventuellement déplacer la sonde manuellement selon les indications vocales de l'expert pour faire face à des situations de blocage du système. Aussi, le problème technique à résoudre par l'objet de la présente invention est de proposer un procédé de transmission de flux de données entre deux postes distants, reliés par un réseau de télécommunication, qui permettrait de traiter de manière uniforme un ensemble de flux de données différents tout en respectant les contraintes spécifiques associées à chacun desdits flux, notamment le flux de données haptiques.. La solution au problème technique posé consiste, selon la présente invention, en ce que ledit procédé comprend les étapes consistant : - d'une part, à traiter chacun desdits flux de données reçu d'un desdits postes conformément à un protocole de communication unique, commun à tous les flux de données, dans lequel les données sont organisées en paquets de données constitués selon un format comprenant, au moins, un champ d'identification de flux, un champ de priorité affectée audit flux et un champ de données proprement dites, et à émettre lesdits paquets de données vers l'autre desdits postes à travers le réseau de télécommunication en fonction de leur priorité respective, - d'autre part, à traiter chaque paquet de données reçu de l'autre desdits postes en fonction de la priorité inscrite dans ledit champ de priorité dudit paquet, et à fournir audit poste l'identification du flux correspondant, inscrite dans ledit champ d'identification, ainsi que les données contenues dans ledit champ de données. De même, selon l'invention, un système de transmission de flux de données entre deux postes distants, reliés par un réseau de télécommunication, est remarquable en ce que chaque poste est équipé d'un module de communication identique apte : - d'une part, à traiter chacun desdits flux de données reçu du poste associé conformément à un protocole de communication unique, commun à tous les flux de données, dans lequel les données sont organisées en paquets de données constitués selon un format comprenant, au moins, un champ d'identification de flux, un champ de priorité affectée audit flux et un champ de données proprement dites, et à émettre lesdits paquets de données vers le module de communication de l'autre desdits postes à travers le réseau de télécommunication en fonction de leur priorité respective, - d'autre part, à traiter chaque paquet de données reçu du module de communication de l'autre desdits postes en fonction de la priorité inscrite dans ledit champ de priorité dudit paquet, et à fournir au poste associé l'identification du flux correspondant, inscrite dans ledit champ d'identification, ainsi que les données contenues dans ledit champ de données. Ainsi, comme on le verra en détail plus loin, l'invention réalise un certain nombre d'objectifs, en particulier : - un délai de transfert minimum pour la transmission sur le canal haptique. En effet, compte tenu des temps intrinsèques de quelques millisecondes pour la commutation d'un intervalle de temps à travers un réseau public commuté, la plus grande partie des délais de transmission sont imputables aux terminaux. En minimisant la complexité logicielle de la chaîne de communication, tout en gardant une solution standard et largement répandue sur le territoire national, l'invention permet d'obtenir des valeurs de temps de transfert de bout en bout se rapprochant de la dizaine de millisecondes. Bien entendu, comme cela a déjà été dit plus haut, l'utilisation d'un réseau RNIS apporte par sa nature même des garanties dans les délais d'acheminement des données, dans la gigue de ces délais et dans l'agencement des informations. - une architecture modulaire rendant indépendante la gestion des flux de données du support de communication utilisé, et permettant d'ajouter, ou supprimer, à volonté certains flux. - la mise en forme des flux de données sous un protocole de communication spécifique. - la gestion des priorités entre les différents flux de données à transmettre. La description qui va suivre en regard des dessins annexés, donnés à titre d'exemples non limitatifs, fera bien comprendre en quoi consiste l'invention et comment elle peut être réalisée. La figure 1 est un schéma montrant l'architecture générale du système de transmission de données conforme à l'invention. La figure 2 est un schéma montrant l'architecture d'un module de communication du système de la figure 1. La figure 3 est un schéma donnant un format de paquet de données d'un protocole de communication utilisé dans le système de la figure 1. Sur la figure 1 est représenté un système de transmission de flux de données entre deux postes distants 1,2 reliés par un réseau 3 de télécommunication RNIS, IP ou autre. Dans la suite, on prendra l'exemple particulier d'un système de télé- échographie entre le poste 1 d'un expert, généralement un médecin, et le poste 2 d'une patiente entourée d'un personnel spécialisé. Ces postes 1,2 sont équipés de manière à pouvoir échanger des flux de données variés permettant d'effectuer l'examen de télé-échographie dans les meilleures conditions. On trouve notamment l'ensemble des flux de données visiophoniques (3), (3') qui permettent à un poste de recevoir les images et le son saisis dans l'environnement de l'autre poste. Ces flux permettent au médecin et à la patiente de se voir et de se parler, dans le contexte du climat de confiance dont il a été question plus haut. A cet effet, des caméras 111,211, des moniteurs TV 112,212, des microphones 121,221 et des hauts parleurs 122,222 sont installés respectivement sur les postes 1 et 2. Les flux de données haptiques (1), (1') sont échangés entre une sonde virtuelle 130 manipulée par le médecin sur le poste expert 1 et un robot 230 portant la sonde échographique 240, tous deux étant situés sur le poste patient 2. Ledit robot 230 reproduit à distance les mouvements de la sonde 130 correspondant aux déplacements que le médecin souhaite vouloir appliquer à la sonde échographique 240. D'autre part, le robot 230 transmet à la sonde virtuelle 130 les efforts de pression exercés par l'abdomen de la patiente sur la sonde 240 au cours de l'examen. Ce type d'informations de retour d'effort est essentiel pour le médecin car elles lui permettent de repérer avec précision l'endroit de l'abdomen où se trouve la sonde échographique 240, et donc de pouvoir la déplacer en toute connaissance de cause. Les flux de données échographiques (2), (2') concernent la transmission des images fournies par la sonde 240 du poste patient 2 à un moniteur TV 140 du poste expert 1. Comme le montre la figure 1, chaque poste 1,2 est équipé d'un module 10,20 de communication identique apte à traiter les divers flux de données venant du poste associé ou du poste distant, en tenant compte au mieux des contraintes imposées à ces différents flux. Dans ce but, les flux de données reçus du poste associé sont traités conformément à un protocole de communication unique, commun à tous les types de flux, dans lequel les données sont organisées selon un format dont un exemple de constitution est donné sur la figure 3. Les champs indiqués sur cette figure sont, dans l'ordre : - Idp qui est un identificateur du flux transmis, à savoir visiophonique, haptique ou échographique. Ce champ a, par exemple, une longueur de 8 bits. - P qui est un indicateur de priorité. Ce champ d'une longueur de 2 bits peut prendre les valeurs 0 pour une priorité haute, 1 pour une priorité moyenne et 2 pour une priorité faible. - A qui est un champ facultatif de demande d'acquittement des messages par les périphériques de bas niveau. Si A=1 un acquittement est requis, sinon A=0. - Tsp qui est une information du temps machine au moment de l'émission. D'une longueur typique de 12 bits, ce champ est utilisé pour la synchronisation des flux. - Lg qui est la longueur du champ DATA en octet. Ce champ a une longueur de l'ordre de 16 bits. - DATA qui contient les données à transmettre. Sa longueur est la valeur du champ Lg. - CCE qui est un code de contrôle d'erreur. Ce champ facultatif permet de sécuriser le transport des données. Un mode de réalisation d'un module 10 de communication va maintenant être décrit en regard de la figure 2. Le module de la figure 2 comprend un sous-module 11 de mise en forme qui lit en temps réel les données des différents flux reçus du poste associé 1 au travers des périphériques de haut niveau. En fonction de ces flux, le sous-module 11 constitue les paquets de données selon le format du protocole de communication de la figure 3 et renseigne les champs Idp d'identification, le champ P de priorité, le champ A d'acquittement, le champ Lg de longueur et le champ DATA de données. Les paquets de données sont ensuite répartis dans un sous-module 12 de mise en attente réalisé à base de files d'attente de type FIFO, chaque file étant associée à un niveau du champ P de priorité. Dans l'exemple choisi, trois files ont été définies : FIFO#O, FIFO#1 et FIFO#2 correspondant respectivement aux niveaux de priorité haute, moyenne et faible. Un sous-module 13 d'émission lit en temps réel les files d'attente d'émission du sous-module 12 et émet sur le réseau de télécommunication les paquets de données par ordre de priorité en vidant d'abord la file FIFO#O, puis la file FIFO#1 et enfin la file FIFO#2. Afin d'éviter la monopolisation du canal de transmission par un seul niveau de priorité, on définit des valeurs maximum de lectures consécutives par type de file d'attente. Le champ Tsp est renseigné à ce moment. Lorsqu'un paquet de données est reçu du réseau de télécommunication, il est pris en charge par un sous-module 14 de réception qui lit le champ P de priorité du paquet et le dépose dans la file d'attente qui convient du sous-module 12 de mise en attente. Enfin, un sous-module 15 d'identification lit en temps réel les files d'attente de réception par ordre de priorité en vidant successivement les files FIFO#0 FIFO#1 et FIFO#2. Là encore des valeurs maximum de lectures consécutives par type de file sont définies afin de ne pas monopoliser le canal de transmission par un seul niveau de priorité. Les contenus des champs Idp, A et DATA sont extraits des paquets, les données du champ DATA étant fournies au poste associé en réception au travers des périphériques de haut niveau identifiés par le champ d'identification Idp. De manière facultative, si la valeur du champ A d'acquittement est égale à 1, un accusé de réception est établi et déposé dans une file d'attente d'émission. REVENDICATIONS 1. Procédé de transmission de flux de données entre deux postes (1 ; 2) distants, reliés par un réseau de télécommunication, caractérisé en ce que ledit procédé comprend les étapes consistant : - d'une part, à traiter chacun desdits flux de données reçu d'un (1) desdits postes conformément à un protocole de communication unique, commun à tous les flux de données, dans lequel les données sont organisées en paquets de données constitués selon un format comprenant, au moins, un champ (lop) d'identification de flux, un champ (P) de priorité affectée audit flux et un champ (DATA) de données proprement dites, et à émettre lesdits paquets de données vers l'autre (2) desdits postes à travers le réseau de télécommunication en fonction de leur priorité respective, - d'autre part, à traiter chaque paquet de données reçu de l'autre (2) desdits postes en fonction de la priorité inscrite dans ledit champ (P) de priorité dudit paquet, et à fournir audit poste (1) l'identification du flux correspondant, inscrite dans ledit champ (Idp) d'identification, ainsi que les données contenues dans ledit champ (DATA) de données. 2. Système de transmission de flux de données entre deux postes (1 ; 2) distants, reliés par un réseau de télécommunication, caractérisé en ce que chaque poste est équipé d'un module (10 ; 20) de communication identique apte : - d'une part, à traiter chacun desdits flux de données reçu du poste associé (1 ; 2) conformément à un protocole de communication unique, commun à tous les flux de données, dans lequel les données sont organisées en paquets de données constitués selon un format comprenant, au moins, un champ (lop) d'identification de flux, un champ (P) de priorité affectée audit flux et un champ (DATA) de données proprement dites, et à émettre lesdits paquets de données vers le module (20 ; 10) de communication de l'autre (2 ; 1) desdits postes à travers le réseau de télécommunication en fonction de leur priorité respective, - d'autre part, à traiter chaque paquet de données reçu du module (20 ; 10) de communication de l'autre (2 ; 1) desdits postes en fonction de la priorité inscrite dans ledit champ (P) de priorité dudit paquet, et à fournir au poste associé (1 ; 2) l'identification du flux correspondant, inscrite dans ledit champ (Idp) d'identification, ainsi que les données contenues dans ledit champ (DATA) de données. 3. Module de communication destiné à équiper des postes distants (1 ; 2), reliés par un réseau de télécommunication, dans un système de transmission de flux de données entre lesdits postes distants, caractérisé en ce que ledit module (10 ; 20) de communication est apte à : - d'une part, à traiter chacun desdits flux de données reçu du poste associé (1 ; 2) conformément à un protocole de communication unique, commun à tous les flux de données, dans lequel les données sont organisées en paquets de données constitués selon un format comprenant, au moins, un champ (Idp) d'identification de flux, un champ (P) de priorité affectée audit flux et un champ (DATA) de données proprement dites, et à émettre lesdits paquets de données vers le module (20 ; 10) de communication de l'autre (2 ; 1) desdits postes à travers le réseau de télécommunication en fonction de leur priorité respective, - d'autre part, à traiter chaque paquet de données reçu du module (20 ; 10) de communication de l'autre (2) desdits postes en fonction de la priorité inscrite dans ledit champ (P) de priorité dudit paquet, et à fournir au poste associé (1) l'identification du flux correspondant, inscrite dans ledit champ (top) d'identification, ainsi que les données contenues dans ledit champ (DATA) de données. 4. Module de communication selon la revendication 3, caractérisé en ce que ledit module (10) de communication comprend : - d'une part, *un sous-module (11) de mise en forme apte à constituer lesdits paquets de données et renseigner le champ (top) d'identification de flux, le champ (P) de priorité et le champ (DATA) de données du format dudit protocole de communication en fonction des flux reçus du poste associé (1), *un sous-module (12) de mise en attente comprenant des files d'attente associées, chacune, à une priorité du champ (P) de priorité, et apte à répartir lesdits paquets de données dans lesdites files d'attente en fonction de leur priorité, *un sous-module (13) d'émission apte à émettre les paquets de données vers le module (20) de communication de l'autre poste (2) en vidant lesdites files d'attente en fonction de leur priorité, - d'autre part, *un sous-module (14) de réception apte à recevoir les paquets de données reçus du module (20) de communication de l'autre poste (2) et à les transmettre audit sous-module (12) de mise en attente, *un sous-module (15) d'identification apte à vider les files d'attente en fonction de leur priorité, à extraire le champ (lop) d'identification de flux des paquets de données et fournir au poste associé (1) les données contenues dans ledit champ (DATA) de données avec leur identification.