FR 2108095 A1 19720512 FR 7134777 A 19710928 71 34777 1 2108095 la présente invention est relative à un procédé de préparation d'un programme portant les informations nécessaires en vue de la commande numérique d' une machine-outil à terminaux multiples et au produit résultant de ce procédé. 5 . Il est souvent souhaitable d'exécuter simultané ment deux opérations ou plus sur un ouvrage donné ; par exemple une aléseuse ou une fraiseuse ayant deux outils de coupe, chacun pouvant être déplacé indépendamment dans un plan, peuvent être utilisés pour réaliser des opérations de coupe horizontale et ver-10 ticale simultanées et en synchronisme. Une commande numérique pour une telle machine-outil utilise de préférence un programme unique contenant des informations mélangées et entrelacées pour la commande des deux outils de coupe car si l'on utilisait deux programmes séparés, il faudrait deux dispositifs de lecture. Une telle "I 5 solution serait anti-économique et aucune synchronisation ne serait possible, le problème essentiel qui se pose quand on veut enregistrer les informations relatives à la commande de deux outils de coupe sur un seul programme tel qu'une * bande perforée, résulte du fait que les informations sont présentées sous la forme de blocs 20 successifs et qu'il est souhaitable que le nombre de ces blocs soit réduit au minimum pour réduire la longueur du programme. Il se produit souvent que les deux trajectoires de déplacement prescrites sont dissemblables, une des trajectoires réclamant un grand nombre de segments individuels tandis que l'autre en réclame un 25 nombre sensiblement moindre. Mélanger les informations relatives à ces deux types de déplacements impose un nombre exagéré de blocs successifs car chaque bloc d'une trajectoire à segments multiples exige la présence d'un bloc pour un segment parallèle de l'autre trajectoire même si cette dernière n'exigeait pas normalement de 30 bloc d'informations séparé en ce point, le résultat est une bande programme anormalement longue, une telle bande étant difficile et coûteuse à préparer ainsi qu'à utiliser. la présente invention permet d'éviter ces inconvénients. 35 Suivant un premier aspect l'invention concerne un procédé de préparation d'une bande programme unique pour la commande d'une machine-outil à commande numérique possédant au moins deux terminaux susceptibles d'être déplacés indépendamment les uns des autres, caractérisé en ce qu'il consiste à : définir 40 les segments discrets de chacune des trajectoires suivant lesquel 71 34777 2 2108095 les les terminaux doivent être déplacés ; calculer 3'époque absolue à la fin de chaque segment de trajectoire après exécution par la machine-outil donnée, et fusionner les informations relatives à la commande de la machine sur ion support de programme dans l'ordre des époques absolues à la fin de l'exécution de chaque segment. Suivant un second aspect l'invention concerne un support de programme permettant de commander simultanément les déplacements d'au moins deux terminaux d'une machine-outil, préparé suivant le procédé ci-dessus, caractérisé en ce qu'il comporte une multiplicité de blocs d'informations sensiblement conti-gus ; en ce que chaque bloc définit un segment discret de la trajectoire totale d'un terminal et en ce que les blocs d'informations sont disposés sur le support programme à l'alignement et dans l'ordre croissant des époques absolues de fin de chaque segment. D'autres caractéristiques ressortiront de la description qui va suivre et qui n'est donnée qu'à titre d'exemple. A cet effet on se reportera aux dessins joints dans lequels : - la figure 1 est un schéma bloc illustrant les étapes du procédé et l'appareil suivant l'invention ; - la figure 2 représente deux déplacements ; et - la figure 3 représente une bande programme portant les blocs d'informations correspondant aux déplacements de la figure 2 en application du procédé suivant l'invention. La figure 1 se rapporte à la préparation d'une-bande perforée ou de tout autre milieu approprié pour la commande des déplacements des deux têtes d'une fraiseuse du type de celle qui a été décrite dans la demande de brevet n° 71-11.472 déposée le 1er avril 1971 pour "Dispositif de commande numérique pour machine-outil à têtes multiples". Dans une telle machine une première tête porteuse d'un outil de coupe peut se déplacer dans un premier plan défini par deux axes I et Z perpendiculaires entre eux et une seconde tête porteuse d'un autre outil peut se déplacer dans un second plan défini par deux axes TJ et W perpendiculaires entre eux. Les informations qui définissent les trajectoires désirées pour chacune de ces têtes porteuses d'outil Sont préparées par une analyse ou un tracé approprié de la géométrie recherchée comme indiqué par les blocs 10 et 12 du diagramme de la figure 1.A .partir de ces données relatives aux trajectoires désirées pour les têtes porteuses on prépare un "manuscrit" 71 34777 3 2108095 représenté par le bloc 14 à la figure 1 . C'est un document qui est normalement préparé sous une forme lisible par l'homme et qui est transformé ensuite en cartes lisibles par un calculateur lesquelles sont introduites dans un processeur numérique qui peut 5 être associé à un ordinateur IBM 360 pour traduire les données relatives aux déplacements de la machine dans le langage de la machine-outil ou langage APT. Cette étape est représentée par le rectangle 16 à la figure 1 . le processeur APT 16 est capable en outre de produire ce que l'on appelle un "dossier de ligne centrale" 10 18 qui contient les données qui indiquent le parallélisme ou le synchronisme qui doit être observé entre les déplacements des deux têtes porte-outil. A partir du' "dossier de ligne centrale" 18, une séquence de transcription est entreprise. le diagramme de la figure 1 est classique jusqu'au rectangle 18 et est utilisé de fa-15 çon courante dans l'industrie pour préparer les bandes perforées pour les applications en commande numérique. A partir du "dossier de ligne centrale" 18 on introduit les limitations inhérentes à la machine telles que la périodicité du changement des outils, les dimensions des outils, 20 la vitesse de déplacement, les codes concernant les liquides de refroidissement, etc ... Ceci est accompli durant l'étape 20 basée sur les informations recueillies de l'étape 18. Une nouvelle étape de transcription est exécutée en 22 pour calculer les intervalles de temps exigés pour exécuter 25 chaque segment de trajectoire de coupe, tel qu'indiqué à la figure 2. Suivant la représentation de la figure 2, une première trajectoire 24 d'outil de coupe comporte les segments A, B, C et D qui définissent -une trajectoire bi-dimensionnelle dans 30 le plan des axes X et Z. Une seconde trajectoire 26 pour le second outil de coupe comprend seulement les segments a et- b dans le plan des axes U et ¥. les deux trajectoires partent dans ce cas de valeurs de coordonnées égales en Z et ¥ et progressent selon des valeurs de coordonnées sensiblement différentes jusqu'à leur point 35 final. Les trajectoires peuvent avoir des valeurs de départ inégales en Z et W. L'étape représentée par le bloc 22 à la figure 1 consiste à calculer les temps dans une échelle absolue, c'est à dire à partir d'un point de référence zéro absolu, dans lesquels chaque segment de chaque trajectoire peut être exécuté, la figure 40 2 indique qu'il faut une minute pour exécuter le segment A, une 71 34777 4 2108095 minute pour exécuter le segment B et par conséquent le temps absolu à la fin du segment B est de deux minutes, le seg ent C ne réclame que 0,3 minute et par conséquent le temps absolu à la fin du segment C est de 2,3 minutes. le segment D nécessite 2,7 minutes 5 et par conséquent le temps absolu au point terminal de la trajectoire 24 est de 5 minutes. D'une manière analogue le segment a de la trajectoire 26 nécessite 1, 2 minutes pour être exécuté tandis que le segment b nécessite 3,5 minutes à son exécution. Par conséquent, le temps absolu au point final de la trajectoire 26 est de 4,7 minutea Un programme de calculateur peut être facilement écrit pour calculer les valeurs absolues en temps à la fin de chaque segment des trajectoires 24 et 26 à partir des données engendrées à l'étape 20 et par conséquent on s'attend à ce que l'étape 22 soit exécutée 15 à l'aide d'un calculateur numérique universel. A partir des informations calculées pendant l'étape 22, des dossiers sont préparés pour chacune des trajectoires 24 et 26 des outils de coupe qui sont indiqués par les rectangles 28. et 30 à la figure 1. Le dossier peut être préparé sous toute 20 forme appropriée telle que des cartes perforées ou tout autre type de document obtenue à la sortie d'un calculateur dans le cas normal. Chaque dossier comporte les désignations des axes de l'outil de coupe, suivies de la lettre et du nombre de vitesse de déplacement et finalement le temps nécessaire à l'exécution, 25 c'est à dire le temps absolu à la fin de chaque segment. Pour disposer les informations relatives à chaque segment sur une bande 32 du type représenté à la figure 3 contenant une multiplicité de blocs contigus et alignés, l'étape 34 de la figure 1 est entreprise pour fusionner et intercaler les 30 désignations des segments 24 et 26 à partir des dossier 28 et 30 dans l'ordre du temps absolu à la fin de chaque segment comme si chaque trajectoire 24 et 26 était parcourue d'une manière continue. L'information nécessaire pour commander une machine-outil à deux têtes et à deux axes par tête est alors contenue sur une bande 35 unique de longueur minimum et qui peut être lue par un lecteur unique pour produire des déplacements synchronisés des deux têtes. A partir du dossier qui est préparé dans l'étape 34 généralement sur des cartes pour ordinateur, une étape en opération indépendante 36 est prévue pour préparer la bande 32. Une perforatrice 4° de bande standard est utilisée dans ce but. De plus, un dossier copy 71 34777 5 2108095 de cartes peut être également préparé pour l'emmagasinage pendant l'étape 36. En considérant la figure 3 , une disposition un peu abrégée des données sur la bande 32 est indiquée en correspon-5 dance aux segments de trajectoires de la figure 2. la bande 32 est divisée en une multiplicité de blocs contigus répartis le long de la bande. Chaque bloc contient les informations nécessaires pour déplacer un des outils suivant une trajectoire prescrite et à une vitesse prescrite. Tous les blocs qui sont relatifs à la tra-10 jectoire 24 dans le plan X-Z sont précédés d'un code de bloc G-95. Tous les blocs qui sont relatifs à la trajectoire 26 dans le plan UW sont précédés d'un code de bloc G-96. Suivant l'étape 34 de la figure 1, le premier bloc d'informations qui doit être inscrit sur la bande 32 concerne 15 le segment A de la trajectoire 24 puisque le temps absolu à la fin de ce segment est le plus faible de tous les segments des trajectoires 24 et 26. Par conséquent, le bloc 38 contient au moins un code G-95, les désignations des axes X et Z et les valeurs des déplacements nécessaires suivant les axes X et Z pour définir le segment 20 de déplacement A, un nombre de vitesse de déplacement et un code de fin de bloc, les désignations des axes et les valeurs de déplacements suivant ces axes ont été abrégées sur la figure 3 et représentées simplement par la lettre A. le segment suivant ayant le temps absolu le plus faible lorsqu1il est achevé est le segment a 25 de la trajectoire 26. Par conséquent, le bloc 39 contient une désignation G-96, la désignation des axes et les valeurs des déplacements selon ces axes pour le segment a, un nombre de vitesse de déplacement et un code de fin de bloc, le bloc suivant 40 contient une désignation G-95, les informatL ons définissant le segment de 30 trajectoire B, un nombre de vitesse de déplacement et un code de fin de bloc, les blocs 41 , 42 et 43 contiennent les informations définissant les segments de trajectoire b, C et D dans cet ordre puisque les temps absolus à la fin de ces segments surviennent dans un ordre croissant. la bande se termine avec un code appro-35 prié de fin de bande et des codes de rebobinage si nécessaire, les nombres de séquences et autres informations que 1'on rencontre communément sur les bandes de commande des machines-outils peuvent être aussi insérés sur la bande 32 de la figure 3 s'il est nécessaire. On n'en a pas parlé dans ce qui précède dans un but de 40 brièveté. COPY 71 34777 6 2108095 KBVEHDICATIOHS 1 )Procédé de préparation d'une bande programme unique pour la commande d'une machine-outil à commande numérique possédant au moins deux terminaux susceptibles d'être déplacés indépendamment les uns 5 des autres, caractérisé en ce qu'il consiste à : définir les segments discrets de chacune des trajectoires suivant lesquelles les terminaux doivent être déplacés ; calculer l'époque absolue à la fin de chaque segment de trajectoire lorsque le déplacement correspondant a été exécuté par la machine-outil donnée, et à fusionner 10 les informations relatives à la commande de la machine sur un support de programme dans l'ordre des époques absolues à la fin de l'exécution de chaque segment. 2) Procédé de préparation d'une bande programme unique suivant la revendication 1, caractérisé en ce que l'étape de la fu-15 sion des informations consiste à préparer des cartes perforées rangées dans l'ordre correspondant à celui des époques absolues de fin d'exécution de chaque segment et à préparer à partir de ces cartes une bande perforée portant des données au moins sensiblement é quivalente s. 20 3) Procédé de préparation d'une bande programme uni que suivant la revendication 1, caractérisé en ce que l'étape de la définition des segments de chaque trajectoire consiste à préparer un manuscrit portant les données des segments des trajectoires et à traiter le manuscrit pour préparer un dossier dans le langage 25 de la machine-outil. 4) Procédé de préparation d'une bande programme unique suivant la revendication 1 , caractérisé en ce que l'ordre de rangement des blocs d'informations sur la bande est l'ordre croissant des époques absolues de fin d'exécution de chaque segment. 30 • 5) Support de programme permettant de commander si multanément les déplacement d'au moins deux terminaux d'une machine-. outil, préparé par le procédé ci-dessus, caractérisé en ce qu'il comporte une multiplicité de blocs d'informations successifs et contigus, en ce que chaque bloc définit un segment discret de la 35 trajectoire d'un terminal et en ce que les blocs d'informations sont disposés sur le support programme à l'alignement et dans l'ordre des époques absolues de fin de chaque segment.