Brevet FR2069878A1 — publié le 19710910

La présente invention a pour objet un procédé de commande automatique du mouvement dtun organe, tel qu'un outil, suivant une courbe donnée, ledit organe pouvant se déplacer suivant n axes à l'aide de moyens appropriés, c'est-à-dire un procédé suivant lequel est assurée automatiquement la transformation des données définissant le mouvement à faire exécuter par un organe en une série de déplacements permettant de réaliser ledit mouvement avec une approximation déterminée. L'invention a également pour objet un dispositif de commande numérique comportant application dudit procédé. Ledit dispositif permet d'exécuter des déplacements au moyen de servo-mécanismes en déchiffrant des ordres apportés sous forme numérique. La commande automatique de machines-outils s'avère très précieuse dans cs ains cas, par exemple lorsque la pièce à travailler est radioactive ou lorsque l'on envisage une fabrication en grande série. Jusqutà présent, deux procédés ont été utilisés pour la commande automatique des déplacements d'un organe te; qu'un outil. Dans le premier procédé, on commande directement un système d'asservissement de position de l'outil, à l'aide d'ordres enregistrés sur une bande magnétique. Ces ordres délivrés de façon continue comportent principalement les coordonnées successives de l'outil. Les déplacoments de l'organe dans l'espace se tiaduisent par une courbe qui peut se mettre sous forme d'une équation mathématique plus ou moins compliquée liant les coordonnées de ltoutil et le temps.Le système de coordonnées choisi peut être quelconque @ c'est par exemple, un système à trois axes rectangulaires ou encore un système de coordonnées polaires. s que l'équation mathématique du parcours à effectuer devient relativement complexe, on est obligé d'utiliser un ordinateur qui délivre à sa sortie des ordres, sous forme logique, commandant les différentes coordonnées successives de ltoutil e fonction du temps, ces ordres étant enregistrés sur une bande magnétique. Celle-ci est ensuite lue par un dispositif approprié travaillant en liaison avec Le sstème d'asservissement de position de l'outil lequel peut être un servo-mécanisme commandant la mise en marche d'un moteur ou d'un ensemble de moteurs permettant de positionner l'organe. Suivant ce procédé, les instructions contenues dans la bande magnétique sont données sous forme logique (impulsior de commande). Tous les calculs sont effectués à 11 extérieur de la commande de la machine, laquelle ne comporte qu'un système d'asservissement de position. Lorsque la forme mathématique de la courbe à reproduire est relativement compliquée, les instructions delivrées par l'ordinateur sont très nombreuses. C'est la raison pour laquelle les ordres issus de l'ordinateur sont consignés sur un support d'information pouvant contenir des instructions très nombreuses : un support autre qutune bande magnétique est donc difficilWler- envisageable. L'inté rêt principal de ce procédé réside dans l'utilisation systématique d'un ordinateur, la commande de déplacement de ltoutil étant simplifiée le plus possible. Cependant une commande manuelle directe est pratiquement impossible, on complique énormément le dispositif et l'on passe obligatoirement par l'intermédiaire de l'ordinateur.De plus, les ordres enregistrés sur la bande magnétique le sont obligatoirement sous une forme logique codée ; le contre du déroulement des opérations, an cours de programme, est donc difficillement faisable puisque les données n'apparaissent pas sous une forme intelligible directement pour l'opérateur. Les informations de déplacements sont souvent enregistrées sur deux pistes parallèles de la bande magnétique9 la vitesse de déplacement étant commandée par la vitesse de déroulement de la bande. Sous l'action d'éléments extérieurs, tels que l'humidité de l'air, il arrive que les informations des deux pistes se mélangent. Lorsque la courbe à reproduire ne peut pas se mettre sous la forme d'une équation mathématique simple, il est nécessaire de passer par l'intermédiaire d'un important centre de calculs. Le deuxième procédé de commande automatique des déplacements d'un organe a été élaboré dans le but de ne pas utiliser d'ordinateur. Pour cela, la courbe à faire décrire par l'organe est décomposée en portions de courbes très simples, la reconstituant avec une approximation donnée, courbes qui sont soib des segments de droite, soit des parties de cercle. CEtte segmertation du trajet que doit suivre l'outil est traduite sur un support d information à déroulement sequentiel, en général une bande perforée, sous la forme de valeurs numériques représentant les coordonnées successives et les vitesses de dépla- cament de l'organe.Un système, appelé interpolateur, lit et interprète de façon continue les instructions contenues sur la bande perforée, puis commande des moyens permettant le déplacement de l'organe. Ces moyens sont en général constitués d'un servo-mécanisme associé à des moteurs de positionnement de l'organe. L interpolateur est en fait un ordinateur simplifié dont la p@issance de calcul est variable suivant le degré de complexité des courbes que on veut reproduire. En généra cet interpolateur est capable de commander des déplacement soit linéaires, soit circulaires L'avantage de ce procédé est, b@@@ entendu, son autonomie à l'égard d'un ordinateur. Cependant, lorsque le trajet que doit suivre organe est assez compliqué, il est nécess@@re d'augmenter le nombre des instraction portées sur ia bande perforée. Dans ce cas, on utilise un interpolateur capable de traiter une masse importante d'information selon des processus plus compl@@@@. Le coût de cette commande numérique, comportant l'interpolateur et les moyens de déplacement de l'outil, augmente évidemment en même temps que la masse de calculs à effectuer ç la mise en oeuvre de ce procédé peut alors devenir très onére@se. A l'extrême limite, lorsque les instructions deviennent de plus en plus nombreuses, il est nécessaire de passer par l'intermédiaire d'un ordinateur qui traite le problème dans son ensemble puis le décompose pour le rendre intelligible au susdit interpolateur. L'emploi de te procédé, conçu dans ie but de ne pas utiliser d'ordinateur, devient absurde et il est alors plus simple d'opérer selon le premier procédé décrit avec tous les inconvénients inhérents à cette méthode. La présente invention fo@rnit un procédé et un dis positif cor r es@ s @dant m-ieu que ceux de l'art antérieur aux exigen@es de @a @rat@@@e, notamment en ce qu'ils ne présentent pas les in@@@@é@ients ci-dessus, ou ne les présentent que de façon très atténuée. L'inve@tion vise ne particulier à obtenir un procédé de commande de déplacement d'un organe à l'aide oe moyens @elativement simples, done à un bas prix de revient, les déplacements dudit organe pouvant épouser la forme d'une courbe très compliquee. De façon plus précise, l'invention proposa un procédé de commande automatique du mouvement d'un organe suivant une courbe donnée, ledit organe pouvant se déplacer suivant n axes à l'aide de moyens appropriés, caractérisé en ce qutil consiste: - à calculer notamment à l'aida d'un ordinateur, à partir des données définissant le mouvement dudit organe, et des tolérances qui sty attachent, une série de déplacements élémentaires rectilignes à faire subir à celui-ci de façon à ce que, compte tenu de l'effet de lissage du à l'inertie dudit organe, l'ensemble de ces déplacements élémentaires @éalisés successivement, reproduise ledit mouvement, - et à introduira séquentiellement dans un interpolateur linéaire les valeurs numériques codées des déplacements calculés, ledit interpolateur fournissant de façon continue les signaux électriques de commande desdits moyens L'invention propose également un dispositif de commande numérique caractérisé en ce qu'il comporte un support des valeurs numériques codées du mouvement dudit organe calculées préalablement, notamment à l'aide d'un ordinateur, un interpolateur linéaire relié au lecteur dudit support et des moyens de déplacement dudit organe commandés par des signaux issus dudit interpolateur. L'invention sera mieux comprise à la lecture de la desoription qui suit d'un mode d'exécution de l'invention donné à titre d'exemple non imitatif. La description se réfere aux dessins qui l'accompagnent, dans lesquels - la figer 1 est une représentation schématique d'un exemple de mise en oeuvre du Procédé - la fig. 2 représente un mode de réalisation avantageux de l'interpolateur. a courbe figurant les déplacements de l'organe est représentée sous la forme d'u@@équation mathématique reliant les difféi rtc coordonnées de position de l'organe et le temps. Cette équation est consignée en langage codé sur des cartes perforées représentées par 1 sur la fig. 1. L'ordinateur 2 calcule alors une série de oetits déplacements élémentaires rectilignes qui, effectués successivement par l'organe, font décrire audit'organe la courbe donnée.Cette segmentation des déplacements à effectuer est calculée en tenant compte de l'effet ce lissage introduit par organe : la longueur des déplacements élémentaires est d'autant plus petite que l'inertie de organe à commander est faible et que les tolérances admises sont faibles. Les valeurs des coordonnées successives des déplacements élémentaires sont consignées en sortie de l'ordinateur sur une bande 3 perforée, codées en valeurs numériques. flatte bande 3 peut être par exemple en papier. L'avan- tage de ma@ipuler les Informations sous forme de valeurs numériques e de pouvoir effectuer facilement un contrôle du déroulement des opérations en cours d'exécution.Les informations conteques sur la bande perforée 3 sont alors injectées à l'entrée d'un @terpolateur linéaire 4. Celui-ci lit les informations9 ras ra@te suivant un processus connu décrit par la suite, puis délivre à sa sortie des signaux électriques commandant cas moyens appropriés pour faire effec-tuer des déplacemements à l'organe. Lesdits moyens peuvent être avantageusement un servo-mécanisme 5 associe à deux moteurs 6 et 7. L'interpolateur @ est uniquement linéaire puisque la segmentation de la co@rbe représentant les déplacements à effectuer par l'organe a été réalisée uniduement suivant des segments de droite. Les informations figurant sur la bande perforée 3 sont alors relativement réd@@tes puisque les déplacements éléme@taires à effectuer ne or.t que linéaires. La constitution de l'interpolateur est de ce fait relativement simple. Les valers numériques ntiodui tes dans l'interpolateur 4 sont codées dans un s@stème choisi par l'opérateur, mais il est avantageux d'utiliser un système décimal codé binaire. Sur la fig. 2, qui représente le schéma de l'inter pol ateur a, les informations contenues sur la bande perforée 3 sont l@es séquent@ellement par un lecteur 8. Le rythme de lecture est imposé par une horloge 9. Cet interpolateur a été conç@ dans le but de commander des déplacements de l'organe suivant trois a@es rectanguiaires X, Y et Z. A la sortie du lecteur 69 les informations sort envoyées à l'entrée d'un circuit de transcodage 10, lequel transforme les valeurs numériques codées de la bande perforée 3 en valeurs numériques du système décimal codé binaire.Ces dernières valeurs numériques sont alors envoyées à l'entrés d'un registre à décalage 11, lequel est transféré au capulet à travers un circuit logique d'orie@tation il hii vers les différent: mémoires qui seront déCritE; dans la suite, afin de rendre libre le registre à décalage 11 pour la lecture d'un bloc d'information à avance Cette 'mém@ire tampon" tend à supprimer toute discontinuité de mouvement d'une séquence à la suivante malgré la différence de Iytmme entre l'horloge 9 et l'horloge d'inter polati'. dont il sera question dans la suite.Le circuit d'orientation 11 bis discrimine et orients les informations selon leur format@t comporte trois sorties. La sortie 12 délivre @@ sique @ o@ - suivant le sens de déplacement de l'organe sur l'axe de coordonnées déterminé. La sortie 13 est reliée d'une part à un circ@@t 149 le quel assure la prisa en charge et l'exécution des informations autres que celle de déplacement, telles que le @@méro d'un outil, et d'autre part à un circuit @@ de déc-daqe de la vitesse d'exécution des mouvements. La sortie de ce circuit 15 est reliée à l'horloge d'interpolation 16, réglant les circuits de commande 16 bis. La sortie l'est reliée à l'entrée d'un circuit additionneur 18 lequel a sa sortie reliée à l'entrée d'un registre de calcul 19. Un circuit 20 permet l'introduction manuelle de données dans l'additionneur 18, en part@@ui@er pour le prépositionnement d@ dispositif. L'additionneur 18 comporte deux entrées l'une est reliée à ia sortie 1@ d:i circuit d'orientation et aux sorties des mémoires de sommes partielles 21, 22 et 23 affectées respectivement aux coordonnées X, Y et Z ; l'autre entrée est reliée aux sorties des mémoires de composantes 25, 26 et 27 affectées respectivement aux coordonnées X, Y et Z. La sortie du registre de ca@cul 19 est reliée, par un circuit d'or@e@tation 249 aux entrées des mémoires de composantes 25, 26 et 2@@ainsi qu'à l'une des deux entrées d'un comparateur 26 et à second circuit d'orientation 29. L'autre entrée de me comparateur 28 est @@liée à la sortie d'une mémoire 30 appelée mémoires diviseur, laquelle a son entrée connectée à la sortie d@ registre de calcul 19.La circuit d'orientation 29 a deux sorties @ l'une est reliée eux mémoires de sommas partie@@es 21, 22 et 23 et l'autre à un système d'asservissement 31. @a sortie 12 du circuit d'orientation 11 bis est connectée à une deuxième entrée du système d'asservissement 31. La sortie du comparateur 28 est réunie à un compteur 32 et as circuit d'orientation 29. tes circuits de commande 16 bis sont relIés aux différentes unités de ltinter- polateur à l'aide de connexions non représentées sur la fig. 2. Le principe de fo@@tionnement dudit interpolateur est basé sur un algorit@me, en soi connu, effectué successivement pour chaque déplacement @i@éaire élémentaire de composantes X, Y et Z suivant les trois axes. L'algorithme est le suivant : 1 Mise e@ mémoire dans @@ mémoire diviseur 30 d'un nombre diviseur tel @ue : Z 2 Exéc@tion dans l'additionneur 18 de l'opération : @ @ @ @ @ @@@s comparais@@ de X' et N dans le comparateur 28. Deux cas @e@@d e@@ alors se présenter @@ x@ # @@ @ @e@registrement d'un pas de calcul dans le compteur 32 et orientation d'un pas de mouvement selon l'axe x vers le @ s@ème d'asservissement 31 par l'intermédiaire du circuit d'orientation 29, @ mise e@ mémoire dans la mémoire de sommes partielles 21 a@fectée aux coordonnées X d'un nombre DX = X - N, - enregistrement d'un oas de calcul dans le compteur 32, mise en mémoire de X@ dans la mémoire 21 @@ @@ @@@ @@@@@ dans le circuit additionneur 18 de : @ @ puis compara@@@@@@ de @@@ et N dans le comparateur 28. @@ @@ @@ # même process@s que pour X avec sortie de p@ @@@ @@ @@ la @@@c@re de sommes partielles 22 corres- @@@da@t coordonnées avec @@ @as de mouvement selon l'axe Y. - si Y' 4 Exécution de Z' = Z + Z dans le circuit additionneur 18, puis comparaison de Z' et N. Même processus que pour la coordonnée X avec sortie sur la mémoire de sommes partielles 23 correspondant aux coordonnées Z 5 Exécution dans le circuit additionneur 18 de X" = DX + X - si X" # N# même processus qu'en 2 - si. X" N ...e@@... Na Lorsque le nombre de pas de calcul inscrit dans le compteur 31 devient égal à N, il y a arrêt du processus et passage à la séquence suivante. Il est à remarquer que le processus de calcul décrit reste valable lorsque le déplacement est nul selon 1 ou 2 des axes de coordonnées. be fonctionnement de ce type d'interpolateur est donc très général La commande nomérique, qui comprend l'interpolateur 4 et le système d'asservissement 5 associés aux moyens de déplacement de organe 6 et 7, utilise un ordinateur externe. Sa concepticri est donc tres simple et ses performances ne sont limitées que par celles de l'ordinateur utilisé. L'interpolateur 4 est également dur modèle simplifié puisqu'il n'exécute que des interpolations linéeires. Avec une commande numérique conforme à à 1 l'invention, on peut segmenter au maximum la courbe à faire décrire par organe et la longueur des déplacements élémentaires n' est que de 1/100 de m. Malgré la simplicité de sa conception, cette commande numérique est donc très performante. Sa sécurité d'emploi est également très grande puisqu'un contrôle de l'exécution du programme peut être effectué à craque instant grâce à l'emploi de valeurs numériques pour les instructions.Le lecteur 8 effectuant la lecture de la bande perforée est robuste et son usure est pratiquement négligeable, ce qui augmente la fiabilité de la commande numérique Par ailleurs, ce tipe de commande numérique est particulièrement adapté à coopéren avec un dispositif d'enregistrement de profils, décrit dans la demande de brevet déposé ce jour, et qui remplace l'ordinateur en délivrant sous la meme forme bande perforée @ la décomposition en segments li@éaires de profils matériels existants ou dessinés à grande échel@e. La complexité des courbes réalisables est ainsi considérablement ami me par rapport à celle des courbes, peu nombre@ses, réalisables par un ordinateur. Il va sans dire que la présente invention ne se limite pas a seu A mode de réalisation qui a été représenté et décrit à titre d'exemple et que la portée du présent brevet s2éte@d égaiement aux variantes de tout ou partie des dispos@@@@s décrites, testant dans le cadre des équivalences, ainsi qu'à toutes applications de telles dispositions. En particul@e@, la description a été faite en se référant à un dispositif utilisant @n interpolateur à trois axes de coordonnées x, y et Z, mais le schéma très simple de ltinter- polateur peut être étendu très fa@ilement à plus de trois axes de coordonnées. Il a également été fait référence à des valeurs @umériques rodées dans le système décimal codé hinaire, mais il est évident qu'@@ autre code peut etre utilisé. Le procédé, objet de la présents invention, peut être avantageusement utilisé lorsqu'il s'agit de commander à distance une machire-outil, mais i @ peut être également mis en oeuvre chaque fois qu'il s'agit de commander les déplacements d'un organe que@conque. Enfin, les moyens de déplacement de l'organe @e sont pas ex@@@sivement à commande électrique ; ils peuven@ être à commande hydraulique ou pneumatique par exemple ou résulter d'@@e @ombinaison de ces divers moyens. REVENDICATIONS 1. Procédé de commande automatique du mouvement d'un organe suivant une courbe do@née, ledit organe pouvant se déplacer suivant @ axes à @@aide de moyens appropriés, caractérisé en ce qu'il consiste à à calculer à part@@ des àoniées définissant le mouvement dudit organe, une série de déplacements élémentaires rectilignes à faire subir à calui-ci de façon à ce que, compte tenu de l'effet de lissage d@ à l'inertie dudit organe, l'ensemble de ces déplatements élémentaires, réalisés successivement, reproduise lédit mouvement, - et à introduire dans un interpolateur linéaire les valeurs numêr@@ques codées des déplacements calculés, ledit interpolateur fo@rnissant les signaux de commande desdits moyens. 2. Procédé suivant la revendication 1, caractérisé en ce que ledit @ cal@@l des déplacements élémentaires rectilignes est effectué à l'a@de d'un ordinateur. 3. Pro@édé s@@@a@t la revendication 1, caractérisé en ce que lesdits moyens de dépla@ement sont co@@andes électriquement. 4. Dispositif de commande numérique d'un organe comportant application d@ procédé défini à la revendication 1, caractérisé en de qu'il comporte un support des valeurs numériques codées do mouvement t dudit ci pane calculées préalablement, un interpolateur l@@éaire dans tequel on introduit ledit support, et des moyens de déplacement dudit organe suivant lesdits axes commandés par de- signaux électriques issus dudit inteipolatet;î 5. Dispositif survant la revendication 4, caracté risé en ce qe @ ledit support est ----e barde perforée. 6. dispositif survant la revendication 4, caractérisé en ce que redit @@te. @@late@@ linéaire comprend un lecteur desdites vale@ts @mé@iques @@dées dudit support, une horloge imposant le @@@@me de lecture audit lecteur, des mémoires de sommes partielles et des mémoires de composantes de déplacements élémentaires rectilig@es, @@ additionneur à deux entrées, l'une étant relié à la sors le desdites mémoires de sommes partielles et à la sortie dudit registre à è dé@alage, i!autre à la sortie desdites mémoires de comp@santes, un registre de calcul contenant les résultats des additions effectuées da@s ledit additionneur, la sortie dudit resistre étant connectée d'une part à l'entrée des mémoires de composantes et d'autre part à l'entrée des mémoires de sommes @ @@@e@@es, une mémoire "diviseur" contenant la valeur d'un nombre di@@@seur caiculé par une opération préliminaire à l'aide dudit additionneur, un comparateur comparant les contenus dudit registre de calcul et de ladite mémoire "di@iseur", e@vogant en mémoire dans lesdites mémoires de sommes partiei@es a différence antre les contenus dudit registre de calc@@ et de ladite mémoire diviseur et commandant ledit système d'as@er@ @sseme@@ desdits moyens de déplacement dudit orga@e, @@ @@@@@@ d'orientation permettant d'introduire successivement les @@@@ées prepres à c@acune des composantes pour effectuer @es opérations de mise en mémoire, d'addition et de com@aralson, e@ de @ommander successivement les moyens de déplacement dudit @rga@e suivant chacun des axes, et un circuit de commande relié à toutes lesdites mémoires et synchronisant les opérations effectuées. 7. Dis@cei@@f suivant la revendication 6, caractérisé en ce que ledit @@@erpolateur comporte un registre à décalage relié à la s@@tie dudit @ecteur, discriminant et orienta@t lesdites valeurs @@mériques suivant leur format. 8. dispositif s@@a@@ la revendication 5, caractérisé en ce que ledit @e@pola@eur comporte un circuit de décodage de la itesse d'exéc@tion des mouvements dudit organe, l'e@trée dudit @@@erpolateur étant reliée audit registre à cé@alade e@ @a sort@e audit circuit de commande. 9. Diss@sitif @@@ @a@t la revendication 5 caractérisé en ce que ledit inter@@@ate@@ comporte, intercalé entre ledit lecteur et le@@@ @@@@s@@e à cé@alage, @@ circuit de transcodage transformant le@@@@e@ valeurs @ @ériques @@dées en valeurs du système dé@i@@@ codé @@@.