FR 2105260 A1 19720428 FR 7131928 A 19710903 71 31928 i. 2105260 La présente invention concerne un procédé de commande numérique d'une machine-outil dans laquelle l'outil peut être simultanément déplacé selon au moins deux coordonnées, car son déplacement se compose d'incréments, dérivés d'une certaine fré-5 quence fondamentale et orientés suivant les axes des coordonnées pour obtenir un sens de déplacement désiré, le procédé consistant en une commande automatique pour que l'outil se déplace à une vitesse prédéterminée dans le sens désiré du déplacement. L'invention se rapporte également à un dispositif pour l'application de 10 ce procédé. Dans la commande du déplacement d'un outil sur une machine-outil selon le procédé ci-dessus, il arrive, pour autant que le sens de déplacement ne coïncide pas avec celui d'un axe et pour autant que des mesures spéciales n'aient pas été prises, 15 qu'à l'outil soit communiquée par rapport à la pièce à usiner, et dans le sens du déplacement, une vitesse inférieure à la vitesse prédéterminée correspondant à la fréquence incrémentale. On comprendra facilement qu'il en est ainsi si l'on a des déplacements parallèles aux axes qui sont les côtés d'un parallélogramme, et 20 si l'on considère que la diagonale d'un tel parallélogramme est toujours inférieure à la somme de ses côtés. Donc, si le sens de déplacement de l'outil fait par exemple 45° par rapport aux axes dans un système de coordonnées rectangulaire à trois axes, la vitesse de l'outil ne sera que le 1/\| 3 de la vitesse correspondant 25 à la fréquence incrémentale, c'est-à-dire 4-2 % trop faible. Il est évident que l'on ne saurait admettre de tels é-carts par rapport à la vitesse optimale de l'outil, et divers procédés et dispositifs ont donc été suggérés pour corriger automatiquement la vitesse de l'outil, le but visé étant de rendre la 30 vitesse largement indépendante du sens de déplacement. La demande de brevet suédois n° 8.765/68 décrit un exemple d'un tel procédé, dans lequel ce même problème est étudié de très près, ainsi que dans la demande de brevet allemand publiée, n° 1.463.238, dans laquelle on explique comment un système de commande numérique 35 peut être conçu de façon à réaliser une réduction de l'écart des vitesses des outils par rapport à la vitesse programmée» Le but de la présente invention est de permettre de commander de façon simple et précise la vitesse de déplacement d'un outil en fonction du sens de déplacement réel, lorsque l'ou-+0 til se déplace le long d'une courbe quelconque, et cela de la fa 1\ 31928 2. 2105260 çon suivante : pour des valeurs égales de déplacements incrémen-taux successifs, leur distribution suivant les axes de coordonnée respectifs est déterminée et une correction est apportée à la fréquence incrémentale et est la fonction à valeur unique d^éha-5 que distribution ainsi déterminée, et par conséquent du sens réel de déplacement, de sorte qu'une vitesse au-moins égale à la vitesse prédéterminée est appliquée à l'outil lorsqu'il se déplace dans des directions qui s'écartent des axes des coordonnées. L'invention sera maintenant illustrée de façon plus dé-10 taillée en se référant aux dessins annexés dans lesquels t - figure 1 est un schéma synoptique montrant de façon générale un exemple de réalisation d'un dispositif pour l'application du procédé de l'invention; - figure 2 est tin schéma synoptique représentant l'ins-15 tallation d'un calculateur de la figure 1; - figure 3 est un diagramme des durées d'impulsion montrant la position relative des impulsions en certains points du schéma synoptique de la figure 2; - figure 4 représente une partie de la surface d'une 20 sphère, dont le centre est à l'origine, et qui symbolise l'emplacement d'un vecteur de vitesse partant de l'origine pour aller dans toutes les directions, et grâce auquel l'on peut déterminer la précision du procédé conforme à l'invention; - figure 5 représente un schéma synoptique d'un second 25 exemple du dispositif pour l'application du procédé conforme à l'invention, et - figure 6 montre comment réaliser un calculateur qui sera inclus dans le schéma de la figure 5» Dans certaines figures, les mêmes références ont été 30 attribuées aux éléments identiques. L'invention concerne un procédé de commande de la vitesse de déplacement d'un outil lorsque ce dernier se déplace selon une courbe programmée dans un système de coordonnées rectangulaires avec des axes x, y et z et la figure 1 représente comment ce-35 ci peut être réalisé en principe. Un signal impulsionnel, provenant d'un générateur d'impulsion (non représenté), est appliqué au conducteur 1 à une fréquence "f qui correspond à la vitesse prédéterminée de l'outil se déplaçant le long d'un axe. Ce signal est transmis, par l'inter-40 médiaire d'une porte OU 2 dont la fonction sera décrite ci-après, 71 31928 3. 21.05260 à un générateur de fonction 3o Cette réalisation résulte d'une technique classique, de sorte que les impulsions sont distribuées sous forme de signaux conformes à la courbe programmée sur les a-xes respectifs, des signaux d'impulsion ayant les fréquences d'-5 impulsion f , f et f et prévus pour commander le déplacement de jC y Z l'outil dans le sens axial respectif apparaissent aux sorties du générateur de fonction 3S une sortie étant prévue pour chaque axe de coordonnée. La courbe peut par exemple être mémorisée sur une bande perforée qui permet de commander le générateur de fonction 10 dont les sorties sont connectées à des éléments (non représentés) pour réaliser le déplacement de l'outil dans le sens axial respectif en fonction du nombre d'impulsions dans lesdits signaux. Si l'on désigne par nx, n^. et nz le nombre d'impulsions incrémentales nécessaires sur les axes respectifs pour faire dé-15 placer l'outil d'une certaine distance le long de la courbe, et n^ la somme des impulsions incrémentales, on obtient en conséquence : nA = nx + n^. + nz. Le symbole ny représente un nombre imaginaire d'incréments sur une distance qui a la même longueur que les incréments 20 le long des axes de coordonnées. On a maintenant : 2 2 T *v = y ^ + *y + nv est donc une expression de déplacement (vectoriel) résultant. Comme dans la comparaison mentionnée ci-dessus entre la diagonale 25 et les côtés d'un parallélogramme, n? est plus petit que n^ et il faudra ajouter à n^, pour obtenir l'égalité à une certaine valeur, un certain nombre n^ d'impulsions de correction : n^ = nv + n^.. Le nombre d'impulsions de correction pour un certain nombre d'impulsions incrémentales peut alors être écrit sous la forme : 30 nk - + Dy + nz - V + a/ + A ce stade, on peut déjà voir que n^. dépend de la façon dont les impulsions incrémentales sont distribuées suivant les axes de coordonnée respectifs. Comme nv est inférieur à n^, n^. peut être obtenu d'après n^ en supprimant de ce dernier un certain nombre 35 d'impulsions qui varient avec la direction de déplacement. En divisant les équations ci-dessus par le temps t, on obtient une é-quation analogue qui porte sur le nombre d'impulsions par unité de temps, c'est-à-dire la fréquence. En conséquence, l'on obtient les expressions î + + "V fx2 + 71 31928 2105260 V- fx + fy + -\j + ÏJ +fa2 dans lesquelles f^. est une fréquence qui varie avec la direction de déplacement programmée de l'outil et qui est obtenus par l'ana-5 lyse de la distribution d'un certain nombre d'impulsions incrémentales suivant les axes de coordonnées. En ajoutant aux signaux d'impulsions de fréquence f ce qui correspond, dans une direction parallèle à l'axe, à la vitesse prédéterminée de l'outil, un signal d'impulsions de la fréquence ffc, on obtient selon l'inven-10 tion un signal d'impulsions corrigé dont la fréquence f^ = f^ + f^. dans la direction de déplacement correspond à la vitesse prédéterminée de l'outil. Si les impulsions dans le signal de correction du générateur de fonction 3 sont alors distribuées suivant les axes respectifs de coordonnées selon le programme, l'ou-15 til prendra en conséquence la vitesse prédéterminée quel que soit la direction réelle de déplacement. En revenant maintenant à la figure 1, la référence 4 désigne -un élément de calculateur qui sera appelé par la suite "l'additionneur de vecteur". Cet élément est conçu de telle fa-20 çon que pour un nombre spécifié d'impulsions, c'est-à-dire pour une distance d'une certaine longueur, il calcule f^ d'après fx, f et fz selon 1'expression mentionnée plus haut. Les entrées de l'additionneur de vecteur 4 sont donc connectées aux sorties du générateur de fonction 3» et sa sortie est reliée à l'entrée du 23 générateur de fonction par l'intermédiaire de la porte OU 2. Le but de la porte OU est donc de totaliser les fréquences f et f c'est-à-dire de calculer l'expression f^ - + fjj.» Il est essentiel de choisir correctement la quantité d'impulsions incrémentales, dont la distribution suivant les axes 30 de coordonnéesdevra être analysée. Un petit nombre d'impulsions donne naturellement une estimation grossière concernant la direction réelle de déplacement. D'autre part, un grand nombre d'impulsions entraîne un risque d'erreur à la suite duquel la correction est retardée et où une dépense matérielle considérable est 35 nécessaire pour évaluer la distribution d'un grand nombre d'impulsions suivant les axes de coordonnées. Dans un dispositif fonctionnant suivant l'invention, le choix de six impulsions s'est révélé approprié pour l'analyse de la distribution des impulsions incrémentales suivant les axes de 40 coordonnées. Si l'on néglige les permutations entre les axes de 71 31928 5 2105260 coordonné^ il est évident que les six impulsions peuvent être distribuées de sept façons différentes. Elles ont été combinées dans le tableau suivant dans lequel n-^ est également inclus en premier lieu avec sa valeur calculée, ensuite avec sa valeur ar-5 rondie et enfin avec une valeur ramenée à un nombre entier qui est obtenu par multiplication avec le nombre 4. N° Distribution Calculé Arrondi Etabli à l'échelle I 6 0 0 0,00 0,00 0 II 5 10 0,90 1,00 4 III 4 2 0 1,53 1,50 6 IV 4 11 1,76 1,75 7 V 3 3 0 1,76 1,75 7 VI 3 2 1 2,26 2,25 9 VII CM CM CM 2,5* 2,50 10 15 On procède au changement d'échelle de façon qu'il soit possible par des moyens simples de tenir compte de fractions de n-^., car à ce point de vue les fractions d'impulsions incrémental les n'ont pas de sens, et cela permettra d'avoir une meilleure approximation. 20 L'analyse et la sortie des impulsions de correction a lieu comme il a déjà été mentionné dans l'additionneur de vecteur 4 dont on peut mieux voir l'interconnexion dans la figure 2. Pour l'analyse, l'additionneur de vecteur a trois compteurs 5, 6 et 7- Le compteur 5 est prévu pour compter les six 25 impulsions destinées à l'analyse, les compteurs 6 et 7 servant respectivement à déterminer la distribution des impulsions suivant les axes y et z. Comme l'on connaît le nombre total d'impulsions, on connaîtra en même temps le nombre des impulsions suivant l'axe x. Le compteur 5 est connecté à travers une porte OU 30 aux sorties x, y et z du générateur de fonction 3; le compteur 6 est connecté à la sortie y du générateur de fonction et le compteur 7 est connecté à la sortie z. Pour permettre la lecture de la distribution des impulsions suivant les axes respectifs d'après la position des comp-35 teurs 6 et 7, après la totalisation des six impulsions, ces compteurs sont connectés à un décodeur 9 constitué par des circuits logiques, et qui présente quatre sorties binaires b^, ^4 e'fc bQ. Le décodeur 9 es"k conçu de façon à calculer d'après la posi- O tion des compteurs 6 et 7 quelles sont les distributions indi-40 quées dans le tableau ci-dessus qui existent et à produire sur 71 31928 6- 2105260 les sorties, sous forme "binaire, la valeur à l'échelle de n^ correspondant à la distribution réelle» Le compteur 5 qui compte jusqu'à 6 ainsi qu'il a déjà été dit, et qui délivre une impulsion lorsque ce chiffre est at-5 teint, est connecté à un bloc de commande 10 conçu de telle façon que, lorsque l'impulsion ci-dessus apparaît, il commande à travers un registre accumulateur 11 et un additionneur 12, le traitement continu de la valeu^?amenée à l'échelle de n^. Lorsque le compteur 5 a compté jusqu'à 6, la séquence suivante a lieu : 10 le bloc de commande commande l'addition de nk du décodeur 9 par l'additionneur 12 au contenu précédent du registre accumulateur 11. Si le contenu du registre accumulateur est supérieur à 3, c'est-à-dire lorsqu'il est d'au moins 4, le nombre 4 est ensuite soustrait du contenu et en même temps le bloc de commande délivre 15 une impulsion de correction. Si une nouvelle exploration du contenu du registre accumulateur indique que celui-ci est supérieur à 3j une nouvelle soustraction du nombre 4 aura lieu et une impulsion correctrice supplémentaire sera produite. Ce processus est représenté de façon très simplifiée à la figure 3 qui montre 20 cependant que l'impulsion de correction nk est synchronisée avec l'intervalle qui sépare les impulsions en f^ après respectivement la première, la troisième et la cinquième impulsions. Il faut peut-être mentionner que, d'après le contenu du registre accumulateur 11,. c'est le chiffre 4 qui est soustrait de chaque impul-25 sion de correction, simplement parce que ce chiffre 4 est le facteur d'échelle par lequel la valeur calculée de n^ a été multipliée de façon à devenir un nombre entier selon le tableau ci-dessus. Il faut également mentionner que le fait de tenir compte des fractions de n^, précédemment indiquées, a lieu précisément 30 parce que la soustraction de 4 du contenu du registre accumulateur n'est possible que si ce contenu est supérieur à 3» La précision de correction de la vitesse de l'outil que permet d'obtenir le procédé conforme à l'invention peut se calculer en pourcentage de la vitesse correcte, en calculant conformé-35 ment à l'invention l'ordre de grandeur des vecteurs de vitesse dans les différentes directions. A ce point de vue, il est tout à fait suffisant de considérer une surface qui constitue le quaran-te-huitième de la surface d'une sphère selon la figure 4, car la surface d'une sphère peut évidemment être divisée en quarante-40 huit surfaces partielles conformes. Les directions sont représen 71 31928 7- 2105260 tées par les points 1 à 15 pour lesquels les coordonnées correspondantes sont données dans le tableau ci-dessous. Le tableau représente aussi les précisions en pourcentages. Le symbole + devant le chiffre de précision indique que le calcul conforme à 1'-5 invention donne un vecteur de vitesse qui est trop long, et de façon analogue le signe - indique que le vecteur de vitesse est trop court. Point Coordonnée approximative Erreur de vecteur N° x y z % 1 100 0 0 0 2 96 20 20 3 86 36 36 +2,8 4 72 49 49 +3,0 5 58 58 58 +1,1 6 64 64 42 +3,3 7 68 68 29 +2,2 8 70 70 14 +2,2 9 71 71 0 10 83 56 0 +1,8 11 92 39 0 12 98 20 0 -1,6 13 91 37 16 +2,0 14 84 52 14 +3,8 15 79 51 33 -1,5 25 II est visible que l'erreur est inférieure à 4 %, ce qui est acceptable pour des systèmes à trois axes. Le concept fondamental de l'invention, ainsi qu'on peut le voir dans les revendications ci-dessous, tient dans le fait que, pour des valeurs d'incréments de déplacement de dimensions 30 égales et successives, leur distribution suivant la direction de l'axe de coordonnéesrespectif est déterminée, et qu'une correction est apportée à la fréquence incrémentale, correction qui est une fonction à valeur unique de chaque distribution ainsi déterminée. Ceci peut être réalisé, ainsi qu'on le précise dans une 35 caractéristique séparée, en établissant un coefficient de correction qui, multiplié par la fréquence fondamentale fv, donne la fréquence incrémentale corrigée, c'est-à-dire f^ = a.fv, expression dans laquelle a est ledit facteur de correction. On obtient avec la relation ci-dessus entre fv, f^ et 71 31928 8. 2105260 a « fx + £y + f z \|f2 + f2 + f2 \| x ^ y ^ z Dans le tableau ci-dessous, a a été calculé pour les 5 distributions définies ci-dessus I à VII. On a également ajouté dans le tableau les valeurs d'échelle et les valeurs arrondies de a. Le facteur d'échelle 1/32 et la raison pour laquelle une valeur corrigée du facteur de correction a a été calculée seront expliqués en se référant à la figure 6. 10 Distribution Coefficient de correction a n° Valeur calculée Valeur échelle Valeur arrondie I 1,00 1/32 1/32 II 1,18 1/27,2 1/27 III 1,34 1/23,8 1/24 15 IV 1,41 1/22,6 1/23 V 1,41 1/22,6 1/23 VI 1,60 1/20 1/20 VII 1,73 1/18,4 1/18 La figure 5 représente un circuit qui fonctionne con-20 formément à l'invention et qui permet d'obtenir une fréquence incrémentale corrigée de la façon qui a été décrite ci-dessus. Dans cette figure, on retrouve le générateur de fonction 3 et un additionneur de vecteur 13, connectés aux mêmes sorties. Comme on l'a vu, le but du générateur de fonction est de distribuer conformé-25 ment au programme établi les impulsions incrémentales suivant les axes respectifs de coordonnées, et l'additionneur de vecteur 13 est conçu de façon à analyser d'après les impulsions ainsi distribuées la distribution réelle et d'engendrer le coefficient de correction a. La sortie de l'additionneur de vecteur 13 est con-30 nectée à un multiplicateur 14 conçu de façon à former des produits de fv et a, c'est-à-dire de réaliser f^ = f^.a. La fréquence incrémentale ainsi corrigée est appliquée au générateur de fonction 3, de façon analogue à ce qui est fait dans le circuit de la figure 1. 35 La figure 6 représente un exemple de la façon dont peut être constitué l'additionneur de vecteur 13. Ceci présente de grandes similitudes avec l'additionneur de vecteur décrit en se référant à la figure 2. En conséquence, l'additionneur de vecteur comporte des compteurs 5, 6 et 7» une porte OU 8 et un décodeur 9 40 qui fonctionnent comme il a été décrit précédemment. Cependant, ?1 31$2Ô 9- 2105260 le compteur 5 est connecté à un bloc de commande 15 d'une façon légèrement différente, et le décodeur 9 est connecté directement à un registre 16 qui est conçu de telle façon qu'il émet des signaux qui sont désignés dand la figure par les numéros 32, 27, 5 24, 23, 20. et 18, en fonction de la distribution qui est analysée par les compteurs 8 et 7 et P3-3? le décodeur 9, lorsque le compteur 5 a compté six impulsions, et sur la commande du bloc de commande 15. Ces signaux correspondent au dénominateur des valeurs arrondies du coefficient de correction a. Si l'on commande 10 au moyen de ces signaux la longueur de comptage d'un compteur à une longueur de comptage variable, il est possible de produire la fréquence incrémentale corrigée f^ si le compteur reçoit une fréquence qui est de 32»fv» Si par exemple le compteur est préréglé par le signal 24 pour donner une impulsion toutes les 24 impul-15 sions reçues, ceci implique que f^ = 32.fv.1/24 = l,34.fv, ce qui, en fait, est la fréquence incrémentale corrigée qui s'applique à la distribution III conformément à l'invention. Les calculs pour les distributions restantes peuvent être effectués de façon analogue. Lorsque l'additionneur de vecteur 13 de la figure 5 est 20 constitué comme il est représenté à la figure 6, le multiplicateur consiste par suite en un compteur à longueur de comptage variable, qui est commandé conformément à ce qui précède. Le choix de 1/32 pour le facteur d'échelle est par conséquent dû au fait que l'on utilise comme multiplicateur un comp-25 teur à longueur de comptage variable, et qu'il est par conséquent indiqué que le coefficient de correction a ait la forme 1/n, dans laquelle n est un nombre entier. 32 est le premier nombre de la série 1, 2, 4, 8, 16, 32 ... qui donne une bonne approximation. *1 31$2Ô 2105260 REVENDICATIONS, 1. Procédé de commande numérique d'une machiné-outil, dans lequel l'outil peut être déplacé simultanément dans la direction d'au moins deux coordonnées, grâce au fait que son dépla-5 cernent est constitué d'incréments de déplacement qui, tirés d'une certaine fréquence fondamentale, sont assignés aux directions des coordonnées de façon à obtenir la direction désirée de déplacement, ce procédé consistant en une commande automatique de sorte que l'outil se déplace à une vitesse prédéterminée dans la direc-10 tion désirée de déplacement, et étant caractérisé par le fait que, pour des valeurs consécutives et égales d'incréments de déplacement, la distribution incrémentale suivant les axes de coordonnées respectifs est déterminée, et que la fréquence incrémentale reçoit une correction qui est une fonction à valeur unique 15 de chaque distribution ainsi déterminée, et donc également de la direction réelle de déplacement, l'outil recevant, alors lorsqu'il se déplace dans des directions qui s'écartent des directions des coordonnées, une certaine vitesse qui est au moins pratiquement égale à la vitesse prédéterminée, 20 2. Dispositif pour la mise en application du procédé suivant la revendication 1, comprenant un générateur de fonction conçu pour distribuer, selon tin certain programme de commande, les incréments suivant les axes de coordonnées respectifs de façon à obtenir la direction désirée de déplacement,et caractérisé 25 par le fait qu'il comporte un élément calculateur (additionneur de vecteur) commandé par le signal de sortie du générateur de fonction conçu de façon qu'au moyen du comptage des incréments produits par ce générateur dë fonction, il divise ces valeurs et détermine combien d'incréments dans chaque valeur se rapportent 30 aux axes respectifs de coordonnées, et qu'il donne la dite correction sous forme d'une addition de fréquence en fonction de la distribution calculée, cette addition étant faite à la fréquence fondamentale au moyen d'un circuit additionneur connecté à l'entrée du générateur de fonction, cette somme de fréquences étant à son tour distribuée suivant les axes de coordonnées au moyen du 35 générateur de fonction, 3« Dispositif pour la mise en oeuvre du procédé suivant la revendication 1? caractérisé par le fait que l'élément de comptage et de correction est conçu de façon à donner, en fonction de la distribution calculée, un coefficient de correction qui est multiplié par la fréquence fondamentale au moyen d'un circuit multiplicateur connecté à l'entrée du générateur de fonction, ce 40 qui permet d'obtenir une fréquence incrémentale corrigée.