Mise en mémoire tampon et fusion des mouvements
Les commandes de mouvement peuvent être mises en mémoire tampon avec CODESYS SoftMotion. Pour chaque mouvement commandé, il est possible de spécifier comment le mouvement est mis en mémoire tampon et comment le mélange doit être effectué entre le mouvement précédent et le nouveau mouvement. La trajectoire commandée est ajustée en arrondissant les coins afin que la trajectoire puisse être parcourue sans arrêt
La mise en mémoire tampon d'un mouvement et la manière dont il est effectué peuvent être configurées à l'aide du BufferMode entrée du bloc de mouvement (par exemple, MC_MoveDirectAbsolute ou MC_MoveCircularRelative). Pour plus d'informations, consultez les rubriques suivantes : MC_Buffer_Mode.
Le TransitionMode et TransitionParameter les entrées déterminent la façon dont les coins sont arrondis. Pour plus d'informations, consultez les rubriques suivantes : MC_TRANSITION_MODE.
Pour plus d'informations sur les mouvements, consultez les rubriques suivantes : Blocs fonctionnels pour les mouvements
Avis
Dans les modes de fusion, TransitionMode ne doit pas être égal à TMNone.
Astuce
Le mélange entre deux mouvements commence au plus tôt à la moitié du premier mouvement et se termine au plus tard à la moitié du deuxième mouvement.
Si le premier mouvement a déjà été planifié trop loin, le mélange peut ne plus être possible avec les paramètres définis. La zone de fusion est alors réduite ou la fusion n'est plus possible. Afin de garantir un mélange réussi, les deux mouvements doivent être commandés dans le même cycle.
Dynamique des trajectoires lors du mélange
Si le mélange est effectué entre des mouvements CP (entre des segments linéaires et circulaires), il convient de noter que l'accélération maximale de la trajectoire et la secousse de trajectoire maximale peuvent être dépassées pendant le mélange. Plus la plage de fusion est courte, plus cet effet sera important. Cependant, les limites des axes (accélération maximale de l'axe et secousse maximale de l'axe) sont toujours maintenues
Par conséquent, si l'accélération maximale de la trajectoire est faible et que l'accélération maximale de l'axe est élevée, des accélérations trop élevées peuvent se produire lors du mélange. Cela peut être contrecarré au moyen du AccFactor la saisie des blocs de mouvement, par example, en réduisant l'accélération maximale de l'axe pour un mouvement.
Caractéristiques de TMStartVelocity
Le calcul des points de mélange est basé sur une courbe de vitesse idéalisée, qui peut s'écarter de la courbe de vitesse réelle. À ce stade, une rampe de décélération est simulée sur la trajectoire initiale vers le point de mélange et une rampe d'accélération s'éloignant du point de mélange. Le minimum de la vitesse de trajectoire programmée et de la vitesse de trajectoire maximale estimée résultant des limites de l'axe est utilisé comme vitesse cible.
De plus, lors de la fusion entre des lignes droites, l'angle entre elles est pris en compte. Un rayon de courbure minimal pour l'élément de mélange résulte de la vitesse de trajectoire souhaitée et des limites dynamiques estimées. Les points A' et B' résultent à leur tour de ce rayon et de l'angle entre les droites

Si les mouvements sont ralentis pendant le processus de mélange malgré un facteur défini de 1, il peut être utile d'augmenter le facteur.
Exemple
Dans un petit exemple d'application, une pièce est censée être prélevée. Le robot doit d'abord se déplacer au-dessus de la pièce, puis vers le bas pour la ramasser. Pour atteindre la pièce le plus rapidement possible, le déplacement entre les deux mouvements ne doit pas être arrêté, mais mélangé. La fusion avec le second mouvement devrait commencer dix unités avant la fin du premier mouvement.
Pour répondre aux exigences, deux mouvements doivent être commandés. Le premier mouvement (moveAbove) sur la pièce et le second mouvement (moveDown) vers le bas en direction de la pièce. Pour le second mouvement, il faut définir comment le mouvement doit être tamponné et mélangé
Comme le montre l'image suivante, BlendingHigh est sélectionné pour BufferMode. Cela définit que le mouvement doit être mis en mémoire tampon après le premier mouvement, puis mélangé. En outre, pour TransitionMode, TMCornerDistance est défini avec une distance de 10 unités pour intégrer en douceur le premier mouvement au second. Afin de régler les deux entrées TransitionMode et TransitionParameter de manière appropriée, le SMC_CornerDistance un bloc fonctionnel est utilisé.
