Avertissement

Vous lisez une ancienne version de cette documentation. Si vous souhaitez obtenir des informations actualisées, veuillez consulter 5.0 .

Principes des commandes

Toutes les commandes du module EtherCAT suivent le même principe. Elles peuvent être identifiées par leur nom qui se termine par Trigger. Pour envoyer une commande, veuillez utiliser la démarche suivante :

  1. Définissez les paramètres nécessaires avant de régler le Trigger sur True.

  2. Définissez le Trigger de la commande comme étant True.

  3. Attendez que l’indicateur <commande> Done devienne True.

  4. Réinitialisez le Trigger de la commande sur False.

  5. Attendez que l’indicateur <commande> Done soit remis à False.

  6. Vérifiez les éventuelles erreurs dans le registre Is Error. S’il y en a une, traitez-la en fonction de vos besoins.

  7. S’il n’y a pas d’erreur, vous pouvez utiliser la ou les sorties correspondantes.

Ceci est illustré dans la figure suivante :

../../_images/ecs_start_production.svg

Remarque

Il ne peut y avoir deux déclencheurs de commande réglés sur True en même temps. Dans ce cas, EYE+ renvoie une erreur. Voir Codes d’erreur supplémentaires.

Fonctionnalités de base

Entrées de base

  • Stop States [UDINT]

    Arrête tous les états tels que définis dans stop <état>. Les états sont codés sous la forme d’un bitset, où chaque état a la valeur suivante :

    • Production 0b0000_0001

    • Édition de la recette 0b0000_0010

    • Configuration de la caméra 0b0000_0100

    • Étalonnage main-œil 0b0000_1000

    • Qualification de recette 0b0001_0000

    • Purge 0b0010_0000

    En outre, les états suivants sont également disponibles dans le registre System State :

    • Erreur 0b0100_0000

    • Prêt 0b1000_0000

    • Mise à jour du système 0b0001_0000_0000

    • Migration du système 0b0010_0000_0000

    EYE+ reconnaît cette commande lorsque la valeur Stop States change (par exemple, lorsque la valeur passe de 0 à 1). L’entrée PDO Stop State Done passe à True lorsque le système a fini de traiter la commande, comme le montre la figure suivante. Les erreurs sont gérées à l’aide du registre spécial Is Error et Error ID, voir Gestion des erreurs.

    ../../_images/ecs_stop_states.svg

    Le Done BOOL est effacé lorsque la valeur revient à 0.

Remarque

Arrêter tous les états pour retourner à l’état Prêt peut être réalisé en mettant cette valeur à 0xFF.

  • Clear Error Trigger

    EYE+ peut renvoyer tout code d’erreur défini dans les Codes d’erreur. Le déclencheur Clear Error Trigger permet d’effacer toute erreur qui apparaîtrait dans le registre Error ID. En plus des codes d’erreurs standards, des erreurs spécifiques à EtherCAT peuvent être affichées. Celles-ci sont expliquées au chapitre Codes d’erreur supplémentaires.

    La suppression d’une erreur active est simple, comme indiqué ci-dessous :

    ../../_images/ecs_clear_error.svg

Sorties de base

  • System State

    Donne l’état actuel du système EYE+, voir Stop State(s) pour une liste complète des états.

  • Clear Error Done

    True lorsqu’EYE+ a fini de traiter la commande Clear Error Trigger. Réinitialisé à False lorsque le déclencheur Clear Error Trigger est remis à 0.

  • Is Error

    True lorsque la sortie Error ID contient une erreur, False dans le cas contraire. Effacer l’erreur a pour effet de réinitialiser ce registre à False.

  • Error ID

    Contient l’Error ID en cours, voir Clear Error Trigger. La suppression de l’erreur a pour effet de réinitialiser ce registre à la valeur 0.

  • Stop State Done

    True lorsqu’EYE+ a fini de traiter la commande Stop State(s). Réinitialisé à la valeur False lorsque le déclencheur Stop State(s) est mis à 0.

Fonctionnalités de production

