Mouvement moteur en fonction d'une courbe

Forum traitant des automates industriels de marque Siemens.
Répondre
Bouzinga
Apprend le binaire
Apprend le binaire
Messages : 5
Enregistré le : 15 oct. 2019, 15:05

Mouvement moteur en fonction d'une courbe

Message par Bouzinga » 14 févr. 2020, 10:12

Bonjour à tous,

Je dois actuellement reproduire une courbe (pour l'instant sinusoïdale mais elle peut-être amenée à changer) de positions d'un axe linéaires en fonction de l'évolution d'un cycle. En gros à tel moment dans le cycle l'axe doit-être à telle position. La vitesse est donc amenée à être modifiée tout au long du cycle. Actuellement pour faire ça j'utilise un mc_movejog, en contrôlant la position de l'axe (via le codeur intégré au moteur), je viens modifier la vitesse pour l'adapter jusqu'au point de contrôle suivant.

Cependant je me suis rendu compte que lorsque j'atteins les extrémités de la course, l'axe dépasse légèrement les valeurs limites. Cela reste acceptable pour un temps pas trop court. Lorsque je ralentis le temps de cycle, la vitesse est forcément augmentée et ce dépassement s'accentue, jusqu'à un point ou l'axe est perdu et s'arrête (empêchant la répétabilité des cycles).

Je suppose que cela est du au au fait que je n'ai pas de consigne de position. J'ai donc essayer de remplacer le movejog par un moveabsolute devant aller d'une extrémité à l'autre, que je pulse à chaque fois que la vitesse doit-être modifiée. Mais cela ne marche pas bien sûr :lol: ! Pourriez-vous m'aider svp parce que la je sèche...

Je fais mon programme sous TIA v15.1 et j'ai un automate s7-1500T. La communication se fait un profinet. Pour info, afin de respecter au plus fidèlement la courbe, je la divise en 360 points et je calcul la vitesse nécessaire pour aller d'un point à l'autre en fonction de la cadence demandée. Je stock donc toutes les valeurs dans un tableau.

Merci ;)

papaya
Première mise en service
Première mise en service
Messages : 53
Enregistré le : 03 nov. 2015, 11:10

Re: Mouvement moteur en fonction d'une courbe

Message par papaya » 14 févr. 2020, 14:47

Bonjour,
Tu veux que ton axe se déplace en suivant une courbe..
Donc d'un côté de ta courbe il y a des millimètre ou des degrés..?
Et de l'autre côté que doit suivre ton axe ?...
Donne nous un max d'info pour que l'on puisse t'aider.

À mon avis le jog est vraiment pas la bonne solution.

exemple d'axe qui suivent une courbe..
viewtopic.php?f=4&t=3355

Ce n'est pas exactement ce que tu demandes mais ça donne une idée..

De plus tu as une 1500 T,
Tu as donc accès aux options technologiques.
À mon avis il faut chercher de ce côté la.

Bouzinga
Apprend le binaire
Apprend le binaire
Messages : 5
Enregistré le : 15 oct. 2019, 15:05

Re: Mouvement moteur en fonction d'une courbe

Message par Bouzinga » 14 févr. 2020, 15:16

Salut papaya,

Désolé je pensais avoir été clair :roll: ... Alors, en gros j'ai une courbe avec en x le cycle découpé en 360 points (on peut y mettre des degrès si l'on compare ça au cercle trigonométrique) et en y les positions auxquelles doivent se trouver l'axe à ce moment du cycle (en mm donc). En fait le but ici est de reproduire le mouvement de matériel pouvant être présent chez nos clients (d'ou le fait que la courbe sera modifiée).

Au départ je voulais partir sur un profil de came (d'ou le fait que je parle de courbe), mais en réalité aujourd'hui je ne me sers que du fichier .txt et des positions, à partir desquelles je réalise mes calculs (comme la vitesse entre 2 points par exemple). Mon axe doit donc "suivre" la progression de cette courbe. Par exemple, si mon cycle doit durer 4s, l'axe doit être à la position 180 en 2s.

J’espère que je suis plus clair...

Je ne pense pas non plus que le jog est la bonne solution, au départ je cherchais du côté des objets technologiques, j'ai passé beaucoup de temps dessus sans trouver. Je suis encore étudiant et le seul automaticien dans ma boite, donc je ne suis pas vraiment formé la dessus, c'est pour ça que je viens poser la question ici :? ...

Répondre