La présente invention concerne'le commande de machines-outils ou d'autres mécanismes de précision, et plus particulièrement, le contrfile numérique des machines-outils. Le système classique de contrôle numérique de machine-outil comprend un 5 interpolateur et plusieurs sources d'impulsions délivrées à des convertisseurs analogiques. Les informations mémorisées sur une bande perforée sont sous forme d'instructions destinées à 1'interpolateur et correspondant à chaque mouvement de la machine-outil. Ces informations se présentent sous la forme d'un vecteur, de la quantité de déplacement requise et de la durée de chaque vecteur. 10 L'interpolateur fragmente l'instruction en une série d'incréments pour chaque axe ds la machine-outil. La sortie de 1'interpolateur pour chaque axe comprend donc un train continu d'impulsions, les données correspondant à chaque axe étant coordonnées ou synchronisées avec les autres axes intervenant dans l'opération de découpe, Dans la mesure du possible, les impulsions correspondant à 15 un seul axe sont émises à intervalles réguliers afin de fournir des instructions périodiques en vue d'obtenir une action sans à - coups du servo-mécanisme. Chaque impulsion ordonne à la machine de se déplacer d'un incrément déterminé dans une direction donnée. Dans un système typiquej le déplacement commandé par une seule impulsion de 1'interpolateur est 25 millièmes de rrm. En consé-20 quence, pour commander une progression de 1,52 m/minute, ou 2,54 cm/seconde, le débit des impulsions envoyées par 1'interpolateur du servo-mécanisme pour cet axe doit être de 10,000 impulsions par seconde. Une vitesse maximale type est de 7,62cm/seconde ce qui impose un débit d'impulsions de 30.000 impulsions/ seconde, 25 Chacune de ces impulsions est un signal absolu représentant un incrément déterminé de mouvement. En outre, toutes les distances sont représentées par une somme d'impulsions sans qu'aucun moyen de vérifier la précision de la somme n'ait été prévu. En conséquence, en cas de non-détection d'un signal, ou de détection erronée d'un parasite pris pour une impulsion supplémentaire, une 30 erreur absolue sera introduite dans le système. L'environnement usuel de la machine-outil est soumis à une importante génération de parasites électriques. En raison des fréquences élevées des trains d'impulsions, les lignes d'émission et les circuits de détection sont extrêmement sensibles aux bruits et aptes à produire des erreurs provenant des parasi-35 tes. En conséquence, un objet de la présente invention est de fournir des instructions aux servo-mécanismes des machines-outils à des fréquences de données très faibles, compatibles avec le mouvement précis et régulier des axes, afin de minimiser les calculs d'interpolation et d'éviter les erreurs consécutives 40 aux parasites provenant des hautes fréquences. 69 45803 2 2028503 En bref, l'invention concerna un système d8 contrôla servant à commander une machina-outil. Un processeur fournit périodiquement une série de signaux digitaux représentant chacun un axe de la machine-outil. La valeur codée de chacun de ces signaux digitaux représente la distance que doit parcourir la ma-5 chine-outil le long de l'axe associé au signal, au cours d'un intervalle de temps fixa. Les signaux sont délivrés à une cadence inférieure à 200 par axe et par seconde, et qui est pourtant nettement supérieure à la caractéristique de réponse arrêt-marche de la machine-outil, Le signal codé peut être envoyé sur un moyen de de détection ou de correction d'erreur servant à éviter l'accu-10 mulation d'erreurs consécutives aux bruits, Un servomécanisme est prévu pour chaque axe; chacun d'eux répond aux signaux correspondant à un axe donné issus du processeur, afin de modifier en conséquence la représentation de la position désirée de la machine-outil le long de l'axe. En conséquence, la valeur de chaque signal digital pour l'axe en question est ajoutée à la position désirée qui 15 précède immédiatement afin d'indiquer une nouvelle position désirée de la machi- ' ne-outil, Ces servo-mécanismes ont chacun pour fonction de comparer en permanence la représentation de la position désirée avec la position réelle de la machine-outil afin de fournir de façon continue un signal d'erreur représentant la différence entre ces deux positions. Un moteur est prévu pour chaque axe 20 afin d'entraîner la machine le long de l'axe concerné en réponse au signal associé. Dans les systèmes de contrôle digital antérieurs, la vitesse d'avance est le produit de la distance commandée par chaque impulsion, définie comme la résolution de la machine, par la vitesse d'arrivée des impulsions. Dans le cas 25 où l'on réaliserait une machine-outil plus précise, nécessitant une résolution de 1,25 millième de nom, la vitesse maximale d'échantillonnage requise atteins drait 60,000 impulsions/seconde. Dans le cadre de la présente invention, le système de contrôle présente l'avantage de permettre, dans les mêmes conditions* un taux d'échantillonnage constant malgré les modifications de résolution ou 30 de vitesse. La vitesse d'échantillonnage est déterminée par les constantes physiques ou la bande passante du filtre de la commande de la machine-outil, La figure 1 est un organigramme illustrant un mode de réalisation de l'appareil permettant de commander une machine outil suivant les principes de la présente invention! 35 La figure 2 illustre les signaux fonctionnels de certains des circuits de la figure 1 et La figure 3 est un organigramme schématique illustrant l'appareil de génération des signaux fournis à l'appareil de la figure 1. Comme indiqué ci-dessus, les précédents systèmes de contrôle numérique de 40 machines-outils utilisaient pour chaque axe une liaison distincte entre l'in- 3 2028503 69 45803 terpolateur et les servo-mécanismes de la machine-outil. Chaque liaison comprenait un train continu d'impulsions commandant chacune un incrément spécifique et cumulatif du mouvement effectué par la machine-outil dans la direction spécifiée. 5 Conformément au résumé ci-dessus, la présente invention fournit des si - gnaux digitaux ou mots à codification digitale pour chaque axe à des moyens de détection d'erreur ou d'écart. La valeur de/cescy2gnaux représente la distance qui doit être parcourue par la machine-outil le long ds l'axe correspondant au cours d'un intervalle de temps fixe, Il en résulte que chaque signal ajuste 10 le servomécanisme de l'axe associé. Cette mise à jour a lieu à une cadence inférieure à 200 par axe par seconde, mais l'opération résultante de la machine-outil présentera des caractéristiques de régularité et de continuité. La raison en est que la portion physique d'un système d'asservissement de machine-outil, composée d'un moteur d'entraînement, d'engrenage de réduction, d'une vis 15 de conduite, et d'une glissière ou table entraînée par-cette vis, est en fait un filtre mécanique passe-bas. Dans le cas d'une machine-outil ayant pour fonction de dessiner des contours précis au moyen d'un crayon mobile, et pouvant être une machine à tracer, il est possible de maintenir la masse et 1'inertie à un faible niveau. Cela étant, le filtre mécanique pourra avoir une fréquence 20 supérieure de coupure de 10 hz. Dans le cas de machines-outils à usiner les métaux, le système entraîné doit être massif pour conserver rigidité et précision, lors du transport de pièces lourdes soumises à des charges élevées dues au travail de coupe. Ces filtres ont des fréquences de coupure supérieures comprises entre 1 hz et 3hz. Au-dessus de ces fréquences, les filtres présentent 25 une atténuation très rapide qui augmente en fonction de la fréquence, de l'ordre de 12 db par octave. Dans le cas où les instructions de déplacement correctement codées sont délivrées à des cadences qui sont approximativement supérieures à 10 fois la fréquence de coupure, le servomécanisme de la machine-outil se comporte comme un intégrateur linéaire, produisant une vitesse de glis-30 sement régulière exactement proportionnelle à la valeur moyenne des commandes. Des valeurs de commande inférieures fournies è des vitesses d'échantillonnage supérieures n'apporteront aucune amélioration à la précision ou à la régularité du mouvement. Le système de contrôle représentée plus bas offre une conception permettant une précision aussi grande que celle dont est capable la ma-35 chine-outil, et qui avoisine le taux d'échantillonnage théorique minimum. Ce taux est inférieur de 100 à 1000 fois à ceux des systèmes antérieurs de contrôle numérique de machines-outils. Dans les applications où seule la précision du déplacement de l'outil est requise, et tolérant des variations de vitesses le long de ce déplacement (ap-40 pelée encore modulations de vitesses) des fréquences d'échantillonnage infé 69 45803 4 2028503 rieures à la fréquence de coupure du filtre d'asservissement peuvent être utilisées avec un système de même conception. Citons notamment le cas des machines de tracé, de gravure à normographes, de génération de négatifs photographiques, et des dispositifs de commande de progression des faisceaux laser. 5 Dans ces cas, il convient, si l'on veut obtenir des déplacemnts de l'outil d'une précision optimale, de régler les parties électriques des servomécanismes de chacun des axes compris dans le système, de telle sorte que la bande passante totale des servomécanismes, soit, approximativement égale pour tous. Cette condition est relativement facile à réaliser. -JO Comme indiqué à la figure 1, la présente invention peut utiliser une liai son de communication unique pour tous les axes de la machine outil, L'exemple représenté comporte trois axas, "X", "Y" et "Z" mais ce chiffre n'est pas limitatif", le nombre d'axes étant fonction de la machine-outil utilisée. Un servomécanisme a été représenté pour un seul axe, bien que les servomécanismes con-15 cernant les autres axes soient les répliques exactes de celui-là. Dans le cadre du mode de réalisation préféré, la liaison de transmission 10 est une liaison parallèle de 14 bits par exemple. Dans un autre mode de réalisation, on pourrait avoir une simple ligne série associée à des convertisseurs parallèle--série et série-parallèle adéquats. 20 La liaison de transmission d'entrée 10 est connectée à un registre de mot d'entrée, 11, et à un circuit de décodage fin de bloc 12. Trois positions de bits du registre d'entrée contiennent les bits de commande de l'axe. Ces trois bits peuvent représenter huit combinaisons possibles. Les trois axes sélectionnés peuvent donc être représentés par trois des huit codes possibles, par sxem-25 pie 100 pour l'axe X, 010 pour l'axe Y, et 001 pour l'axe Z, Les positions de bits de commande de trois axes contenus dans le registre 11 sont connectées en parallèle au circuit de décodage d'axe,13. Ce circuit décode les bits de commande des axes, et en conséquence, applique un signal sur l'une des lignes 14 à 16 selon la configuration de bits. Chacune de ces lignes est la borne d'-30 entrée de commande de l'une des portes 17 à 19, Les 11 positions de bits du registre 11 contenant les "données" sont connectées par les lignes parallèles 20 aux trois partes, La porte 17 représente l'axe X, et lorsqu'elle est ouverte, elle transmet les bits de données, sur les lignes en parallèle 21, au registre 22 de l'axe X. L'ouverture de la porte 35 17 a également pour effet de faire apparaître sur la ligne 23 un signal de sortie qui remet à zéro le registre 11, permettant ainsi à ce dernier de recevoir ultérieurement le mot d'information suivant, acheminé sur la ligne 10. De la porte même manière, le signal délivré sur la ligne 15 ouvre la/18 qui transmet les bits de données apparus sur la ligne 20, au registre d'axe Y 25, par l'inter-40 médiaire de la ligne 24, ainsi qu'un signal sur la ligne 26 pour remettre à 69 45803 5 2028503 zéro le registre 11. Un signal délivré sur la ligne 16 ouvre, de même, la porte 19 et cette dernière transmet les informations de données par l'intermédiaire de la ligne 27 au registre d'axe Z 28; un signal est également transmis sur la ligne 29, remettant à zéro le registre 11. 5 Le circuit décrit précédemment distribue donc les mots de données d'entrée aux registres d'axe approprié, 22, 25 ou 28, en vue de leur transmission ultérieure aux servomécanismes des axes correspondants, A la fin d'un bloc de données contenant les déplacements ordonnés pour tous les servomécanismes au cours de-l'intervalle de temps-choisi, une série 10 spéciale de caractères constituant le signal de fin de bloc est transmise sur la ligne 10. Ces données sont détectées par le ciJrcuit de décodage 12 pour permettre la transmission d'une impulsion brève à un circuit monostable 30. Ce circuit monostable 30 délivre une impulsion d'amplitude et de durée prédéterminées et il transmet cette impulsion à l'une des entrées dé chacun des circuits 15 ET 31 à 33. Le monostable autorise de ce fait tous les circuits ET à transmettre les données mémorisées dans chaque registre d'axe au servo-mécanisme associé, sur instructions de ce dernier. Seul a été représenté sur les figures le servo-mécanisme correspondant à l'axe X. Mais les servo-mécanismes correspondant aux autres axes sont identi-20 ques à celui-ci. " Il a été prévu un circuit d'horloge. 40 ou oscillateur conçu pour fonctionner à la fréquence de 2048 KHz, La sortie de l'horloge 40 est constituée par une chaîne d'impulsions distinctes. L'onde carrée est appliquée à un compteur de référence 41, et à un compteur de commande 42 de l'axe X, chacun de ces comp-25 teurs étant composé de 11 étages binaires. Le compteur de référence 41 est essentiellement un circuit diviseur. Ce compteur produit un signal positif, et modifie la sortie qu'il transforme en signal négatif, après avoir compté les 1024 premières impulsions et compte les 1024 impulsions suivantes, pour revenir à un signal positif. La sortie du comp-30 teur de référence est donc une onde carrée de 1khz de fréquence. Le compteur 42 de commande de l'axe X produit une sortie à une fréquence approximativement égale à celle du compteur de référence 41, mais, au lieu d'être maintenue la phase du compteur de commande peut être modifiée. C'est cette différence de phase qui ajuste en permanence le servomécanisme, 35 Un détecteur de position 43 détermine instantanément la position réelle de la machine-outil, La sortie du compteur de référence 41 est délivrée à un diviseur de phase 44 qui dédouble le signal en deux ondes sinusoïdales présentant un déphasage de 90"/ . Ces deux ondes sinusoïdales sont fournies aux enroulements 45 et 46 du dispositif 43, Le rotor-47 est connecté à l'arbre du 40 moteur 48. Le moteur est également connecté à la boite de réduction 49 afin 69 45803 6 2028503 d'entraîner l'axe X de la machine-outils 50, Le détecteur de position 43 a pour fonction, bien connue, de répondre aux signaux émanant des stators 45 et 46, en fonction de l'angle de rotation du rotor 47 par rapport à ces stators, et produisant de ce fait sur ces stators, un 5 signal dont la phase est fonction de la position physique de l'arbre du moteur 48. Ce signal apparaît sur la ligne 51 en entrée du détecteur d*.écart de phase 52. L'autre entrée de ce détecteur d'écart de phase est constituée par la sortie du compteur de commande de l'axe 42, La différence de phase entre ces deux signaux représente la différence entre la position réelle de la machine-outil 10 et la position souhaitée. Ce signal est amplifié par l'amplificateur 53 et il sert à entraîner le moteur 48 dans une direction qui réduise le niveau d'erreur à zéro. Le compteur de commande 42 peut être mis à jour par adjonction de données de nature à modifier la phase de sa sortie. Dans le cas présenté, ce compteur 15 de commande ne se comporte pas comme un véritable additionneur, mais il peut jouer ce rfile à condition que l'on pré-positionne des éléments de comptage. Dans cet exemple, le compteur de commande est consitué par un compteur binaire ordinaire. Un câble d'entrée 60 comprend'une série de lignes connectées chacune à un étage du compteur. Lors de la mise en oeuvre, les bits "1" apparaissant 20 sur les lignes qui ont été sélectionnées positionneront au "1" les' positions de bits correspondantes du compteur, Ainsi, sera-t-il possible de placer dans le compteur un nombre binaire spécifié. Le compteur continuera ensuite à compter à partir du positionnement initial. Pour que le compteur de cormande puisse se comporter comme un additionneur, 25 l'initialisation doit se produire au moment où le compteur ne contient que des zéros, Cette initialisation a lieu lorsque le compteur vient d'enregistrer le 2Q48ème bit et qu'il retourne au zéro. Cette fonction coïncide avec l'instant du report. Dans le cas du compteur binaire, c'est l'instant où tous les étages se trouvent à l'état "1" et où l'horloge 40 envoie un bit supplémentaire. Tous 30 les étages du compteur basculent alors à l'état "0", et le compteur émet un signal à sa sortie de report. Le circuit de détection de sortie de report 61 est connecté à la sortie du compteur de commande 42, Ce circuit détecte l'arrivée d'un signal à la sortie ds report du compteur de commande et il actionne un circuit monostable 62. 35 Ce monostable fournit alors sur la ligne 63 un signal d'amplitude et de durée pré-déterminées à l'autre entrée du circuit ET 31, La coïncidence des signaux provenant du circuit monostable 30 et du circuit monostable 62 actionne le circuit ET 31 qui transmet le signal du monostable 62 à la porte da sortie de l'axe X, 64. Ce signal ouvre la porte afin 40 qu'elle transmette sur les lignes 60 les données du registre de l'axe X 22 7 2028503 69 45803 au compteur de commande.de l'axe X 42. Ces données pré-positionnent le compteur de commande à la valeur des données contenues dans le registre de l'axe X, prépositionnant le compteur à une valeur spécifiée et modifiant de ce fait la phase du signal de sortie en provenance de ce compteur. L'ouverture de la porte 5 de sortie de l'axe X a également pour effet de délivrer un signal sur la ligne 65 afin de remettre à zéro le registre 22 de l'axe X, Le servo-mécanisme de l'axe Y est identique à celui de l'axe X, et il a pour fonction de transmettre un signal sur la ligne 70 pour conditionner le circuit ET 32 et ouvrir de ce fait la porte 71 afin qu'elle transmette, sur le câ-10 fale 72, les données contenues dans le registre 25 de l'axe Y, vers le compteur de commande du servo-Jiiécanisme de l'axe L'ouverture de la porte 71 a également pour effet de générer un signal sur la ligne 73 et ce signal remettra à zéro le registre 25 de l'axe Y. De mâme, le servo-mécanisme de l'axe Z, identique aux précédents, a pour fonction de transmettre un signal sur la ligne 75 afin 15 de permettre à la porte ET 33 d'ouvrir la porte 76 et de transmettre ainsi les données contenues dans le registre 28 de l'axe Z, au compteur de commande du servomécanisme de cet axe par l'intermédiaire de la ligne 77, De plus, l'ouverture de porte 76 provoque l'apparition d'un signal sur la ligne 78 et de ce fait la remise à zéro du registre 28 de l'axe Z, 20 A présent, le fonctionnement du circuit de la figure 1 sera décrit en ré férence aux signaux illustrés sur la figure 2. Les données d'entrée apparaissant sur la ligne 10 se présentent sous la forme d'une série de blocs, comprenant dans l'exemple examiné, quatre mots parallèles. Trois de ces mots contiennent les bits de commande d'axe et les bits 25 de données, tandis que le quatrième contient le code de fin de bloc. Ces blocs apparaissent de façon répétée à une cadence constante comprise approximativement entre 10 et 200 par seconde. Ceci correspond à une fréquence de mise à jour comprise entre 10 et 200 Hz. Mentionnons à titre de comparaison que l'horloge 40, dans l'exemple examiné fonctionne à la vitesse de 2048 khz pour entraîner 30 les compteurs 41 et 42 à des vitesses de sortie de 1 Khz. Ainsi donc, le compteur de commande 42 est mis à jour à une cadence sélectionnée d'une fois tous les 100 à 5 cycles de sortie, selon la vitesse d'entrée sur la ligne 10. Supposons, à titre d'exemple, que l'engrenage 49 soit disposé de telle sorte qu'une fifférence d'une impulsion entre le compteur de commande 42 et le 35 compteur de référence 41 représente 2,5 millièmes de mm de mouvement de la machine-outil le long de l'axe X, Une seule impulsion émise par chacune des horloges correspondant aux autres axes représentera également 2,5 millièmes de mm de mouvement de la machine-outil le long de l'axe considéré. Supposons également que les mots de données d'entrée correspondent à l'a-40 justage suivant des servomécanismes de chaque axe, exprimé en unités de 2,5 69 45803 millièmes de mm: Axe X (+100); axe Y (-75) et axe Z (03. Le premier mot arrivant sur la ligne 10 comporte donc les trois bits de commande d'axe de 100 et les bits de données correspondent à un équivalent binaire de 100. Spécifiquement, les 11 bits de données binaires apparaîtront en 5 parallèle comme suit; 00001100100". Le mot complet comprenant les bits de commande d'axes et les bits de données est reçu par le registre 11. Les bits de commande d'axe sont transmis au circuit de décodage d'axe 13 qui délivre un signal de sortie sur la ligne 14. Ce signal ouvre la porte d'entrée 17 de l'axe X qui transmet les bits de données sur la ligne 30 et par l'intermédiaire 10 de la ligne 21, au registre 22 de l'axe X. Le registre 22 de l'axe contient maintenant l'équivalent binaire de 100. L'ouverture da la porte d'entrée 17 ds l'axe X provoque également l'émission d'un signal sur la ligne 23, remettant à zéro le registre 11. Le mot qui suit immédiatement est ensuite reçu par le registre 11 . Ce 15 mot représente l'axe Y et il contient les bits de commande d'axe "010". Les bits de données représentent l'équivalent de la valeur - 75 qui est égale à un mot binaire composé exclusivement de "1" moins l'équivalent binaire de 75. Un mot binaire contenant uniquement des "1" est égal à 2048. Ce nombre diminué de 75 donne 1973, En conséquence, les bits de données comprennent l'équivalent 20 binaire de +1973, Le mot binaire est "1110110101", Les bits de commande d'axe sont transmis au circuit da décodage d'axe 13 qui répond en délivrant un signal sur la ligne 15. Ce signal ouvre la porte d'entrée 18 de l'axe Y qui transmet les bits de données de la ligne 20, par l'intermédiaire de la ligne 24, au registre de l'axe Y 25, En conséquence, le registre de l'axe Y contient à pré-25 sent l'équivalent binaire de -75, L'ouverture de la porte d'entrée 18 de l'axe Y provoque également l'apparition d'un signal sur la ligne 26 qui remet à zéro le registre 11, Le registre 11 reçoit alors le mot suivant de la ligne 10, qui représente l'axe Z. Les bits de commande d'axe 001 et les bits de données composés exclu-30 sivement de zéros constituant le mot ainsi reçu. Les bits de commande d'axe sont transmis au circuit de décodage d'axe 13, qui délivre un signal sur la ligne 16. Ce signal ouvre la porte d'entrée 19 de l'axe Z qui transmet le mot de données composé de zéros de la ligne 20, par la ligne 27, au registre 28 de l'axe Z. La mise en oeuvre de la porte d'entrée 19 provoque également l'émis 35 sion d'un signal sur la ligne 29, afin de remettre à zéro le registre 11. Le mot qui apparaît ensuite sur la ligne 10 est détecté par le circuit de décodage de fin de bloc 12, en tant que données de fin de bloc. En conséquence, le circuit 12 fournit un signal au monostable 30, Sur la figure 2 à laquelle on se référera à nouveau, le contenu de cow 40 mande de l'axe X, 42 atteint le compte maximal de 2048 bits et se remet à 2028503 69 45803 9 2028503 zéro comme l'indique le signal 60. A cet instant, le compteur de commande 42 fournit un signal au détecteur de sortie de report 61, qui actionne le circuit monostable 62. La sortie du circuit monostable 63 est représentée par l'impulsion 81. 5 Approximativement au même instant, tous les "un " contenus dans le compteur de commande d'axe Y deviennent des zéros sous l'effet d'un signal 82, et le compteur émet une impulsion de sortie de report à partir du monostable. Cette impulsion est l'impulsion 83, De môme, le compteur de commande de l'axe Z a été représenté au moment où tous ses *1" deviennent des "0" sous l'effet d'un 10 signal 84 et il produit la sortie 85 de monostable de l'axe 2, Les divers comp-teurs de commande ne sont pas nécessairement synchronisés car ils peuvent avoir reçu précédemment des instructions différentes, et en conséquence le changement d'état et les Impulsions de sortie du monostable, selon toute probabilité, n'ap-paraîtront pas au même moment, 15 A cet instant les registres 22, 25 et 28 contiendront tous les mots de données appropriés et le monostable 30 est excité par le circuit de décodage de fin de bloc 12. Le monostable de fin de bloc produit l'impulsion 86 représentée à la figure 2, Cette impulsion est délivrée à l'une des entrées de chacun des circuits ET 31 à 33. 20 Un peu plus tard, les compteurs de commande atteignent à des instants dif férents le compte 1024 et passent de l'état positif à l'état négatif. Les si- — . gnaux négatifs sont représentés par les signaux 87 à 89 à la figure 2, Tandis que le compteur de commande 42 de l'axe X affiche à nouveau uniquement des "1" et sous l'effet de l'impulsion suivante se remet au zéro envoyant 25 un signal au détecteur de sortie de report 61, le monostable 62 est alors mis en oeuvre et il délivre une impulsion de sortie 90 sur la ligne 63. Cette impulsion est transmise par le circuit ET 31 afin d'ouvrir la porte de sortie 64 de l'axe X. cette porte transmet l'équivalent binaire de 100 du registre 22 de l'axe X, au compteur de commande 42 de l'axe X par 1'intermédiaire de la ligne 30 60, En conséquence, au lieu de demeurer à l'état zéro, le compteur dB commande 42 est pré-positionné à la valeur 100, Le compteur de commande, en passant à l'état zéro, puis à la valeur 100, produit le signal positif 91. En raison de son pré-positionnement le compteur de commande atteindra la valeur 1024, 100 cycles de l'horloge 40 plus tôt. Le signal négatif 92 appa-35 raissant à cet instant en provenance du compteur de commande subira une modification de phase par rapport au signal précédent 87. Le compteur de commande adoptera cette nouvelle phase représentée par les signaux 93 à 96, jusqu'à une nouvelle mise à jour. La modification de phase du compteur de commande introduit à présent une 40 erreur supplémentaire dans le détecteur d'erreur de phase 52. Cette modifica 69 45803 10 2028503 tion ae traduit par l'envoi d'un signal du détecteur 52 à l'amplificateur 53, signal qui commande le moteur 48, En conséquence, le moteur 48 commandera la machine-outil dans une direction de nature à ramener l'erreur à zéro. Lorsque le compteur de commande d'axe Y n'affiche plus que des "1" et répond à l'impul-5 sion suivante de l'horloge en produisant un signal de sortie de report, le détecteur de report et le monostable correspondant à cet axe, produisent l'impul» sion de sortie 100, Cette impulsion de sortie est transmise par la ligne 70 au circuit ET 52, Ce circuit ET a pour seconde entrée l'impulsion 86 qui provient du monostable 30, L'impulsion 100 est ainsi transmise à la porte de sortie 71 10 de l'axe Y, ouvrant la porte qui transmet la représentation binaire de 1973, par la ligne 72, au compteur de commande de l'axe Y, Tandis que le compteur de commande de l'axe Y se remet à zéro, il produit momentanément le signal positif 101, Cependant, le compteur est immédiatement pré-positionné au compte 1973, Cette valeur est donc supérieure à la valeur 1024, de sorte que le compteur de 15 commande revient à l'état négatif. Un peu plus tard, le compteur de commande d'axe Y atteint la valeur 2048, et le compteur produit alors le signal positif 102, Le compteur de commande de l'axe Y produit aussi un signal de sortie de report à ce même instant, et cela entraîne l'apparition de l'impulsion 103 sur la ligne 70. Cette impulsion est elle aussi transmise par le circuit ET 32 pour 20 ouvrir la porte de sortie 71 de l'axe Y. Cependant, la précédente ouverture de la porte de sortie de l'axe Y a provoqué l'apparition du signal sur la ligne 73, lequel signal a remis à zéro le registre de l'axe Y, Ainsi lorsque la porte 71 est ouverte, le contenu du registre de l'axe Y 25, composé uniquement de zéros, sera transmis par la ligne 72 au compteur de commands de l'axe Y. Ep 25 conséquence, la valeureùcompteur de commande ne subira aucune modification. Il en résulte que la sortie du compteur de commande de l'axe Y subira un retard de phase équivalent à 75, Cette nouvelle phase est représentée par les signaux 104 à 108 de la figure 2, La nouvelle phase du compteur de commande de l'axe Y provoque la modifica-30 tion de la sortie du détecteur d'erreur de phase de l'axe Y, et la transmission d'un signal d'erreur au moteur de l'axe Y qui, de cb fait,.entraîne la machine-outil le long de cet axe dans le sens de nature à réduire l'erreur à zéro. Tandis que le compteur de commande de l'axe Z passe de l'état un à l'état zéro, le monostable associé détecte le signal de sortie de report pour donner 35 l'impulsion "110. Cette impulsion apparaît sur la ligne 75, et elle est transmise par le circuit ET 33 pour ouvrir la porte de sortie 76 de l'axe Z. Cette porte transmet le contenu du registre de l'axe Z 28 sur la ligne 77, au compteur de commande de l'axe Z, Cependant, le registre de commande de l'axe Z ne contient que des zéros, La valeur compte du compteur de conmande de l'axe Z ne 40 sera donc pas modifié, et la phase du signal de sortie de cb compteur demeurera 69 4S803 n 2028503 inchangee, comme le montrent lss signaux 111 à 116. En 1'absence dé changement de phase, l'entrée du détecteur d'erreur de phase de l'axe Z demeurera inchangée par rapport à la phase de référence et en raison de l'absence de sortie à ce détecteur le moteur de l'axe Z maintiendra la machine-outil immobile sur cet 5 axe. L'appareil décrit en référence à la figure 1 a donc pour fonction de répondre aux blocs de données reçues, en distribuant les données aux servomécanismes appropriés. Chaque servo-mécanisme a répondu aux données correspondant à l'axe associé, de manière à modifier en conséquence la représentation de phase de la 10 position désirée de la méchine-outil le long de cet axe. Cet ajustage du servo--mécanisme de chaque axe s'est produit à une cadence inférieure à 200 par axe par seconde. Chaque servo-mécanisme compare de façon continue la représentation de la position désirée avec celle de la position réelle de la machine-outil, afin de fournir en permanence un signal d'erreur représentatif de cette diffé-15 rence. Ce signal d'erreur a pour effet d'entraîner la machine-outil le long de' • l'axe concerné. Il est donc mis à jour une vitesse suffisante pour que l'inertie de la machine-outil commandée puisse en égaliser le mouvement, Le circuit de la figure 3 a pour effet de dériver les blocs de données transmis sur le câble 10, vers le circuit de la figure 1, L'entrée du système 20 de la figure 3 apparaît sur le bus parallèle 200; elle est fournie par un postprocesseur. Les post-processeurs sont bien connus, et peuvent être constitués, notamment par un ordinateur à usage général spécialement programmé. Le postprocesseur n'intervient pas corme élément de la présente invention. Pour chaque segment rectiligne du mouvement de la machine-outil, le post-25 processeur fournit les informations suivantes: la distance totale que la machine devra parcourir le long de l'axe principalj la vitesse désirée de progression de la machine-outil le long de cet axe principal; la longueur totale de la progression de la machine le long de l'axe X, et le sens de cette progression; la longueur totale de la progression de la machine le long de l'axe Y et 30 le sens de cette progression; et enfin la longueur totale et la direction du parcours à effectuer le long de l'axe Z, L'axe principal se définit comme l'axe correspondant au parcours le plus long. Ces informations sont fournies sous forme d'enregistrements séquentiels d'informations délivrés sur le bus 200. Un distributeur 201 transmet le premier 35 d'un enregistrement reçu au registre de l'axe principal 202, le second mot au registre de vitesse de progression 203, le troisième mot au registre AX 204, le quatrième mot au registre AY 205 et enfin le cinquième mot au registre AZ 206, Un diviseur 207 répond aux sorties du registre de l'axe principal 202 et au registre de vitesse de progression 203 en divisant le contenu du.registre 40 de l'axes principal par celui du registre de vitesse de progression. Le contenu 69 45803 12 2028503 du registre de l'axe principal 202 représente la distance totale du segment à parcourir sur l'axe principal. Le contenu du registre de vitesse de progression 203 représente la vitesse de progression désirée le long de l'axe principal, et en conséquence, la vitesse maximum sur n'importe quel axe de la machine-ou-5 til. En divisant la distance à parcourir par la vitesse de progression, la sortie du circuit 207 du diviseur représente le temps d'exécution total pour ce segment précis. Cette sortie est fournie au circuit de multiplication de vitesse de signal 208, Le circuit 208 multiplie la sortie du.circuit diviseur 207 par une valeur prédéterminée, Cette valeur correspondant à la fréquence de com-10 mande des servo-mécanismes, et peut Être une vitesse quelconque comprise arbitrairement entre 10 8t 200 commandes par seconde. Par exemple, le circuit peut multiplier la sortie du diviseur 207 par 50, et l'on obtient une vitesse de 50 commandas par seconde. Le résultat de cette multiplication est un nombre qui est transmis sur la 15 ligne 209 au compteur de décrémentation 210 et au registre 211, Ce nombre comprend le nombre total de commandes aux servo-mécanismea, nécessaire pour parcou rir le segment spécifié. 11 est transmis par le registre 211, sur la ligne 212, aux circuits diviseurs 213 à 215, Chacun de cas circuits diviseurs répond à la sortie du registre 211 et aux sorties de l'un des registres d'axe 204 à 206 20 correspondant, pour diviser la distance totale à parcourir le long de chaque axe et contenue dans les registres 204 à 206, par le nombre total des commandes à envoyer aux servo-mécanismes pour le segment considéré, La sortie de chacun des circuits diviseurs représente donc la distance qui doit être parcourue par la machine-outil le long de l'axe associé, pour chacune des commandes effec-25 tuées. Les sorties de chacun des circuits diviseurs 213 à 215 sont envoyées res pectivement aux circuits de complémentation 216 à 218, Les circuits de complémentation détectent chacun la valeur du bit de signe -de la sortie du circuit de commande associé. Si le bit de signe représente un nombre positif, ce nombre sans bit de signe est transmis tel quel. Cependant, si le bit de signe indique 30 un nombre négatif, toutes les positions da bits du nombre binaire seront inversées avant d'être transmises. Les sorties des circuits de complémentation 216 à 218 sont transmises respectivement aux registres t 6 X ), 220, C 6 Y ) 221 et C 6 Z) 222. Ces registres mémorisent les informations à mesure qu'elles arrivent et en outre fournis 35 sent des sorties sur trois lignes supplémentaires désignant l'axe représenté par le registre spécifique. Par exemple le registre ôX peut fournir en permanen ce las symboles 100 sur ces trois lignes supplémentaires. De mSme, le registre [6 Y) 221 fournira les symboles 100 et le registre tô Z) 222 les symboles 001. Comme indiqué en référence à la description de l'appareil de la figure 1, ces 40 symboles commanderont la répartition des données aux servo-mécanismes des axes 69 45803 13 2028503 appropriés. Comme indiqué précédemment, la sortie du multiplicateur de vitesse de signal 208, représentant le nombre total de commandes destinées aux servo-mécanismes de la machine-outil, est transmise à l'entrée de "positionnement" du comp-5 teur de décrémentation 210. Cette entrée positionne le compteur à la valeur de cb nombre, et provoque l'envoi d'un signal de sortie sur la ligne 230 à l'entrée de "positionnement" de l'horloge à quatre phases 231, Cette horloge 231 répond par des oscillations à une fréquence pré-déterminée. La fréquence d'oscillation est égale à la vitesse de multiplication fournie par le multiplicateur 10 de vitesse de signal 20B, L'horloge peut fonctionner par exemple à la fréquence de 50 Hz, Chaque oscillation complète de 1'horloge correspond à la génération de quatre sorties d'irapuïâions séquentielles respectivement sur les lignes 232 à 235, Le premier signal de phase apparaissant sur la ligne 232 ouvre la porte 236 reliant la sortie du registre tô X) 220, par l'intermédiaire du cir-15 cuit OU 237, à la liaison de transmission 10, Les données désignant l'axe X et représentant le premier incrément de mouvement le long de cet axe sont ainsi transmises à l'appareil de la figure 1, La seconde phase de l'horloge 210 apparaissant sur la ligne 233 ouvre la porte 238, reliant la sortie du registre CôY) 221 par le circuit OU 237 à la 20 liaison de transmission 10, De m§me, la troisième phase issue de l'horloge 231 et apparaissant sur la ligne 234 ouvre la porte 239, La porte 239 transmet la sortie d'un registre Z 222, par le circuit OU 237, è la liaison de transmission 10, La quatrième phase de l'horloge 231 apparaissant sur la ligne 235, est 25 transmise au circuit de fin de bloc 240 et à l'entrée de "décrémentation" du compteur de décrémentation 210, Le circuit de fin de bloc 240 répond au signal appliqué sur la ligne 235 en émettant le caractère de fin de bloc sur la liaison de transmission 10. Le compteur de décrémentation 210 répond au signal qui apparaît à son entrée de décrémentation en réduisant son contenu de 1. 30 L'horloge tétraphasée continue de fonctionner et produit des signaux qui provoquent la transmission de blocs continus de données à la machine-outil, cette transmission s'effectuant sur la liaison 10, jusqu'à ce que le compteur 210 soit décrémenté à "0". A cet instant, le compteur transmet un signal de sortie sur les lignes 241 et 242. Le signal délivré sur la ligne 241 est appli-35 que à l'entrée de remise à zéro du distributeur à son état initial pour permettre la réception de l'enregistrement d'entrée suivant en provenance du bus 200. Le signal appliqué sur la ligne 242 est envoyé à l'entrée de remise à zéro de l'horloge tétraphasée 231. Ce signal empêche l'horloge de fonctionner aussi longtemps qu'un nouveau nombre n'est pas apparu au compteur de décrémen-40 tation. 69 45803 14 2028503 Dans l'exemple présenté, l'horloge tétraphaséB 231 sera réalisée dans le meilleur des cas, au moyen d'un socillateur de 1 khz et d'un circuit de division da 20 à un, de telle sorte que les sorties du circuit de division effec» tuent un nouveau cycle par 50ème de seconde. Les sorties du circuit de division 5 comprennent donc quatre cycles consécutifs de 1khz de l'oscillateur, représentant les quatre phases de l'horloge, ce qui permet de multiplexer la liaison de transmission 10 avec d'autres utilisations possibles. Le fonctionnement du circuit de la figure 3 sera décrit maintenant à titre d'exemple. Supposons donc un segment rectiligne nécessitant un mouvement de 10 25,4 mm le long de l'axe X, un mouvement de - 17 mm la long de l'axe Y, aucun mouvement le long de l'axe Z, et une vitesse de progression maximale le long de l'axe principal, à savoir 25,4 mm par seconde. Les entrées appliquées au distributeur 201 par le post-processeur sur ls cShla 200 seront donc les suivantes î (1) l'équivalent binaire de 25,4 mm, qui 15 est transmis par le distributeur 201 au registre de l'axe principal 202j (2) l'équivalent binaire de 25,4 mm/seconde, qui est transmis par le distributeur au registre de vitesse de progression 203j (3) l'équivalent binaire de -25,4mm qui est transmis au registre (A X) 204j t4) l'équivalent binaire de 17 mm qui qui est transmis au registre (A Y) 205; et (5) l'équivalent binaire de 0 mm, 20 qui est transmis au registre (AZ) 206, Le contenu du registre d'axe principal 202 est envoyé au circuit diviseur 207, où il est divisé par' la sortie du registre de vitesse de progression 203. Cette opération correspond à la division de la distance à parcourir la long de l'axe principal, soit 25,4 mm, par la vitesse de progression maximale le long 25 de cet axe principal soit 25,4 mm par seconde, ce qui équivant à un temps total d'éxécution de 1 seconde. Cette sortie est fournie au multiplicateur da Vitesse de signal 206, qui multiplie la sortie par le facteur de 50 représentant le nombre d'échantillonnages par seconde. Ce produit représente un total de 50 échantillons. Il est transmis sur la ligne 209 à l'entrée de positionne-30 ment du compteur de décrémentation 210 et au registre 211. Le contenu du registre 211 est envoyé aux circuits diviseurs 213 à 215. Le circuit diviseur 213 divise le contenu du registre CAX) 204 représentant la distance totale de 25,4 mm à parcourir le long de l'axe X, par le contenu du registre 211, représentant les 50 échantillonnages. La sortie du diviseur 35 213 comprend donc le nombre correspondant à 0,508 mm, qui est transmis au circuit de complémentation 216. Le circuit de complémentation note que le signe du nombre délivré est positif et de ce fait il transmet le nombre tel quel au registre Cô Xî 220 sans le bit de signe. Le circuit diviseur 214 divise le contenu du registre (A Y) 205 représen-40 tant la distance totale de 17 mm à parcourir le long de l'axe Y, par le conte 69 45803 15 2028503 nu du registre 211, représentant les 50 échantillonnages à effectuer. Le nombre correspondant à -381 mm est transmis au circuit de complémentation 217, Ce circuit de complémentation note que le signe du nombre est un moins et il inverse tous les bits de données binaires, transmettant le résultat au registre [6 5 Y) 221. Le circuit diviseur 215 divise le contenu du registre CA Z) 206 tégal à zéro) par le contenu du registre 211, ce qui fournit une sortie zéro au circuit de complémentation 218. Le circuit de complémentation transmet cette entrée de zéros telle quelle au registre(ô ZJ222, 10 L'application du nombre 50 à l'entrée de positionnement du compteur de dé crémentation 210 positionne le compteur à cette valeur, et le compteur applique en conséquence un signal sur la ligne 230 à l'entrée de positionnement de l'horloge tétraphasée 231. A cet instant, l'horloge commence à fonctionner et à délivrer quatre signaux séquentiels sur les lignes 232 à 235, Le signal appliqué sur la ligne 232 ouvre la porte 236 qui transmet en parallèle la désignation de l'axe X et les données représentant le nombre 0,508 mm provenant du registre Cô X) 220, par l'intermédiaire du circuit OU 237, à la liaison de transmission 10. Le signal délivré sur la ligne 233 ouvre alors la porte 238 qui transmet la désignation de l'axe Y et la représentation binai-20 re du complément du nombre 0,381 mm provenant du registre C6 Y) 221, par l'intermédiaire du circuit OU 237, à la liaison de transmission 10. Le signal apparaissant sur la ligne 234 ouvre alors la porte 239 qui transmet la désignation de l'axe Z et le contenu à zéro du registre Cô ZJ222, par l'intermédiaire du circuit OU 237, à la liaison de transmission 10. Le signal apparaissant sur 25 la ligne 235 provoque alors la transmission du caractèra représentant la fin de bloc, par le circuit de fin de bloc 40, sur la ligne de transmission 10. Le signal délivré sur la ligne 235 est également appliqué à l'entrée de décrémentation du compteur 210, décrémentant le compteur à la valeur 49. Ce processus se répète 49 autres fois, jusqu'à ce que le signal délivré sur la ligne 235 30 provoque la décrémentation à 0 du compteur, A cet instant, une sortie apparaît sur les lignes 241 et 242. La sortie délivrée sur la ligne 241 est appliquée au distributeur de remise à zéro 201 en vue de faire accepter l'enregistrement d'entrée suivant en provenance du bus 200, Le signal apparaissant sur la ligne 242 est appliqué à la borne de remise à zéro de l'horloge tétraphasée 231, Ce 35 signal provoque l'arrêt du fonctionnement de l'horloge et par là même, la cessation irmiédiate de toute transmission sur la liaison 10. Le circuit représenté sur la figure 3 sera réalisé plus facilement et plus économiquement en programmant un ordinateur à usage général au moyen de techniques bien connues. On pourrait utiliser par exemple l'ordinateur IBM 1800 avec 40 des programmes IBM adaptés à la commande de machines-outils. 69 45803 16 2028503 De même, l'invention qui vient d'être présentée en référence aux figures mentionnées ci-dessus, pourra être réalisée d'une manière digitale, dans lequel les instructions numériques seront transmises directement à des moyens moteurs répondant à des codes digitaux, au lieu d'utiliser les servo-mécanismes 5 commandés par des phases et les convertisseurs digitaux-analogiques de phase représentés à la figure 1. Bien que la présente invention ait été expliquée et décrite en fonction d'un mode de réalisation préféré, il est évident que l'homme de l'art peut y apporter toutes modifications de forme ou de détail sans sortir pour autant du 10 cadre et de la portée de ladite invention. 69 45803 17 2028503 REVENDICATIONS 1«- Systems de commande des mouvements des éléments d'une machine le long d'axes associés de façon à faire décrire à chaque élément un trajet déterminé, 5 caractérisé en ce qu'il comprends - des moyens de traitement fournissant périodiquement au moins un signal digital représentant une distance prédéterminée à faire parcourir par chaque élément de ladite machine le long de l'axe associé, - des moyens pour modifier la représentation numérique mémorisée de la po- 10 sition désirée de chaque élément le long de l'axe associé, selon la valeur dudit signal digital correspondant, - des moyens de correction d'écart pour chacun des dits éléments de la machine pour continuellement comparer ladite représentation numérique mémorisée avec la représentation numérique de la position réelle dudit élément et fournir 15 ainsi continuellement un signal d'écart entre la position réelle et la position désirée dudit élément, - des moyens de positionnement pour chaque élément de ladite machine pour positionner ledit élément le long de l'axe associé en réponse audit signal d'écart , 20 •. 2.- Système de commande selon 1 dans lequel, chacun des signaux digitaux fourni par les dits moyens de traitement comprend une partie désignant l'axe considéré par ledit signal, et des moyens de distribution fournissant la partie dudit signal correspondant audit axe, aux dits moyens de correction d'écart 25. correspondants, en réponse à la partie désignant ledit axe. 3.-Système de commande selon 1 ou 2 dans lequel ledit signal digital représentant une distance prédéterminée à faire parcourir par ledit élément est fourni à des instants réguliers, la fréquence de ces instants étant inférieure 30 à 200 par seconde et seulement un signal est fourni pour un axe à chacun de ces instants. 4.- Système de commande selon 3 dans lequel la fréquence des dits instants réguliers est plus grande que la fréquence de coupure maximale des filtres élec- 35 • tromécaniques constitués de la partie mécanique mobile et de la partie électrique de la machine pour chaque axe. 5.- Système de commande selon 2 dans lequel des moyens de transmission transmettent les dits signaux digitaux fournis par las dits moyens de traitemert; 4Q aux dits moyens de distribution. 18 2028503 6 • -Système da commande selon 5 dans lequel : - l8s dits moyens da traitement fournissent en outre un signal particulier aux dits moyens de transmission à chacun des dits instants pour indiquer que tous les signaux digitaux voulus ont été fournis pour cet instant, 5 - les dits moyens de distribution emmagasinent temporairement les dits si gnaux digitaux transmis par les dits moyens de transmission et les transmettent aux dits moy«ns de correction d'écart à la réception dudit signal particulier, 7t- Système de commande selon 6 dans lequel les dits moyens de traitement 10 fournissent les dits signaux digitaux sous la forme de mots comportant chacun la désignation de l'axe et l'information codée pour cet axe, les mots étant fournis en série aux dits moyens de transmission de façon à ce qu'un mot soit fourni pour chaque axe à chacun des dits instants,