Brevet FR2797958A1 — publié le 20010302

L'invention a trait à un procédé et à un dispositif de test du fonctionnement d'une unité électronique par simula tion. L'invention a également trait à une installation de test d'unités électroniques à embarquer sur un matériel ferroviaire ou un véhicule électrique. Dans le domaine de la commande électronique de systèmes de traction pour matériel ferroviaire, il est connu d'utiliser des unités électroniques fonctionnant en temps réel et prévues pour commander des circuits électroniques tels que des circuits GTO (Gate Turn-Off thyristor) ou IGBT (Insulated Gate Bipolar Transistor), des relais basse tension ou des affi cheurs numériques ou analogiques. Ces unités incluent un calculateur apte à générer des signaux de commande en fonction de signaux reçus en entrée par l'unité, ces signaux d'entrée pouvant être une consigne, des signaux représentatifs d'état de relais basse tension, des signaux représentatifs de courant, de tension ou de puissance consommée et/ou des signaux émis par un réseau informatique embarqué. Pour la commande efficace des circuits électroniques du genre GTO ou IGBT, les signaux de commande émis par une telle unité électronique doivent être positionnés dans le temps avec une précision de l'ordre de la micro-seconde. Une telle unité de commande étant un matériel complexe, il est connu de réaliser un banc de test comprenant un simulateur apte à générer des signaux de simulation fournis en entrée à l'unité et à analyser les signaux de commande générés par une telle unité. Un tel simulateur fonctionne en temps réel et simule, par exemple, le moteur, les freins ou l'inertie d'une motrice ferroviaire, de même que l'état des rails ou d'autres paramètres extérieurs. Un seul type de simulateur est utilisé pour le test du fonctionnement de différentes unités électroniques, le fonctionnement du simulateur étant adapté par programmation selon le type et l'utilisation de l'unité. Un tel simulateur comprend un ou plusieurs microprocesseurs destinés à traiter des signaux émis par l'unité afin de lui adresser de nouveaux signaux de simulation. Un tel simulateur est de type "hardware in the loop" ou "matériel dans la boucle de simulation". Or, compte tenu des traitements informatiques qu'ils doivent effectuer, les programmes de simulation fonctionnent avec un temps de cycle de l'ordre de quelques dizaines de micro-secondes, ce temps de cycle étant largement supérieur à la précision recherchée, de l'ordre d'une micro-seconde pour l'unité électronique. En d'autres termes, lorsqu'il a acquis un signal généré par l'unité à contrôler, le microprocesseur ou calculateur travaille "en aveugle" pendant plusieurs dizaines de micro-secondes avant de générer un nouveau signal de simulation. On pourrait envisager d'interrompre fréquemment le fonctionnement du microprocesseur, par exemple toutes les micro-secondes, pour acquérir une nouvelle valeur de signal émis par l'unité, mais ceci perturberait de façon importante le fonctionnement du calculateur qui ne pourrait plus gérer les nombreuses valeurs acquises. En outre, une telle solution n'est pas techniquement utilisable dans le cas où l'on recherche une précision de l'ordre de la micro-seconde. C'est à ces inconvénients qu'entend plus particulièrement remédier l'invention en proposant un procédé qui permet de simuler une unité électronique en temps réel avec une grande précision, une grande stabilité des signaux simulés et un contrôle efficace des signaux émis par cette unité. Dans cet esprit, l'invention concerne un procédé qui consiste à traiter, au fur et à mesure de leur émission, certains signaux de sortie de l'unité électronique, au moyen d'au moins un circuit logique programmable, à stocker des valeurs de paramètre correspondant à ces signaux traités et à faire accéder le microprocesseur du simulateur à ces valeurs de paramètres stockées à une fréquence compatible avec sa vitesse de fonctionnement. Grâce à l'invention, le circuit logique programmable permet d'acquérir avec une grande rapidité, c'est-à-dire en temps réel, les signaux de sortie générés par l'unité, qui peuvent être des ordres de commande de circuit GTO ou IGBT, et ce alors que le microprocesseur du simulateur est en train d'effectuer des opérations de calcul. Au terme de ces opérations de calcul, c'est-à-dire par exemple après une période de 10 milli-secondes, le microprocesseur peut alors acquérir les valeurs traitées par le circuit logique program mable pendant cette période, ces valeurs étant stockées dans une mémoire tampon. Ainsi, le positionnement dans le temps et la valeur des signaux émis par l'unité électronique peuvent être connus avec précision sans perturber le fonctionnement du microprocesseur du simulateur. Selon des aspects avantageux de l'invention, le procédé incorpore une ou plusieurs des caractéristiques suivantes - Les valeurs de paramètre stockées sont représenta tives des instants de commutation de signaux logiques générés par l'unité. En particulier, ces valeurs peuvent être une image des instants de commutation, de la durée pendant laquelle une variable logique a une valeur prédéterminée et/ou de la moyenne de la valeur d'une variable logique sur une période prédéterminée. Ainsi, en fonction du type de variable contrôlée par le simulateur, celui-ci peut acquérir en une fois et rapidement, des informations représentatives des différentes valeurs instantanées des signaux au cours de la période considérée. - I1 consiste à adresser certains au moins des signaux générés par le microprocesseur à au moins un second circuit logique programmable et à adresser à l'unité électro nique des signaux de simulation générés par ce second circuit logique programmable, alors que le microprocesseur n'est pas en communication avec l'unité. En d'autres termes, les ordres générés par le microprocesseur sont délivrés à l'unité électronique par le second circuit logique programmable pendant une période dans lequel le microprocesseur est occupé, par exemple pour le calcul des prochains paramètres de commande. Grâce à cet aspect de l'invention, il est possible de commander l'unité avec des signaux émis avec une très grande précision, de l'ordre de la micro-seconde, ce qui est représentatif de certains capteurs, tels qu'un capteur de vitesse incrémental, qui peut détecter la position d'encoches sur un disque avec une précision largement inférieure à quelques dizaines de micro-secondes. L'invention concerne également un dispositif permettant de mettre en oeuvre le procédé tel que précédemment décrit et, plus spécifiquement, un dispositif qui inclut un simulateur comprenant au moins un microprocesseur et apte à adresser à l'unité des signaux de simulation en entrée et à recevoir de celle-ci des signaux de sortie en réaction. Le simulateur comprend au moins un circuit logique programmable apte à recevoir certains au moins des signaux de sortie générés par l'unité, ce circuit logique étant apte à générer, en temps réel, des valeurs de paramètre correspondant aux signaux qu'il reçoit et à stocker ces valeurs, le microprocesseur étant apte à acquérir ces valeurs stockées. Grâce à l'invention, le circuit logique programmable permet de capturer, en temps réel, les ordres ou signaux de sortie envoyés par l'unité électronique pendant un cycle de travail du microprocesseur, le microprocesseur utilisant les valeurs accumulées, par exemple dans une mémoire tampon, à chacun de ses cycles de travail. Selon des aspects avantageux de l'invention, le disposi tif comprend une ou plusieurs des caractéristiques suivantes - Au moins un second circuit logique programmable du simulateur est apte à adresser, en temps réel, des signaux de simulation à l'unité, à partir de signaux de consigne préalablement émis par le microprocesseur. Grâce à cet aspect de l'invention, le découplage entre le fonctionnement du programme du microprocesseur, avec un temps de cycle de l'ordre de quelques dizaines de micro-secondes, et celui de l'unité, qui doit pouvoir réagir, avec une précision de l'ordre de la micro-seconde, voire moins en fonction des évolutions technologiques, à des signaux émis à n'importe quel instant, est utilisé à la fois en entrée et en sortie de l'unité électronique. Dans ce cas, les premier et second circuits logiques précités sont avantageusement réalisés physiquement dans un même circuit électronique. - Le ou les circuits logiques programmables est ou sont de type FPGA (Field Programmable Gate Array - Réseau de Portes Programmables par l'utilisateur). Un circuit FPGA est, comme un microprocesseur, un composant programmable par logiciel. L'utilisation de ce type de composant rapide, en association avec un processeur programmable, permet de concevoir des simulateurs de processus en temps réel généri ques, adaptables à tout type de processus, c'est-à-dire à tout type d'unités électroniques et à leurs conditions d'utilisa tion. - Le simulateur comprend en outre un convertisseur analogique/numérique, permettant de transmettre au micropro cesseur des signaux numériques représentatifs de signaux analogiques générés par l'unité, et/ou un convertisseur numérique analogique, permettant de transmettre à l'unité des signaux analogiques de simulation à partir de signaux numéri ques générés par le microprocesseur. - Le ou les circuits logiques sont programmés en fonction du type et/ou de l'utilisation prévue de l'unité. L'invention concerne enfin une installation de test d'unités électroniques, à embarquer sur un matériel ferro viaire ou un véhicule électrique, tel qu'un bus ou analogue, qui comprend au moins un dispositif tel que précédemment décrit. Une telle installation fonctionne de façon précise et peut être configurée en fonction des unités électroniques à contrôler et de leur environnement, par exemple du type de matériel sur lequel elles doivent être embarquées, tel qu'un train, un train à grande vitesse, un tramway, un bus, etc... L'invention sera mieux comprise et d'autres avantages de celle-ci apparaîtront plus clairement à la lumière de la description qui va suivre de deux modes de réalisation d'un dispositif de test du fonctionnement d'une unité électronique conforme à son principe et de son mode de fonctionnement, donnée uniquement à titre d'exemple et faite en référence aux dessins annexés dans lesquels - la figure 1 est une représentation schématique de principe d'un dispositif de test du fonctionnement d'une unité électronique conforme à l'invention ; - la figure 2 est une représentation schématique de principe de l'évolution des valeurs d'un paramètre généré par l'unité électronique de la figure 1 sur une période AT et - la figure 3 est une représentation analogue à la figure 1 pour un dispositif conforme à un second mode de réalisation de l'invention. L'unité électronique 1 représentée à la figure 1 est prévue pour être embarquée, par exemple sur une motrice de train, afin de commander un moteur de traction. Elle comprend un microprocesseur 2 apte à générer des signaux de commande ou signaux de sortie S, en fonction de signaux d'entrée E délivrés par des systèmes de mesure ou des unités électroni ques de commande maîtres. Avant son installation dans la motrice considérée, l'unité 1 est connectée à un simulateur 11 au moyen de deux faisceaux 12 et 13 de conducteurs électriques. Plus précisé ment, le faisceau 12 relie la sortie du simulateur 11 à l'entrée de l'unité 1 alors que le faisceau 13 relie la sortie de l'unité 1 à la ou aux entrées du simulateur 11. Le faisceau 12 permet donc de véhiculer des signaux E de simulation en entrée de l'unité 1 alors que le faisceau 13 permet de véhiculer, jusqu'au simulateur 11, des signaux de sortie S de générés par l'unité 1 et qui constituent des signaux de commande de matériel embarqués sur la motrice. Le simulateur 11 inclut un programme qui s'exécute sur un microprocesseur 14, par exemple du type DSP (Digital Signal Processor) avec un temps de cycle de l'ordre de quelques dizaines de micro-secondes et qui est apte à générer les signaux de simulation E. Ces signaux de simulation peuvent représenter des signaux d'état de relais basse tension, des signaux émis par des capteurs en courant ou en tension, tels que des capteurs incrémentaux, ou des consignes générées par une ou plusieurs unités électroniques maîtres et transmises par un réseau informatique. Le microprocesseur peut être relié à une console 15 pour sa programmation et son contrôle, de même que pour l'affichage du résultat du test. Une liaison électrique 16 est prévue à cet effet. Les signaux de sortie S générés par l'unité 1 se décomposent en signaux rapides S1, en signaux relativement lents SZ et en signaux analogiques S3. Les signaux relativement lents sont des signaux de commande dont le positionnement dans le temps doit être connu avec une précision de l'ordre de la milli-seconde, ce qui est compatible avec le temps de cycle du microprocesseur 14. Ces signaux peuvent donc être transmis directement au microproces seur 14 qui acquiert leur valeur une fois par temps de cycle, c'est-à-dire toutes les quelques dizaines de micro-secondes. Les signaux S3 sont transmis à un convertisseur analogi- que/numérique 17 (ADC) qui transmet un signal numérique correspondant S'3 au microprocesseur 14. Les signaux S1 sont susceptibles d'évoluer plusieurs fois au cours d'une période OT de quelques dizaines de micro secondes et leurs instants d'évolution ou de commutation doivent être connus avec précision. Ces signaux S1 peuvent être par exemple des signaux de commande de circuits GTO ou IGBT ou de relais. Comme il ressort de la figure 2, un signal S1 peut prendre les valeurs logiques 0 ou 1 et son évolution au cours d'une période OT peut être caractérisée par ses instants de commutation t1, t2, t3, t4 et ts. Chaque signal S1 est transmis à une entrée d'un circuit logique programmable 18 de type FPGA qui est capable de détecter les instants t1 à t. au cours d'une période AT, de même que les sens de variation du signal SI au cours de cette période. Le circuit 18 réagit avec une très grande précision aux variations du signal SI car il s'agit d'un circuit constitué de portes logiques ET, OU et de bascules, qui peut avoir un temps de cycle inférieur à la micro-seconde. Les valeurs détectées par le circuit 18 sont transmises, éventuellement après un traitement logique, à une mémoire tampon 19 à laquelle le microprocesseur 14 peut accéder au terme de chacune de ses périodes de travail, soit toutes les quelques dizaines de micro-secondes, pour connaître l'évolu tion de chaque signal SI au cours de la période considérée. Les valeurs stockées dans la mémoire 19 peuvent être les références des instants t1 à t, au cours de la période AT considérée, ou la valeur totale El du signal S1 au cours de cette période, qui correspond à la durée pendant laquelle le signal SI a eu une valeur égale à 1. Cette valeur El est égale à la somme des intervalles de temps où S1 est égal à 1 soit, dans l'exemple représenté, El = AT - ts -h tq - t3 -h t2 - t1. La valeur transmise à la mémoire 19 peut également être la moyenne M1 de la valeur du signal S1 au cours de la période AT ou tout autre valeur représentative de l'évolution du signal S1 au cours de cette période. La valeur transmise en S'1 au microprocesseur 14 comme représentative du signal S1 peut évoluer en fonction de la programmation du circuit 18. En effet, selon la nature du paramètre S1, le type de l'unité 1 et sa configuration de fonctionnement, la valeur à transmettre au microprocesseur 14 peut être différente. Grâce à l'invention, le circuit 18 fonctionne comme un "échantillonneur asynchrone" pour le microprocesseur 14 et permet une interrogation de certaines sorties de l'unité 1 en temps réel, alors que le fonctionnement du microprocesseur 14 n'est pas perturbé et que la puissance de calcul requise pour le microprocesseur 14 n'est pas trop importante. Dans le second mode de réalisation de l'invention représenté à la figure 3, les éléments analogues à ceux du mode de réalisation de la figure 1 portent des références identiques. Ce mode de réalisation diffère du précédent essentielle ment en ce que les signaux d'entrée E de l'unité 1 sont divisés en des signaux rapides E1, en des signaux relativement lents EZ et en des signaux analogiques E3. Les signaux Ez sont générés directement par le micropro cesseur 14 à la fin de chaque cycle de fonctionnement et transmis à l'unité 1. Les signaux E3 sont générés par un convertisseur numérique analogique (DAC) 27 à partir de signaux numériques E'3 fournis par le microprocesseur 14. Les signaux rapides E1 sont générés par un second circuit logique programmable 28, du type du circuit 18 et qui est associé à une mémoire tampon 29. Le fonctionnement est le suivant : Au terme d'un cycle de calcul, le microprocesseur 14 adresse à la mémoire 29 des signaux E'1 représentatifs des différentes valeurs que doivent prendre les signaux E1 au cours de la période suivante AT. A partir de ces valeurs, et alors que le microprocesseur 14 calcule des valeurs suivantes et n'est pas en communication avec l'unité 1 ou la mémoire 29, le circuit 28 génère les signaux E1 de simulation de l'unité 1. En d'autres termes, le circuit 28 permet de simuler, avec une grande précision dans le temps, les variations des signaux E1 au cours d'une période AT pendant laquelle le microprocesseur 14 est dédié aux opérations de calcul. Par exemple, le circuit 28 peut générer des impulsions simulant un capteur de vitesse incrémental qui, dans la réalité, peuvent être une succession de créneaux avec une période de l'ordre de quelques micro-secondes. Selon un aspect avantageux mais non obligatoire de l'invention, les circuits 18 et 28 sont reliés directement par une liaison 38 qui permet une transmission directe de certains signaux S1 du circuit 18 vers le circuit 28, ces signaux étant traités par les circuits 18 et 28 pour générer certains signaux de sortie E1 sans intervention du microprocesseur 14. Les circuits 18 et 28 sont représentés comme deux entités séparées à la figure 3. Il est possible et avantageux de les intégrer dans un unique circuit électronique. Quel que soit le mode de réalisation utilisé, le ou les circuits logiques programmables 18 ou 28 peuvent être configurés, par exemple au moyen de la console 15 à laquelle ils sont reliés par des liaisons 20 et 30, en fonction du type de l'unité 1 à contrôler et/ou de son environnement ultérieur, par exemple du type de matériel ferroviaire sur lequel elle doit être embarquée. L'utilisation de circuits de type FPGA est avantageuse sur le plan économique car de tels circuits sont rapides, bien maîtrisés sur le plan technologique, donc fiables, et d'un coût abordable. L'invention permet de simuler, en temps réel, des défauts, tels qu'un court-circuit d'un des bras d'un onduleur à haute tension et de vérifier, en temps réel la chronologie des impulsions de commande générées par une unité 1 pour les semi conducteurs de puissance simulés tels que des circuits GTO ou IGBT. En particulier, le temps minimum d'allumage ou le temps minimal de non allumage peuvent être efficacement contrôlés. L'invention a été représentée avec un unique circuit FPGA en entrée et, dans le mode de réalisation de la figure 3, un unique circuit FPGA en sortie. Bien entendu, plusieurs tels circuits peuvent être utilisés, en entrée et/ou en sortie, selon la nature des signaux à traiter. REVENDICATIONS 1. Procédé de test du fonctionnement d'une unité électronique (1) par simulation, ladite unité étant apte à générer des signaux logiques (S) à des instants spécifiques alors que la simulation est réalisée par un simulateur (11) équipé d'au moins un microprocesseur (14), ledit simulateur adressant à ladite unité des signaux de simulation en entrée (E) et recevant de celle-ci des signaux de sortie (S) en réaction, caractérisé en ce qu'il consiste à traiter, au fur et à mesure de leur émission, certains signaux de sortie (S1) de ladite unité au moyen d'au moins un circuit logique programmable (18), à stocker des valeurs (t1 - t5, El, Ml) de paramètres correspondant auxdits signaux traités et à faire accéder ledit microprocesseur (14) auxdites valeurs de paramètres stockées, à une fréquence compatible avec sa vitesse de fonctionnement. 2. Procédé selon la revendication 1, caractérisé en ce que lesdites valeurs de paramètres sont représentatives des instants de commutation (t1 - t5) de signaux logiques (S1) générés par ladite unité. 3. Procédé selon la revendication 2, caractérisé en ce que lesdites valeurs de paramètres sont une image desdits instants de commutation (t1 - ts) , de la durée (El) pendant laquelle une variable logique a une valeur prédéterminée et/ou de la moyenne (Ml) de la valeur d'une variable logique sur une période prédéterminée. 4. Procédé selon l'une des revendications 1 à 3, caractérisé en ce qu'il consiste à adresser certains au moins des signaux (E'1) générés par ledit microprocesseur (14) à au moins un second circuit logique programmable (28) et à adresser à ladite unité (1) des signaux de simulation (El) générés par ledit second circuit logique programmable alors que ledit microprocesseur n'est pas en communication avec ladite unité. 5. Dispositif de test du fonctionnement d'une unité électronique (1) par simulation, ladite unité étant apte à générer des signaux logiques (S) à des instants spécifiques, ledit dispositif incluant un simulateur (11) qui comprend au moins un microprocesseur (14) et qui est apte à adresser à ladite unité des signaux de simulation en entrée (E) et à recevoir de celle-ci des signaux de sortie (S) en réaction, caractérisé en ce que ledit simulateur comprend au moins un circuit logique programmable (18) apte à recevoir certains au moins (S1) desdits signaux de sortie, ledit circuit logique étant apte à générer, en temps réel, des valeurs (tl-t., E1, Ml) de paramètres correspondant aux signaux (S1) qu'il reçoit et à stocker lesdites valeurs de paramètres, ledit micropro cesseur (14) étant apte à acquérir lesdites valeurs de paramè tres stockées. 6. Dispositif selon la revendication 5, caractérisé en ce que ledit simulateur (11) comprend au moins un second circuit logique programmable (28) apte à adresser, en temps réel, des signaux de simulation (El) à ladite unité, à partir de signaux de consigne (E'1) préalablement émis par ledit microprocesseur (14). 7. Dispositif selon la revendication 6, caractérisé en ce que ledit circuit logique programmable (18) apte à recevoir certains signaux de sortie (S1) et ledit second circuit logique programmable (28) apte à adresser des signaux de simulation (El) à ladite unité (1) sont réalisés dans un même circuit électronique. 8. Dispositif selon l'une des revendications 5 à 7, caractérisé en ce que ledit ou lesdits circuits logiques programmables (18, 28) est ou sont de type FPGA (Field Programmable Gate Array - Réseau de Portes Programmables par l'utilisateur. 9. Dispositif selon l'une des revendications 5 à 8, caractérisé en ce que ledit simulateur (11) comprend en outre un convertisseur analogique/numérique (17), permettant de transmettre audit microprocesseur (14) des signaux numériques (S'3) représentatifs de signaux analogiques (S3) générés par ladite unité (1), et/ou un convertisseur numérique/ analogique (27), permettant de transmettre à ladite unité (1) des signaux analogiques de simulation (E3) à partir de signaux numériques (E'3) générés par ledit microprocesseur. 10. Dispositif selon l'une des revendications 5 à 9, caractérisé en ce que ledit ou lesdits circuits logiques (18, 28) sont programmés en fonction du type et/ou de l'utilisateur prévue de ladite unité (1). 11. Installation de test d'unités électroniques à embar quer sur un matériel ferroviaire ou un véhicule électrique, caractérisée en ce qu'elle comprend au moins un dispositif (11 - 23) selon l'une des revendications 5 à 10.