FR 2832523 A1 20030523 FR 0114860 A 20011116 L'invention concerne les systèmes de commande pour convertisseurs statiques de puissance ayant une pluralité de composants semi-conducteurs de puissance du type MOSFET, IGBT, IGCT, transitor bipolaire, GTO, ETO, thyristor,... etc. Ce type de convertisseur est utilisé par exemple pour transformer un courant alternatif en courant continu à l'entrée d'un câble de transport électrique sous marin. Un tel convertisseur est décrit notammment dans le document US-6288921. Il peut comporter un très grand nombre de composants de puissance fonctionnant comme des interrupteurs qui sont commutés de manière simultanée et de manière cyclique à une certaine fréquence de commutation dépendant de l'application. Le système de commande élabore à chaque cycle de commutation la pluralité de signaux de commutation qui sont appliqués de manière simultanée sur la borne d'entrée des composants de puissance. Chaque signal de commutation a une forme binaire du type O/N pour ouvrir (allumer) ou fermer (éteindre) le composant de puissance. L'invention concerne plus particulièrement un système de commande numérique à architecture distribuée comprenant des modules de commande connectés à la borne d'entrée des composants de puissance et communiquant à distance avec un processeur maître par l'intermédiaire d'un réseau de communication temps réel à liaison de communication série. Un tel système de commande numérique à architecture distribuée est décrit dans le document IEEE PESC, Galway, Ireland, June 2000, pages 113 à 118 intitulé A New Control Architecture For Distributed Power Electronics Systems . Une architecture distribuée offre des avantages considérables en termes de modularité, de flexibilité et de fonctionnalité du système de commande en comparaison avec une architecture centralisée. En particulier, le réseau de communication temps réel peut être utilisé pour transférer vers le processeur maître des informations extraites des composants de puissance comme des mesures de courant, de tension d'entrée et de sortie, de température,... etc, ces composants de puissance faisant partie du même convertisseur de puissance ou de convertisseurs de puissance différents. Toutefois, une liaison de communication série comme un bus, engendre des écarts de temps de propagation des trames réseau entre le processeur maître et les modules de commande. Ces derniers doivent donc être synchronisés pour compenser les écarts de temps de propagation de telle manière à produire de manière simultanée les signaux de commutation à partir d'un ordre général de commutation provenant du processeur maître qui pilote l'application. Dans le document IEEE PESC, la compensation des écarts de temps de propagation de données est basée sur l'utilisation d'une trame réseau contenant des zones de remplissage dont la longueur correspond aux écarts de temps de propagation. Le but de l'invention est de proposer un autre procédé pour compenser les écarts de temps de propagation de données dans un système de commande à architecture distribuée comprenant des modules de commande communiquant à distance avec un processeur maître par l'intermédiaire d'un réseau de communication temps réel à liaison de communication série, de manière qu'un ordre produit par le processeur maître soit exécuté de manière simultanée par les modules de commande. Selon l'invention, ce procédé comprend une phase de calibration consistant : à envoyer depuis le processeur maître une première trame réseau identifiant un module particulier et forçant ce dernier à répondre par émission d'une seconde trame réseau, pour mesurer dans le processeur maître le temps de réponse dudit module, et à répéter ce traitement dans le processeur maître pour chaque module de manière à déterminer, à partir des temps de réponse mesurés pour les différents modules, des durées de synchronisation correspondant respectivement aux différents écarts de temps de propagation des données entre le processeur maître et les différents modules, et une phase de synchronisation consistant : à envoyer depuis le processeur maître une troisième trame réseau contenant les différentes durées de synchronisation affectées respectivement aux différents modules, et à retarder l'exécution, dans chaque module, d'un ordre transmis dans la troisième trame réseau de la durée de synchronisation affectée audit module, cette durée de synchronisation étant décomptée à partir de l'instant de détection dans ledit module de la réception d'un signal de référence inclus dans la troisième trame réseau. D'autres caractéristiques et avantages du procédé selon l'invention apparaîtront à la lecture de la description qui suit d'un exemple de réalisation illustré par les dessins. La figure 1 est une représentation très schématique de l'architecture distribuée du système de commande selon l'invention. La figure 2 est une représentation très schématique d'une variante de l'architecture distribuée du système de commande selon l'invention. La figure 3 représente schématiquement le format d'une première trame réseau utilisée par le protocole de communication réseau. La figure 4 représente schématiquement le format d'une seconde trame réseau utilisée par le protocole de communication réseau. La figure 5 représente schématiquement le format d'une troisième trame réseau utilisée par le protocole de communication réseau. La figure 6 représente schématiquement le format d'une quatrième trame réseau utilisée par le protocole de communication réseau. La figure 7 illustre schématiquement un échange de trames réseau entre le processeur maître et les modules de commande lors d'une phase de calibration des sous-modules de haut niveau. La figure 8 illustre schématiquement un échange de trames réseau entre le processeur maître et les modules de commande lors d'une phase de synchronisation des sous-modules de haut niveau et de commutation des composants de puissance. La figure 9 est un organigramme illustrant le fonctionnement du processeur maître. La figure 10 est un organigramme illustrant le fonctionnement d'un sousmodule de haut niveau. Les figures 1 et 2 montrent quelques composants de puissance 11, 12, tm, ln faisant partie d'un convertisseur statique de moyenne ou haute puissance. Il faut bien comprendre qu'un tel convertisseur peut comprendre plusieurs centaines de composants de puissance. Par exemple, un convertisseur très haute puissance correspondant à une tension de 200 kV peut comprendre 1200 composants de puissance, de 2 kV chacun. Le système de commande numérique selon l'invention a une architecture distribuée et comprend un certain nombre de modules de commande S1, S2, Sn qui sont connectés à la borne d'entrée (gachette d'allumage) des composants de puissance semi-conducteurs 11, 12, tm, ln et qui communiquent à distance avec un processeur maître UC par l'intermédiaire d'un réseau de communication temps réel standard du type réseau de terrain dont la structure est une liaison de communication série sous la forme d'un bus conducteur 1. Le processeur maître UC qui dispose de l'arbitre de bus pilote l'application tandis que les modules de commande se comportent en esclaves. Sur les figures 1 et 2, la référence 2 désigne les interfaces de communication réseau qui sont incluses dans le processeur maître et dans les modules de commande. Le protocole de communication utilisé par le réseau de terrain est un protocole déterministe, par exemple WorldFIP, et l'arbitre de bus dans le processeur maître a un cycle de fonctionnement qui est calé sur la fréquence de commutation des composants de puissance du convertisseur. Généralement la fréquence de commutation est de quelques centaines de hertz à quelques kilohertz, par exemple entre 1 et 20 kHz. Le bus conducteur 1 peut être un bus cuivre constitué par une paire de fils torsadés en cuivre. Ce type de bus réseau est bon marché et convient bien pour la topologie des convertisseurs statiques très haute puissance où le processeur maître peut être éloigné des composants de puissance d'une distance supérieure à une centaine de mètres. Le bus cuivre contribue à la fiabilité de fonctionnement du réseau par exemple en cas de dysfonctionnement d'une interface de communication réseau 2 dans un des modules de commande et à la disponibilité du système de commande. Comme visible sur les figures 1 et 2, chaque module de commande est subdivisé en un sous-module dit de haut niveau tel que HL1, HL2, HLn comprenant une interface de communication réseau 2 pour être connecté au bus cuivre 1 et un ou plusieurs sous-modules dit de bas niveau tels que LL1, LL2, LL3, LLn. Chaque sous-module de bas niveau comporte une alimentation électrique 5 isolée et intégre outre la fonction de génération d'un signal de commutation pour la borne d'entrée d'un composant de puissance, des fonctions d'extraction d'informations dans le composant de puissance concernant le courant, la tension, la température,... etc. Chaque sous-module de bas niveau est connecté à un sous-module de haut niveau par l'intermédiaire d'une liaison de communication 3 formant barrière d'isolation électrique, cette liaison de communication 3 pouvant être par exemple une liaison à fibre optique. Sur les figures 1 et 2, la référence 4 désigne les interfaces de communication sur fibre optique qui sont incluses dans les sous-modules de haut niveau et de bas niveau. Dans le système de commande selon l'invention à deux niveaux de communication, la liaison de communication série 1 à haut débit n'a pas besoin d'être isolée car ce sont les liaisons de communication à fibre optique 3 qui constituent la barrière d'isolation électrique BI. Ces liaisons de communication à fibre optique 3 ont une même longueur pour ne pas créer de retard de propagation des données provenant du processeur maître. La bande passante des liaisons de communication à fibre optique 3 peut être relativement faible car d'une part, les informations qui sont extraites des composants de puissance par les sous-modules de bas niveau n'ont généralement pas à être transmises vers le processeur maître dans des temps critiques, et d'autre part, l'ordre général de commutation produit cycliquement par le processeur maître arrive dans les sousmodules de bas niveau à une fréquence relativement basse qui est la fréquence de commutation. Il en résulte que les liaisons de communication 3 peuvent être réalisées avec des fibres optiques en une matière plastique facile à travailler, légère et bon marché. Avec cette architecture distribuée, les sous-modules de haut niveau sont libérés des tâches de bas niveau sur les circuits de puissance des composants de puissance et le haut niveau logique de l'application peut être distribué sur le processeur maître et les sous-modules de haut niveau de manière flexible et reconfigurable par programme. Sur la figure 1, chaque module de commande est constitué d'un sous-module de haut niveau et d'un sous-module de bas niveau. Le composant de puissance connecté au sous-module de bas niveau peut correspondre à une série de composants de puissance fonctionnant en commutation de manière identique, c'est-à-dire recevant tous le même signal de commutation. Sur la figure 2, chaque module de commande est constitué d'un sous-module de haut niveau et de deux sous-modules de bas niveau. Avec cette construction, il est possible, à partir d'un sous-module de haut niveau, d'actionner de manière complémentaire deux composants de puissance (ou deux séries de composants de puissance) à travers des liaisons de communication à fibre optique 3 séparées ce qui permet d'augmenter simplement et facilement la capacité de pilotage du système de commande avec un nombre limité de sous-modules de haut niveau. La structure en bus du réseau de communication induit des écarts de temps de propagation des trames réseau du processeur maître vers les sous-modules de haut niveau. Plus particulièrement, une trame réseau envoyée sur le bus 1 par le processeur maître sera reçue à des instants différents par les sousmodules de haut niveau. Il en résulte que ces écarts de temps de propagation doivent être compensés de manière à assurer un fonctionnement synchrone des sous-modules de haut niveau lors de la phase de commutation des composants de puissance. L'utilisation d'un protocole de communication standard déterministe tel que WorldFIP apporte l'avantage de pouvoir utiliser des mécanismes réseau permettant la détection automatique des abonnés sur le réseau et une localisation des abonnés sur le réseau. La synchronisation des sous-modules de haut niveau pendant la phase de commutation des composants de puissance est précédée d'une phase de calibration réalisée de manière automatique par le processeur maître en utilisant les mécanismes réseau WorldFIP. Le calibrage des sous-modules de haut niveau consiste, par emission et réception de trames réseau depuis le processeur maître, à mesurer automatiquement le temps de propagation aller et retour d'une trame réseau et le temps de retournement de chaque sous-module de haut niveau de manière à déterminer par calcul dans le processeur maître une durée de synchronisation à appliquer dans chaque sous-module de haut niveau pour le faire fonctionner de manière synchrone avec les autres sous-modules de haut niveau. Les figures 3 à 6 montrent schématiquerment le format de trames réseau qui sont utilisées dans la phase de calibration et dans la phase de synchronisation et de commutation. La trame réseau TI montrée sur la figure 3 est une trame d'autorisation d'émission utilisée pour faire produire une donnée par un abonné. La donnée est identifiée par un mot ID transporté dans la trame réseau Tl qui est produite par l'arbitre de bus exclusivement. La trame réseau TC montrée sur la figure 4 est une trame transportant la commande utilisée dans la phase de synchronisation et de commutation. Elle contient des mots de données DATA qui sont des données de synchronisation et de commutation quand elle est produite par l'arbitre de bus. La trame réseau TP montrée sur la figure 5 est une trame utilisée dans la phase de calibration pour le calcul des durées de synchronisation. Elle contient un mot de données STATUS retourné par un abonné pour permettre son identification et sa localisation. La trame réseau TM montrée sur la figure 6 est une trame utilisée dans la phase de synchronisation et de commutation. Elle transporte un mot de données MES contenant une mesure produite à chaque cycle de commutation par les abonnés à tour de rôle. Toutes les trames réseau TI, TC, TP, TM comportent un mot de début de trame DTR et un mot de fin de trame FTR. Dans le protocole standard WorldFIP, la trame réseau TI est une trame du type IDDAT et les trames réseau TC, TM, TP sont des trames du type RPDAT . Dans un système de commande comprenant 32 sous-modules de haut niveau, les trames réseau TI, TM, TP peuvent avoir une longueur de 8 octets et la trame réseau TC peut avoir une longueur de 136 octets avec 4 octets réservés pour chaque sous-module de haut niveau. La figure 7 illustre le déroulement de la phase de calibration des sousmodules de haut niveau. Le processeur maître UC envoie sur le bus 1 une succession de trames réseau Tt qui identifient chacune dans le mot ID l'adresse logique d'un sous-module de haut niveau particulier. Chaque sous-module de haut niveau, en réponse à la réception d'une trame réseau TI contenant un mot ID correspondant à l'adresse logique du sous-module dans le réseau, renvoie sur le bus 1 une trame réseau TP. Sur la figure 7, on a représenté 3 séquences d'émission réception de trames Ti et TP respectivement pour les 3 sous-modules de haut niveau HL1, HL2 et HLn. Les temps de réponse ATi, ATs, ATn comme expliqué plus loin, respectivement des sous-modules de haut niveau, peuvent être déterminés avec une grande précision par le processeur maître UC par déclenchement d'un compteur de temps à l'émission du mot de fin de trame FTR de la trame réseau TI et par arrêt du compteur de temps à la réception du mot de début de trame DTR de la trame réseau TP. A chaque séquence de la phase de calibration, le compteur de temps dans le processeur maître comptabilise le temps de propagation de la trame réseau TI du processeur maître jusqu'à un sous-module de haut niveau, le temps de retournement dans le sous-module de haut niveau et le temps de propagation de la trame réseau TP du sous-module de haut niveau jusqu'au processeur maître. Le cumul des temps de propagation des trames TI et TP et du temps de retournement pour un sous-module de haut niveau est appelé temps de réponse du sous-module de haut niveau. Une détection très précise de l'instant d'émission et de réception des mots de début et de fin de trame DTR et FTR dans les trames réseau TI et TP peut être obtenue dans le processeur maître à l'aide d'un circuit du type FPGA implémentant le protocole de communication WorldFIP. Ce même type de circuit est utilisé dans chaque sous-module de haut niveau pour implémenter le protocole de communication et rendre constant le temps de retournement d'un sous-module de haut niveau à l'autre. Il en résulte que les durées de synchronisation à appliquer dans chaque sous-module de haut niveau peuvent être obtenues par la relation suivante : Rn = 1/2. (ATmax-ATn) où Rn désigne la durée de synchronisation affectée au sous-module de haut niveau HLn (l'indice n correspondant à l'adresse logique affectée au sous-module de haut niveau) ATmax désigne le temps de réponse maximal mesuré par le processeur maître ATn désigne le temps de réponse mesuré par le processeur maître pour le sous-module de haut niveau HLn L'algorithme de la figure 9 illustre le fonctionnement du processeur maître lors d'une phase de calibration. A l'initialisation du système de commande, le processeur maître initialise un compteur de temps CT en 105 et envoie en 110 une trame réseau TI identifiant dans le mot ID l'adresse logique d'un sousmodule de haut niveau symbolisée par la variable n. Sur détection de l'émission du mot de fin de trame FTR de la trame réseau Tl, le compteur de temps CT est déclenché pour comptabiliser le temps jusqu'à ce qu'une trame réseau TP soit reçue sur le bus 1 par le processeur maître (bloc 115). Le compteur de temps CT est arrêté sur détection de la réception du mot de début de trame DTR de la trame réseau TP. La valeur du compteur de temps CT, représentative du temps de réponse du sous-module de haut niveau, est maintenue en mémoire en 120 dans le processeur maître. Une phase subséquente de calibration recommence à partir du bloc 105 pour une nouvelle adresse logique de sous-module de haut niveau et ainsi de suite jusqu'à ce que le processeur maître ait balayé dans le bloc 125 tous les sous-modules de haut niveau connectés au bus 1. Les durées de synchronisation R1, R2,... Rn des sous-modules de haut niveau sont ensuite calculées en 130 selon la relation indiquée plus haut. A partir du bloc 130, le processeur maître UC est prêt pour la phase de synchroniation et de commutation. La figure 8 illustre le déroulement de la phase de synchronisation et de commutation. La phase de synchronisation et de commutation consiste pour le processeur maître UC à envoyer sur le bus 1 successivement une trame réseau TI identifiant dans le mot ID une donnée de commande, suivie d'une trame réseau TC contenant dans le mot DATA les durées de synchronisation R1, R2, .... Rn affectées respectivement aux sous-modules de haut niveau avec les ordres de commutation C1, C2,... Cn destinés respectivement aux sous-modules de haut niveau, suivie d'une trame réseau TI identifiant dans le mot ID l'adresse logique d'un sous-module de haut niveau particulier. A chaque cycle de la phase de synchronisation et de commande, chaque sous-module de haut niveau envoie sur le bus 1 vers le processeur maître UC en réponse à la seconde trame réseau TI, une trame réseau TM contenant dans le mot MES les informations extraites d'un ou de plusieurs composants de puissances par les sous-modules de bas niveau. En se reportant de nouveau à la figure 9, la phase de synchronisation et de commande dans le processeur maître débute en 135 par l'émission d'une trame réseau TI contenant un mot ID qui identifie une commande pour tous les sousmodules de haut niveau. La valeur de ce mot ID est symbolisée sur la figure 9, pour des raisons de clarté, par le symbole #. Puis le processeur maître envoie une trame réseau TC en 140 contenant toutes les durées de synchronisation calculées dans le bloc 130 avec les ordres de commutation destinés respectivement aux sous-modules de haut niveau. Le formatage de la trame réseau TC avec les durées de synchronsiation R1, R2,... Rn et les ordres de commutation Cl, C2,.... Cn est illustré sur la figure 4. Puis une nouvelle trame réseau Tl contenant un mot ID qui identifie l'adresse logique d'un sous-module de haut niveau particulier est envoyée en 145 sur le bus 1 et le processeur maître attend en 150 le retour d'une trame réseau TM envoyée par le sousmodule de haut niveau identifié dans le mot ID de la trame réseau Tl précédente. Un cycle subséquent de synchronisation et de commutation recommence à partir du bloc 135 pour de nouveaux ordres de commutation et une nouvelle adresse logique de sous-module de haut niveau et ainsi de suite jusqu'à ce que le processeur maître ait balayé dans le bloc 155 tous les sous-modules de haut niveau connectés au bus 1. Au fur et à mesure des cycles de synchronisation et de commutation, les informations extraites dans les composants de puissance remontent à travers le réseau vers le processeur maître aux fins d'un réglage de l'application. La figure 10 illustre le fonctionnement d'un sous-module de haut niveau pendant la phase de calibration et pendant la phase de synchronisation et de commutation. En réponse à la détection d'une trame réseau TI sur le bus 1, le sous-module de haut niveau détecte en 200 si le mot ID de la trame TI correspond à son adresse logique et dans ce cas il envoie en 210 une trame réseau TP, ou bien si le mot ID de la trame réseau TI correspond à une commande de sous-module de haut niveau (10=#) et dans ce cas le sousmodule de haut niveau initialise en 220 un compteur de temps CL et attend en 225 la réception d'une trame réseau TC. Dès détection de la réception du mot de fin de trame FTR de la trame réseau TC, le compteur de temps CL est déclenché (bloc 230). Avant l'étape 230, le sous-module de haut niveau a extrait de la trame réseau TC, la durée de synchronisation Rn qui lui est affectée et l'ordre de commutation Cn qu'il doit appliquer sur les composants de puissance auxquels il est connecté. Quand le compteur de temps CL a comptabilisé la durée de synchronisation Rn en 235, le sous-module de haut niveau transmet en 240 l'ordre de commutation Cn à un ou plusieurs sous-modules de bas niveau à travers les liaisons de communication à fibre optique 3 et les sous-modules de bas niveau génèrent à leur tour chacun un signal de commutation qui est appliqué sur la borne d'entrée d'un composant de puissance. Dans le sousmodule de haut niveau, le traitement se poursuit en 250, avec la réception d'une nouvelle trame réseau T) contenant un mot ID correspondant à une adresse logique de sous-module. Si cette adresse logique dans le mot ID correspond à celle du sous-module, il renvoie en 255 une trame réseau TM avec un mot MES contenant des informations de mesure avant de revenir à l'étape 200. L'instant d'émission du mot de fin de trame FTR (dernier bit du mot FTR) de la trame réseau Tt ou l'instant de réception du mot de début de trame DTR (dernier bit du mot DTR) de la trame réseau TP dans le processeur maître est détecté par l'interface de communication réseau 2 de celui-ci. De la même façon, l'instant de réception du mot de fin de trame FTR (dernier bit du mot FTR) de la trame réseau TC dans chaque sous-module de haut niveau est détecté par l'interface de communication réseau 2 de celui-ci. Ce mot de fin de trame FTR dans la trame réseau TC constitue un signal de référence pour la synchronisation. La synchronisation des sous-modules de haut niveau se fait donc à l'aide d'une seule trame réseau TC contenant à la fois toutes les durées de synchronisation R 1, R2,... Rn et tous les ordres de commutation C 1, C2,... Cn destinés respectivement aux sous-modules de haut niveau ce qui contribue à l'optimisation du rendement du protocole de communication. Par ailleurs, dans la trame réseau TC, il est également possible d'inclure des durées de déphasage d'allumage générées par l'application qui s'ajoutent aux durées de synchronisation dans les sous-modules de haut niveau. La synchronisation ne nécessite aucune base de temps commune aux sous-modules de haut niveau et la dérive des horloges dans les sous-modules de haut niveau est limitée par l'nitialisation de la temporisation à chaque cycle de commutation des composants de puissance. En utilisant un protocole de communication déterministe standard comme WorldFIP, il est possible de limiter la dispersion de la synchronisation à moins de 500 ns avec un débit sur le bus cuivre de 5 Mb/s et une fréquence de commutation des composants de 3 Khz. REVENDICATIONS 1/Procédé pour compenser des écarts de temps de propagation de données dans un système de commande à architecture distribuée comprenant des modules de commande (S1, S2, Sn) communiquant à distance avec un processeur maître (UC) par l'intermédiaire d'un réseau de communication temps réel à liaison de communication série (1), de manière qu'un ordre produit par le processeur maître soit exécuté de manière simultanée par les modules de commande, caractérisé en ce qu'il comprend une phase de calibration consistant : à envoyer depuis le processeur maître une première trame réseau (TI) identifiant un module particulier et forçant ce dernier à répondre par émission d'une seconde trame réseau (TP), pour mesurer dans le processeur maître le temps de réponse dudit module, et à répéter ce traitement dans le processeur maître pour chaque module de manière à déterminer, à partir des temps de réponse mesurés (llT1, AT2, ATn) pour les différents modules, des durées de synchronisation (R1, R2, Rn) correspondant respectivement aux différents écarts de temps de propagation des données entre le processeur maître et les différents modules, et en ce qu'il comporte une phase de synchronisation consistant : à envoyer depuis le processeur maître (UC) une troisième trame réseau (TC) contenant les différentes durées de synchronisation affectées respectivement aux différents modules, et à retarder l'exécution, dans chaque module, d'un ordre transmis dans la troisième trame réseau, de la durée de synchronisation affectée audit module, cette durée de synchronisation étant décomptée à partir de l'instant de détection dans ledit module de la réception d'un signal de référence inclus dans la troisième trame réseau. 21 Procédé selon la revendication 1, dans lequel le processeur maître mesure le temps de réponse de chaque module entre l'instant d'émission d'un mot de fin de trame (FTR) de la première trame réseau et l'instant de réception d'un mot de début de trame (DTR) de la seconde trame réseau. 31 Procédé selon la revendication 1 ou 2, dans lequel le signai de référence inclus dans la troisième trame réseau est un mot de fin de trame (FTR). 41 Procédé selon l'une des revendications 1 à 3, dans lequel le réseau de communication temps réel est un réseau de terrain utilisant le protocole de communication WorldFIP.