FR 2027300 A1 19700925 FR 6940270 A 19691117 1 2027300 La présente invention concerne un appareil pour positionner de façon précise l'un par rapport à l'autre des objets relativement mobiles. Plus particulièrement, la présente invention concerne des procédés et appareils pour commander de façon précise la position relative d'une pièce à usiner et d'un 5 outil dans des systèmes de machine-outil à commande numérique. Il est bien connu de donner l'information de position aux commandes de chaque axe d'une machine outil soùs forme de deux signaux à ondes carrées. L'un des signaux est un signal de référence ayant une fréquence prédéterminée, et l'autre est un signal de commande, de position qui présente un déplacement 10 de phase variant par rapport au signal de référence. Les modifications de ce déplacement de phase sont fonction du mouvement relatif - entre la pièce à usiner et la tête coupante de la machine outil. La machine outil contient pour chaque axe un discriminâteur de phase, un dispositif de résolution, (détecteur de position), des amplificateurs, des dispositifs de mise en forme de signaux 15 et des moyens pour déplacer l'ébauche ou la tête coupante. Tous les axes du système répondent simultanément à la différence de phase entre un signal retour indicateur de position et le signal commande de position approprié pour réaliser le mouvement le long d'un trajet désiré. Le signal de référence établit une synchronisation de base pour tous les 20 axes de la machine outil, et il est envoyé à chaque détecteur de position d'axe pour engendrer le signal de retour. On obtient le signal de référence par le contrôle de la bascule d'ordre élevé d'un compteur de référence qui est alimenté par un oscillateur de référence. Le signal de référence aura une fréquence égale à la fréquence de l'oscillateur de référence divisé par le 25 nombre d'état de comptage du compteur de référence. A chaque axe de la machine outil est associé un compteur de position d'axe qui reçoit aussi une entrée provenant de l'oscillateur de référence. Un dispositif d'interpolation linéaire fournit habituellement des entrées supplémentaires à chaque compteur de position axiale. Ces entrées supplémentaires comprennent des trains d'impulsions 30 contenant une information de distance et des impulsions contenant l'information de direction. Selon la direction de mouvement que l'on désire, les impulsions d'information de distances ont soit ajoutées, soit soustraites au compteur de position axiale. Le signal de commande de position est obtenu par contrôle de la bascule d'ordre élevé du compteur de position axiale. 35 Les dispositifs d'interpolations linéaires utilisés habituellement dans l'art antérieur engendrent des trains d'impulsions pour indiquer la distance à l'aide d'une addition répétitive. Supposons par exemple, que l'on désire former un segment rectiligne dans deux dimensions telles que A. x = B333 unités et A Y = - 6250 unités. Classiquement on convertit respectivement A X et 40 A Y en un train d'impulsions de B233 et 6250 impulsions relativement uniforme. 40270 2 2027300 par addition de chacun des chiffres dans un registre séparé à quatre positions 10 000 fois et engendrant une impulsion chaque fois qu'un dépassement de capacité se produit. Si la résolution désirée du dispositif de commande de la machine outil est de 0,0025 mm (c'est-à-dire chaque "unité" égale 0,0025 mm] et 5 si la vitesse de déplacement maximum de la machine outil est de 12,7 cms par seconde, alors pour chaque axe de déplacement de la machine outil le dispositif d'interpolation linéaire devra pouvoir réaliser 50 000 additions par seconde afin d'engendrer les signaux de commande permettant le déplacement de la machine à une valeur proche de sa vitesse de déplacement maximum. Dans le cas de 10 l'exemple donné ci-dessus, il serait nécessaire de réaliser les 20 000 additions (10 000 pour chaque axe X et Y) en deux dixièmes de seconde afin d'obtenir le déplacement de la machine outil à un taux proche de sa vitesse de déplacement maximum. Le désavantage principal du dispositif de l'art antérieur décrit ci-des-15 sus est dû à la vitesse à laquelle doivent être réalisées les opérations arithmétiques. Si la machine outil doit conserver sa vitesse de déplacement au taux proche de sa vitesse de déplacement maximale, il est en général impossible d'utiliser un ordinateur classique pour réaliser l'interpolation. Par exemple, une machine outil à trois axes ayant une résolution de 0,0025 mm 20 et une vitesse de déplacement maximale de 12,7 cms par seconde nécessiterait un dispositif d'interpolation pouvant réaliser 150 000 additions par seconde (50 000 additions par seconde pour chaque axe). Si l'on devait utiliser un ordinateur classique comme dispositif d'interpolation, il est raisonnable de supposer qu'au moins cinq étapes de programmation seraient nécessaires 25 pour chaque addition afin de conserver la piste de l'axe qui a été manoeuvré et pour réaliser les diverses nécessités de "surveillance". Par conséquent 11 serait nécessaire qu'un ordinateur classique réalise de l'ordre de 750 000 étapes de programmation par seconde afin de commander une machine outil. C'est pour cette raison que l'art antérieur se ramène en général à une machine 30 spéciale pour réaliser l'interpolation. Cependant, les dispositifs d'interpolation spéciaux sont coûteux et en général il est nécessaire d'en avoir un pour chaque machine outil dans un système à plusieurs machines outils. Un autre désavantage de la réalisation de l'art antérieur, décrite ci-dessus est la possibilité de perte de donnée due au bruit. Si la présence 35 de bruit sur une ligne de transmission amène la non reconnaissance par le système de la présence d'une impulsion ou amène le système à prendre le bruit pour une impulsion lorsqu'aucune impulsion n'est pas présente, la précision du travail réalisé par la machine outil sera affecté nuisiblement. Dans certains dispositifs de l'art antérieur, on tente d'éviter ce problème 40 en utilisant un équipement qui présente une résolution plus fine que la 40270 2027300 précision en fait nécessaire. Cette technique permet en général d'obtenir les tolérances désirées malgré la formation d'erreurs dues aux transmissions bruyantes. Cependant, cette solution au problème introduit un autre désavantage qui est l'augmentation du coût du dispositif de machine outil. 5 On surmonte ces désavantages de l'art antérieur selon un aspect de la présente invention en utilisant un appareil qui convertit l'information numérique d'entrée (AX, AY, AZ, etc...) en information de sortie analogique (signaux commande de position) sans l'utilisation d'un dispositif d'interpolation linéaire. On remplace le dispositif d'interpolation linéaire par un 10 générateur de front d'onde qui reçoit les données numériques d'entrée et engendre un nombre pour chaque front d'attaque et front de descente du signal commande de position pour chaque axe. On remplace les compteurs bidirectionnels relativement complexes de l'art antérieur par des registres de position axiale pour mettre en mémoire les nombres engendrés par le générateur de front. 15 On utilise de la même façon que dans l'art antérieur, l'oscillateur de référence et un compteur de référence pour former un signal de référence. Lin comparateur associé avec chaque registre de position compare de façon continue les contenus du registre de position au contenu du compteur de référence et produit un signal de sortie chaque fois que les contenus sont exactement 20 égaux. On utilise le signal de sortie pour changer l'état d'une bascule binaire et on peut l'utiliser pour indiquer qu'un nouveau nombre doit être placé dans le registre de position axiale associé. La bascule binaire conserve un niveau (1 ou 0) et change le niveau avec chaque sortie du comparateur. On utilise la sortie de bascule binaire pour engendrer l'onde carrée de commande 25 de position relative à son axe de machine outil associé. Pour une machine outil dont la résolution du dispositif de commande est de 0,0025 mm et ayant une vitesse de déplacement de 12,7 cm par seconde, les signaux commande de position ont une fréquence de 200 à 250 cycles par seconde. Cela signifie qu'il y aura dé l'ordre de 400 à 500 fronts (d'attaque 30 et de descente) par seconde dans le signal de commande dé position. Ainsi, le générateur de front n'aura que rarement a engendrer plus de 500 nombres pour chaque axe d'une machine outil. Cela représente une amélioration de 100 ; 1 par rapport au systèmè de l'art antérieur en termes de nombre de traitement qui doivent être réalisés par unité de temps. Le procédé utilisé par le 35 générateur de front de la présente invention pour engendrer les données de front est plus complexe "que le procédé utilisé par les dispositifs d'interpolations de l'art antérieur pour engendrer des impulsions."Cependant, la vitesse à laquelle le générateur de front doit travailler est si inférieure à celle nécessaire dans un dispositif d'interpolation de l'art antérieur, que 40 l'on peut encore réaliser, des économies significatives. 69 40270 4 2027300 Un avantage de cette invention par rapport à l'art antérieur est son coût de réalisation. L'une des raisons qui fait.que cette invention sera moins coûteuse à réaliser est qu'elle peut effectivement utiliser des circuits à vitesse relativement basse. Aussi, à ce point de vue on doit remarquer que la vitesse 5 à laquelle les dispositifs d'interpolation de l'art antérieur doivent réaliser leurs calculs varie linéairement avec l'augmentation de résolution ou vitesse de déplacement de la machine outil. En d'autres termes, si la résolution et la vitesse de déplacement sont chacune multipliées par un facteur de 2, un dispositif d'interpolation de l'art antérieur devra réaliser ces calculs quatre fois 10 plus rapidement. Cependant, avec cette invention, la fréquence de calcul dépend de la fréquence de signaux de commande de position et cette fréquence dépend beaucoup moins de la résolution et de la vitesse de déplacement. Un autre avantage de la présente invention qui découle de sa faible fréquence de calcul est qu'il est maintenant plus pratique d'utiliser un ordi-15 nateur à but général programmé pour la formation des numéros de front. Dans la discussion ci-dessus relative à l'art antérieur> on a noté.qu'un ordinateur classique devrait réaliser approximativement 700 000 étapes de programmation par seconde afin de commander une machine outil à trois axes ayant une résolution de 0,0025 mm et une vitesse de déplacement de 12,7 cm par seconde. Même 20 si le procédé utilisé par la présente invention, pour la formation des nombres de front devait nécessiter deux fois plus d'étapes de programmation pour chaque calcul que celles nécessitées par le dispositif de l'art antérieur, un ordinateur numérique programmé ne devrait réaliser seulement que 15 000 étapes de programmation par seconde afin de commander une telle*machine outil; 25 Un autre avantage de la présente invention "concerne l'importance de la synchronisation. Dans un dispositif d'interpolation de l'art antérieur pouvant fournir 50 000 impulsions parseconde à chaque axe, l'intervalle de temps de chaque impulsion n'est que de 20 micro-secondes de durée. Pour cette invention, chaque nombre de front successif peut être fourni avec un intervalle 30 de temps d'approximativement 2 000 micro-secondes-de durée. Cet intervalle de temps relativement long présente l'avantage supplémentaire qu'un ordinateur programmé numérique peut fournir des nombres de front aux divers registres de positions axiales en temps réel et peut encore commander plusieurs outils de machine multi-axes ou réaliser d'autres calculs en utilisant des 35 techniques d'interruption bien connues. Un autre objet de la présente invention est'que le procédé à l'aide duquel sont engendrés les nombres de front [décrit avec plus de détail ci-dessousl tient compte de tous les nombres de front précédents engendrés suivant le cours d'un coupage unique en ligne droite. On"obtient-ainsi l'avantage sup-40 plémentaire qu'une erreur qui aurait pu être introduite par une transmission Y ■âAB ORIGINAL 69 40270 2027300 avec bruit est corrigée par des transmissions ultérieures correctes. On obtient ainsi l'avantage supplémentaire qu'il n'est pas nécessaire de concevoir une machine outil utilisée avec la présente invention avec une résolution significativement plus importante que celle nécessaire pour réaliser le 5 travail à la main. Un autre avantage de la présente invention est que l'information de commande engendrée pour diriger le couteau le long d'un trajet prédéterminé précis est en général plus précise que celle que l'on pouvait obtenir dans l'art antérieur. 10 Un autre avantage de la présente invention est que son efficacité lors qu'on la compare avec le système de l'art antérieur, augmente-avec l'amélioration de la résolution de la machine outil et de la vitesse de déplacement. D'autres objets caractéristiques et avantages de la présente invention, ressortiront mieux de l'exposé qui suit fait en référence aux dessins annexés 15 à texte et qui représente un mode de réalisation préférée de celle-ci. Dans les dessins : La figure 1 représente un diagramme de bloc général d'un système de machine outil à commande numérique de l'art antérieur. La figure 2 représente un diagramme de bloc général d'une machine à 20 commande numérique construite selon la présente invention. La figure 3 représente certains détails des servo-commandes auxquels on se réfère dans les figures 1 et 2. La figure 4 représente un signal de. référence et deux signaux de position de commande. 25 La figure 5 décrit la façon par lesquels les nombres de front sont en gendrés par la présente invention. La figure 6 illustre la façon par laquelle on réalise la correction de nombre de front au début d'un nouveau coupage. La figure 7 représente un diagramme de bloc représentant les trois sous-30 systèmes principaux de la présente invention. La figure 8 représente un organigramme d'information illustrant la méthodologie de la présente invention. La figure 9 représente le sous-système de générateur de front. La figure 10 représente le sous-système analogique de phase. 35 La figure 11 représente le sous-système de commande de cycle. La figure 12 représente un moyen d'atténuation du taux d'alimentation. La figure 13 représente des circuits permettant d'augmenter manuellement le taux d'alimentation. La figure 14 représente un diagramme de bloc général d'un système de ma-40 chine outil servo-commandé à boucle de retour numérique construit selon un BAD ORIGINAL 40270 B 2027300 - autre aspect de la présente.invention. . _ ■ "La figure 1 représente un diagramme de bloc des divers éléments d'un système de machine outil à commande numérique;de l'art antérieur. Un.dispositif d'interpolation 1 reçoit les données numériques représentant, les distances dont 5 doivent se déplacer chaque axe pour une coupa en ligne droite donnée. A partir de cette donnée, le dispositif d'interpolation engendre pour chaque axe de déplacement, un train d'impulsions dans lequel chaque impulsion indique un incrément de déplacement. Pour chaque axe, le dispositif d'interpolation engendre aussi un signal qui indique la direction de mouvement. Un oscillateur 10 de référence 2 envoie des signaux au compteur de référence 3, dont la bascule d'ordre élevé produit un signal en onde carrée de référence sur la ligne 4. La sortie de l'oscillateur de référence 2 est aussi envoyée au compteur 5 d'axe X, et au compteur B d'axe Y. [Dans une machine comprenant plus de deux axes, il y aurait aussi un compteur pour chaque axe supplémentaire). Le compteur 5 15 d'axe X reçoit X impulsions, et signaux de commande de direction provenant du dispositif d'interpolation et le compteur 6 d'axe Y reçoit Y impulsion et signaux de commande de direction provenant du dispositf d'interpolation. Les impulsions provenant du dispositif d'interpolation sont ajoutées ou soustraites des compteurs respectifs selon les signaux de commande de direction 20 appropriés. La bascule d'ordre élevé du compteur d'axe X est "utilisée pour engendrer un signal d'onde carrée de commande de position X sur la ligne 7 et la bascule d'ordre élevé du compteur d'axe Y est utilisée pour engendrer un signal d'onde carrée de commande de position Y sur la ligne 8. Le signal de référence de la ligne 4 et les signaux de commande de position des lignes 7 25 et 8 sont envoyés aux servo-commandes et à la machine outil 9. Dans les commandes de la machine outil 9 la différence de phase changeante entre un signal de commande de position et le signal de commande de référence fournit l'information de commande pour commander un support mobile. Contenus dans les commandes et l'outil 9 se trouvent des discriminateurs de phase, des dispositifs 30 de résolution (détecteurs de position), des amplificateurs, des dispositifs de mise en forme des signaux, et des moyens pour déplacer la pièce à usiner ou la tête coupante. Tous ces dispositifs sont bien connus dans l'art antérieur et on ne les décrira pas ici. En référence à la figure 2, on représente un diagramme de bloc simplifié 35 d'un système de machine outil à commande numérique construit selon la présente invention.Les parties du système qui peuvent être identiques.aux parties utilisées dans un système de l'art antérieur décrit ci-dessus sont l'oscillateur de référence 2, le compteur de référence 3, et les servo-commandes et la machine outil 9. Le système comprend aussi un générateur de front 10 pour 40 engendrer des nombres représentant la position dans le temps des fronts BAD ORIGINAL 40270 7 2027300 ascendant et descendant des signaux d'onde carrée de commande de position et un registre 11 de position d'axe X et un registre 12 de position d'axe Y pour conserver les nombres de front, une unité de comparaison 13, 14 associée avec chaque registre de position, et une bascule binaire 15, 16 associée avec chaque unité de comparaison pour engendrer des signaux de commande de position. L'entrée au générateur de front 10 comprend une donnée numérique qui indique la distance de déplacement relative à chaque axe de la machine outil pour une coupe en ligne droite donnée. Le générateur de front traité cette donnée d'entrée dè façon prédéterminée pour engendrer une série de nombres qui représentent les fronts ascendants et descendants [auxquels on se réfère ci-après comme "fronts"} des signaux de commande de position qui doivent être fournis à la machine outil. Afin que divers nombres de front puissent être emmagasinés, on relie une sortie du générateur de front au registre' 11 de position d'axe X et une autre sortie du générateur de front 10 à un registre 12 de position d'axe Y. (Dans un système de machine ayant plus de deux axes, on trouverait aussi un registre de position d'axe 2 recevant un signal provenant du générateur de front 10, et un registre de position similaire pour chaque axe supplémentaire). Les contenus du registre de position d'axe X sont comparés aux contenus du compteur de référence 3 par un comparateur 13 pour chaque valeur de compte après l'avande du compte par l'oscillateur 2. Chaque fois que l'on détecte une égalité, un signal de sortie provenant du comparateur 13 amènera une inversion de l'état de la bascule binaire 15. Le signal de sortie provenant du comparateur 13 est aussi renvoyé au générateur de front 10 pour que ce dernier dispose le nombre de front suivant dans le registre 11 de position d'axe X. La sortie de la bascule binaire 15 devient le signal de commande de position X. Similairement, les contenus du registre 12 de position d'axe Y sont comparés aux contenus du compteur de référence 3 pour chaque valeur de compte.de référence à l'aide d'un comparateur 14 qui engendre un signal de sortie lorsqu'une égalité est détectée. Ce signal de sortie est renvoyé au générateur de front pour indiquer que le nombre suivant de front doit être fourni au registre 12 de position d'axe Y. Le signal de sortie provenant du comparateur 14 est aussi envoyé à la bascule binaire 16 pour changer son état et l'amener à engendrer le signal de commande de position Y. Comme dans l'art antérieur, le signal de référence et les signaux commande de position sont envoyés aux commandes et à l'outil 9 pour déclencher le déplacement approprié. Les signaux de sortie du comparateur servent à faire fournir par le générateur de front 10 d'autres données aux registres de position axiale. On représente dans la figure 3 des détails supplémentaires des servo-commandes. Dans la figure 3, le signal de référence est envoyé à un dispositif BAD ORIGINAL, 69 40270 8 2027300 de mise en forme 17 d'onde qui envoie alors des signaux de synchronisation à un détecteur de position 18 pour chaque axe de la machine outil 19. Le détecteur de position contrôle la position de la machine outil, afin d'engendrer un signal indicatif de la position réelle d'un axe de déplacement pour l'outil. 5 Ce signal de position réelle est mis en forme par un dispositif de mise en forme 20 et ensuite envoyé à un discriminateur de phase 21. Le discriminateur de phase reçoit aussi le signal commande de position. Le signal de position réelle [qui représente la position réelle d'un axe] et le signal commande de position (qui représente la position désirée de cet axe) sont comparés par le 10 discriminateur de phase 21 qui produit un signal de sortie indicatif de la différence "de phase entre le signal de position actuel et le signal de commande de position. Le signal de différence de phase est amplifié par l'amplificateur 22 et est ensuite envoyé à la servo-coirmande 23 qui commande une alimentation d'énergie 24 afin de réaliser le déplacement d'axe de la machine outil 19. 15 Bien que l'on ait seulement décrit les commandes de l'axe X ci-dessus, chaque axe de déplacement de la machine outil est commandé d'une façon semblable. Le mouvement de l'axe de la machine outil s' .arrête lorsque le signal de retour porté par la ligne 25 se trouve en phase avec le signal commande de position. Dans les systèmes de ce type où un signal de forme d'onde carrée est engen-20 dré à partir de la bascule d'ordre supérieur d'un compteur, il est en général préférable d'utiliser un compteur qui fonctionne selon un code 5 4 2 1 pour un fonctionnement décimal ou un code binaire pour un fonctionnement binaire. Le compteur décimal de ce type est spécialement convenable pour l'utilisation comme compteur de référence car la bascule d'ordre élevé sera dans chacun 25 de ces états (zéro ou un) pour un nombre consécutif de périodes de temps égal à la moitié du nombre total des états de compteur permissibles. Cela signifie, que dans un compteur à trois décades qui peut représenter les nombres 0-999, la bascule d'ordre élevé de la troisième décade sera à son état zéro lorsque le compteur représente les nombres 0-499 et sera à l'état 1 lorsque le 30 compteur représente les nombres 500-999. La ligne de sortie 1 de la bascule d'ordre supérieur sera une onde carrée ayant une fréquence qui est de un millième de celle de l'oscillateur de référence. Les hommes de l'art reconnaîtront naturellement que l'on peut choisir d'autres compteurs convenables. Avant de procéder à une description plus détaillée de l'appareil utilisé 35 dans la réalisation de cette invention, on va développer et décrire la théorie sur laquelle repose l'invention. Considérons la situation dans laquelle le signal de référence change systématiquement de niveau aux valeurs zéro et 500 dans le compteur de référence. Si les valeurs 40 (1) 500 + e 69 40270 g 2027300 (2) 2e (33 500 + 3e sont disposées consécutivement dans le registre de position axiale A, avec l'intervalle de temps approprié, alors un décalage de phase de e, 2e et 3e 5 se produira pour les trois fronts consécutifs du signal A» Un décalage inverse de quantités comparables se produit pour le signal B, si les valeurs de signal B C1) 500 - e 10 (2) 1000 -2e C33 500 - 3 e sont utilisées. La figure 4 représente le signal de référence et les signaux de commande A et B. 15 Le problème de la commande de chaque axe de la machine outil se ramène prin cipalement à la prévision de chacune des valeurs de front consécutives à des signaux de commande de position, ayant pour base la vitesse désirée, la précision, et la direction du trajet du couteau le long de la pièce à usiner et ensuite la disposition de ces valeurs dans les registres de position d'axe aux 20 instants appropriés. Considérons d'abord le problème de deux compteurs fonctionnant à des fréquences de compte différentes : = taux de comptage du compteur 1 '■ N2 = taux de comptage du compteur 2 25 > t = valeur clë compte'instantané de 1 . t = valeur de compte instantané de 2 t = temps. Supposons > N2 30 N,. t - [N2 . t) • h N1 " N2 où Ct) est la valeur du temps où les deux compteurs contiennent des valeurs égales si le compteur le plus lent à une valeur initiale (h). De plus, la valeur du compte de l'égalité est : 35 E1 = E2 = N, • t = h . N1 Ni -N2 BAD ORIG'NAL. 40270 10 2027300 Pour le signal de position axiale représenté dans la figure 5, la première dérivée conduit à l'équation suivante : Ein = h WR (1) nr + Ni où E.. = première valeur de front ou nombre à disposer dans le registre de ème 5 position au début du vecteur de coupe pour l'axe i h = constante égale à la valeur du compte milieu du compteur de référence. Nr = constante égale à la fréquence de l'oscillateur d'avance du compteur de référence. GlïlG l\L = valeur de déplacement normalisée du i axe pour le vecteur de 10 coupe (composante de vitesse axiale, voir page 193 le signe de l\l est le même que le signe de direction axiale (- en avant s + en arrière). L'équation (1), lorsqu'on l'utilise pour calculer la première valeur de front suppose le cas non normal dans lequel les ondes carrées de position 15 de commande et position de référence sont initialement en phase au début d'un nouveau vecteur.de coupe. Dans le cas général représente la distance de séparation entre des fronts consécutifs suivant le premier front. Par conséquent, on peut engendrer des fronts successifs du vecteur de coups en ajoutant E^ à la valeur de front précédente. Par conséquent, 20 E12 - En . Eu E13 = Ei2 * Eil E = E + E i4 i3 il __ E., , = E. . , + E._ (2) 25 xCn) i Cn-1) il Une autre formation des valeurs de front successive est : Ei(n) = " X Eil C33 En général on préférera l'équation (2) à l'équation (3) puisque l'addition est en général plus simple que la multiplication en ce qui concerne la réalisation. 30 Dans l'équation €2) ou [33, on utilise seulement la partie entière du front calculé, avec la partie entière élevée (saturation) et les parties fractionnaires n'étant pas considérées aux registres de position axial. Dn n'utilise pas la partie fractionnaire car le servo-système est conçu pour fonctionner avec une résolution prédéterminée. Cela signifie qu'une 35 unité de position Cunité de position de la valeur de front) de la base de nombre représente une résolution de 0,0025 mm dans cet exemple. La partie SAD ORIGINAL 40270 11 2027300 fractionnaire des nombres donne des désignations de position au-delà de 0,0025 mm et ne sont par conséquent pas nécessaires aux servo-commandes. On peut concevoir des servo-systèmes à résolution plus élevée au-delè de 0,0025 mm et ainsi utiliser la composante fractionnaire du nombre ou on peut changer le 5 système de nombre de telle sorte que les positions des unités soient représentatives de 0,00025 mm, ou de toute autre résolution désirée. Les parties fractionnaires des nombres de front sont cependant reportées dans la formation des valeurs de front successives afin de conserver la précision désirée que l'on perdrait autrement dû aux erreurs accumulfies d'arrondi. ^0 . On n'utilise pas non plus les parties d'ordre élevé des valeurs de front au delà de 999 dans cet exemple puisque l'on utilise un servo-système à augmentation. Un tel servo-système concerne la commande de position pour une rotation de la vis de commande pour chaque axe (on commande 0-999 positions pour chaque rotation). La commande de position à la rotation correcte se réalise indépendamment du servo-système pour les servos par augmentation, ou avec une logique supplémentaire pour les servo-systèmes absolus. Dans ce _ dernier cas on peut utiliser les positions d'ordre le plus élevé, des valeurs de front dans le procédé de servo-commande direct. Le cas général pour la formation de la première valeur de front du nou-2Q veau vecteur de coupe se produit lorsque les ondes commandes de position et position de référence sont déphasées entre des vecteurs de coupe adjacents ou durant une modification de vitesse non prévue par (exemple dépassement manuel) lors d'un vecteur de coupe.Dans ces cas,il est nécessaire de réaliser un ajustement avec le premier front du nouveau vecteur de coupe. 2g En référence à la figure 6, on suppose qu'une modification de la vitesse doit être initiée au temps (T ). Une telle condition peut se produire lorsque la machine commence, s'arrête, terminant un vecteur de coupé précédent et commençant un nouveau vecteur de coupe mettant en cause une modification de vitesse axiale, et aussi durant une modification du taux d'alimentation dans 2q un vecteur de coupe, (modification de taux d'alimentation manuelle). Dans la figure 6, es'fc l'avant dernier front du vecteur de coupe précédent, E., , est le front final du vecteur de coupe précédent, et E.f , ^ îlnJ nn+Tj est la position qui existerait pour le front suivant après le temps (Tq), en supposant qu'aucune modification de vitesse ne devrait se produire. Le problème 35 revient alors à la formation d'une position de front ajusté soit en avant ou en arrière du front Ei(n+1-j selon une augmentation ou une diminution dans la vitesse. Le procédé pour obtenir l'ajustement de front se ramène à la soustraction de la partie du décalage de phase provenant de l'intervalle à 69 40270 12 2027300 Tq dû au vecteur de coupe précédent, ensuite à l'addition d'un composant de décalage de phase basé sur la nouvelle vitesse à partir de Tq ; cela signifie N + N E' = E l i(n+1î itn+13- nr (4) en résolvant nr nr + N'i . I N + N Dans l'équation (4) on obtient la quantité : E., „J— =■ i(n+lX l\lR 5 l'équation C1) pour un (h) théorique qui serait la valeur de'E., Cette xCn+1). valeur théorique de (h) pourrait être la valeur correcte de E* pour I\L = 0 suivant T . Le second terme entre crochets de l'équation (4) ajuste alors la position de front théorique fondée sur le nouveau N'^ en appliquant de nouveau l'équation [1]. 10 On peut aussi écrire l'équation (4) sous forme : 1 + N. i (5) F* = E IN i(n+1) i(n+1) l R 11^ I iL "r J où, de nouveau l\L, sont les composants de vitesse normalisée de ieme aXe 15 avant et après une modification de vitesse, et est la fréquence de l'oscil-lateur de référence C250 KHz]. Comme dans l'équation [1], les signes de l\L, NV se rapportent à la direction [- déplacement en avant, + déplacement en arrière]. Les fronts ultérieurs suivant E'^jn+1jSont alors engendrés comme précé-20 demment par l'addition de la valeur d'augmentation de front IE' ) jusqu'à la fin de la coupe ou jusqu'à la modification de vitesse suivante. E'^ est calculé en utilisant l'équation C1] pour le nouveau N'^. Les valeurs de front successives sont : E* = E* + E' f?1 -lCmJ c iCm-1) iCD 25 On utilise la notation "prime"dans les équations (4) et [5] ci-dessus afin de différencier les anciennes valeurs des nouvelles valeurs de coupe. La normalisation est en général nécessaire pour modifier les paramètres du vecteur de coupe afin de conserver la vitesse d'outil uiforme, indépendamment de la distance de déplacement. Par conséquent, si la distance de 30 déplacement en incréments pour chaque axe est donnée par la donnée d'entrée : X = valeur du trajet X Y = valeur du trajet Y Z = valeur du trajet Z C65 chacun des déplacements étant donné en unités de la précision désirée, (par 69 40270 13 2027300 exemple une unité égale 0,0025 mm, 0,0025 mm etc...), alors la distance de déplacement pour le vecteur de coupe (D) est : „ 'G? J2 2 D =IX + Y + Z (7) pour un outil à trois axes avec un déplacement linéaire de chaque axe, on 5 définit le paramètre comme : V 1» = p21 (8) où 11>^ = la constante d'ébauche égale au temps maximum de déplacement de signal de phase le long du vecteur de coupe [unité de phase/ 10 seconde) V = vitesse tangentielle maximum (effective) de la surface de coupe m (en centimètre/seconde). P = déplacement de l'outil par unité de phase (centimètre/unité de phase), et par conséquent égal à la spécification de précision ; la 15 précision peut varier selon la spécification de tolérance .par ticulière. La distance de déplacement (D), divisée par la vitesse de phase lip ) donne le temps d'exécution de coupe. T-$ ■ 20 où T = temps d'exécution de coupe à la vitesse d'outil normale. Les signaux d'onde carrée sont utilisés pour communiquer la donnée de position au sservo-système. La fréquence de ce signal, fixé pour une machine outil, détermine maintenant le paramètre de commande (R) nécessaire pour établir la fin de coupe. Par conséquent : 25 R = f . T (10) où R = nombre de cycles ou périodes de l'onde carrée de référence nécessaire la coupe entière à la vitesse normale. f = fréquence d'onde de référence 30 T = temps de coupe en seconde De plus, puisque la coupe doit être exécutée avec un nombre entier de périodes du signal de référence, R doit être entier. La partie fractionnaire de l'équation (10) est par conséquent arrondie à l'entier suivant supérieur. T' est essentiellement déterminé à partir de l'équation (10) en divisant | R| 35 simplement par (f), T' =' f ■ Maintenant il est possible d'engendrer le composant de vitesse de déca- 69 40270 14 2027300 lage de phase normalisée pour chaque axe simplement que X X = T' 5 où en général = I_ Ni T' (12) I étant la distance de déplacement supplémentaire pour l'axe (i). Les valeurs N sont celles nécessaires dans les équations (1), (4) et (5) pour la formation des fronts d'onde de commande de position. De plus, la valeur 10 de R calculée par l'équation (10) est utilisée par la logique de commande pour établir le IT ) de la figure 6 (fin de coupe). Bien que l'on utilise cette invention pour une commande dynamique d'ensembles de machines outil, trois sous-systèmes fondamentaux sont nécessai-.. . res. Un sous-système générateur de front j un sous-système analogique de phase 15 ; et un sous-système de commande de cycle. La figure 7 représente sous forme de diagramme de bloc, généralisé, le mode d'interconnexion des trois sous-systèmes. Le sous-système générateur de front 26 reçoit en entrée les données de commande numérique pour chaque partie durant le fonctionnement. La forme de la donnée est équivalente à celle 20 préparée par un post-traiteur caractéristique utilisé classiquement pour les systèmes de commande numérique hors-ligne. Le générateur de front transforme la donnée de commande de position en valeur de front selon la théorie précédemment décrite. On peut préparer une table pré-établie des valeurs de front, ou chaque valeur nouvelle peut être engendrée à la demande, lors d'un signal 25 provenant du sous-système de logique de commande. Le sous-système analogique de phase 27 reçoit des nouvelles valeurs de front provenant du sous-système générateur de front et transforme ces valeurs en ondes aarrées de commande de position qui fournissent des signaux d'entrée aux boucles d'asservissement axiales de la machine outil. Ces signaux servent alors à diriger et coordon-30 ner le mouvement de chaque axe de la machine outil afin d'obtenir le trajet désiré de coupe le long de l'ébauche. De nombreuses machines-outil, chacune ayant plusieurs axes et des tâches individuelles peuvent être sous commande simultanée. Le sous-système de commande de cycle 26 sert a communiquer les demandes d'information provenant du sous-système analogique de phase au 35 sous-système générateur de front. La logique comprend une commande d'adresse pour chaque axe afin de permettre le multiplexage du sous-système générateur 69 40270 2027300 de front entre tous les axes actifs. On représente dans le diagramme de bloc de la figure 8, la façon dont les divers signaux d'information sont traités par le système. Le train de signal peut être divisé en quatre parties fondamentales : (1) l'initiation, 5 qui est réalisée une fois pour chaque pièce qui doit être coupée ; (2) l'adressage, qui est réalisé une fois pour chaque coupe en ligne droite réalisée sur la pièce à usiner s (3) la génération de nombre de front qui est réalisée plusieurs fois pour chaque coupe en ligne droite j et (4) la mise au point qui est réalisée à la fin de la coupe de la pièce à usiner. 10 Lorsque la coupe d'une pièce â usiner doit commencer, on doit fournir au système certains paramètres de la machine outil que l'on va utiliser. Ce sont f (fréquence d'onde carrée de référence), h (valeur de compte milieu du compteur de référence), ND (fréquence d'oscillateur de référence) et tp, (taux K t maximum du déplacement du signal de phase dans la machine outil). Puisque 15 selon l'équation (5) ci-dessus le premier nombre de front d'une découpe en ligne droits comprend généralement le facteur de correction en rapport avec le nombre précédent de front de la découpe en ligne droite précédente et le taux d'alimentation normalisé précédent pour chaque axe, il est désirable dans la phase d'initiation de choisir un nombre de front et un taux d'alimentation 20 noimalisê précédent pour chaque axe. Comme représenté dans la figure B, le nombre de front précédent pour chaque axe est réglé de préférence égal à h et le taux d'alimentation normalisé pour chaque axe est de préférence égal à zéro. Les données numériques entrantes dans le système pour chaque coupe en 25 ligne droite comprennent la quantité de déplacement à effectuer pour chaque axe et peuvent comprendre une fraction de taux d'alimentation (FR) si l'on désire que l'outil ne soit pas déplacé à sa vitesse de déplacement maximum. La dernière partie de donnée à être mise en mémoire pour chaque pièce à usiner indique que le travail a été terminé. On peut réaliser cela, par exemple, 30 en indiquant que le taux d'alimentation doit être zéro. Pour chaque découpe en ligne droite, la distance totale de déplacement (D) est calculée en accord avec l'équation 7. Le temps d'exécution de découpe (T) à la vitesse d'outil normale est alors obtenu à l'aide de l'équation (9). On obtient le nombre de cycles de l'onde de référence (R) nécessaire pour la réalisation de la découpe 35 en multipliant la fréquence d'onde de référence par le temps d'exécution de coupe à la vitesse normale d'outil et en divisant par la fraction de taux d'alimentation. Du fait qu'un nombre entier de cycles du nombre de référence doit être utilisé, on arrondit R à une valeur entière. Un temps d'exécution de découpe corrigée CT') est alors engendré en divisant R entier par la 40 fréquence d'onde de référence. Les opérations qui se produisent après ce 40270 16 2027300 point sont les mêmes pour chaque axe de la machine outil. On représente dans la figure 8 seulement pour l'axe X les détails de la théorie. Le nouveau taux d'alimentation normalisé pour cette découpe est engendré selon l'équation (12) et le premier nombre de front est alors engendré selon l'équation (5) en 5 tenant compte du taux d'alimentation normalisé précédent pour l'axe X et le nombre précédent de front X. Le taux d'alimentation normalisé nouvellement engendré est alors transféré au registre ou unité de mémoire qui conserve le taux d'alimentation précédent. Cela permet d'utiliser le taux d'alimentation normalisé de cette découpe comme taux d'alimentation normalisé précédent 10 lorsqu'on réalise le découpage suivant. La mise en place est alors terminée par la génération selon l'équation (1), de la distance de séparation E entre a! les fronts consécutifs suivant le premier front. Durant le temps où un registre de position X ne signale pas une demande pour un nombre de front suivant, le dispositif de formation de front est 15 libre de réaliser un traitement en rapport aux axes Y et Z. Si aucun des registres de position axiale ne fait de demande, le dispositif de formation de front est libre de réaliser des traitements non associés directement avec le fonctionnement de la machine outil. Dn peut coordonner ce mu ïti-traitement en accord avec des techniques d'interruption et de vols de cycle bien connues. 20 Lorsque le registre de position axiale X demande un nouveau nombre de front, le nombre de front engendré le plus récemment lui sera transféré le nombre de front suivant sera engendré par l'addition de E au dernier nombre de Al front. Le dépassement arithmétique obtenu à partir de la formation du nombre de front est comparé à R pour déterminer si la coupe en ligne droite est 25 terminée ou non. Si la coupe n'a pas été terminée, le nombre de front suivant engendré sera disposé dans le registre qui conserve le nombre de front précédent jusqu'à ce qu'une demande ultérieure soit reçue en provenance du registre de position axiale X Si la découpe en ligne droite est terminée, le système recommencera la procédure de mise en place par lecture dans le bloc 30 quivant de donnée. Une autre façon de détecter la fin d'une découpe en ligne droite est de diminuer la valeur enregistrée de R chaque fois que le compteur de référence revient au nombre 0000. Le compte 0000 se produira à la fin de chaque période de l'onde de référence. Lorsque R aura été diminué jusqu'à zéro, la découpe 35 en ligne droite sera terminée. Lorsque le dernier enregistrement de donnée en rapport avec la découpe d'une pièce à usiner donnée est détecté, une correction finale doit être apportée à la dernière valeur de front engendrée pour chaque axe. Cette correc tion correspond à la formation des nombres de front pour une découpe suivan-40 te ayant un taux d'alimentation zéro pour chaque axe. Comme représenté dans 69 40270 17 2027300 la figure fi, on peut identifier le dernier enregistrement, par exemple, en indiquant, que la fraction de taux d'alimentation est égal à zéro. Dans ce cas, le taux d'alimentation suivant normalisé suivant N'- est égal à zéro et l'on peut simplifier l'équation (5) sous la forme représentée dans la figure B 5 à droite dans le rectangle le plus élevé. Après la formation du nombre de front final pour chaque axe, chaque nombre de front sera disposé dans le registre de position axial approprié lorsqu'une demande en provient. La découpe de la pièce à usiner sera alors terminée. Il est évident à tout homme de l'art que l'on peut réaliser un système de 10 machine outil selon la présente invention sous diverses formes. Cependant, selon une réalisation préférée de la présente invention il est désirable de réaliser l'invention d'une façon telle que les opérations à relativement haute fréquence soient réalisées par du matériel à but spécial et des opérations à fréquence relativement basse soient réalisées à l'aide d'un ordinateur numé-15 rique classique. On décrit ci-dessous une telle réalisation décrivant chacun des trois sous-systèmes représentés dans la figure 7. Comme on l'a mentionné ci-dessus en référence à la figure 8, la formation des nombres de front comprend des opérations à vitesse relativement basse (initiation et mise en fonction) et des opérations à fréquence relativement 20 élevée (addition itérative et comparaison). Dans la réalisation de l'invention, en général, il serait désirable de réaliser des opérations à vitesse basse dans l'unité de traitement centrale (CPU) d'un ordinateur numérique classique, et de réaliser les opérations à vitesse élevée avec un matériel à but spécial. La figure 9 représente sous forme de diagramme de bloc le matériel 25 spécial nécessaire. Ce dernier comprend une petite mémoire intermédiaire 29, un registre d'adresse CAR) 30 qui lui est associé, un registre intermédiaire de mémoire CMBRÏ 31 pour îe transfert à l'intérieur et hors de la mémoire des données, un registre de mémoire CSR) 32, un additionneur 33 pour la formation des nombres de front successifs lorsqu'une découpe en ligne droite 30 donnée est réalisée, et un comparateur 34. Pour chaque pièce à usiner, les calculs associés avec l'initiation seront réalisés d'une façon connue par ie CPU (non montré). Aussi, les calculs associés avec la mise en fonction pour chaque découpe en ligne droite seront réalisés similairement par le CPU. Pour chaque découpe en ligne droite devant 35 être réalisée par chaque machine outil qui est commandée, le CPU fournira au matériel spécial représenté dans la figure 9 les paramètres : R (nombre de cycle de référence pour la découpe en ligne droite) ; E (distance de séparation entre le front consécutif suivant le premier front s et, E^(le premier nombre de front). Cette donnée sera emmagasinée dans la mémoire intermédiai-40 re 29 dans une zone associée à machine outil à laquelle il appartient. Chaque 18 69 40270 2027300 fois qu'un registre de position axiale nécessite un nouveau nombre de front, une adresse en provenance du dispositif de commande de cycle Cfigure 11) sera reçue et disposée dans AR 30. Cela entraînera la lecture de la distance de séparation appropriée .et la valeur appropriée de R dans MBR 31 où elles 5 seront transmises à SR 32. La valeur de front en cours E. [comprenant la xn partie de dépassement, la partie intégrale et la partie fractionnaire) sera alors lue dans MBR 31» La partie significative [entière) de E sera transférée xn par l'intermédiaire de la ligne 35 au registre de position axial approprié (figurelO). E^ sera alors additionné à E^ par l'additionneur 33 et replacé 10 dans la mémoire intermédiaire 29 .par l'intermédiaire dé MBR 31 à la position précédemment occupée par E. . La valeur de R contenue dans SR 32 sera comparée xn . à la partie de dépassement de la valeur, du front nouvellement engendré E^^ dans le comparateur 34 afin de déterminer si le nombre de front final pour cet axe est engendré. Si c'est le cas, le CPU enverra un signal sur la ligne 36. Lors-15 que le nombre de front final pour chaque axe de la machine outil a été engendrer le CPU fournira un nouvel ensemble de paramètres à la mémoire intermédiaire 29 par le canal d'entrée 37. Dans cette réalisation préférée il n'est pas nécessaire .que le nombre de front final engendré soit transmis au CPU pour utilisation dans le calcul du premier nombre de front de la découpe en 20 ligne droite suivante car on suppose que le CPU aura déjà formé le dernier nombre de front d'une façon déterminée selon les équations (17) et (183 comme décrit ci-après. La figure 10 est une représentation logique du sous-système analogique de phase. Ce sous-système se compose principalement des circuits de compteur 25 de référence qui comprennent un oscillateur de référence 38, un compteur de référence 39, -et un registre de position axiale 40, un circuit de comparaison 41, et une bascule binaire de sortie 42 pour chaque axe sous commande. On peut commander simultanément N axes avec des sous-groupes étant assignés à chaque machine outil. . 30 Les nouveaux nombres de-front sont disposés dans les registres de posi tion axiale 40 par l'intermédiaire du canal d'entrée de donnée 35 provenant du sous-système de formation de front. Cfigure 9). Chaque fois que l'un des circuits de comparaison 41 produit un signal amenant le changement de niveau d'une bascule binaire 42 ce signal est aussi transmis au système de commande 35 de cycle Cfigure 11) par l'intermédiaire de l'une des lignes 43 pour initier lé mécanisme nécessaire à la délivrance d'un nouveau nombre.de front au registre de position. 'Une autre .façon de réaliser le sous-système analogique de phase serait d'utiliser un registre de position axiale et un comparateur unique par chaque 40 axe. Chaque valEur de chaque axe serait emmagasinée dans-la mémoire intermédiai- 09 40270 2027300 re 29 (figure 9). Alors, à chaque avance du compteur de référence, toutes les valeurs de registre de positions axiales seraient retirées de la mémoire intermédiaire, une à la fois, et comparée avec le compteur de réference 39. Lors d'une égalité la bascule appropriée 42 serait mise à jour comme décrit 5 ci-dessus. Le sous-système de commande de cycle représenté dans la figure 11 contient un oscillateur d'avance libre 44 qui alimente un compteur d'adresse axial (AAC) 45 par l'intermédiaire d'une porte 46. Le compteur'45 alimente un décodeur 47 qui comprend plusieurs sorties dont chacune porte un signal lorsque le comp-10 teur 45 consulte l'adresse de mémoire intermédiaire des données pour un axe de machine outil associé avec la sortie particulière du décodeur. Chacune des sorties du décodeur alimente un circuit ET'48 associé avec l'un des dits axes. Une bascule 49 dont l'entrée d'enclenchement provient de la ligne de demande 43 provenant du sous-système analogique de phase (figure 10) fournit aussi 15 une entrée à chacun des circuitsET 48. La sortie de chacun des circuits ET 48 constitue une entrée d'un circuit OU 50 dont la sortie est utilisée pour initier un synchroniseur de commande de cycle (CCT) 51 et après l'inversion par un inverseur 52, pour bloquer la porte 46 afin d'éviter l'altération des contenus du compteur 45. 20 Le sous-système de commande de cycle fonctionne sur une base d'interroga tion continue consistant à chercher la présence d'une demande en provenance d'un registre de position axial. Chaque fois qu'il se produit une demande, un signal sur la ligne 43 enclenche l'une des bascules 149. Le compteur 45 poursuit une avance ordonnée due à;l'oscillateur d'avance 44 jusqu'à ce qu'une 25 coïncidence du décodeur d'adresse 47 et d'une bascule correspondante 49 excite l'un des circuits ET 48. La sortie du circuit OU 50 envoie un signal de départ au synchroniseur de commande de cycle 51, et au même instant le signal provenant de l'inverseur 52 ferme la porte 46 ce qui arrête toute avance ultérieure du compteur 45 et préserve l'adresse axiale. 30 Les diverses sorties des synchroniseurs de commande 51 sont utilisées de façon connue pour élever le potentiel des portes afin de fournir l'adresse du registre de position axiale demandant 1'intervention au sous-système générateur, et pour déplacer le nombre de front suivant du sous-système générateur de front au registre de position axial. "A la fin de la équence CCT 35 la sortie "continuer" du CCT agira par l'intermédiaire de l'un des circuits ET 53 pour déclencher la bascule de demande 49. Cela enclenche la porte 46 et la recherche pour l'état de demande suivant continuera. . " La figure 12 représente, sous forme de diagramme de bloc le matériel que l'on peut ajouter au système pour fournir une commande supplémentaire du taux 40 de déplacement du support de la machine outil. Dans la figure 12 on interpose 69 40270 20 2027300 un atténuateur de taux d'alimentation 54 entre l'oscillateur libre 55 et le compteur de référence 56. L'atténuateur de taux d'alimentation 54 sous commande des données contenues dans le registre de fraction de taux d'alimentation 57 agit pour permettre le passage d'une fraction des impulsions de l'os-5 cillateur au compteur de référence. Cela a pour effet de modifier la fréquence du signal de référence et des signaux commande de position correspondants en proportion de la fraction du taux d'alimentation. Par exemple, une fraction d'alimentation de taux de 0,5 partagera en deux la fréquence des ondes carrées reçues par le compteur de référence 56. Ainsi, il faudra deux fois plus 1Q de temps pour la résolution par la machine outil de .chaque décalage de phase, ce qui diminue la vitesse de l'outil d'une quantité égale à la fraction du taux d'alimentation. Puisque cet appareil nécessite certaines caractéristiques de passe bande en fréquence des composants inducteurs dans la boucle d'asservissement, on ne peut utiliser qu'un petit domaine de fréquence avec cet appareil sans avoir besoin d'apporter des modifications à la plupart des servo-commandes utilisés couramment de nos jours. Une autre forme de commande en matériel pour réaliser la commande du taux d'alimentation et permettre un domaine important de priorité manuelle est représentée dans la figure 13. Cet appareil comprend un commutateur 58 relié 20 à une alimentation d'énergie électrique 59 qui peut être reliée à la ligne "enclenchement" de toutes les bascules 60-64. La sortie de chaque bascule est reliée au générateur de front (ou au CPU si l'on utilise un CPU pour réaliser les opérations de mise en fonction). La sortie de chacune des bascules est aussi reliée à un circuit OU exclusif 65. La sortie du circuit OU 65 alimente 25 un inverseur 66 dont on utilise la sortie pour fournir un signal d'interruption au CPU. Lorsque l'interrupteur est sur la position automatique les fractions du taux d'alimentation seront déterminées selon les données d'entrée fournies au système. Lorsque L'interrupteur est réglé à l'une des autres positions, le 30 réglage du commutateur commandera la fraction du taux d'alimentation. Si, à tout moment, le réglage du commutateur 58 est modifié, il existera Une période de temps durant laquelle deux des bascules seront simultanément dans leur état enclenché. Cela entraine la retombée à zéro de la sortie du circuit OU exclusif 65 amenant l'envoi par la sortie de l'inverseur 66 d'un signal 35 d'interruption au CPU. Le CPU déterminera la nouvelle fraction de taux d'alimentation en envoyant une impulsion de restauration à chaque bascule de la ligne 67 pour restaurer toutes les bascules sauf celles correspondant à la nouvelle fraction de taux d'alimentation.Un signal indiquant la valeur de la nouvelle fraction d'alimentation sera reçu par le CPU sur l'une des lignes 40 B8- 69 40270 21 2027300 Afin de clarifier et de démontrer encore la réalisation de la présente invention, on présente deux exemples numériques. Les nombres utilisés dans les exemples ne sont seulement qu'approximatifs, développés par calcul manuel pour démontrer l'invention et peuvent ne pas être totalement précis dans les parties 5 fractionnaires où une précision élevée n'est pas nécessaire pour la démonstration . EXEMPLE I - Commande de contour L'exemple numérique suivant expose la logique pour une commande de position ordinaire. On considère que l'on utilise, par simplicité, une machine de con-10 tournage à deux axes. Supposons que le nouveau vecteur de coupe soit donné comme étant : X = + 400 unités Y = - 300 unités Alors l'équation (7) donne la^distance de déplacement, 15 D = 1 (400).2 + C300)2 = 500 (7) Supposons que la vitesse tangentielle maximum (Vm = 1 x 2,54 cm/sec) et la précision (P = 0,0001 x 2,54 cms), à l'aide de l'équation (8), * "ibïïîi • '°-o:ia î8! et à l'aide de l'équation (9Î, le temps de découpe est : 2° T = ïoToôô = 0,05 (9) L'équation (10) donne le nombre de cycles de référence (R) comme étant : R =250 . (0,05) = 12,5 (10) Choisissons le nombre entier R = 12, T» - = 0,0048 (11) 25 250 et Nx "Ô755S* e333"3 "2I \ "mH 625°'° ' H2> Supposons aussi que la fraction de taux d'alimentation doit être (0,5) pour ce vecteur de coupe, alors ï N = (Q,5îx (8333,3) =4166,6 (15) ' x N = -(0,5) (6250) = - 3125,0 (15) y R = = 24 C13) U g j En utilisant l'expression (1), les distances de séparation de front d'aug-35 mentation sont : Ex1 = 500 ( 250 ) (1) • „„ 250-4,1666 = 508,474 30 69 40270 22 = 500 ( 250 3 2027300 (d *1 = 493,B2?50 + 3'125° Par raison de simplicité, supposons que le signal de référence et les signaux de commande axiale sont initialement en phase. Alors le tableau suivant donne les valeurs des fronts consécutifs engendrées pour chaque axe. 5 FRONT N° AXE X AXE Y 1 508 474 493 827 2 1 016 948 0 9-87 654 3 1 525 422 1 481 481 4 2 033 896 1 975 308 10 5 • 2 542 370 2 469 135 • 9 4 576 266 4 444 443 10 5 084 740 4 938 270 15 11 • 5 432 097 • 20 10 169 480 9 876 540 2D 25 12 711 850 12 345 675 30 15 254 220 14 814 810 • 35 17 796 590 17 283 ■ 945 25 • 40 20 338 960 . 19 753 080 46 23 389 804 22 716 042 47 23 898 276 23 209 869 30 46 24 406 752 23 703 696 49 24 197 523 Les parties entières des valeurs du tableau contenues entre les colonnes en ligne double sont fournies au registre de position axiale afin 35 de dériver les ondes carrées de commande de position comme représenté dans la figure 2. Afin de démontrer que la destination finale est atteinte correctement on supposera que le vecteur de découpe suivant est zéro. La 69 40270 23 2027300 situation représentée dans la figure 6 est alors réalisée. 48 nombre de fronts CX) ont été engendrés lorsque le signal de dépassement a atteint 24 CR) et 49 nombre de fronts (Y) ont été engendrés. Ainsi, le front indicié E., ., dans i(n+1) la figure 6 correspond à E^ ou E de cet exemple ou ù 5 Ex(48) = 4°6-57^ Ey(4g) =197.523 Cependant, puisque Tq représente la fin mathématique dé découpe CR = 0), les valeurs de front finales des deux axes doivent être ajustées à une modification dans la vitesse Tq j.par conséquent en utilisant l'équation C5), 10 E'vfAfll = 406,572 C 1 '+ ~ 4,1666) C5) 250 = 399i 98 (400 en et arrondissant). E'yC49) = 197,523 C 1 + + 3'125] C5) 199,99 C200 en 250 arrondissant) 15 De la pratique en cours, les valeurs de front E' et E' xC48) y(49) auraient été calculées en prévision de la fin de découpe et initialement disposées dans le tableau. Le problème original a ainsi été"résolu en avançant uniformément l'axe x de + 400 unités et en retardant l'axe y C200-500) = - 300, unités à la moitié de la vitesse totale maximum. 20 EXEMPLE II Supposons que l'on désire introduire une modification de taux d'alimentation non prévue dans un vecteur de coupe. Pour cet exemple, on choisira arbitrairement un instant dans le temps, CR =19) de l'exemple précédent comme moment auquel doit commencer le nouveau taux d'alimentation. On suppose aussi 25 que la vitesse après diminuation doit être approximativement des 9/10ème de la vitesse actuelle. Alors, au lieu d'y avoir 19 cycles de référence, restants jusqu'à la fin de la découpe, il y aura : !R,I -U§J = 22 0,9 "" t13) et 30 f "S =0,86 364. C14) r 22 et les composants des vitesses de phase révisés sont : N' = 4166,6 xCO,86364) = 3598,5 C15) N* = -3125 xCO,86364) = -2698,9 (15) dans l'équation (1), les valeurs de séparation de front sont : 35 " * £,X1 - 500 so-^saas'1 ' 5°7-235 ,(1) E' = 500 C 250 ) =. 494,S60 C1) y 250+2,6969 69 40270 24 2027300 et les réglages au front de départ sont : E'xtn+1J " e'x£10J "°a4-742 » * 1 "" =084,575 ,1666,/,. .-3,5985, , 250 I ^ "ïnn J ^ ^5) E" r =432,097 [ 1 + y(n+1) y(11) 250J j { 1 + 250 2,6969 250 (5) =432,974 Fondé sur le nouvel ensemble des fronts de départ (E'. i(n+1 ) et des valeurs de séparation de front CE'3 dus au taux d'alimentation révisé, le tableau suivant donne les modifications dans les valeurs de front de la table précédente. 10 FRONT N° AXE X AXE Y 15 20 25 1 • 508 474 493 827 • • 8 ■ • m • - ■ m ■ • - ■ 9 4 576 266 4 444 443 .10 5 084 575 4 938 270 11 5 591 670 5 432 974 12 6 099 165 5 927 634 ■' ■ • ■ m • • .• ■ • ■ • • - • • • s -• ; • 53 26 898 260 ■ - • - 54 27 405 555 26 703 354 55 27 136 014 30 35 Supposons de nouveau que le vecteur de découpe suivant est égal à zéro, les valeurs de front finales sont : xC54) 405,555 £ 1- ^'^250^ = 399,72 = 400 (arrondis) t5) 2 6989 E'yC5S} = 198,014 £ 1 + 250}= 20t¥°a = 200 tarr°ndis3 Comme dans l'exemple précédent. On remarque que la réalisation de la modification de vitesse commence avec le premier front de chaque signal de position axiale suivant le moment auquel 69 40270 25 2027300 le signal de référence vient à zéro (nombre entier R de cycles). Dans cet exemple, les fronts appropriés sont ^y(11) cornme rePrésenté dans le tableau. Le moment optimum pour initier une modification de taux d'alimentation non prévue est quelque peu abritraire, et dépend de la réalisation spécifique. En 5 général, on peut choisir un temps convenable suivant la demande afin d'atténuer les demandes de traitement instantanées du système, tout en observant encore les nécessités de réponse de l'opérateur. Par exemple, si une réponse d'une seconde est nécessaire, alors on doit introduire la modification dans le train de données avant le SOOème front futur puisque chaque front est séparé 10 par approximativement 2 millisecondes (pour un signal de référence de 250 Hz). Les nombres représentés dans les deux tableaux des exemples ont été "arrondis" car la partie fractionnaire a été limitée à trois décimales.Malgré cela l'erreur finale le long de chaque axe de déplacement est comprise entre 3/10ème d'unité dans Te plus mauvais des cas représenté, et 1/1Ûème d'unité pour trois 15 des quatre cas représentés. Ces erreurs d'arrondis se trouvent comprises dans les tolérances habituellement acceptées. Naturellement, même cette petite erreur peut être facilement réduite en conservant un nombre plus important de décimales dans la génération des nombres de front. La théorie fondamentale présentée pour la formation des informations d'onde 20 carrée de position de commande suppose que l'on utilise un transmetteur de détection de position analogique ( par exemple, dispositif de résolution linéaire ou rotatif) pour dériver la position de machine outil en cours. Après remise en forme, ce signal de rstour alimente, avec le signal de commande de position un mécanisme discriminateur de phase afin de dériver l'entrée "signal 25 d'erreur" pour les servo-amplificateurs. Cependant, si à la place on utilise un transmetteur digital pour détecter4 la position en cours de la machine outil pour envoyer un signal retour au discriminateur de phase, il est nécessaire d'apporter une modification mineure, à la disposition du matériel de la figure 2. Les nombres digitaux disposés dans les registres de commande de position 30 (valeurs de front) sont équivalents aux représentations numériques de la position axiale désirée de la machine outil dans le temps. Une comparaison numérique de chaque valeur de registre de commande de position avec la valeur de position en cours correspondante obtenue à partir du transmetteur de retour peut être réalisée directement, et permet la réalisation de la discrimination 35 de phase. Dans de tels dispositifs retour numérique, on fournit alors un potentiel analogique aux amplificateurs de servo-commande proportionnel à la valeur de l'inégalité, lé potentiel étant nul pour une comparaison d'égalité. Le dispositif retour numérique élimine par conséquent la nécessité de convertir les données de commande de position en données d'onde carrée pour la discri-40 mination de phase mais nécessite la substitution de la logique de comparaison 69 40270 2B 2027300 impliquée. Un dispositif de machine outil utilisant uns boucle d'asservissement numérique est représenté dans la figure 14. Le générateur de position 69 reçoit les données de déplacement axial pour chaque découpe en ligne droite d'une façon 5 similaire à celle décrite ci-dessus pour le générateur de front.Le générateur de position engendre une information commande de position et la dispose au temps approprié dans les registres de position de commande X,Y et Z 70, 71, 72. Les registres de position en cours X,Y et'Z 73,74, 75 contiennent chacun une représentation numérique de leur axe associé. La sortie de chaque registre 10 de commande de position et registre position en cours alimente les servo-com-mandes et la machine outil 76 représentée à l'intérieur des lignes brisées. Les servo-commandes comprennent en général, pour chaque axe, un soustracteur 77 pour déterminer la différence entre le contenu des registre commande de position et position en cours, un convertisseur digital analogique 7B, pour convertir 15 la sortie du soustracteur en un signal analogique en fonction de la différence, un amplificateur 79 pour amplifier le signal analogique, une servo-commande 60 qui reçoit le signal amplifié et une source d'énergie 81 qui répond à la servocommande pour permettre le déplacement des axes appropriés de la machine outil 82. Compris aussi dans, le système, se trouvent les transmetteurs axiaux X,Y 20 et Z, 83, 84, 85 qui détectent la position en cours de chaque axe de la machine outil et envoient cette informationaux registres de position en cours 73, 74, 75. Lors de la formation des nombres de positions pour chaque axe, le nombre total R des cycles d'horloge de référence est déterminé par le générateur de 25 position 69 en accord avec les équations (7) (8), (9) et (10), et réglé pour toute fraction de taux d'alimentation donnée. Supposons qu'un nouveau nombre de position soit fourni deux fois durant chaque cycle de référence, R est doublé et le nombre 2R (exprimé sous forme d'un entier) est divisé en nombre d'unités de déplacement pour chaque axe pour obtenir le mouvement désiré durant 30 chaque demi-cycle. Le nombre ainsi engendré pour chaque axe est le premier nombre de commande de position pour chaque axe. Lorsque la première découpe en ligne droite commence, chaque premier nombre commande de position sera disposé dans le registre commande de position approprié. Un demi-cycle après, une deuxième fois, ce nombre sera disposé dans chaque registre commande de 35 position. Après chaque demi-cycle suivant, jusqu'à ce que la coupe soit terminée, les contenus de chaque registre commande de position seront remplacés par un nombre supérieur au contenu précédent d'une quantité égale au premier nombre commande de position. Pour chaque découpe en ligne droite ultérieure, un nouveau premier nombre commande de position sera engendré pour chaque 40 axe par le générateur de position et sera ajouté répétitivement à (ou soustrait 69 40270 27 2027300 de} la valeur précédente dans chaque registre commande de position et le résultat disposé dans le registre commande de position approprié. La synchronisation fondamentale pour ce système est fournie par une horloge 86 qui peut comprendre un oscillateur 87 fonctionnant au double de la fréquen-5 ce de référence et alimentant une bascule binaire 88. Les sorties "zéro" et "un" de la bascule sont utilisées pour signaler au générateur de position deux fois durant chaque cycle de référence qu'un nouveau nombre commande de position est demandé par chaque registre commande de position 70-72. La sortie "zéro" de la bascule 88 est utilisée pour signaler au générateur de position B9 qu'un 1Q cycle de référence a été terminé. Dans une réalisation préférée de cette invention, chaque fois qu'un cycle de référence est terminé, la valeur emmagasinée de R sera diminuée de 1. Quand R atteint 0, la découpe en ligne droite a été terminée. exemple iii 15 Dans une machine de découpe à deux axes, on suppose que le nouveau vecteur de coupe est donné comme étant : X = + 400 unités Y = - 300 unités et que l'on a déterminé la valeur de R comme étant : 2q R = 19,3 en arrondissant R à la valeur entière supérieure on obtient : R (entier) =20 On suppose aussi, qu'à la fin de la découpe précédente, le registre commande de position X contenait la valeur 864 et le registre de commande de position 25 Y contient la valeur 1216. Puisque 2R = 40, le premier nombre commande de position pour chaque axe est : E„ = 400/40 = 10,00 ' 1x E„ = - 300/40 = - 7,50 iy Le tableau suivant représente les valeurs des nombres commande de position 30 consécutifs engendrés pour chaque axe. Position No X Y 1 874,00 1208,50 35 2 884,00 1201,00 3 894,00 1193,50 4 904,00 1186,00 5 914,00 1178,50 50 69 40270 28 2027300 18 1044,00 1081,00 19 1054,00 1073,50 10 30 31 1164,00 1174,00 991,00 983,50 15 38 1244,00 931,00 39 1254,00 923,50 40 1264,00 916,00 20 Après la formation de 40 nombres commande de position R aura été diminué jusqu'à zéro, ce qui signifie la fin de la découpe en ligne droite, et l'axe X de la machine outil se sera déplacé de 400 unités dans la direction positive alors que l'axe Y se sera déplacé de 300 unités dans la direction négative. Chaque fois que l'on désire choisir la période future pratique, pour 25 instituer une modification de taux d'alimentation, ou lorsque l'on désire engendrer à l'avance les nombres de valeur de front nécessaires pour chaque axe afin d'exécuter les coupes désirées, on se heurte au problème de prévision. Le fait de retarder à une période future l'initiation de la modification du taux d'alimentation donne un temps important pour déterminer les modifica-30 tions du train "donnée de front" sans l'interruption du flot continu. Cet intervalle de prévision doit cependant être suffisamment court pour affecter la modification de taux d'alimentation dans un temps de réponse acceptable par l'opérateur. Par exemple, on peut choisir comme intervalle de prévision 100 msec £1/10 de sec) ce qui permet d'obtenir des temps de réponse dans le 35 domaine des réactions humaines. Puisque chaque axe a un train de donnée séparé, le problème à résoudre dans la prévision est de déterminer l'ensemble correspondant de fronts, de telle sorte que iéquation £5) puisse être appliqué,au.nouveau taux d'ali-a mentation pour chaque axefi). Supposons les définitions suivantes : 69 40270 29 2027300 T= premier nouveau cycle de signal de référence suivant la notification de modification de taux d'alimentation. E., , = dernier nombre de front pour ième axe avant T^.. x(m) ^ 1 N = nombre de cycles de prévision j par exemple intervalle de prévision 5 de 100 msec qui nécessite N = 25 pour un signal de référence de 250 Hz. T2 = moment de la mise en place de la modification de taux d.'alimenta- tion. Ei(n+1) = PremiBr nombre de front du signal de position suivant basé sur le taux d'alimentation inchangé* 10 - Le problème est alors d'engendrer le nombre de front La distance totale entre E.r -, et T, mesurée en unités de front est : xim) 2 ' m - E.f ,J (+ n . n) îlmJ où la première quantité est la distance T et la seconde est la distance entre T^ et T^. M est la constante du compteur de référence (1000). 15 Le nombre de front (B) dans cet espace est déterminé simplement en divi sant par la valeur de déplacement de front E déterminé par l'équation (1) j par conséquent : 3i M(N+1) - E..f , Bj = x(m) Eil ou K - E.r , 20 R _ itm) 1 F 1 ''il (16) où K = constante choisie pour l'outil. Puisqu'on recherche le premier front suivant Ton rie conserve pas la fraction de B mais l'on choisit la valeur entière élevée suivante. 25 Si les valeurs de front consécutives ont été engendrées dans un tableau, • les valeurs correctes pour peuvent être obtenues en indexant à l'avance (B) "unités du tableau. Autrement, il peut être directement engendré par l'équation (17) comme "suit : E. , = E., , + B. . E„ (17) x(n+1) x(m) x . xl. . • • 30 . .Pour engendrer le nombre de valeurs de front nécessaire pour exécuter un . nouveau vecteur de coupe, indépendamment- des modifications de vitesse, on applique une règle similaire. Si l'on; supposé que E^j"est le premier front du nouveau vecteur de coupe, alors : ■ ~ - R. M - E.. .... - - Bj = iCm+1) (18) E., ........ • Xl 35 où R est de nouveau le nombre de cycles de référence donné dans l'équation (10). La valeur fractionnaire de (Bï est de nouveau rejetée et ia valeur entière la plus élevée suivante est choisie afin de calculer"Ei(n+1) dans l'équation 69 40270 30 2027300 E173. On dira qu'un axe est au repos pendant une durée de temps durant laquelle aucune phase de positiônpement ne se produit, et par conséquent il ne se produit aucun avancement de phase dans le signal onde carrée de commande de po-5 sition pour un axe particulier. Cet état peut se produire comme suit : Durant l'exécution d'une instruction de découpe dans laquelle un ou plusieurs axes ne nécessite aucun déplacement supplémentaire, dynamiquement durant une commande de découpe lorsque le signal d'erreur dépasse une limite (dans ce cas tous les axes actifs sont réglés temporairement au mode au repos) 10 i durant la période de repos momentanée entre des commandes de déplacement j après la mise en fonction d'un travail mais avant son commencement ; et dans d'autres situations similaires. Dans ces circonstances il est nécessaire de fournir une onde commande de position continue à la boucle d'asservissement, mais qui conserve une position de phase constante par rapport au signal de 15 référence. L'appareil décrit ci-dessus réalise cela, mais on peut ainsi le réaliser pratiquement comme suit (voir figure 2). Chaque registre de commande de position alimente un circuit de comparaison pour détecter le moment auquel deux registres contiennent des valeurs égales (lorsque 1'axe est dans le mode non au repos). A la fin d'un vecteur de découpe lorsque le "mode de repos" doit 20 être institué par un axe particulier, on peut exciter une "ligné de mise au repos" du circuit de comparaison ce qui aura l'effet de désengager la bascule d'ordre le plus élevé du registre sujet de position axiale de la procédure de comparaison. Avec une structure de code symétrique utilisé pour le registre de position axiale, deux sorties émettront maintenant à partir du circuit de 25 comparaison par période de l'onde de référence. Ces sorties se répéteront de façon alternée aux dernières valeurs de front disposées dans le registre de position axial et à une seconde valeur de front déplacée (h) ou 500 unités de phase dans le temps. Ces sorties engendrent à la bascule binaire une onde de commande de position continue avec un décalage de phase nul aussi longtemps 30 que la ligne de repos reste excitée. De plus, la position de phase statique de l'onde de l'axe au repos se trouve à la position enclenchée par le dernier ordre de déplacement appliqué à l'axe. Comme on l'a mentionné ci-dessus il est en général préférable de réaliser certaines parties de la présente invention à l'aide d'un ordinateur classique 35 et de réaliser d'autres parties de l'invention avec un matériel spécial. Bien que la réalisation spécifique décrite soit une réalisation préférée de l'invention, les hommes de l'art reconnaîtront que la plus grande partie (ou même toute) de l'invention peut être réalisée à l'aide d'un matériel spécial que l'on y a décrit. Les hommes de l'art reconnaîtront aussi que 40 certains aspects de l'invention (particulièrement les divers aspefcts repré- 69 40270 31 2027300 santés dans la figure 9) peuvent être réalisés à l'aide d'un ordinateur classique au lieu d'un matériel spécial comme montré ici. Une autre modification utile de l'invention peut mettre en cause un moyen de mémoire intermédiaire telle qu'une bande magnétique ou un disque magnétique. 5 Un tel moyen peut être utilisé pour emmagasiner des valeurs pré-engendrées des paramètres qui servent comme entrées dans l'appareil représenté dans la figure 9. On peut alors utiliser la bande ou le disque plusieurs fois si une succession de parties identiques doit être usinée, ce qui élimine la nécessité de regénérer ces paramètres. Aussi,si l'on utilise un ordinateur classique pour engen-10 drer ces paramètres, une telle approche peut permettre une programmation plus pratique du temps de la machine. Une autre modification pourrait être de prégénérer les tableaux complets Ctels que ceux représentés ci-dessus dans les sections ayant pour titre EXEMPLES NUMERIQUES). De tels tableaux pourraient alors fournir une entrée 15 directe à l'appareil tel que celui représenté dans la figure 10. De nouveau cette approche peut conduire à une une programmation plus pratique de la machine et une utilisation plus complète de la machine. Bien que l'on ait décrit dans ce qui précède et représenté sur les dessins les caractéristiques essentielles de l'invention appliquées è un mode de réa-20 lisation préférée de celle-ci, il évident que l'homme de l'art peut y apporter toutes modifications de forme ou de détail qu'il juge utiles sans pour autant sortir du cadre de ladite invention. 69 40270 32 2027300 REVENDICATIONS 1. Machine outil à commande numérique dans laquelle les données d'entrée numériques sont converties en un signal de commande de position dont la différence de phase avec un signal de référence indique le déplacement de l'outil à obtenir : caractérisé en ce qu'elle comporte des moyens de génération per- 5 mettant d'obtenir ledit signal de commande de position comprenant : - des premiers moyens recevant les données d'entrée digitales et engendrant une succession de signaux digitaux à des temps auxquels le niveau du signal de commande de position doit changer. - un registre connecté à la sortie des dits moyens de génération pour 10 emmagasiner temporairement chaque signal de la succession de signaux digitaux, - un compteur de référence, et des moyens de comparaison ayant une entrée connectée à la sortie dudit registre et une entrée connectée à la sortie du compteur de référence pour engendrer un signal de sortie quand les contenus dudit registre et du compteur de référence sont égaux, 15 - des seconds moyens connectés à la sortie des dits moyens de comparaison pour changer le niveau dudit signal de commande de position à la réception du signal reçu à partir de ces moyens de comparaison 2. Système de commande de machine outil à commande numérique pour engendrer un signal de commande de position pour chaque axe de la machine outil 20 comprenant : - une source de signaux indiquant le trajet à suivre pour chaque axe de la machine lors de la coupe d'un segment de la ligne droite, ledit système étant caractérisé en ce qu'il comporte : - des moyens de génération de nombres, connectés à ladite source de si-25 gnaux, engendrant des nombres indiquant les temps des fronts de montée et de descente de chaque signal de commande de position, en réponse aux signaux fournis par ladite source de signaux, - des moyens de connexion des dits moyens de génération au registre, pour transmettre à ce registre ceux des nombres qui indiquent les temps des 30 fronts de montée et de descente du signal de commande de position associé à chaque axe. - des moyens de comparaison associés au registre recevant une première entrée de ce registre et une seconde entrée d'un compteur de référence j et émettant un signal de sortie quand les contenus du registre associé et dudit 35 compteur de référence sont égaux, - des moyens associés aux moyens de comparaison changent le niveau du signal de commande de position correspondant à la réception du signal de 69 40270 33 2027300 sortie dudit moyen de comparaison. 3. Système de cotimande de machine outil selon la revendication 2 dans lequei - ledit registre est divisé en plusieurs sous registres, chacun étant associé à un axe de la machine, 5 - les dits moyens de comparaison sont divisés en autant de comparateurs qu'il y a d'axes de la machine, et chacun est associé au registre correspondant, « les dits moyens de connexion connectent les dits moyens de génération à chacun des dits sous registres. 10 4. Système de commande de machine outil selon les revendications 2 ou 3 dans lequel : - les sorties des dits moyens de comparaison sont connectés aux dits moyens de génération de nombres, - les dits moyens de génération de nombres fournissent un nouveau nombre 15 au registre en réponse au signal de sortie des moyens de comparaison associés audit registre. 5. Système de machines outils selon la revendication 2 dans lequel : • la sortie des dits moyens de comparaison est connectée aux dits moyens de génération, 20 - les dits moyens dè génération fournissent de nouveaux nombres au registre en réponse è un signal de sortie des dits moyens de comparaison. 6. Système de machines outils à commande numérique comprenant au moins une machine outil comportant au moins un axe et une source de données d'entrée représentant le trajet à suivre pour chaque axe ; ledit système étant carac- 25 térisé en ce qu'il comporte : - une source de signaux de référence d'une fréquence déterminée déterminant uns période de référence, - des moyens de génération de position connectés aux dites sources de données d'entrée ; et à ladite source de fréquence, ces moyens de génération 30 comprenant : - des moyens pour déterminer le nombre de périodes de référence nécessaires pour chaque trajet à suivre, la quantité de déplacement nécessaire pour chaque axe durant une position donnée de chaque période de référence, ainsi que'la position désirée de chaque axe pendant chaque portion de chaque pério- 35 de de référence, ■ - plusieurs premiers moyens de positionnement, chacun associé à un axe. 69 40270 34 2027300 et connecté aux dits moyens de génération pour recevoir un signal représentant la position désirée de l'axe associé, - des moyens de détection pour détecter la position réelle de chaque axe, • plusieurs seconds moyens de positionnement, chacun associé à un axe, 5 et connectés aux dits moyens de détection pour recevoir un signal représentant la position réelle de l'axe associé, - plusieurs moyens de différenciation, chacun associé à un axe et recevant ses entrées du premier et du second moyens de positionnement associés à cet axe et engendrant un signal représentant la différence entre les posi-10 tions réelle et désirée de l'axe, - des moyens de connexion entre les dits moyens de différenciation et la machine outil pour déplacer l'axe associé en réponse audit moyen de différenciation engendrant le signal de différence. 7. Système de machines outils selon la revendication 6 dans lequel ladite 15 portion donnée de chaque période de référence est égale à une demi période de référence. 8. Système de machines outils selon la revendication 6 dans lequel des moyens déterminent quand le nombre de périodes de référence nécessaires pour un trajet à suivre est atteint et indiquent par une connexion aux dits moyens 20 de génération qu'ils peuvent fournir des signaux correspondant au prochain trajet à suivre par les axes. S. Machine outil à commande numérique comportant au moins un axe, et une source de signaux indiquant le trajet à suivre par les axes pour une coupe donnée t caractérisée en ce qu'elle comporte des moyens pour engendrer un 25 signal de commande de position pour chaque axe comprenant : • des moyens de génération de nombres, connectés â ladite source de signaux pour engendrer des nombres indiquant les temps des fronts de montée et de descente du signal de commande de position de chaque axe, - des moyens analogiques de phase connectés aux dits moyens de génération 30 pour engendrer le signal de commande de position pour chaque axe, en réponse aux dits nombres, - des moyens de commande de cycle connectés aux dits moyens analogiques de phase et aux dits moyens de génération pour commander la génération d'un nouveau nombre par les dits moyens de génération et fourni aux dits moyens 35 analogiques, après chaque front de montée et chaque front de descente du signal de commande de position de chaque axe. 69 40270 35 2027300 10. Machine outil selon la revendication 9 dans laquelle les dits moyens analogiques de phase comprennent : - un compteur de référence, - Un registre pour emmagasiner chacun des. dits nombres, - des moyens de comparaison connectés au compteur de référence et au re gistre pour produire un signal de sortie quand les contenus dudit compteur de référence dudit registre, sont égaux, - des moyens bistables connectés aux dits moyens de comparaison pour en gendrer ledit signal de commande de position en changeant son état chaque fois que les dits moyens de comparaison fournissent un signal de sortie.