Utilisation

1. Exemple de base

Le programme suivant est un exemple pour connecter n'importe signal de déclencheur au connecteur R-E/S du contrôleur, déverrouiller les informations de position du robot lorsqu'il est actionné à l'entrée du déclencheur et afficher les informations de position déverrouillées.

Function Main
  Motor On
  Power High

  Speed 50; Accel 50, 50
  SpeedS 500; AccelS 5000

  Go P0                             'Position de départ
  SetLatch SETLATCH_PORT_CU_0, 
SETLATCH_TRIGGERMODE_LEADINGEDGE, 4
  LatchEnable On                    'Déverrouillage activé
  Move P1                           'Démarre le fonctionnement, entre le déclencheur pendant le
fonctionnement

  Wait LatchState = True            'Confirmation de l'exécution du déverrouillage
  P3 = LatchPos(WithoutToolArm, 1)  'Récupère la position de déverrouillage 1
  P4 = LatchPos(WithoutToolArm, 2)  'Récupère la position de déverrouillage 2
  P5 = LatchPos(WithoutToolArm, 3)  'Récupère la position de déverrouillage 3
  P6 = LatchPos(WithoutToolArm, 4)  'Récupère la position de déverrouillage 4
  LatchEnable Off                   'Désactiver le déverrouillage

  Print P3                          'Affiche la position de déverrouillage 1
  Print P4                          'Affiche la position de déverrouillage 2
  Print P5                          'Affiche la position de déverrouillage 3
  Print P6                          'Affiche la position de déverrouillage 4
Fend

Exemple d'omission des paramètres :

Function Main
  Motor On
  Power High

  Speed 50; Accel 50, 50
  SpeedS 500; AccelS 5000

  Go P0                             'Position de départ
  SetLatch SETLATCH_PORT_CU_0, 
SETLATCH_TRIGGERMODE_LEADINGEDGE
  LatchEnable On                    'Déverrouillage activé
  Move P1                           'Démarre le fonctionnement, entre le déclencheur pendant le
fonctionnement

  Wait LatchState = True            'Confirmation de l'exécution du déverrouillage
  P3 = LatchPos                     'Acquérir la position de déverrouillage
  LatchEnable Off                   'Désactiver le déverrouillage

  Print P3                          'Afficher la position de déverrouillage
Fend

2. Exemple avec le système Vision

Dans cet exemple, l'effecteur du robot est utilisé pour manipuler les pièces; il passe au-dessus du point d'acquisition de la caméra amont fixée externe sans s'arrêter et assemble les pièces avec une correction de position appropriée.

Ce système dispose d'un capteur de type à transmission qui génère le signal de déclencheur lorsque l'effecteur du robot manipule une pièce et passe le point d'acquisition de la caméra. Ensuite, il connecte la sortie du capteur avec R-E/S et l'entrée du déclencheur de caméra pour la syntonisation externe et synchronise les informations de position de robot déverrouillées et l'image de la caméra. Il calcule l'erreur de position de pièce et décale la position en comparant les informations de position du robot de l'image de la caméra et les informations de position du robot de l'E/S en temps réel.

Dans ce cas, le système Vision du robot doit être calibré comme la caméra amont fixe. De plus, en enregistrant la position de placement des pièces à l'avance, les informations de position du robot peuvent être acquises pour un placement précis des pièces par le résultat RobotPlacePos. La position de placement des pièces peut être définie dans l'assistant de propriété CalRobotPlacePos.

Pour plus de détails sur la connexion du signal déclencheur de la caméra et la calibration de vision, se reporter au aux manuels suivants :

"Vision Guide 8.0"

Le programme suivant est un exemple.

