FR 3033655 A1 20160916 FR 1551995 A 20150310 1 ARRIERE PLAN DE L'INVENTION Il est connu par exemple du document brevet EP 1 548 529, une machine-outil à commande numérique. Une machine-outil à commande numérique comporte : - plusieurs parties mobiles les unes par rapport aux autres ; - une pluralité d'actionneurs agencés pour générer un déplacement relatif entre ces parties mobiles - une de ces parties mobiles forme un porte outil adapté à porter un outil réel, aussi appelée outil d'usinage ; - une autre de ces parties mobiles forme un support pour maintenir des moyens de maintien en position d'un brut réel de pièce à usiner, la machine outil formant une chaine cinématique s'étendant entre le porte outil et la partie mobile formant le support pour maintenir les moyens de maintien en position du brut de pièce à usiner ; - une pluralité de capteurs pour générer des données de positionnement représentatives d'une position courante du porte outil par rapport à un référentiel machine réel ; - un contrôleur physique adapté pour interpréter un programme d'usinage et en fonction de cette interprétation à commander à la pluralité d'actionneurs de déplacer le porte outil par rapport aux moyens de maintien en position du brut réel pour ainsi pouvoir déplacer l'outil réel porté par le porte outil vis-à-vis du brut réel et pour ainsi usiner ce brut réel en fonction d'instructions contenues dans le programme d'usinage. La génération d'un programme d'usinage sans défaut est indispensable pour pouvoir usiner une pièce conforme à un plan. 3033655 2 Traditionnellement, on génère le programme d'usinage en suivant un processus complexe illustré à la figure 1 et comportant la succession d'étapes suivantes. A l'étape 1, à l'aide d'un logiciel de conception 5 assistée par ordinateur, on génère un fichier modélisant, en trois dimensions, la pièce à usiner ; A l'étape 2, on transfère ce fichier modélisant la pièce à un logiciel de fabrication assistée par ordinateur et on choisit un premier outil virtuel que 10 l'opérateur considère adapté pour pouvoir usiner au moins une première des entités géométriques de la pièce modélisée dans le fichier. Par exemple si l'opérateur souhaite réaliser un perçage, l'outil virtuel sera un foret d'une longueur virtuelle donnée et d'un diamètre 15 virtuel donné, s'il souhaite réaliser un surfaçage, l'outil virtuel est une fraise, s'il souhaite réaliser une pièce de révolution, l'outil virtuel sera un outil de tournage. A l'étape 3, l'opérateur délimite des entités 20 géométriques de la pièce modélisée à réaliser et il associe à chaque entité géométrique une stratégie d'usinage qui peut être une stratégie de perçage, de surfaçage, de tournage ou autre. Chaque stratégie d'usinage est associée à un outil virtuel qui a été 25 choisi à l'étape 2 et à des conditions de fonctionnement dans lesquelles l'outil virtuel doit être utilisé pour qu'il puisse couper correctement la matière du brut usiné (vitesse de coupe maximale, la profondeur de passe maximale, sa vitesse d'avance maximale...). 30 A l'étape 4, conformément à la stratégie d'usinage préparée à l'étape 3 qui comprend un outil virtuel choisi à l'étape 2, le logiciel de fabrication assistée par ordinateur détermine une première trajectoire virtuelle de l'outil virtuel. Cette première 35 trajectoire de l'outil virtuel est telle que l'outil 3033655 3 virtuel puisse, en suivant cette première trajectoire, usiner l'entité géométrique délimité par l'utilisateur à l'étape 3. A l'étape 5, toujours à l'aide du logiciel de 5 fabrication assistée par ordinateur, l'utilisateur recommence les étapes 2 à 4 pour définir un ensemble des trajectoires virtuelles de tous les outils virtuels nécessaires pour usiner virtuellement l'ensemble des entités géométriques qui définissent les formes de la 10 pièce à usiner (une forme de la pièce à usiner peut être composée de plusieurs entités géométriques). A l'étape 6, l'utilisateur simule, en trois dimensions, l'enlèvement de matière résultant de l'ensemble des trajectoires virtuelles d'outils virtuels 15 définies aux étapes 2 à 5. Le résultat de cette simulation est une .forme simulée représentant brut virtuel usiné par déplacement des outils virtuels le long de leurs trajectoires virtuelles respectives. Si l'écart entre cette forme simulée à l'aide du logiciel de 20 fabrication assistée par ordinateur et la pièce modélisée à l'aide du logiciel de conception assistée par ordinateur est acceptable, c'est-à-dire dans les tolérances de définition de la pièce modélisée alors il commande manuellement, au logiciel de fabrication 25 assistée par ordinateur, la génération d'un fichier récapitulant un ensemble de trajectoires virtuelles validées et d'outils virtuels validés, puis il passe à l'étape 7. Dans le cas contraire, on peut soit reconcevoir la pièce en reprenant le processus depuis 30 l'étape 1 jusqu'à l'étape 6 jusqu'à ce que l'on ait un écart acceptable entre la forme simulée et la pièce modélisée pour pouvoir générer le fichier récapitulatif et passer à l'étape 7. L'utilisateur peut aussi décider de modifier le processus en modifiant certains au moins 35 des choix réalisés aux étapes 2 à 6. Par exemple, il peut 3033655 4 modifier les choix d'outils virtuels et/ou d'entités géométriques et/ou de stratégies d'usinage et/ou de trajectoires virtuelles. L'opérateur modifie ces choix et réalise autant de simulations de formes simulées que 5 nécessaire, jusqu'à ce que l'écart entre forme simulée et pièce modélisé soit considéré comme acceptable, l'utilisateur génère alors le fichier récapitulatif et passe à l'étape 7. A l'étape 7, l'utilisateur transfère le fichier 10 récapitulant l'ensemble de trajectoires virtuelles et d'outils virtuels validés vers un post-processeur qui est programmé pour déterminer des trajectoires de liaison destinées à relier entre elles des trajectoires virtuelles de l'ensemble de trajectoires virtuelles qui 15 se succèdent. A partir de ces trajectoires de liaison et des trajectoires virtuelles nécessaires générer la forme simulée de la pièce virtuelle, le post-processeur génère un programme d'usinage sous forme de fichier texte supposé interprétable directement par le contrôleur 20 physique de la machine-outil cible sur laquelle on veut usiner le brut de pièce. A l'étape 8, le programme d'usinage supposé interprétable par le contrôleur physique de la machine-outil est enregistré et, comme décrit précédemment, il 25 peut alors être envoyé vers la machine-outil afin d'y être interprété et exécuté au ralenti et testé sur la machine-outil réelle. Si le programme d'usinage est erroné il y a un risque pour que le contrôleur physique l'interprète et commande aux actionneurs de réaliser des 30 déplacements qui peuvent conduire a un usinage non conforme du brut réel et/ou à une casse de la machine-outil, par exemple par collision de l'outil réel ou du porte outil avec l'une des pièces mobiles de la machine ou avec les moyens de maintien du brut réel. L'exécution 35 au ralenti du programme d'usinage avec des moyens de 3033655 5 maintien de brut réel vides de tout brut réel ou portant un faux brut réel de faible coût permet à l'opérateur de détecter des défauts d'usinage puis interrompre cet usinage puis rectifier le programme d'usinage. Le 5 programme d'usinage rectifié peut à son tour être exécuté au ralenti. Ce processus itératif de détection de défauts d'usinage est couteux à mettre en oeuvre. A l'étape 9, alternativement au test sur machine- outil réelle mentionné à l'étape 8, le programme 10 d'usinage supposé interprétable par le contrôleur physique de la machine-outil est envoyé vers une machine-outil virtuelle simulant le fonctionnement réel de la machine-outil cible sur laquelle on veut usiner le brut de pièce. Un contrôleur virtuel de la machine-outil 15 virtuel qui simule le fonctionnement du contrôleur physique de la machine-outil cible est alors activé pour interpréter le programme d'usinage supposé interprétable. Si cette interprétation fonctionne, on passe alors à l'étape 10 d'exécution du programme d'usinage sur la 20 machine-outil virtuelle comprenant un contrôleur virtuel. En cas d'échec d'interprétation, l'opérateur doit alors identifier la raison supposée de cet échec d'interprétation et revenir corriger des paramètres dans l'une des étapes précédentes 7 à 8. Il peut par exemple 25 changer de version de post-processeur s'il considère qu'elle n'est pas compatible avec la machine-virtuelle, ou alors changer de version de machine-virtuelle ou de contrôleur virtuel. A l'étape 10, l'opérateur exécute le programme 30 d'usinage interprété par le contrôleur virtuel de la machine-outil virtuelle et visualise, par une représentation en trois dimensions, un usinage virtuel sur cette machine-outil virtuelle, conforme au programme d'usinage interprété par le contrôleur virtuel. Cette 35 visualisation permet à l'opérateur de détecter des 3033655 6 défauts d'usinage virtuel qu'il souhaite ne pas retrouver lors de l'usinage réel. A chaque défaut constaté durant l'usinage virtuel, l'opérateur recherche une cause potentielle d'origine du défaut puis il recommence alors 5 certaines au moins des étapes 1 à 9 du processus en modifiant des paramètres qu'il considère comme responsables de l'échec d'exécution de l'usinage-virtuel. Ce processus allant des étapes 1 à 10 nécessite un grand nombre de logiciels (conception assistée par 10 ordinateur, fabrication assistée par ordinateur, pos- processeur, logiciel de simulation de fonctionnement d'une machine-outil en réponse à l'exécution d'un programme d'usinage...) et de nombreux types de fichiers dans différents formats et langages pour échanger des 15 données entre ces logiciels. La complexité de ce processus rend très difficile la génération d'un programme d'usinage interprétable et exécutable par une machine-outil réelle et permettant d'obtenir une pièce usinée conforme tout en minimisant le risque de casse 20 machine ou de casse outil. OBJET DE L'INVENTION Un objet de la présente invention est de fournir un procédé de génération de programme d'usinage interprétable par un contrôleur physique d'une machine- 25 outil à commande numérique. RESUME DE L'INVENTION A cette fin, il est proposé selon l'invention un procédé de génération d'un programme d'usinage interprétable par un contrôleur physique d'une machine- 30 outil à commande numérique, cette machine-outil comprenant plusieurs parties mobiles les unes par rapport aux autres de manière à déplacer un outil réel vis-à-vis d'un brut réel de pièce à usiner, l'outil réel étant porté par une des parties mobiles de la machine et le 35 brut réel étant porté par une autre des parties mobiles 3033655 7 de la machine via des moyens de maintien en position du brut réel. Le procédé de génération de programme d'usinage selon l'invention étant essentiellement caractérisé en ce que le programme d'usinage est généré à 5 partir : - d'un ensemble préenregistré de paramètres machine représentatifs de la machine-outil, certains de ces paramètres machine étant représentatifs de volumes d'encombrement chaque volume d'encombrement 10 étant représentatif d'au moins une desdites parties mobiles de la machine-outil et d'autres paramètres machine étant représentatifs de liaisons cinématiques entre certaines au moins desdites parties mobiles de la machine ; et 15 - d'un ensemble préenregistré de séquences d'usinage, chaque séquence d'usinage étant représentative d'un déplacement attendu de l'outil réel au cours d'une partie de l'usinage d'une pièce ; 20 le procédé de génération du programme d'usinage étant en outre caractérisé en ce qu'à partir de certains au moins desdits paramètres machine et de certaines au moins des séquences d'usinage, un programme de simulation informatique réalise des tests 25 de faisabilité d'usinage, le programme d'usinage étant généré dans un format exécutable par ledit contrôleur physique uniquement en cas de réussite préalable des tests de faisabilité d'usinage. Les tests de faisabilité d'usinage sont mis en 30 oeuvre par un programme de simulation informatique utilisant : les séquences d'usinage pour déterminer un parcours attendu simulé de l'outil d'usinage sur l'ensemble de l'usinage ; 35 - les paramètres machine qui représentent les 3033655 8 volumes d'encombrement des parties mobiles de la machine ; et - les paramètres machine gui représentent les liaisons cinématiques entre ces parties mobiles. 5 Le parcours attendu simulé de l'outil d'usinage représente le déplacement attendu de l'outil d'usinage réel déplacé en suivant ces séquences d'usinage. Sachant qu'une des parties de la machine-outil forme un porte outil et qu'une autre des parties de la 10 machine outil porte des moyens de maintien d'un brut réel de pièce à usiner et connaissant les liaisons cinématiques entre les parties mobiles de la machine, le programme de simulation informatique simule les déplacements des volumes d'encombrement représentatifs 15 des parties mobiles de la machine outil qui sont nécessaires pour déplacer l'outil d'usinage suivant ces séquences d'usinage, c'est-à-dire suivant le parcours attendu simulé de l'outil d'usinage réel, ce qui permet l'usinage de la pièce. 20 En fonction de règles de tests prédéterminées, le programme de simulation informatique vérifie s'il y a réussite des tests de faisabilité d'usinage. En cas de réussite, ce programme de simulation informatique autorise la génération du programme d'usinage dans un 25 format exécutable par ledit contrôleur physique. En cas d'échec à l'un au moins de ces tests de faisabilité d'usinage, le programme de simulation informatique interdit la génération dudit programme d'usinage dans le format exécutable par le contrôleur physique. 30 En réponse à l'autorisation générée par le programme de simulation informatique réalisant les tests de faisabilité, au moins un premier algorithme d'écriture génère un préprogramme d'usinage dans un format générique puis ce préprogramme d'usinage dans le format générique 35 est réécrit sous la forme d'un préprogramme d'usinage 3033655 9 dans le format exécutable par le contrôleur physique. Si ce préprogramme d'usinage est considéré comme correct dans la syntaxe propre au format exécutable par le contrôleur physique alors ce préprogramme d'usinage au 5 format exécutable est enregistrée pour être considéré comme formant le programme d'usinage au format exécutable par le contrôleur physique. De manière générale, le programme d'usinage au format exécutable par le contrôleur physique est toujours 10 généré en fonction de l'ensemble préenregistré de paramètres machine et de l'ensemble préenregistré de séquences d'usinage. Dans le mode préférentiel de l'invention passant par les préprogrammes d'usinage, c'est le préprogramme 15 d'usinage dans le format générique qui est généré en fonction de l'ensemble préenregistré de paramètres machine et en fonction de l'ensemble préenregistré de séquences d'usinage. Le préprogramme au format exécutable et le programme d'usinage au format exécutable sont par 20 conséquent aussi générés en fonction de l'ensemble préenregistré de paramètres machine et de l'ensemble préenregistré de séquences d'usinage. BREVE DESCRIPTION DES DESSINS 25 D'autres caractéristiques et avantages de l'invention ressortiront clairement de la description qui en est faite ci-après, à titre indicatif et nullement limitatif, en référence aux dessins annexés, dans 30 lesquels: - la figure 1 représente un procédé de génération de programme d'usinage conforme à l'art antérieur ; - la figure 2 présente le procédé de génération de programme selon l'invention dans son ensemble, les 3033655 10 figures 3a à 8 illustrant des parties de ce procédé selon l'invention ; - les figures 3a et 3b illustrent l'opération de posage d'un modèle virtuel de pièce et d'un modèle 5 virtuel de brut sur des moyens de maintien en position du brut réel mentionnée à la figure 2 ; - la figure 4 illustre l'opération de génération des séquences d'usinage, à partir de l'outil, du modèle de la pièce à obtenir et de stratégies d'usinage 10 définissant des caractéristiques de l'outil et des paramètres de coupe qui lui sont propres ; - la figure 5 illustre l'intégration du modèle représentatif de l'outil réel et du modèle virtuel représentatif de la pièce à usiner dans l'environnement 15 machine afin de réaliser des tests de faisabilité d'usinage réalisés préalablement à la génération du programme d'usinage exécutable par le contrôleur physique ; - la figure 6 illustre le calcul des trajectoires 20 de liaison et un test de faisabilité cinématique du parcours attendu simulé de l'outil au cours de l'usinage, on voit sur cette figure 6 qu'en cas de réussite des tests de faisabilité, on génère un préprogramme en code ISO générique, non spécifique au format exécutable par le 25 contrôleur physique cible ; - la figure 7 illustre la génération du programme d'usinage dans le format exécutable à partir du préprogramme dans le format générique ; - la figure 8 illustre un test de validité 30 syntaxique des preprogrammes en formats générique et exécutable afin d'autoriser ou non la génération du programme d'usinage validé, interprétable et exécutable par le contrôleur physique cible, on considère que la trajectoire définie sera valide. 35 3033655 11 DESCRIPTION DETAILLEE DE L'INVENTION De manière générale, dans la présente demande : - l'abréviation CN désigne le terme machine outil 5 à commande numérique ; le terme ISO générique désigne le préprogramme d'usinage dans le format générique ; le terme ISO typé désigne le préprogramme d'usinage dans le format exécutable par le contrôleur 10 physique. L'opération de posage présentée à la figure 2 et détaillée à travers les figures 3a et 3b. Cette opération de posage le consiste à positionner le modèle de pièce à usiner (visible à la figure 3a avec son propre repère) 15 tel que déterminé par le bureau d'étude à l'aide du logiciel de conception assistée par ordinateur vis-à-vis d'un volume d'encombrement représentant de moyens de maintien en position du brut réel et vis-à-vis d'un volume d'encombrement représentatif d'une pièce mobile de 20 la machine outil cible, c'est-à-dire de la machine outil sur laquelle on souhaite usiner cette pièce conformément au modèle déterminé par le logiciel de conception (visible à la figure 3b). 25 Lors de cette un setup c'est-à-dire volume d'encombrement vis-à-vis des moyens réel. opération dite de posage on utilise une fixation relative virtuelle du représentatif de la pièce à usiner de maintien en position du brut Ce setup/ assemblage virtuel du modèle de pièce 30 avec le modèle de moyens de positionnement de brut est enregistré avec son propre repère. Cet enregistrement illustre également, un modèle représentatif du brut initial à usiner pour former la pièce et la pièce usinée attendue ainsi que les moyens de 35 positionnement, c'est-à-dire les brides permettant de 3033655 12 maintenir le brut avant usinage et la pièce qu'il devient en fin d'usinage. Comme on le voit à la figure 2, cet enregistrement représente un l'assemblage virtuel utile 5 pour déterminer les séquences d'usinage nécessaires pour passer, à l'aide de l'outil associé d'usinage, du brut à la pièce usinée finale. Après avoir délimité des entités géométriques de la pièce modélisée à réaliser, l'opérateur choisi l'outil 10 virtuel d'usinage représentatif d'un outil réel d'usinage cet outil virtuel étant destiné à simuler un usinage d'au moins une entité géométrique de la pièce modélisée. Le volume d'encombrement représentatif de l'outil d'usinage réel choisi pour l'usinage est représenté sur 15 la figure 4, avec les volumes d'encombrement représentatifs du brut devant être usiné B, de la pièce usinée P et des moyens de maintien en position M. Comme cela a déjà été indiqué en référence à la figure 1, l'opérateur associe à chaque entité géométrique 20 de la pièce une stratégie d'usinage, de perçage, de surfaçage, de tournage ou autre. Chaque stratégie d'usinage est associée à un outil virtuel et à des conditions de fonctionnement dans lesquelles l'outil virtuel doit être utilisé pour couper correctement la 25 matière du brut usiné (vitesse de coupe maximale, la profondeur de passe maximale, sa vitesse d'avance A l'aide de ces éléments, un algorithme de dégénération de séquences d'usinage génère un ensemble de 30 séquence d'usinage de la pièce à l'aide dudit au moins un outil. Ces séquences d'usinage forment un ensemble préenregistré de séquences d'usinage, chaque séquence d'usinage étant représentative d'un déplacement attendu 35 de l'outil réel au cours d'une partie de l'usinage d'une 3033655 13 pièce. Comme on le comprend de la figure 4, chaque séquence d'usinage détermine un déplacement attendu de l'outil déterminé en fonction de l'outil d'usinage / de coupe choisi et en fonction des paramètres de coupe 5 associés. Chaque déplacement attendu de l'outil est exprimé sous la forme de points de positionnement de l'outil exprimés dans le repère de la pièce X, Y, Z, Vx, Vy, Vz. L'opérateur peut visualiser le déplacement attendu de l'outil pendant la séquence d'usinage. 10 Comme on le voit sur la figure 2, les séquences d'usinage peuvent être générées automatiquement par l'algorithme de génération de séquences d'usinage en utilisant un programme d'usinage exécutable par un contrôleur physique. Ceci est avantageux par exemple si 15 les séquences d'usinage qui correspondent à un programme d'usinage exécuté par un contrôleur physique d'une machine de l'atelier ont été perdues. Il suffit à l'opérateur d'éditer manuellement l'ISO typé fonctionnant sur la machine outil et de transmettre ce programme 20 d'usinage à l'algorithme de génération de séquence d'usinage. Grâce à cet algorithme, connaissant les paramètres / formes exactes de l'outil réel on peut redéfinir chacune des séquences d'usinage et même des trajectoires de liaison utilisées par la machine outil 25 pour relier entre elles les séquences d'usinage. Une fois les séquences d'usinage calculées, celles-ci sont enregistrées pour former un ensemble préenregistré de séquences d'usinage. Lors de l'étape suivante, on calcule des 30 trajectoires de liaison, chaque trajectoire de liaison étant représentative d'un déplacement attendu de l'outil réel entre deux desdites séquences d'usinage qui se succèdent immédiatement. Par définitions : 3033655 111 - Une séquence d'usinage est une séquence définissant une trajectoire attendue de l'outil réel comprend une trajectoire attendue d'entrée de l'outil réel dans de la matière du brut, une 5 trajectoire attendue de coupe dans laquelle l'outil réel est en contact avec le brut pour lui enlever de la matière et une trajectoire attendue de sortie de l'outil réel hors de la matière du brut. Il est à noter que les trajectoires d'entrée et de sortie 10 définissent des conditions d'entrée et sortie de l'outil. - Une trajectoire de liaison est une trajectoire attendue de l'outil réel dans laquelle l'outil réel doit être déplacé uniquement à distance 15 du brut, sans le toucher, la trajectoire de liaison reliant deux trajectoires attendues de l'outil réel qui sont respectivement définies par deux séquences d'usinage qui se succèdent immédiatement. Par deux séquences d'usinage qui se succèdent immédiatement 20 on entend qu'aucune autre séquence d'usinage utilisant ledit outil réel n'est placée entre elles. Chaque trajectoire de liaison entre deux séquences d'usinage qui se succèdent immédiatement est calculée par un algorithme de calcul de trajectoires de 25 liaison exécuté par un processeur : - en fonction d'une première position attendue de l'outil réel à la fin de la première de ces deux séquences d'usinage qui se succèdent immédiatement ; et - en fonction d'une seconde position attendue de 30 l'outil au début de la seconde de ces deux séquences d'usinage qui se succèdent immédiatement. Puis, à partir des séquences d'usinage et à partir des trajectoires de liaison, on génère un parcours attendu simulé de l'outil sur l'ensemble de l'usinage. 3033655 15 Connaissant ce parcours attendu simulé de l'outil sur l'ensemble de l'usinage il est alors possible, via une simulation présentée à la figure 5, de représenter les mouvements des parties mobiles de la machine qui sont 5 nécessaires pour permettre le déplacement de l'outil virtuel vis-à-vis du brut à usiner. Pour cela, on relie virtuellement d'une part l'outil virtuel représentatif de l'outil réel à une partie mobile de la machine formant le porte outil et 10 d'autre part les moyens de maintien en position du brut réel avec une autre partie mobile de la machine supportant ces moyens de maintien. En l'occurrence, les moyens de maintien forment un montage d'usinage fixé sur une partie mobile de la machine qui forme la table. 15 Ayant relié l'outil et le brut aux parties mobiles de la machine, il est alors aisé de déduire les déplacements de ces parties mobiles qui sont nécessaires pour que l'outil puisse suivre le parcours attendu simulé de l'outil sur l'ensemble de l'usinage. 20 A cet effet, on va maintenant utiliser des paramètres machine présentés ci-après. Comme on le voit sur la figure 2, la machine outil cible que l'on souhaite utiliser pour effectuer l'usinage est connue et représentée via d'un ensemble 25 préenregistré de paramètres machine représentatifs de la machine-outil. Ces paramètres machine comportent : - un ensemble de fichiers « 3D », chaque fichier « 3D » est représentatif de volumes 30 d'encombrement chacun représentatif d'au moins une desdites parties mobiles de la machine-outil, - en ensemble de données « cinématique » représentatives de liaisons cinématiques entre certaines au moins desdites parties mobiles de la 35 machine ; 3033655 16 - un algorithme de contrôle en écriture qui sera présenté ci-après; - un algorithme de contrôle en lecture qui sera présenté ci-après ; 5 - un ensemble de données « modes interpolation » représentant les différents modes d'interpolation exécutables par la machine-outil décrite dans le « Kit machine. Il est à noter qu'un mode d'interpolation est une 10 règle de calcul que doit appliquer le contrôleur physique de la machine-outil pour coordonner les mouvements des parties mobiles afin de déplacer l'outil réel porté par le porte outil entre deux points. Les modes d'interpolation peuvent être par exemple le mode « plan 15 incliné » tel que défini dans la norme ISO 6983 où le mode plan incliné est nommé « Tilted plane working », ou le mode RTCP , ces modes pouvant par exemple faire appel à des options de cotations telles que cotation polaire ou cartésienne. On note que le mode RTCP pour « Rotation 20 Tool Center Point » est applicable sur des machines- outils dotées de tête bi-rotative ou de cinématique à plateaux. Cette fonction permet de programmer les interactions cinématiques entre les parties mobiles de la machine en se rapportant directement au centre de l'outil 25 au lieu du centre de rotation d'axes de la cinématique machine. Le mode d'interpolation RTCP permet aussi la compensation de la longueur de l'outil dans l'espace. En utilisant les paramètres machine issus du kit machine de la machine cible on peut calculer les 30 déplacements relatifs d'un ensemble de volumes d'encombrement comprenant les volumes d'encombrement représentatifs de la machine-outil, un volume d'encombrement représentatif du porte outil, un volume d'encombrement représentatif de l'outil réel porté par le 3033655 17 porte outil, un volume d'encombrement représentatif des moyens de maintien en position du brut réel. Ce calcul des déplacements relatifs de l'ensemble des volumes d'encombrement étant réalisé à partir du 5 parcours attendu simulé de l'outil sur l'ensemble de l'usinage, des liaisons cinématiques entre lesdites parties mobiles de la machine et à partir d'un positionnement attendu des moyens de maintien en position du brut réel sur la partie mobile de la machine portant 10 les moyens de maintien en position du brut réel. Comme indiqué précédemment, le procédé de génération de programme d'usinage interprétable et exécutable par le contrôleur physique de la machine cible utilise un programme de simulation informatique pour 15 réaliser de manière préférentiellement automatisée, des tests de faisabilité d'usinage TST illustrés à la figure 2. Le programme d'usinage est généré dans le format exécutable par ledit contrôleur physique uniquement en cas de réussite préalable des tests de faisabilité 20 d'usinage. Un de ces tests de faisabilité d'usinage est illustré à la figure 5. Ce test, est un test de faisabilité cinématique de l'usinage comprenant la vérification, en fonction de l'ensemble préenregistré de 25 paramètres machine et en fonction de l'ensemble préenregistré de séquences d'usinage, de l'adaptation de la machine-outil à déplacer l'outil réel conformément à chacune des séquences d'usinage et conformément à des trajectoires de liaison. 30 Pour réaliser ce test, comme indiqué précédemment on calcule les déplacements des parties mobiles de la machine qui sont nécessaire pour que l'outil puisse suivre le parcours attendu simulé tout au long de l'usinage. Comme chaque partie de la machine est 35 représentée par son volume d'encombrement il est aisé de 3033655 18 vérifier si au cours des déplacements relatifs de l'ensemble des volumes d'encombrement, on constate des collisions entre certains des volumes d'encombrement de cet ensemble. 5 En cas de telles collisions, on considère que le test TST de faisabilité cinématique n'est pas réussi, c'est à dire que l'on considère qu'il y a échec du test de faisabilité cinématique et le programme de simulation informatique interdit alors la génération du programme 10 d'usinage au format exécutable. Ce test évite par exemple que l'outil n'entre en contact avec les moyens de maintien en position du brut réel au risque de casser la machine outil, l'outil réel ou le montage d'usinage formant les moyens de maintien en 15 position. En recherchant les erreurs d'usinage avant de générer le programme d'usinage au format exécutable on gagne en temps de calcul et aussi en temps de traitement de données. Pour cette raison et aussi par le fait qu'il 20 réduit les risques de casse machine / casse outil, le procédé selon l'invention présente un intérêt financier certain. Dans le cas où aucune collision n'est constatée entre les volumes d'encombrement de l'ensemble de volume 25 d'encombrement, alors on considère qu'il y a réussite du test de faisabilité cinématique. Parmi les tests de faisabilité d'usinage TST mis en oeuvre pour conditionner la génération du programme d'usinage dans le format exécutable, on peut par exemple 30 avoir un test de qualité attendue d'usinage comprenant : a) la détermination d'écart entre : - un modèle attendu de brut B usiné déterminé en réalisant une simulation d'enlèvement de matière du brut par l'outil se déplaçant le long du parcours attendu 35 simulé de l'outil 0 sur l'ensemble de l'usinage ; et 3033655 19 - un modèle de pièce P à usiner généré à l'aide d'un logiciel de conception assistée par ordinateur CAO ; puis b) si l'écart ainsi déterminé est supérieur à un 5 écart maximum autorisé prédéterminé, alors un algorithme d'analyse d'écart génère une alerte d'échec d'un des tests TST de faisabilité d'usinage, en l'occurrence le test de qualité attendue d'usinage, et dans le cas contraire, l'algorithme d'analyse d'écart génère un 10 signal de réussite de ce test de qualité attendue d'usinage. Parmi les tests de faisabilité d'usinage TST mis en oeuvre pour conditionner la génération du programme d'usinage dans le format exécutable, on peut aussi avoir 15 un test de protection de l'outil d'usinage / outil de coupe consistant à générer, à partir des séquences d'usinage et à partir des trajectoires de liaison, un parcours attendu simulé de l'outil sur l'ensemble de l'usinage par rapport au brut, puis à s'assurer : 20 - que le parcours attendu simulé de l'outil réel est tel l'outil réel se déplaçant dans le brut ne peut se déplacer à une vitesse supérieure à une vitesse limite prédéterminée ; et/ou - que l'outil réel déplacé suivant le parcours 25 attendu simulé est toujours déplacé pour usiner le brut uniquement avec des arrêtes coupantes ; puis en cas d'échec de l'une de ces conditions, le programme de simulation informatique interdit la génération du programme d'usinage dans le format 30 exécutable par ledit contrôleur physique. Parmi les tests de faisabilité d'usinage TST mis en oeuvre pour conditionner la génération du programme d'usinage dans le format exécutable, on peut aussi mettre en oeuvre un test de faisabilité physique de l'usinage. A 35 partir de chaque déplacement attendu d'un outil réel au 3033655 20 cours d'une partie de l'usinage de pièce, on calcule des positions extrêmes par lesquelles l'outil réel doit passer pour réaliser l'usinage, et le test de faisabilité physique de l'usinage consiste à vérifier si la machine- 5 outil est adaptée à déplacer l'outil réel pour qu'il puisse atteindre chacune des positions extrêmes calculées. On évite vérifie ainsi que la machine présente une course suffisante pour déplacer l'outil selon le 10 parcours nécessaire à l'usinage de la pièce. Ce procédé permet aussi d'éviter que l'on ait des axes de mobilité de machine qui arrivent en butée de fin de course pendant l'exécution du programme par la machine outil. Comme cela est visible à la figure 5, ce test de faisabilité 15 physique permet de vérifier si chaque positions d'outil calculées X, Y, Z Vx, Vy, Vz et exprimée dans le repère pièce peut être atteinte dans le repère propre au programme d'usinage X, Y, Z, A, B, C. En cas d'échec d'un des tests TST de faisabilité 20 d'usinage, le programme de simulation interdit la génération du programme d'usinage et propose éventuellement un correctif. Typiquement, en cas d'échec des tests de faisabilité d'usinage ce programme de simulation génère 25 une alerte. Cette alerte générée est préférentiellement associée à un message d'alerte sélectionné dans une liste prédéterminée de messages d'alerte, le message d'alerte sélectionné indiquant une raison supposée de l'échec des 30 tests de faisabilité d'usinage. Le message d'alerte est affiché à l'intention d'un opérateur du programme de simulation informatique via une interface homme machine telle qu'un écran. En fonction du message d'alerte sélectionné et affiché, 35 l'opérateur peut redéfinir des séquences d'usinage ou des 3033655 21 formes de la pièce ou des dimensions ou positions de moyens de maintien du brut réel de pièce à usiner. Dans certains cas l'opérateur peut aussi redéfinir les trajectoires de liaison entre les séquences d'usinage ou 5 encore décider de changer de machine-outil pour en choisir une ayant une plus grande amplitude de mouvement, c'est-à-dire des liaisons cinématiques entre les parties mobiles constitutives de la machine outil qui soient telles qu'elles sont adaptées à déplacer l'outil réel le 10 long du parcours attendu simulé de l'outil sur l'ensemble de l'usinage sans qu'il y ait de collision entre les volumes d'encombrement représentatifs des parties de la machine. On note que dans cette simulation, les moyens de maintien d'un brut réel de pièce à usiner sont 15 représentés par au moins un desdits volumes d'encombrement et que le porte outil est représenté par un autre desdits volumes d'encombrement. A contrario, en cas de réussite de l'ensemble des tests de faisabilité TST, le programme de simulation 20 informatique commande la génération du programme d'usinage dans le format exécutable par ledit contrôleur physique. Cette génération comprend : - l'écriture, par un premier algorithme d'écriture, d'un préprogramme d'usinage dans un format 25 générique distinct dudit format exécutable par ledit contrôleur physique ; puis - une vérification, par un algorithme contrôleur en écriture, du préprogramme d'usinage dans le format générique, cet algorithme contrôleur en écriture 30 vérifiant si ce préprogramme d'usinage dans le format: générique est conforme à des règles linguistiques prédéterminées propres au format générique ; puis - si l'algorithme contrôleur en écriture confirme que le préprogramme d'usinage dans le format générique 35 est conforme aux règles linguistiques prédéterminées 3033655 22 propres au format générique, alors ce préprogramme d'usinage dans le format générique est mémorisé pour être conservé et un second algorithme d'écriture réécrit ce préprogramme d'usinage dans le format exécutable par 5 ledit contrôleur physique ; puis - une vérification, par un algorithme contrôleur en lecture, du préprogramme d'usinage dans le format exécutable par ledit contrôleur physique, cet algorithme contrôleur en lecture vérifiant si ce préprogramme 10 d'usinage dans le format exécutable par ledit contrôleur physique est conforme à des règles linguistiques prédéterminées propres au format exécutable par ledit contrôleur physique ; puis - si l'algorithme contrôleur en lecture confirme 15 que le préprogramme d'usinage dans le format exécutable par ledit contrôleur physique est conforme aux règles linguistiques prédéterminées propres au format exécutable par ledit contrôleur physique, alors ce préprogramme d'usinage dans le format exécutable par le contrôleur 20 physique est considéré comme étant le programme d'usinage généré dans le format exécutable par ledit contrôleur physique, ce dernier programme étant alors enregistré pour être transmis à la machine outil pour être interprété et exécuté par son contrôleur physique. 25 Les règles linguistiques prédéterminées propres au format générique comportent des règles de syntaxe propres au format générique et des règles de vocabulaire propres au format générique. Les règles linguistiques prédéterminées propres 30 au format exécutable par le contrôleur physique comportent des règles de syntaxe propres au format exécutable par le contrôleur physique de la machine outil cible et des règles de vocabulaire propres à ce format exécutable par le contrôleur physique. 35 La génération et la mémorisation d'un 3033655 23 préprogramme d'usinage dans un format générique qui est distinct du format exécutable par le contrôleur physique, permet de conserver une version intermédiaire du programme d'usinage qui peut être réutilisé pour le cas 5 où l'on souhaiterait changer de machine outil cible. En effet, l'on change de machine outil cible, on doit alors générer un programme d'usinage spécifiquement adapté pour être exécutable par le contrôleur physique de cette nouvelle machine cible. Comme, on a une version dans un 10 format générique non spécifique d'un seul type de contrôleur physique, on peut réécrire simplement le programme d'usinage dans le nouveau format exécutable par le nouveau contrôleur physique en utilisant uniquement le programme d'usinage dans le format générique tel qu'il a 15 été mémorisé et un second algorithme d'écriture adapté à réécrire ce préprogramme d'usinage mémorisé dans le format générique dans le nouveau format exécutable par le nouveau contrôleur physique. Ceci est particulièrement utile pour faciliter l'adaptation du programme d'usinage 20 d'une machine outil vers une autre machine outil sans avoir à retravailler l'ensemble des séquences d'usinage. L'intérêt d'utiliser d'une part un algorithme contrôleur en écriture utilisant des règles linguistiques prédéterminées propres au format générique et d'autre 25 part un algorithme contrôleur en lecture utilisant des règles linguistiques prédéterminées propres au format exécutable par le contrôleur physique de la machine outil cible permet de limiter le risque d'erreurs dans le programme exécutable transmis au contrôleur de la machine 30 outil. En effet, le format générique est utilisé quel que soit le format exécutable cible du contrôleur physique cible. Ceci permet de tester une première fois la syntaxe du programme d'usinage alors qu'il est sous la forme d'un préprogramme au format générique et de tester une seconde 35 fois la syntaxe de ce programme d'usinage alors qu'il est 3033655 24 sous une forme alternative, c'est-à-dire sous la forme d'un prés programme au format exécutable par un contrôleur physique cible. L'invention offre aux opérateurs en charge de la 5 génération de programme d'usinage, des facilités pour la transposition d'un programme d'usinage d'une machine de l'atelier vers une autre possédant des contrôleurs physiques différents l'un de l'autre. Un avantage de l'invention est de permettre la 10 génération de programme d'usinage vers de multiples machines outil ayant chacune son propre contrôleur physique. Un autre avantage de l'invention est de permettre de générer ce programme à partir de multiples données 15 exprimées dans différents formats ce qui rend le procédé extrêmement adaptable au contexte industriels particuliers. Par exemple, l'ensemble préenregistré de séquences d'usinage peut comprendre : 20 - des séquences d'usinage exprimées sous forme de programme de machine outil à commande numérique en code G ; ou - des séquences d'usinage issues d'un logiciel de fabrication assistée par ordinateur ; ou 25 - des séquences d'usinage exprimées sous formes de trajectoires d'outil d'usinage ; ou - une combinaison de séquences d'usinage en code G, de séquences issues d'un logiciel de fabrication assistée par ordinateur, et de séquences exprimées sous 30 forme de trajectoires de l'outil d'usinage. Par programme en code G, on entend un programme de machine outil à commande numérique conforme à la norme ISO 6983. Par séquences d'usinage issues d'un logiciel de 35 fabrication assistée par ordinateur, on peut entendre des REVENDICATIONS1. Procédé de génération d'un programme d'usinage interprétable par un contrôleur physique d'une machine- outil à comprenant aux autres d'un brut porté par commande numérique, cette machine-outil plusieurs parties mobiles les unes par rapport de manière à déplacer un outil réel vis-à-vis réel de pièce à usiner, l'outil réel étant une des parties mobiles et le brut réel par une autre des parties mobiles via des moyens de maintien en position du brut réel, le procédé de génération de programme d'usinage étant essentiellement caractérisé en ce que le programme d'usinage est généré à partir : - d'un ensemble préenregistré de paramètres machine représentatifs de la machine-outil, certains de ces paramètres machine étant représentatifs de volumes d'encombrement chacun représentatif d'au moins une desdites parties mobiles de la machine-outil et d'autres paramètres machine étant représentatifs de liaisons cinématiques entre certaines au moins desdites parties mobiles de la machine ; et d'un ensemble préenregistré de séquences d'usinage, chaque séquence d'usinage étant représentative d'un déplacement attendu de l'outil réel au cours d'une partie de l'usinage d'une pièce ; le procédé de génération du programme étant en outre caractérisé en ce qu'à partir de certains au moins desdits paramètres machine et de certaines au moins des séquences d'usinage, un programme de simulation informatique, réalise des tests de faisabilité (TST) d'usinage, le programme d'usinage étant généré dans un format exécutable par ledit contrôleur physique uniquement en cas de réussite préalable des tests de faisabilité d'usinage. 2. Procédé de génération d'un programme d'usinage 3033655 27 selon la revendication 1, dans lequel un des tests de faisabilité d'usinage est un test de faisabilité cinématique de l'usinage comprenant la vérification, en fonction de l'ensemble préenregistré de paramètres 5 machine et en fonction de l'ensemble préenregistré de séquences d'usinage, de l'adaptation de la machine-outil à déplacer l'outil réel conformément à chacune des séquences d'usinage et conformément à des trajectoires de liaison, chaque trajectoire de liaison étant 10 représentative d'un déplacement attendu de l'outil réel entre deux desdites séquences d'usinage qui se succèdent immédiatement. 3. Procédé de génération d'un programme d'usinage selon la revendication 2, dans lequel le test de 15 faisabilité cinématique comprend : - 1) la génération, à partir des séquences d'usinage et à partir des trajectoires de liaison, d'un parcours attendu simulé de l'outil sur l'ensemble de l'usinage ; 20 - 2) le calcul des déplacements relatifs d'un ensemble de volumes d'encombrement comprenant les volumes d'encombrement représentatifs de la machine-outil, un volume d'encombrement représentatif du porte outil, un volume d'encombrement représentatif de 25 l'outil réel porté par le porte outil, un volume d'encombrement représentatif des moyens de maintien en position du brut réel, ce calcul des déplacements relatifs de l'ensemble des volumes d'encombrement étant réalisé à partir du parcours attendu simulé de 30 l'outil sur l'ensemble de l'usinage, des liaisons cinématiques entre lesdites parties mobiles de la machine et à partir d'un positionnement attendu des moyens de maintien en position du brut réel sur la partie mobile de la machine portant les moyens de 35 maintien en position du brut réel ; 3033655 28 3) si au cours des déplacements relatifs de l'ensemble des volumes d'encombrement on constate des collisions entre certains des volumes d'encombrement de cet ensemble alors on considère 5 que le test de faisabilité cinématique n'est pas réussi, c'est à dire que l'on considère qu'il y a échec du test de faisabilité cinématique et le programme de simulation informatique interdit alors la génération du programme d'usinage au format 10 exécutable ; - 4) dans le cas où aucune collision n'est constatée entre les volumes d'encombrement de l'ensemble de volume d'encombrement, alors on considère qu'il y a réussite du test de faisabilité cinématique. 15 4. Procédé de génération d'un programme d'usinage selon la revendication 2, dans lequel chaque trajectoire de liaison entre deux desdites séquences d'usinage qui se succèdent immédiatement est calculée par un algorithme de calcul de trajectoires de liaison exécuté par un 20 processeur : - en fonction d'une première position attendue de l'outil réel à la fin de la première de ces deux séquences d'usinage qui se succèdent immédiatement ; et - en fonction d'une seconde position attendue de 25 l'outil au début de la seconde de ces deux séquences d'usinage qui se succèdent immédiatement. 5. Procédé de génération d'un programme d'usinage selon la revendication 2, dans lequel l'un des tests de faisabilité d'usinage est un test de qualité attendue 30 d'usinage comprenant : a) la détermination d'écart entre : - un modèle attendu de brut usiné déterminé en réalisant une simulation d'enlèvement de matière du brut par l'outil se déplaçant le long du parcours attendu 35 simulé de l'outil sur l'ensemble de l'usinage ; et 3033655 29 - un modèle de pièce à usiner généré à l'aide d'un logiciel de conception assistée par ordinateur ; puis b) si l'écart ainsi déterminé est supérieur à un 5 écart maximum autorisé prédéterminé alors un algorithme d'analyse d'écart génère une alerte d'échec d'un des tests de faisabilité d'usinage, en l'occurrence le test de qualité attendue d'usinage, et dans le cas contraire, l'algorithme d'analyse d'écart génère un signal de 10 réussite de ce test de qualité attendue d'usinage. 6. Procédé de génération d'un programme d'usinage selon l'une quelconque des revendications 1 ou 2, dans lequel l'un des tests de faisabilité d'usinage est un test de protection de l'outil de coupe consistant à 15 générer, à partir des séquences d'usinage et à partir des trajectoires de liaison, un parcours attendu simulé de l'outil sur l'ensemble de l'usinage par rapport au brut, puis à s'assurer : - que le parcours attendu simulé de l'outil réel 20 est tel l'outil réel se déplaçant dans le brut ne peut se déplacer à une vitesse supérieure à une vitesse limite prédéterminée ; et/ou - que l'outil réel déplacé suivant le parcours attendu simulé est toujours déplacé pour usiner le brut 25 uniquement avec des arrêtes coupantes ; puis en cas d'échec de l'une de ces conditions, le programme de simulation informatique interdit la génération du programme d'usinage dans le format exécutable par ledit contrôleur physique. 30 /. Procédé de génération d'un programme d'usinage selon l'une quelconque des revendications 1 à 5, dans lequel à partir de chaque déplacement attendu d'un outil réel au cours d'une partie de l'usinage d'une pièce, on calcule des positions extrêmes par lesquelles l'outil 35 réel doit passer pour réaliser l'usinage, et un des tests 3033655 30 de faisabilité d'usinage est un test de faisabilité physique de l'usinage consistant à vérifier si la machine-outil est adaptée à déplacer l'outil réel pour qu'il puisse atteindre chacune des positions extrêmes 5 calculées. 8. Procédé de génération d'un programme d'usinage selon l'une quelconque des revendications 1 à 7, dans lequel en cas d'échec des tests de faisabilité d'usinage on génère une alerte. 10 9. Procédé de génération d'un programme d'usinage selon la revendication 8, dans lequel l'alerte générée est associée à un message d'alerte sélectionné dans une liste prédéterminée de messages d'alerte, le message d'alerte sélectionné indiquant une raison supposée de 15 l'échec des tests de faisabilité d'usinage. 10. Procédé de génération d'un programme d'usinage selon l'une quelconque des revendications précédentes dans lequel d'usinage dans le format 20 physique comprend : l'écriture, ladite génération du programme exécutable par ledit contrôleur par un premier algorithme d'écriture, d'un préprogramme d'usinage dans un format générique distinct dudit format exécutable par ledit contrôleur physique ; puis 25 - une vérification, par un algorithme contrôleur en écriture, du préprogramme d'usinage dans le format générique, cet algorithme contrôleur en écriture vérifiant si ce préprogramme d'usinage dans le format générique est conforme à des règles linguistiques 30 prédéterminées propres au format générique ; puis - si l'algorithme contrôleur en écriture confirme que le préprogramme d'usinage dans le format générique est conforme aux règles linguistiques prédéterminées propres au format générique, alors ce préprogramme 35 d'usinage dans le format générique est mémorisé pour être 3033655 31 conservé et un second algorithme d'écriture réécrit ce préprogramme d'usinage dans le format exécutable par ledit contrôleur physique ; puis - une vérification, par un algorithme contrôleur 5 en lecture, du préprogramme d'usinage dans le format exécutable par ledit contrôleur physique, cet algorithme contrôleur en lecture vérifiant si ce préprogramme d'usinage dans le format exécutable par ledit contrôleur physique est conforme à des règles linguistiques 10 prédéterminées propres au format exécutable par ledit contrôleur physique ; puis - si l'algorithme contrôleur en lecture confirme que le préprogramme d'usinage dans le format exécutable par ledit contrôleur physique est conforme aux règles 15 linguistiques prédéterminées propres au format exécutable par ledit contrôleur physique, alors ce préprogramme d'usinage dans le format exécutable par le contrôleur physique est considéré comme étant le programme d'usinage généré dans le format exécutable par ledit contrôleur 20 physique, ce dernier programme étant alors enregistré pour être transmis à la machine outil pour être interprété et exécuté par son contrôleur physique. 11. Procédé de génération d'un programme d'usinage selon l'une quelconque des revendications 25 précédentes, dans lequel l'ensemble préenregistré de séquences d'usinage comprend : - des séquences d'usinage exprimées sous forme de programme de machine outil à commande numérique en code G ; ou 30 - des séquences d'usinage issues d'un logiciel de fabrication assistée par ordinateur ; ou - des séquences d'usinage exprimées sous formes de trajectoires d'outil d'usinage ; ou - une combinaison de séquences d'usinage en code 35 G, de séquences issues d'un logiciel de fabrication 3033655 32 assistée par ordinateur, et de séquences exprimées sous forme de trajectoires de l'outil d'usinage.