Entrées de production

  • Start Production Trigger

    Lance une recette en production. L’identifiant unique de la recette doit être défini dans le registre Recipe ID. Une fois que la production a démarré, cela se reflètera dans le registre Start Production Done ainsi que dans l’état du système System State. Les erreurs sont gérées à l’aide du registre spécial Is Error et Error ID, voir Gestion des erreurs.

    Voici un exemple où la recette 42 est lancée en production :

    ../../_images/ecs_start_production.svg
  • Get Part Trigger

    Demande une ou plusieurs pièces. Le nombre de pièces renvoyées peut être changé en modifiant la valeur de l’un des paramètres Part Quantity, Multi Part Quantity A ou Multi Part Quantity B. Par défaut, le paramètre Part Quantity est défini comme étant 1. Veuillez vous référer à la section get_part pour une description complète de la commande.

    La figure ci-dessous montre un exemple de demande d’une seule pièce (paramètre par défaut).

    ../../_images/ecs_get_part.svg

    Remarque

    Un scénario simple est décrit dans Get part.

  • Prepare Part Trigger

    Prépare une ou plusieurs pièces à partir d’EYE+. Les pièces préparées peuvent être prélevées ultérieurement en utilisant le registre Get Part Trigger. Cette commande a le même comportement que Get Part Trigger sauf qu’elle n’envoie pas les coordonnées des pièces et qu’elle ne prend pas en compte le paramètre timeout, voir Command Timeout. Le nombre de pièces à préparer peut être modifié en changeant l’un des paramètres Part Quantity, Multi Part Quantity A ou Multi Part Quantity B. Par défaut, le paramètre Part Quantity est égal à 1. Veuillez consulter la section prepare_part pour une description complète de la commande.

    Lorsque la ou les pièces demandées sont prêtes, l’indicateur Is Prepared est défini comme égal à 1.

    La figure ci-dessous montre un exemple de préparation d’une pièce.

    ../../_images/ecs_prepare_part.svg

    Remarque

    Un scénario simple est décrit à la section Prepare part.

  • Force Take Image Trigger

    Le registre Force Take Image Trigger oblige EYE+ à acquérir une image dès que possible.

    Utilisé surtout en conjonction avec Prepare Part Trigger et Get Part Trigger.

    Chaque fois que Force Take Image Trigger passe de 0 à 1, EYE+ va acquérir un nouvel ensemble d’images et effectuer l’analyse. Veuillez vous référer à la section force_take_image pour une description complète de la commande.

    La figure ci-dessous montre un exemple de mise en place de cet indicateur.

    ../../_images/ecs_force_take_image.svg

    Remarque

    Un scénario simple est décrit sous Force take image.

  • Clear Poses

    Le registre Clear Poses permet d’effacer les sorties de positions (Pose <n>), résultant en une liste vide de positions. Ceci est utile entre deux Get Part Triggers consécutifs.

    ../../_images/ecs_clear_part.svg

Paramètres de production

Certains paramètres peuvent être modifiés en cours de production en fonction de vos besoins. La liste suivante indique les paramètres disponibles.

  • Save Parameters Trigger

    Les paramètres énumérés dans Paramètres de production doivent être enregistrés explicitement à l’aide de cette commande spécifique. EYE+ signale l’exécution de la commande à l’aide du registre Save Parameters Done. La commande enregistre tous les paramètres énumérés sous Paramètres de production, il est donc important de tous les initialiser à une valeur judicieuse ! Les erreurs sont gérées en utilisant le registre spécial Is Error et Error ID, voir Gestion des erreurs.

    Dans l’exemple ci-dessous, un seul paramètre est sauvegardé. Comme mentionné précédemment, tous les paramètres sont sauvegardés, il est donc important d’initialiser les paramètres avec des valeurs judicieuses !

    ../../_images/ecs_save_param.svg
  • Can Take Image

    L’acquisition d’images est activée par défaut. Si nécessaire, ce paramètre peut être défini comme False pour désactiver l’acquisition d’images. Voir Can take image pour plus d’informations sur les cas dans lesquels cette commande est utile.

  • Image After Send

    Force l’acquisition d’une image après la prise d’une pièce. Chaque fois que vous appelez les commandes Get Part Trigger ou Prepare Part Trigger, le système acquerra automatiquement d’abord une image. Ceci sert à corriger les coordonnées des bons candidats déjà trouvés (stockés dans la mémoire) si vous pensez que les pièces auraient pu bouger entre-temps en raison d’une perturbation extérieure.

    Voir Image after send pour plus d’informations.

  • Command Timeout

    Il s’agit du délai d’attente (en secondes) appliqué lors de l’appel de la commande Get Part Trigger. Si aucune pièce n’a été trouvée dans ce délai, une erreur est renvoyée.

  • Part Quantity

    Ce paramètre est utilisé pour demander à EYE+ de rechercher plusieurs pièces en même temps. Chaque fois qu’EYE+ acquerra une image, le système cherchera au moins <n> pièces sur l’image. Si ce nombre de pièces n’est pas trouvé, aucune coordonnée ne sera envoyée et une nouvelle vibration et acquisition d’image seront effectuées jusqu’à ce que <n> pièces soient obtenues.

  • Multi Part Quantity A, B

    Uniquement en lien avec une recette dualfeeding, définit le nombre de pièces d’un type défini demandées par Prepare Part Trigger et Get Part Trigger à chaque fois qu’une image est acquise. Si ce nombre de pièces n’est pas trouvé lors de l’acquisition de l’image, alors Get Part Trigger ou Prepare Part Trigger recommencera (vibration + acquisition d’image) jusqu’à ce que ce nombre de pièces soit trouvé.

    Pour plus d’informations sur le fonctionnement des quantités de pièces, veuillez lire la section décrivant un scénario commun pour une production en mode dualfeeding.