Function Main
  Robot 1
  Motor On
  Power High

  Speed 100
  Accel 100, 100

  Jump InitPos                                   'Se déplace vers le point initial
  Wait 1.0

  SetLatch 24, SETLATCH_TRIGGERMODE_LEADINGEDGE  'Définit la condition de déverrouillage

  MemOff 0
  Xqt PictureOnFly_Camera                        'Démarre la tâche de prise de vue

  Jump StartPos C0                               'Se déplace vers le point de chargement de pièce
  Wait 0.5

  LatchEnable On                                 'Démarre l'attente du déverrouillage

  MemOn 0                                        'Active la prise de vue

  Jump FrontPos C0 CP                            'Se déplace près de la caméra
  Go PassingPos CP                               'Passe par-dessus la caméra

  Go TargetPos :Z(-70) CP                        'Se déplace au-dessus du point d'assemblage

  Wait MemSw(1) = On                             'Attend jusqu'à ce que le traitement de l'image soit terminé
  Wait LatchState = True                         'Attend l'exécution du déverrouillage de position
  LatchEnable Off                                'Désactive le déverrouillage de position
  Jump ExactTargetPos C0 LimZ (-70)              'Se déplace vers le point d'assemblage
  Wait 0.5

  Jump InitPos                                   'Se déplace vers le point initial
  Wait 0.5

  Motor Off

Fend

Fonction permettant l'exécution de la capture d'image de travail sur l'acquisition du lieu de travail

Function PictureOnFly_Camera

  'Variable de résultat vision
  Integer AcqStat         'Indicateur de réalisation d'image par stroboscope
  Boolean Found           'État de détection de travail

  Wait MemSw(0) = On      'Attend l'indicateur de démarrage d'image
  MemOff 1                'Efface l'indicateur de réalisation d'image
  MemOff 0                'Efface l'indicateur de démarrage d'image
  AcqStat = 0             'Efface l'indicateur de démarrage d'image

  VRun PictureOnFly_i


  Do Until AcqStat = 3    'Attend le stroboscope
    VGet PictureOnFly_i.AcquireState, AcqStat
  Loop

  'Vérifie la détection de travail
  VGet PictureOnFly_i.Geom01.Found, Found

  If Found = False Then
    Print “Work NotFound”
    Pause
  EndIf

  Wait LatchState = True  'Attend le déclencheur

  'Règle la position de capture d'image (position du déclencheur) sur Vision
  VSet PictureOnFly_i.RobotPos, LatchPos (WithoutToolArm)

  'Acquiert la position du robot
  VGet PictureOnFly_i.Geom01.RobotPlacePos, Found, ExactTargetPos

  MemOn   1               'Change l'indicateur d'image de la caméra
Fend

POINTS CLÉS


Il est possible d'obtenir le même résultat que dans l'exemple ci-dessus en définissant une zone de vérification d'approche (Box) ou un plan de vérification d'approche (Plane) au lieu d'un capteur de type transmission.

L'exemple ci-dessous indique comment définir les paramètres Box (zone de vérification d'approche) pour un robot.

Les paramètres Box sont définis dans le Gestionnaire de robot de manière à correspondre à la position de capture d'image au-dessus de la caméra. Pour plus d'informations sur les paramètres Box, reportez-vous ci-dessous.

Page [Outils]-[Gestionnaire de robot]-[Zones]

Sur l'écran des paramètres Sorties à distance, attribuez un bit de sortie disponible à l'InsideBox qui correspond au numéro de Box défini dans le Gestionnaire de robot. (Si le numéro Box1 est défini, attribuez le bit de sortie à InsideBox1.) Connectez ce signal de sortie à l'E/S R et à l'entrée du déclencheur de la caméra pour la synchronisation externe.
Pour plus d'informations sur les paramètres Sorties à distance, reportez-vous ci-dessous.

Page [Configuration]-[Configuration du système]-[Contrôleur]-[Contrôle à distance]-[Sorties]

Les paramètres Sorties à distance fournissent automatiquement l'état des fonctions assignées, indépendamment des paramètres du périphérique de contrôle. Il n'est donc pas nécessaire de régler le périphérique de contrôle sur "Remote I/O" dans les paramètres ci-dessous.

Page [Configuration]-[Configuration du Système]-[Contrôleur]-[Configuration]

Pour plus d'informations sur les paramètres E/S à distance, reportez-vous ci-dessous.

"Manuel du contrôleur de robot -- Informations relatives aux fonctions -- Paramètres E/S à distance"