Documentation MCS32
STTA(X=2000)
WAIT POS_S(X) >200
OUT (A1)=1
WAIT POS_S(X) >700
OUT (A1)=0
WAIT
NOT
MOVE_S(X)
Dans cet exemple, pendant le mouvement, on peut changer des sorties car l'exécution n'est pas
interrompue.
Si l'instruction MERGE est activée et que l'on charge plusieurs STTA dans la carte d'axe, les
mouvements seront exécutés les uns après les autres sans passer par une vitesse nulle.
Si l'axe est modulo, un lancement à une position sera effectué dans le sens positif si la valeur
demandée est positive, sens négatif dans le sens contraire. Par exemple :
Axe modulo 360°
Axe en position initiale à 90°
STTA(X=-10) 'déplacement dans le sens – d'une distance de 80°
WAIT
NOT
MOVE_S(X)
STTA(X=350) 'déplacement dans le sens + d'une distance de 340°
WAIT
NOT
MOVE_S(X)
STTA(X=350) 'déplacement dans le sens + d'une distance de 340°
WAIT
NOT
MOVE_S(X)
STTA(X=20) 'déplacement dans le sens + d'une distance de 30°
WAIT
NOT
MOVE_S(X)
B) Mouvement : MOVA
La fonction MOVA envoie un ou plusieurs axes à une position absolue. Elle utilise les valeurs
courantes d'accélération, de décélération et de vitesse. La syntaxe est :
MOVA (<Axe1>=<Position1> [{, <Axe2>=<Position2>}] )
Cette fonction envoie <Axe1> à la position absolue dont la valeur est <Position1>. Le
programme attend la fin du mouvement avant de continuer. L'erreur de positionnement absolue
est minimale.
Par exemple :
MOVA(X=100)
CALL Percage
MOVA(X=0)
L'instruction MOVA est bloquante pour la tâche tant que le mouvement n'est pas terminé (
condition MOVE_S(Axe)=0 ).
MOVA(X=100) est équivalent à
Pour obtenir une précision relative accrue on peut demander un mouvement absolu utilisant la
position courante : MOVA(X=POS_S(X)+100) ' Déplacement relatif avec précision relative
Si l'axe est modulo, le mouvement sera effectué dans le sens positif si la valeur demandée est
positive, sens négatif dans le sens contraire. Par exemple :
Axe modulo 360°
Axe en position initiale à 90°
MOVA(X=-10) 'déplacement dans le sens – d'une distance de 80°
MOVA(X=350) 'déplacement dans le sens+ d'une distance de 340°
MOVA(X=350) 'déplacement dans le sens+ d'une distance de 340°
MOVA(X=20) 'déplacement dans le sens+ d'une distance de 30°
C) Mouvement déclenché sur position : MOVAP
Cette instruction est équivalente à MOVA mais en plus, elle intègre une condition de
déclenchement donnée par la position d'un autre axe.
R342
EX
' Start absolu en position 2000
' Attente position 200
' Activation d'une sortie
' Attente position 700
' Désactivation de la sortie
' Attente fin de mouvement
STTA (X=100)
WAIT NOT MOVE_S(X)
- 98 -
SERAD S.A.