Sorties de production

  • Start Production Done

    True lorsqu’EYE+ a fini de traiter la commande Start Production Trigger. Réinitialilsé à False lorsque le déclencheur Start Production Trigger est défini comme égal à 0.

  • Active Recipe

    Contient la recette actuelle chargée pour la production ou la purge.

  • Get Part Done

    True lorsqu’EYE+ a fini de traiter la commande Get Part Trigger. Réinitialisé à False lorsque le déclencheur Get Part Trigger est défini comme égal à 0.

  • Prepare Part Done

    True lorsqu’EYE+ a fini de traiter la commande Prepare Part Trigger. Réinitialisé à False lorsque le déclencheur Prepare Part Trigger est défini comme égal à 0.

  • Is Prepared

    True lorsqu’EYE+ a fini de traiter l’image et est prêt à donner la position en utilisant Get Part Trigger.

  • Is Analysis Running

    True lorsqu’EYE+ est toujours en train de traiter des images, voir is_analysis_running.

  • Force Take Image Done

    True lorsqu’EYE+ a fini de traiter la commande Force Take Image Trigger. Réinitialisé à False lorsque le déclencheur Force Take Image Trigger est défini comme égal à 0.

  • Parts Prepared

    Nombre de pièces générales prêtes à être prélevées à l’aide de Get Part Trigger.

  • Multi Parts Prepared A, Multi Parts Prepared B

    Nombre de pièces spécifiques prêtes à être prélevées à l’aide de Get Part Trigger.

  • Poses

    EYE+ peut renvoyer jusqu’à 10 positions à la fois. Chaque position est composée de 4 paramètres différents :

    1. Pose <n> X : la coordonnée X pour cette pièce

    2. Pose <n> Y : la coordonnée Y pour cette pièce

    3. Pose <n> RZ : l’angle RZ pour cette pièce

    4. Pose <n> Type : le type de pièce (utilisé dans les recettes dualfeeding)

    En outre, le nombre d’entrées valides est toujours défini dans le registre Number of Valid Entries.

  • Save Parameters Done

    True lorsqu’EYE+ a fini de traiter la commande Save Parameters Trigger. Réinitialisé à False lorsque le déclencheur Save Parameters Trigger est défini comme égal à 0.

  • Can Take Image

    Valeur de retour du paramètre Can Take Image.

  • Image After Send

    Valeur de retour du paramètre Image After Send.

Fonctionnalités de purge

En plus des fonctionnalités de production, l’interface EtherCAT donne accès à toutes les commandes permettant de contrôler entièrement le système de purge optionnel Asyril pour faciliter les changements de production. Voir Purge plate et Purge full pour obtenir plus d’informations sur la façon de tirer pleinement parti de cet accessoire optionnel.

Il existe quelques commandes spécifiques au système de purge :

  • Start Purge Trigger

    Lance une recette pour purger la plateforme. L’identifiant unique de la recette doit être défini dans le registre Recipe ID. Une fois que la purge a commencé, cela se reflétera dans le registre Start Purge Done ainsi que dans System State. Les erreurs sont gérées en utilisant le registre spécial Is Error et Error ID, voir Gestion des erreurs.

    Voici un exemple où la recette 42 est lancée pour purger la plateforme :

    ../../_images/ecs_start_purge.svg
  • Purge Plate Trigger

    Effectue une séquence de purge de la plateforme uniquement. Cette séquence consiste à ouvrir le clapet de purge, à exécuter une vibration de la plateforme dans la direction correspondante et enfin à fermer le clapet de purge. La durée de la vibration peut être réglée dans le registre Purge Duration.

    Le registre Purge Plate Done est défini comme égal à 1 une fois qu’EYE+ a terminé la purge.

    Le système doit être en mode de purge pour utiliser cette commande, voir Start Purge Trigger.

    ../../_images/ecs_purge_plate.svg
  • Purge Full Trigger

    Effectue une séquence de purge de la plateforme et de la trémie. Cette séquence consiste à ouvrir le clapet de purge, à exécuter une vibration de la plateforme dans la direction correspondante ainsi qu’à déclencher la trémie et enfin à fermer le clapet de purge. La durée de la vibration doit être réglée dans le registre Purge Duration.

    Le registre Purge Full Done est défini comme égal à 1 une fois qu’EYE+ a fini d’exécuter la purge.

    Le système doit être en mode de purge pour utiliser cette commande, voir Start Purge Trigger.

    ../../_images/ecs_purge_full.svg
  • Purge Duration

    Durée de vibration de la plateforme et de la trémie en ms. Lorsque Purge Duration est utilisé en combinaison avec la commande Purge Plate Trigger et si sa valeur est définie comme égale à 0, la valeur correspondante de la recette sera utilisée à la place. Elle doit être comprise entre 1 et 30000 ms.

Sorties de purge

Codes d’erreur supplémentaires

EYE+ renverra un code d’erreur spécifique à EtherCAT si nécessaire. Une liste de ces codes d’erreur et leur description est présentée ci-dessous :

701

Des commandes concomitantes sont actives dans les PDOs