FR 2664996 A1 19920124 FR 9105383 A 19910502 ARCHITECTURE FLEXIBLE MULTITACHE EN TEMPS REEL POUR LA SURVEILLANCE DE L'ETAT D'UN OUTIL La présente invention concerne un système et un procédé pour contrôler en continu la fabrication d'une pièce. La présente invention associe un matériel modu- laire et un logiciel modulaire En utilisant une archi- tecture modulaire, les capacités du contrôleur peuvent être étendues ou modifiées sans que cela ne nécessite une reconception majeure. Le Système de Surveillance EDGE est un procédé par lequel la fabrication d'une pièce peut être contrôlée par un système ayant une architecture comprenant un maté- riel modulaire et un logiciel modulaire Des signaux sont détectés à partir du processus de fabrication et transmis au système par le matériel modulaire Les signaux sont alors traités par le logiciel modulaire pour détecter des caractéristiques ou des motifs particuliers dans ces signaux pour contrôler le processus de fabrication. Un exemple illustratif d'un type de matériel modulaire est celui décrit dans le brevet américain 4806914 cédé à la demanderesse intitulé "Detection by Automatic Gain Control Features of Gradual Cutting Tool Breakage" Ce brevet antérieur mentionne plusieurs brevets de surveillance d'outil Chacun de ces dispositifs a uti- lisé une analyse de signaux, en particulier de signaux de vibration produits quand on usine une pièce pour détecter une rupture d'outil. Des exemples de tels dispositifs comprennent un dispositif de surveillance d'outil basé sur un signal de vibration haute fréquence, un dispositif de surveillance d'outil basé sur un détecteur d'émission accoustique, un dispositif de surveillance d'outil basé sur des transduc- teurs de force tridirectionnels, un dispositif de surveil- lance d'outil basé sur des capteurs de contrainte, ou un dispositif de surveillance d'outil basé sur un détecteur de puissance de broche Chacun de ces dispositifs est spécifique d'un type unique de détecteur Tous ces dispositifs sont spécifiquement conçus pour une opération d'usinage particulière Aucun de ces dispositifs ne peut contrôler plusieurs opérations d'usinage différentes car chacun est prévu pour sa procédure d'usinage particulière. Des exemples illustratifs de systèmes ayant des objectifs similaires à ceux des demandeurs sont ceux décrits dans un article de F Z Shen et al publié dans les proceedings of the 1989 North American Manufacturing Research Conference (NAMRC) et dans un article de F. Richter et S A Spiewak également publié dans le NAMRC proceedings de 1989 Toutefois, ces deux systèmes utili- sent une architecture sensiblement différente de celle des demandeurs Le premier article décrit un système dans lequel chaque algorithme de surveillance tourne sur une carte d'unité centrale (CPU) distincte dont chacune a une interface analogique/numérique (A/D) distincte Dans le deuxième article, il est décrit un système dans lequel un Système Modulaire Multiprocesseur comprend un seul type de signal. Aucun des systèmes susmentionnés n'enseigne ou ne décrit le système décrit par la demanderesse Le Sys- tème EDGE est complètement intégré et tous les algorithmes partagent la même interface A/D, série et Ethernet En5 outre, le logiciel peut être arbitrairement réparti sur un ou plusieurs CPU dans le Système EDGE De plus, contraire- ment au système décrit par Richter et Spiewak, l'architec- ture du Système EDGE spécifie une interface uniforme pour des algorithmes de traitement de signal et l'interface10 Ethernet de EDGE fournit des capacités de diagnostic. La productivité des opérations de fabrication modernes est limitée par la disponibilité de systèmes de surveillance de processus puissants et souples Si une machine qui fabrique une pièce tombe en panne et que cela n'est pas détecté, des pièces et des outils coûteux de la machine peuvent être endommagés En l'absence d'un système de surveillance efficace, les conditions de traitement doivent nécessairement être prudentes pour réduire le risque de panne de machine. Les systèmes de surveillance d'outil existants sont conçus de façon étroite, typiquement autour d'un type unique de détecteur comme cela est décrit ci-dessus Alors que chacun convient à divers degrés d'efficacité dans une plage étroite d'application, aucun n'est complètement efficace dans un système de fabrication flexible compre- nant diverses opérations d'usinage Par exemple, aucun des systèmes décrits dans l'art antérieur ne peut par lui-même contrôler un meulage, un perçage, un tournage et autres processus d'usinage Ainsi, il n'existe aucun système unique qui puisse contrôler une large gamme d'opérations d'usinage. Un objet de l'invention est de prévoir un système unique qui peut contrôler une grande variété d'opérations d'usinage pour fabriquer une pièce. Un autre objet de l'invention est de prévoir un système pour contrôler la fabrication d'une pièce dans lequel le système comprend un matériel et un logiciel modulaires associés. Un autre objet de l'invention est d'étendre ou de modifier facilement les capacités du système pour contrôler les opérations sans nécessiter une reconception majeure du logiciel ou du matériel. Un autre objet de l'invention est de prévoir un système comprenant des détecteurs pour détecter divers signaux dans le processus de fabrication et des éléments de traitement de signal pour transmettre les signaux détectés au système dans lequel le système comprend divers algorithmes de traitement de signal comprenant chacun des paramètres de processus préétablis qui peuvent être modi- fiés par le système et dans lequel l'algorithme détecte des caractéristiques ou motifs des signaux pour commander le processus de fabrication. Selon la présente invention, il est prévu un système amélioré ayant une architecture de logiciel modulaire avec une interface uniforme vers un ou plusieurs algorithmes de traitement de signal et un système modu- laire à bus de détecteurs et de circuits électroniques de traitement de signal Chaque tâche d'interface de logiciel est responsable de l'entrée ou de la sortie à partir d'un élément spécifique de matériel Ces tâches d'interface traduisent des informations entre des formats externes et internes Les formats externes (le matériel modulaire) sont spécifiques de l'environnement dans lequel le système de surveillance est installé Les formats de données internes (le logiciel modulaire) sont standardisés et sont indépendants d'un environnement externe Le ou les algo- rithmes de traitement de signal coopèrent seulement avec ces formats internes. L'addition ou la modification d'un algorithme de traitement de signal nécessite une modification minimale de l'interface interne et aucun changement à l'interface externe Inversement, pour adapter le système de surveil- lance à un nouveau processus de fabrication (nécessitant ainsi une interconnexion différente entre le système et la commande numérique et une interconnexion différente entre le système et le "Gestionnaire EDGE") il est seulement nécessaire de modifier les tâches d'interface Peu ou pas de changements doivent être apportés aux algorithmes de traitement de signal. Un algorithme de traitement de signal peut être considéré comme un filtre de données Ses entrées consti- tuent un flux continu de données brutes détectées par les détecteurs et transmises par les circuits électroniques de traitement de signal La sortie du ou des algorithmes de traitement de signal qui sont commandés par des paramètres préétablis et qui peuvent être modifiés par divers signaux, peut être un flux de données analysées et d'évè- nements "intéressants" occasionnels. Quand un évènement "intéressant" survient (ce qui est déterminé par les algorithmes de traitement de signal), des données fournissant une description complète de l'événement sont transmises par l'intermédiaire d'un réseau à un Gestionnaire EDGE Ces données déchargées permettront une analyse ultérieure de l'évènement. Un bus numérique fait également partie du maté- riel de l'interface pour assurer une vérification et une commande de l'état d'un module. Ces objets, caractéristiques et avantages ainsi que d'autres de la présente invention seront exposés plus en détail dans la description suivante de modes de réali- sation particuliers faite en relation avec les figures jointes parmi lesquelles: la figure 1 est une représentation schématique de l'environnement de fonctionnement de la présente inven- tion; la figure 2 est une représentation schématique de l'architecture du matériel de la présente invention; la figure 3 est une représentation schématique de l'architecture du logiciel de la présente invention; la figure 4 est une représentation schématique illustrant la circulation de données entre la tâche d'entrée/sortie (I/0) analogique et numérique et les autres tâches du calculateur EDGE; la figure 5 est une représentation schématique de l'interface de l'algorithme de traitement de signal; la figure 6 est un diagramme de transition d'état pour l'algorithme de traitement de signal; la figure 7 est une représentation schématique des tâches des entrées série vers le Calculateur EDGE; la figure 8 est une représentation schématique des tâches des sorties série vers le Contrôleur Numérique du Calculateur; la figure 9 est une représentation schématique illustrant toute communication entre la Tâche de Gestion de Réseau et les autres tâches du Calculateur EDGE; et la figure 10 est une représentation schématique illustrant toutes les commutations entre la Tâche de Prise d'Image Mémoire des Données et les autres tâches du calcu- lateur EDGE. Ces figures et les légendes qu'elles contiennent seront considérées comme faisant partie intégrante de la présente description. Le Système de Surveillance EDGE peut commander la fabrication de pièces sur une grande variété de machi- nes outils et peut être étendu ou modifié pour surveiller des processus supplémentaires ou détecter de nouveaux modes de défaut d'outil Ceci est réalisé en utilisant une 7 architecture de logiciel modulaire avec une interface uni- forme vers un ou plusieurs algorithmes de traitement de signal et un système modulaire à bus de détecteurs et de circuits électroniques de traitement de signal Le module 5 à bus est destiné à la distribution de l'alimentation, à la surveillance d'alimentation, et au transport vers des connecteurs analogiques/numériques. La figure 1 représente l'environnement d'ensem- ble dans lequel le Système de Surveillance EDGE va être utilisé Le Gestionnaire de Machine transmet des program- mes de pièces et diverses données relatives à l'outillage à un Contrôleur Numérique à Calculateur (CNC) par une liaison série de type RS-232 L'accès par une liaison série est un procédé de transfert de données entre un calculateur et un dispositif périphérique dans lequel des données sont transmises pour être introduites dans l'ordi- nateur ou extraites vers le dispositif bit par bit sur un circuit unique Ainsi, dans un système à opérations, cha- que opération est réalisée de façon unique et non en même temps que d'autres tâches De cette façon, il existe un seul accès séquentiel aux éléments de données. Un contrôleur numérique à calculateur est des- tiné à contrôler les déplacements des composants de la machine au moyen de nombres Dans son application la plus simple, il est utilisé pour positionner la pièce par rap- port à l'outil En combinant le principe de la commande numérique avec un ordinateur électronique, il peut égale- ment démarrer et arrêter les opérations de la machine, commander le mouvement (trajet) relatif entre la pièce et l'outil pendant une découpe, et amener la pièce (ou l'outil) à se déplacer de la position de fin d'une première coupe vers celle correspondant au début de la coupe suivante A titre d'exemple, après qu'une pièce a été montée sur une table de la machine, la pièce et l'outil doivent être amenés en relation convenable pour chacun des trous perçés. Dans cette application, le CNC commande tous les mouvements des axes d'outil de la machine, commandant ainsi le processus d'usinage et la production de la forme finale de la pièce Le CNC transmet diverses données en retour au Gestionnaire de Machine qui envoie alors des données d'outillage au Système de Gestion d'Outil Le CNC transmet aussi des données au Système de Surveillance EDGE à la fois par une liaison série bidirectionnelle RS-232 et par plusieurs lignes d'entrée et de sortie parallèles En utilisant une interface parallèle, les données peuvent être considérées simultanément plutôt que selon une séquence spécifique Dans une connexion parallèle entre un ordinateur et ses périphériques, les informations sont transférées sur plusieurs lignes de données, un bit par ligne Ceci présente l'avantage d'augmenter considérable- ment la vitesse de transmission Le trajet série fournit des paramètres et des informations de processus au Système de Gestion EDGE (EMS) dont certains ont été reçus par le CNC à partir du Gestionnaire de la Machine Le trajet parallèle entre le CNC et EDGE transmet des informations de commande à partir du CNC vers 1 'EMS et fournit des informations d'état et d'alarme du EMS au CNC Il existe également une interface directe entre l'EMS et la Machine Outil Cette interface comprend des détecteurs montés sur la machine outil, sur son axe, et des contrôleurs d'en- traînement de broche, et plusieurs cartes de circuits électroniques d'interface spécialisés analogiques et numériques Les signaux envoyés par les détecteurs aux Circuits Electroniques d'Interface EDGE (EIE) du Système de Surveillance EDGE sont les données en temps réel sous forme analogique qui sont utilisées par les algorithmes de traitement de signal du Système de Surveillance EDGE Les détecteurs peuvent être par exemple des accéléromètres piézo-électriques, des détecteurs de puissance, des accé- léromètres basse fréquence, ou des détecteurs de courant et de vitesse. Le Système de Surveillance EDGE est en outre connecté par l'intermédiaire d'une interface Ethernet à un Gestionnaire EDGE Cette interface est utilisée pour décharger des ensembles de paramètres vers l'EMS et enre- gistrer des évènements et des données de détecteur à partir de l'EMS Les événements et les données enregistrés sont utilisés par le Gestionnaire EDGE et l'Outil d'Ana- lyse EDGE pour évaluer les performances de l'EMS, pour adapter finement les paramètres des algorithmes de traite- ment de signal et pour fournir des paramètres pour de nouveaux processus d'usinage Ceci est l'architecture conceptuelle d'ensemble du système de la présente inven- tion On décrira ci-après chaque composant illustré en figure 1 d'une façon plus spécifique et plus détaillée. Le Gestionnaire de la Machine sélectionne auto- matiquement le mode de fonctionnement de l'outil de la machine Il fournit le programme des coupes à effectuer sur la pièce Le programme de pièce est envoyé au CNC par l'intermédiaire d'une liaison série RS- 232 Le CNC peut être programmé pour fournir la réponse convenable à un évènement détecté sans intervention humaine Les informa- tions en provenance du programme de pièce peuvent être utilisées par le CNC pour optimiser les états d'usinage à attendre de chaque coupe individuelle Le programme de pièce est un programme qui commande le CNC qui commande lui-même la broche et les entraînements de l'outil pour, par exemple, obtenir la profondeur de coupe, la vitesse de surface et la vitesse de fourniture désirées, et commande la sélection de l'outil avec lequel l'usinage est réa- lisé Le programme de pièce peut également commander la mesure de la pièce et des cycles de mesure de décalage d'outil en plus des opérations de coupe En conséquence, les informations qui déterminent la meilleure configura- tion des algorithmes de détection EDGE résident dans le programme de pièce Des informations telles que la vites- se, l'alimentation, la profondeur de coupe, ou la forme de l'outil peuvent être utilisées par les algorithmes de détection pour effectuer une discrimination entre des évènements de fabrication normaux et anormaux Le program- me de pièce fixe la configuration des algorithmes de détection dans l'EMS Ceci fournit aux algorithmes des paramètres de configuration pour l'opération d'usinage particulière Les paramètres fixés pour l'algorithme particulier optimisent la détection des évènements de fabrication de pièce. En plus de la commande des opérations d'usinage de la machine outil, le CNC fournit également diverses informations d'état en retour vers le Gestionnaire de Machine (MM) et des paramètres et des informations de traitement à l'EMS Les informations d'état sont renvoyées par le CNC au MM par l'intermédiaire d'une liaison série RS-232 Des signaux parallèles et des messages série sont renvoyés par le CNC à l'EMS Une fois qu'une opération de coupe a commencé, l'EMS informe le CNC d'évènements catas- trophiques par l'intermédiaire de la liaison parallèle. Les paramètres installés dans les algorithmes de traite- ment de signal optimisent cette détection d'évènements. Les signaux d'interface et les messages qui peuvent passer, par exemple, entre le CNC et l'EMS sont résumés dans le tableau ci-dessous. PARALLELE Entrées (vers EDGE) Sorties (à partir de EDGE) RAZ Capteur Capteur actif Validation Mode Rupture Mode Rupture Actif Alarme Rupture Validation Mode Usure Mode Usure Actif Alarme Usure Interroger Capteur Usure AR Données Série il SERIE Entrées Sorties Message de Colonne Message de Paramètre Message d'Etat d'Usure Message d'Alarme de Rupture Message de Changement d'Outil Message d'ID de Programme Message de Numéro de Coupe Tableau 1: Signaux et Messages d'Interface CNC Le Système de Surveillance EDGE reçoit également des signaux à partir de divers détecteurs montés sur la machine outil par les Circuits Electroniques d'Interface EDGE Ces détecteurs peuvent être conçus pour détecter une large variété de signaux dans le processus d'usinage Il peut s'agir d'un détecteur de vibrations haute fréquence du processus d'usinage, d'un détecteur d'émission accous- tique, d'un transducteur de force, etc Par exemple, le Dispositif de Surveillance de Machine Outil du brevet No 4806914 utilise un détecteur unique qui est petit et robuste et peut être monté à une distance raisonnable de l'interface outil/pièce Un tel détecteur de vibrations est l'accéléromètre VM 1000 (Vibra-Metrics, Inc, Hamden, CT), utilisé dans une région de relativement haute sensi- bilité près de sa fréquence de résonance Il est généra- lement situé près de la pièce ou de l'outil de coupe et un collecteur miniature et un fil coaxial le connectent à un préprocesseur analogique Le collecteur est optionnel et est utilisé seulement pour certaines structures d'outil de machine Des signaux de données brutes en provenance des détecteurs sont traités par des modules EIE Ces modules EIE peuvent comprendre à la fois des modules éloignés et des modules principaux En prévoyant des modules éloignés EIE, les signaux bruts des détecteurs seront moins sujets au bruit et à d'autres influences néfastes aux signaux avant leur traitement Ainsi, la quantité de signaux transportant de l'information dépassera de beaucoup la quantité de signaux ne transportant pas d'information Les signaux traités sont transmis au convertisseur analogique/ numérique (A/D) du VME La carte A/D est l'entrée vers le logiciel du calculateur EDGE et fournit une interface numérique parallèle au EDGE. Quand les modules EIE principaux et les modules EIE éloignés sont utilisés, il y a typiquement quatre modules EIE principaux: le module de bus, le module UE (Energie Ultrasonore)/horloge, le module CNC et les modu- les d'excitation Les modules principaux servent typique- ment à trois fonctions: un traitement mineur des signaux d'entrée, une surveillance et une commande du module éloi- gné, et un accès commode à un point de test En outre, un premier module principal le module UE/Horloge produit une horloge qui rythme le système complet. Le bus est une série de trajets conducteurs en parallèle reliant les divers trajets matériels du système EDGE sur lesquels les données sont communiquées Les bus peuvent être internes à un processeur, peuvent connecter un processeur à une mémoire principale ou secondaire ou peuvent connecter un système d'ordinateur à des périphé- riques externes. Normalement, le EIE est mis à la masse à une masse de machine commune, mais la structure lui permet d'avoir une source de masse indépendante si l'on souhaite réduire les problèmes de boucle de masse En outre, les quatre modules d'interface EIE éloignés sont: le prépro- cesseur UE, l'interface de résolveur, l'interface de codeur et les amplificateurs d'isolement Ceci peut se voir schématiquement en figure 2 Cette figure représente les interconnexions entre les modules EIE principaux éloi- gnés et les bus analogiques numériques effectuant cette interface Il est représenté en figure 2 que le module d'excitation est connecté aux amplificateurs d'isolement, le module CNC est connecté au résolveur et à l'interface de codeur, et le module UE/horloge est connecté au prépro- cesseur d'énergie d'ultrasons Le module principal de bus est complètement interne dans ce format Chacun de ces modules d'interface EIE éloignés présente une sortie ana- logique Le traitement de signal analogique réalisé par les modules EIE éloignés et principaux peut être modifié pour optimiser la surveillance du fonctionnement de ma- chine outil. L'EMS comprend l'architecture modulaire logi- cielle et matérielle de l'invention Les interfaces maté- rielles modulaires externes exposées précédemment déter- minent la structure de niveau supérieur du logiciel EDGE. Cette structure, pour un système en temps réel, est un ensemble de tâches ou processus exécutés indépendamment. Les tâches principales de l'EMS sont entourées d'un cercle en figure 3 Les interfaces externes dont chaque tâche est responsable sont représentées dans des rectangles en figure 3 Les structures de données globales principales sont représentées encadrées par deux ensembles de doubles lignes horizontales et les principaux trajets de communi- cation entre les tâches sont figurés par des flèches. L'EMS contient au moins un algorithme de traitement de signal, et de préférence de nombreux algorithmes dont chacun est alloué à une tâche d'usinage spécifique ou à la détection d'un type spécifique d'évènement de fabrica- tion Ces algorithmes de traitement fonctionnent comme des filtres de données qui reçoivent des entrées de données brutes en un format externe et fournissent une sortie de données analysées Chaque algorithme réalise et commande une fonction spécifique et sélectionne les données brutes convenables à utiliser par cet algorithme particulier. Quand les données entières brutes en provenance de la carte A/D sont fournies à l'EMS, elles sont copiées dans un tampon en anneau de données brutes par les ISR A/I et DI/0 La capacité du tampon en anneau doit dépasser le temps de réponse dans le "pire des cas" de l'algorithme. Ceci est destiné à permettre à l'algorithme d'accéder convenablement au flux de données brutes En conséquence, le système d'exploitation nécessité par 1 'EMS doit conte- nir des tampons en anneau et des files de message pour assurer le fonctionnement asynchrone de l'algorithme Ceci est lié au fait que l'algorithme fonctionne sans relation temporelle régulière et que sa vitesse de fonctionnement n'est pas associée à une fréquence particulière du système auquel il est connecté. Les données recopiées dans le tampon en anneau de données brutes comprennent toutes les entrées analo- giques et toutes les entrées numériques (les entrées numé- riques comprennent une copie des sorties) Le tampon est la zone mémoire utilisée pour un stockage temporaire des informations qui viennent d'être reçues Les informations sont gardées dans le tampon jusqu'à ce que l'algorithme soit prêt à les traiter La tâche I/0 analogique et numérique ajoute des paramètres de vitesse, de période de broche, de données de gain, de repère temporel et autres paramètres à chaque structure de données brutes avant de notifier aux tâches de traitement de signal que les données brutes sont disponibles. La tâche ADIO (entrée sortie numérique/analo- gique), illustrée en figure 4, maintient également la valeur temporelle synchrone d'ensemble La valeur tempo- relle synchrone "Sync" compte tous les échantillons de données depuis la dernière remise à zéro du système et est utilisée pour toutes les synchronisations internes (par exemple des entrées et des sorties numériques) pour corré- 1 er des données brutes, des données analysées, des évène- ments et des messages tandis qu'on élimine les erreurs du système ou que l'on examine la sortie des sousprogrammes de traitement de signal (Sync est un entier non signé de 32 bits incrémenté à la cadence d'échantillonnage la plus élevée des détecteurs, par exemple le détecteur U E Le compteur sync débordera seulement si la durée entre des remises à zéro dépasse une durée spécifiée). Comme cela est représenté en figure 5, le flux d'entrée des données brutes est traité pour fournir un flux de sortie de Données Analysées et des paquets occa- sionnels de Données d'Evènement L'état (Remise à zéro, Actif) de l'algorithme est commandé par des signaux en provenance de la Tâche I/0 Analogique et Numérique Le comportement spécifique de l'algorithme est déterminé par des valeurs de paramètres en provenance de la Tâche d'En- trée Série comme cela a été expliqué ci-dessus Il peut exister plusieurs tâches d'algorithme de traitement de signal qui sont en cours d'exécution simultanée et indé- pendante dans le calculateur EDGE Tout algorithme unique peut réaliser une détection de rupture, une surveillance d'usure, ou les deux. Les algorithmes de traitement de signal n'ont pas d'interface directe vers quoi que ce soit d'externe au calculateur EDGE Le diagramme d'écoulement de données (figure 5) montre toutes les communications entre les Algorithmes de Traitement de Signal et les autres tâches dans le calculateur EDGE Ce qui suit indique les condi- tions sous lesquelles ces communications surviennent. La Tâche I/0 Analogique et Numérique envoie un message "Données Prêtes" à chaque algorithme chaque fois qu'une nouvelle structure de Données Brutes est disponible dans le tampon en anneau de données brutes Quand une tâche d'algorithme reçoit un message "Données Prêtes", elle lit et traite les données brutes associées. Un risque introduit par un tampon en anneau est que la tâche d'écriture peut se trouver tellement en avan- ce par rapport à la ou aux tâches de lecture qu'il commen- ce à écraser des données qui n'ont pas encore été lues. Dans le système EDGE, la longueur du tampon en anneau de données brutes dépasse de beaucoup le nombre total de tampons de message disponibles dans le système Si les tâches d'algorithme sont trop en retard, la plupart des tampons de message seront occupés par des messages "Données Prêtes" non traités Le logiciel détectera une erreur "tampon de message saturé" avant qu'une quelconque donnée brute ne soit perdue. Il y a un tampon en anneau de données analysées pour la sortie de données analysées pour chaque algorithme de traitement de signal Ainsi, chaque algorithme comprend un tampon en anneau privé pour sa sortie Chaque algori- thme peut mémoriser ce qu'il souhaite, à la cadence qu'il souhaite ( 1/échantillon, 1/rev,), dans son tampon en anneau Les informations mémorisées à tout instant doivent être adéquates pour reconstituer les circonstances condui- sant à l'état de l'algorithme à cet instant Tous les tam- pons en anneau de données brutes et analysées sont divisés en segments logiques, chacun ayant typiquement une lon- gueur d'une seconde Un ou plusieurs segments peuvent être lus et mis en mémoire par la Tâche de Prise d'Image Mémoi- re, pour être utilisés à l'analyse de ruptures d'outil, à la fourniture de paramètres, ou au déverminage d'algo- rithmes. Un ensemble commun de tampons de données d'évè- nement est disponible pour toutes les tâches du système. Tous les tampons de données d'évènement ont la même dimen- sion (typiquement 128 multiplets) Par exemple, le premier champ dans le tampon est du type évènement; sa valeur détermine le format du reste du tampon De nouveaux types et formats d'évènements peuvent facilement être définis et ajoutés au système. Le Réseau de Données de Paramètres est une table de structures Chaque algorithme lit seulement les para- mètres dont il a besoin Les paramètres de configuration (non modifiables) sont lus à la Remise à Zéro Les paramè- tres qui peuvent être modifiés par le programmeur de pièce sont lus à chaque Validation de Rupture ou d'Usure et peuvent être lus à la Remise à Zéro s'ils sont utilisés tandis que l'algorithme est inactif Un accès à la struc- ture de données de paramètres est verrouillé dans la Tâche d'Entrée Série pour empêcher d'autres tâches de lire tandis que les valeurs de paramètres sont modifiées. Le diagramme de transitions d'état pour un algo- rithme de traitement de signal est représenté en figure 6 Au démarrage, ou quand une paire de messages de Remise à Zéro et de Retard de Remise à Zéro est reçue, la Tâche entre dans l'Etat en Cours de Remise à Zéro Quand la Tâche d'Entrée Série finit de charger la Table de Paramè- tres, elle envoie un message "Lecture de Paramètre OK" et l'algorithme entre dans l'état de remise à zéro Lors de l'entrée dans l'état de remise à zéro, l'algorithme efface tous les tampons et les variables internes et remet à zéro son pointeur de données analysées au début du tampon en anneau analysé, et lit ses paramètres de configuration. L'algorithme peut rester dans l'état de Remise à Zéro brièvement, s'il est nécessaire et possible d'initialiser rapidement des tampons de données utilisés pour le traite- ment de signal Quand il est complètement remis à zéro, l'algorithme envoie un message "Opérationnel" à la tâche ADIO et entre dans l'état Inactif. Quand le message "Valide" est reçu, l'algorithme charge tous ses paramètres (sauf les paramètres de confi- guration) à partir de la Table de Paramètres Si la Table de Paramètres est verrouillée par la Tâche d'Entrée Série, l'algorithme attend dans l'état d'Attente de Validation jusqu'à ce que les paramètres soient déverrouillés. Après chargement des paramètres, l'algorithme initialise ses variables et tampons internes Comme à la Remise à Zéro, ces initialisations sont divisées en celles qui peuvent prendre place immédiatement (les Actions Vali- des) et celles qui nécessitent quelques données brutes * (l'état Initialisation) Quand l'initialisation est ache- vée, l'algorithme envoie un message "Actif" à la tâche ADIO et entre dans l'état Actif Le temps alloué à l'état Initialisé est limité Si de grands tampons de données doivent être remplis, ceci est effectué en continu tandis que l'on est à l'état inactif, ou l'utilisateur doit accepter que les performances complètes ne soient pas atteintes pendant un certain temps après que l'algorithme est devenu Actif. Des algorithmes de rupture peuvent partir de rien, sans historique enregistré, à chaque Validation de Rupture Les algorithmes d'usure effaceront leurs varia- bles historiques quand un message "Nouvel Outil" est reçu, et préservent alors et mettent à jour cet historique au cours des Validations et Invalidations d'Usure succes- sives. Si un message "Interroger" est reçu et que l'algorithme n'est pas dans les Etats d'Attente de Remise à Zéro ou de Remise à Zéro, alors l'algorithme répond immédiatement en envoyant un message "Opérationnel". Quand il est dans un état Actif, et s'il détecte un motif dans les données incidentes qui correspond à une rupture d'outil, un algorithme enverra un signal d'Alarme de Rupture à la tâche I/O Analogique et Numérique Les Alarmes de Rupture seront fournies seulement quand le Mode de Rupture est Validé et Actif Des Alarmes d'Usure ne sont jamais fournies Après avoir envoyé une Alarme de Rupture, l'algorithme exécute les Actions d'Invalidation et entre dans l'Etat d'Alarme (qui est généralement équi- valent à l'Etat Inactif) Il reste dans l'Etat d'Alarme pendant une durée fixe (déterminée par un paramètre de configuration), pour permettre au CNC de répondre à l'alarme et pour permettre aux conditions de traitement qui ont provoqué l'alarme de disparaître Quand la durée d'alarme a expiré, l'algorithme exécutera les actions de validation et réentrera automatiquement dans l'Etat Actif En pratique, le CNC invalidera généralement l'algo- rithme après une alarme avant qu'il puisse redevenir Actif. Quand un message "Invalidation" est reçu, l'algorithme efface ses variables internes et revient à l'état Inactif Il peut continuer à traiter des données incidentes (par exemple pour maintenir une moyenne couran- te) mais ne peut pas interpréter ces données comme étant représentatives d'un outil quelconque ou d'un processus d'usinage A l'état Inactif, les algorithmes ne doivent pas fournir d'alarmes. A la suite de la Réception d'un signal de Requê- te d'Etat d'Usure, chaque algorithme qui surveille l'usure calculera et enverra sa Valeur d'Etat d'Usure en cours à la Tâche de Sortie Série Chaque Valeur d'Etat d'Usure de l'algorithme pourra, par exemple, être un entier compris entre O et 9 (inclus) Ceci pourra également être généra- lisé pour autoriser des structures de Données d'Evènement telles que des Valeurs d'Etat d'Usure La Tâche de Sortie Série est responsable de la synthèse d'un Etat d'Usure unique à partir des diverses Valeurs d'Usure L'Etat d'Usure peut être requis quand le Mode d'Usure est validé ou invalidé Si un algorithme ne surveille pas l'usure ou a reçu des données insuffisantes, il enverra une valeur d'Etat d'Usure égale à zéro A partir des données reçues, l'EMS peut déduire des informations sur la pièce et l'ou- til de la machine. L'EMS comprend en outre une interface vers un Gestionnaire EDGE à partir duquel des ensembles de para- mètres sont reçus et dans lequel des événements et des données de détecteur sont enregistrés Ces événements et ces données enregistrés sont utilisés par le Gestionnaire EDGE et l'Outil d'Analyse EDGE pour évaluer les perfor- mances du dispositif de Surveillance EDGE, pour fournir de nouveaux paramètres pour de nouveaux traitements d'usinage ou pour ajuster les paramètres en cours pour le traitement d'usinage en cours ou pour une utilisation ultérieure. Ceci est destiné à fournir une analyse diagnostic de la façon dont l'EMS fonctionne Les données brutes et/ou les données analysées qui sont mémorisées vers le Gestionnaire EDGE sont destinées à un réglage fin de l'algorithme et à fournir une analyse de la commande de la Machine Outil A la fois la partie analogique (interface EIE) et la partie numérique (l'algorithme) de l'EMS peuvent être modifiées pour optimiser le processus de la machine outil. Chacune de ces applications impose des contrain- tes à l'interface A l'extrémité inférieure de l'échelle de quantité, de vitesse et de priorité se trouve un para- mètre placé à l'état déchargé (le Dispositif de Surveil- lance EDGE est inactif et la machine outil peut attendre jusqu'à ce que le déchargement soit achevé) L'extrémité supérieure sera une sauvegarde de données (émettant en continu des données brutes ou des données analysées produites par un ou plusieurs algorithmes de traitement de signal au gestionnaire en temps réel) Un réseau tel qu'Ethernet satisfait aux exigences de vitesse de trans- mission de données du système Un réseau en anneau à jeton ou un réseau FDDI (Interface de Données Réparties à Fibres) pourrait également permettre l'obtention de performances adéquates Un ou plusieurs dispositifs de mémoire locale, tel qu'un disque Winchester ou un disque souple, pourraient également être utilisés En enlevant ou en remplaçant le milieu de mémorisation, des évènements et des données enregistrés pourraient être transférés à un autre système pour analyse et de nouveaux ensembles de paramètres pourraient être transférés à l'EMS Il est important que la capacité du trajet de transfert de données dépasse la cadence des événements que l'on veut enregistrer. Dans la configuration actuelle, chaque Dispo- sitif de Surveillance EDGE est connecté au Gestionnaire EDGE par un réseau Ethernet Le protocole TCP/IP est uti- lisé pour toutes les communications Ethernet Une grande partie du temps système du protocole TCP/IP est gérée par une unité centrale (CPU) allouée On s'attend en consé- quence à ce que les communications Ethernet aient un impact relativement faible sur les performances en temps réel du système. Le logiciel TCP/IP peut supporter plusieurs connexions simultanées et logiquement indépendantes entre chaque Calculateur EDGE et le Gestionnaire EDGE La Tâche de Prise d'Image Mémoire du Réseau maintient une telle connexion pour envoyer des messages pour insertion dans le Fichier d'Enregistrement du Système Une seconde connexion est utilisée pour sauvegarder des données Des connexions séparées pour décharger des ensembles de paramètres vers le Calcultateur EDGE, ou pour surveiller et déverminer le Calculateur pendant des opérations d'usinage peuvent être réalisées si cela est nécessaire. L'initialisation des connexions vers les serveurs de Données et d'Evènements dans le Gestionnaire EDGE peut, par exemple, utiliser une interface telle que l'interface standard à connecteur Unix BSD Les serveurs sont initialisés sur demande, en utilisant les capacités inhérentes dans le BSD Unix internet daemon,/etc/inetd. Cette capacité est critique au fonctionnement convenable du système puisqu'elle permet aux serveurs de s'inter- rompre et de se remettre en route sans affecter de façon néfaste le Calculateur EDGE, comme cela est décrit dans le paragraphe suivant. Si la connexion vers un Serveur de Données ou d'Evènements est interrompue, aucune interruption du reste du système ne doit être vue Dans le système actuel, les tâches de mise en mémoire de données et d'enregistrement de réseau redirigent leur sortie vers un dispositif nul puis essayent périodiquement de rétablir la connexion vers leur serveur respectif Une capacité du système est du type "systolique" Si des données n'ont pas été envoyées vers un serveur pendant une longue durée (typiquement une à quelques minutes), alors la tâche de client (Envoi de Données ou Enregistrement de Réseau) essaye de communiquer avec le serveur En l'absence de cette capacité, la pre- mière partie de l'ensemble de données suivant des données déchargées vers le serveur sera perdue. A tout instant, et à sa propre discrétion, un algorithme de traitement de signal de l'EMS peut déclarer un Evènement Toutes les Alarmes sont des évènements. L'algorithme obtient un tampon de Données d'Evènement à partir du système d'exploitation, établit le Champ de Type d'Evènement puis remplit le reste du tampon selon le format approprié à ce type d'évènement Autant de données que possible doivent être incluses pour fournir une description complète de l'évènement L'algorithme envoie un message "Evènement" vers la Tâche de Mise en Mémoire de Réseau qui lit le tampon d'évènement, envoie les données d'évènement sur le réseau Ethernet vers le Gestionnaire EDGE puis rend le tampon d'évènements au système d'exploi- tation. Tandis que l'on analyse des données, dans un état quelconque, chaque algorithme lit à partir de la structure de Données Brutes et écrit vers sa propre struc- ture de Données Analysées Quand il remplit un segment de Données Analysées, l'algorithme envoie un message "Sauve- garder Données" à la Tâche de Mise en Mémoire de Données pour notifier que la donnée est disponible La Tâche de Mise en Mémoire de Données peut transférer les données analysées immédiatement ou peut rappeler sa disponibilité et les transférer ultérieurement si un Evènement parti- culier prend place. Les Données Brutes sont transférées, par exem- ple, pour la simulation d'un nouvel algorithme Un flux de données particulier peut également être sélectivement transféré pour l'analyse d'un événement particulier Les Données Brutes sont transférées à partir du tampon en anneau de données brutes par l'intermédiaire d'Ethernet vers le Gestionnaire EDGE Les données analysées sont transférées à partir de la sortie de l'algorithme (le tampon en anneau de données analysées) par l'intermédiaire d'Ethernet vers le Gestionnaire EDGE Les données de détecteur et/ou les données d'événement peuvent être transférées pour analyse. Des exemples de données d'événement peuvent être des informations d'état occasionnelles à partir de la liaison série vers le CNC Comme cela a été précédemment décrit, chaque algorithme peut déterminer un événement "intéressant" et l'algorithme enverra alors des données d'événement qui seront un paquet d'informations décrivant cet événement Des événements peuvent également être utilisés pour déclencher des transferts de données Par exemple, le Gestionnaire EDGE peut "dire" au Dispositif de Surveillance EDGE quand un événement spécifique (une alarme de rupture U E) survient, transférer "ce" paquet de données Quand l'alarme de rupture U E survient, alors, par exemple, les données brutes acquises pendant 10 secondes avant l'alarme et 5 secondes après l'alarme et les données analysées et produites entre 2 secondes avant l'alarme et 2 secondes après l'alarme sont transférées vers le Gestionnaire EDGE par l'intermédiaire d'Ethernet. Cette combinaison de données brutes et analysées permettra 24 une analyse convenable de la réponse du logiciel Prati- quement n'importe quoi en provenance du Dispositif de Surveillance EDGE pourrait être mis en mémoire comme un événement, même des messages d'erreurs internes dans le logiciel. REVENDICATIONS 1 Système de fabrication d'une pièce comprenant un matériel modulaire associé à un logiciel modulaire dans lequel le matériel modulaire comprend: a) des détecteurs pour détecter des signaux dans le processus de fabrication; b) des éléments de traitement de signal pour transmettre les signaux détectés au système; caractérisé en ce que le logiciel modulaire comprend un ou plusieurs algorithmes de traitement de signal adaptés à détecter des caractéristiques dans les signaux détectés pour contrôler la fabrication de la pièce. 2 Système selon la revendication 1, caractérisé en ce que le détecteur comprend un accéléromètre piézo- électrique pour détecter de l'énergie ultrasonore. 3 Système selon la revendication 1, caractérisé en ce que le détecteur comprend un détecteur de puissance pour détecter la puissance consommée par le processus de fabrication. 4 Système selon la revendication 1, caractérisé en ce que le détecteur comprend un accéléromètre à basse fréquence. Système selon la revendication 1, caractérisé en ce que le détecteur comprend un détecteur de courant pour détecter le courant axial. 6 Système selon la revendication 1, caractérisé en ce que le détecteur comprend un tachymètre pour détecter la vitesse d'un axe tournant dans le processus de fabrication. 7 Système selon la revendication 1, caractérisé en ce que le détecteur comprend un détecteur pour détecter le fonctionnement des éléments de traitement de signal. 8 Système selon la revendication 1, en ce que les éléments de traitement de signal des amplificateurs d'isolement. 9 Système selon la revendication 1, en ce que les éléments de traitement de signal un résolveur et une interface de codeur. Système selon la revendication 1, en ce que les éléments de traitement de signal un préprocesseur d'énergie ultrasonore. 11 Système selon la revendication 1, en ce que les éléments de traitement de signal un module d'excitation. 12 Système selon la revendication 1, en ce que les éléments de traitement de signal un module de bus interne. 13 Système selon la revendication 1, en ce que les éléments de traitement de signal un module de commande numérique à calculateur. 14 Système selon la revendication 1, en ce que les éléments de traitement de signal un module d'énergie ultrasonore. caractérisé comprennent caractérisé comprennent caractérisé comprennent caractérisé comprennent caractérisé comprennent caractérisé comprennent caractérisé comprennent Système selon la revendication 1 ou 14, caractérisé en ce que le module de traitement de signal comprend un module d'horloge. 16 Système selon la revendication 1, caractérisé en ce que l'algorithme de traitement de signal est adapté à fournir un flux continu de données analysées. 17 Système selon la revendication 1, caractérisé en ce que l'algorithme de traitement de signal est adapté à fournir des paquets de données d'événement. 18 Système selon la revendication 1, caractérisé en ce que l'algorithme de traitement de signal exécute des tâches simultanément et indépendemment. 19 Système selon la revendication 1, caractérisé en ce que un ou plusieurs paramètres de traitement de l'algorithme de traitement de signal sont changés pour modifier le processus de fabrication. Système selon la revendication 1, caractérisé en ce que un ou plusieurs algorithmes de traitement de signal de remplacement sont substitués auxdits algorithmes de traitement de signal. 21 Système selon la revendication 1, caractérisé en ce que des files de message et des tampons en anneau de données assurent un fonctionnement asynchrone des algo- rithmes de traitement de signal. 22 Système selon la revendication 1, caractérisé en ce qu'une ou plusieurs tâches d'interface et structures de données isolent les algorithmes de traitement de signal des formats de données externes. 23 Système selon la revendication 22, caracté- risé en ce que les tâches d'interface et les formats de données externes comprennent une interface d'entrée analogique. 24 Système selon la revendication 22, caracté- risé en ce que les tâches d'interface et les formats de données externes comprennent une interface parallèle numérique. Système selon la revendication 22, caracté- risé en ce que les tâches d'interface et les formats de données externes comprennent une interface d'entrée série. 26 Système selon la revendication 22, caracté- risé en ce que les tâches d'interface et les formats de données externes comprennent une interface de sortie série. 27 Système selon la revendication 22, caracté- risé en ce que les tâches d'interface et les formats de données externes comprennent une interface de réseau de calculateur. 28 Système selon la revendication 22, caracté- risé en ce que les tâches d'interface et les formats de données externes comprennent une interface de dispositif de mémoire locale. 29 Système selon la revendication 27, caracté- risé en ce que l'interface de réseau d'ordinateur est utilisée pour enregistrer des données de détecteur et autres informations de diagnostic. 30 Système selon la revendication 27, caracté- risé en ce que l'interface de réseau de calculateur est utilisée pour modifier la réponse du système à des signaux en provenance du processus de fabrication. 31 Système selon la revendication 29, caracté- risé en ce que l'interface de réseau d'ordinateur se reconnecte automatiquement si la connexion du réseau est interrompue, et projette les données sans interrompre la réalisation en temps réel si la connexion du réseau ne peut être rétablie. 32 Système selon la revendication 1, caractérisé en ce que l'algorithme de traitement de signal est un algorithme de détection de rupture d'outil basé sur la surveillance d'énergie ultrasonore. 33 Système selon la revendication 1, caractérisé en ce que l'algorithme de traitement de signal est un algorithme de détection d'usure d'outil basé sur la sur- veillance de l'énergie d'alimentation de broche et de l'énergie ultrasonore. 34 Procédé de fabrication d'une pièce caracté- risé en ce qu'il comprend les étapes suivantes: a) détecter des signaux dans le processus de fabrication par un ou plusieurs moyens de détection inter- changeables et modulaires; b) transmettre les signaux détectés par des moyens de conditionnement de signal interchangeables et modulaires; et c) traiter les signaux en provenance des moyens de traitement de signal par au moins un moyen d'algorithme de traitement de signal en détectant des caractéristiques dans les signaux pour commander le processus de fabrica- tion.