Exemple de programme 2 : MM_S2_Viz_Basic

Vous consultez actuellement la documentation pour la dernière version (2.1.2). Pour accéder à une autre version, cliquez sur le bouton "Changer de version" situé dans le coin supérieur droit de la page.

■ Si vous n’êtes pas sûr de la version du produit que vous utilisez, veuillez contacter le support technique Mech-Mind pour obtenir de l’aide.

Présentation du programme

Description

L’automate (PLC) déclenche l’exécution du projet Mech-Viz puis obtient la trajectoire planifiée par Mech-Viz.

Chemin du fichier

Vous pouvez trouver le fichier du programme en utilisant le chemin Communication Component/Robot_Interface/Siemens Snap7/TIA Portal/sample applications/SampleProjectSnap7.zip dans le répertoire d’installation de Mech-Vision et Mech-Viz.

Projet

Projets Mech-Vision et Mech-Viz

Prérequis

Ce programme d’exemple est fourni à titre indicatif uniquement. Avant d’utiliser le programme, veuillez l’adapter au scénario réel.

Description du programme

Cette section décrit le programme d’exemple MM_S2_Viz_Basic.

sample2 1
sample2 2
sample2 3
sample2 4
sample2 5
sample2 6

La figure ci-dessous décrit le déroulement du programme d’exemple ci-dessus.

sample2 7

Le tableau ci-dessous explique le programme d’exemple ci-dessus.

  • Pour les commandes de l’Interface Standard des automates Siemens série S7, vous pouvez cliquer sur l’hyperlien du nom de la commande dans l’explication ci-dessous pour afficher la description détaillée de la commande.

  • Pour les commandes courantes fournies avec les automates Siemens série S7, voir Commandes courantes.

Feature Description

Initialiser les paramètres

sample2 1
  • "MM Interface".FromCamera."Status Code": Un code d’état du système de vision.

  • P_TRIG: détecte le front montant du signal pour le résultat de l’opération logique ("MM Interface".FromCamera."Status Code" égal à 0).

  • MOVE: définit "Camera_Pose_Ready" à 2.

  • "Camera_Pose_Ready": Indique si l’automate a obtenu la trajectoire planifiée.

    • 0: L’automate n’a pas obtenu la trajectoire planifiée lorsque la caméra était sur le point de capturer des images ou avait déjà capturé des images, ou lorsque Mech-Viz calculait la trajectoire planifiée.

    • 1: La caméra a capturé des images, et l’automate a obtenu la trajectoire planifiée.

    • 2: La caméra était prête à commencer la capture d’images pour la première fois, et l’automate n’a pas obtenu la trajectoire planifiée.

Ainsi, le Réseau 1 indique que ce n’est que lorsque "MM Interface".FromCamera."Status Code" est égal à 0 et que P_TRIG détecte un front montant que "Camera_Pose_Ready" est initialisé à 2.

Réinitialiser les indicateurs d’exception du code d’état du système de vision

sample2 2
  • "Camera_User".Status_Code_Error[0]: Un indicateur d’exception du code d’état du système de vision. True indique que le projet Mech-Viz n’a pas été exécuté avec succès, c’est-à-dire qu’une exception s’est produite dans le système de vision.

  • "Camera_User".Status_Code_Error[1]: Un indicateur d’exception du code d’état du système de vision. True indique que le projet Mech-Viz n’a pas réussi à produire la trajectoire planifiée, c’est-à-dire qu’une exception s’est produite dans le système de vision.

  • "External_Reset_Camera_Error": Un signal de réinitialisation externe. Lorsqu’une exception se produit dans le système de vision et que le signal passe de False à True, les "Camera_User".Status_Code_Error[0] et "Camera_User".Status_Code_Error[1] qui suivent sont réinitialisés.

Ainsi, le Réseau 2 réinitialise "Camera_User".Status_Code_Error[0] et "Camera_User".Status_Code_Error[1] et définit "Camera_User".Step_Num à 0 lorsque "External_Reset_Camera_Error" est actif.

Définir les paramètres d’interface pour le projet Mech-Viz

sample2 3
  • "User_Robot_Pose_Type": Spécifie le type de pose du robot réel à fournir au projet Mech-Viz. La valeur de ce paramètre doit être définie comme la valeur de Robot_Pose_Type de la commande MM_Start_Viz. Dans cet exemple, la valeur du paramètre est 2. Vous pouvez la modifier selon vos besoins.

  • "Camera_User".Robot_Pose[0,0] ~ [0,5]: Six valeurs de positions articulaires du robot. Lorsque "User_Robot_Pose_Type" est défini sur 2, les données de position articulaire sont des valeurs personnalisées définies côté robot. La valeur de "Camera_User".Robot_Pose[0,0]~[0,5] doit être définie comme la valeur du paramètre Robot_Pose[0,0]~[0,5] dans la commande MM_Start_Viz. Dans cet exemple, les positions articulaires de J1 ~ J6 du robot sont définies respectivement à 1.0, 2.0, 3.0, 4.0, 5.0 et 6.0. Vous pouvez modifier la valeur selon vos besoins et ajouter les données de pose de la bride du robot (c’est-à-dire la valeur du paramètre Robot_Pose[1,0]~[1,5] dans la commande MM_Start_Viz).

Ainsi, le Réseau 3 indique que si "User_Robot_Pose_Type" est défini sur 2, "Camera_User".Robot_Pose[0,0]~[0,5] sera défini successivement sur 1.0, 2.0, 3.0, 4.0, 5.0 et 6.0.

Déclencher la capture d’image externe

sample2 4
  • "External_Photo_Signal": Le signal externe qui déclenche la capture d’image lorsqu’un front montant se produit.

  • "MM Interface".FromCamera."Status Code": Un code d’état du système de vision. 2103 indique que l’automate a déclenché avec succès l’exécution du projet Mech-Viz. 2100 indique que l’automate a obtenu avec succès la trajectoire planifiée depuis Mech-Viz.

  • "Camera_User".Start_Viz: L’indicateur qui déclenche l’exécution du projet Mech-Viz lorsqu’un front montant se produit.

  • "Camera_User".Get_VizData: L’indicateur qui déclenche la récupération de la trajectoire planifiée de Mech-Viz lorsqu’un front montant se produit.

Ainsi, le Réseau 4 indique que le signal externe déclenchant la capture d’image lors d’un front montant est récupéré, puis les trois opérations de capture suivantes sont effectuées.

  1. Une image est capturée pour la première fois. "MM Interface".FromCamera."Status Code" est défini sur 0, et "Camera_Pose_Ready" est défini sur 2.

  2. Une image est capturée normalement la fois suivante. "MM Interface".FromCamera."Status Code" est égal à 2100.

  3. Une erreur est signalée lors de la capture d’une image la fois suivante. "MM Interface".FromCamera."Status Code" n’est pas égal à 2100, et "Camera_User".Status_Code_Error[0] et "Camera_User".Status_Code_Error[1] sont tous deux définis sur False.

Enfin, "Camera_User".Step_Num est défini sur 5, "Camera_User".Start_Viz et "Camera_User".Get_VizData sont réinitialisés, et "Camera_Pose_Ready" est défini sur 0.

Déclencher l’exécution du projet Mech-Viz et déterminer si le déclenchement a réussi afin d’appliquer des traitements différents

sample2 5
Pour plus d’informations sur les paramètres d’entrée et de sortie de MM_Start_Viz, voir MM_Start_Viz.

Le Réseau 5 indique que si "Camera_User".Step_Num est défini sur 5, les opérations suivantes sont effectuées.

  1. MM_Start_Viz est activée.

  2. Lorsque "MM Interface".FromCamera."Trigger Acknowledge" est défini sur False et que "Camera_User".Status_Code_Error[0] est défini sur False, "Camera_User".Start_Viz est réinitialisé et l’automate déclenche l’exécution du projet Mech-Viz.

  3. Si "MM Interface".FromCamera."Status Code" est compris entre 2001 et 2099 (inclus), cela indique une erreur du système de vision. À ce stade, le front montant de cette sortie logique est capturé à l’aide de la commande P_TRIG. Lorsque "MM Interface".FromCamera."Trigger Acknowledge" est True, "Camera_User".Status_Code_Error[0] est positionné, et "Camera_User".Start_Viz est réinitialisé. Pour des informations sur la cause d’un code d’état spécifique, voir Codes d’état et codes d’erreur de l’Interface Standard.

  4. Si la valeur de "MM Interface".FromCamera."Status Code" est 2103, le système de vision a exécuté avec succès la commande envoyée par l’automate. Dans ce cas, la commande P_TRIG est appelée pour récupérer le front montant de la sortie logique, une valeur de 10 est attribuée à "Camera_User".Step_Num, et "Camera_User".Start_Viz et "Camera_User".Status_Code_Error[0] sont réinitialisés.

Obtenir la trajectoire planifiée du projet Mech-Viz et déterminer si l’obtention a réussi pour appliquer des traitements différents

sample2 6
Pour plus d’informations sur les paramètres d’entrée et de sortie de MM_Get_VizData, voir MM_Get_VizData.

Le Réseau 6 indique que si "Camera_User".Step_Num est défini sur 10, les opérations suivantes sont effectuées.

  1. MM_Get_VizData est activée.

  2. Lorsque "MM Interface".FromCamera."Trigger Acknowledge" est défini sur False et que "Camera_User".Status_Code_Error[1] est défini sur False, "Camera_User".Get_VizData est positionné et l’automate commence à obtenir la trajectoire planifiée produite par le projet Mech-Viz.

  3. Si "MM Interface".FromCamera."Status Code" est compris entre 2001 et 2099 (inclus), cela indique une erreur du système de vision. À ce stade, le front montant de cette sortie logique est capturé à l’aide de la commande P_TRIG. Lorsque "MM Interface".FromCamera."Trigger_Acknowledge" est True, "Camera_User".Status_Code_Error[1] est positionné et "Camera_User".Get_VizData est réinitialisé. Pour des informations sur la cause d’un code d’état spécifique, voir Codes d’état et codes d’erreur de l’Interface Standard.

  4. Si la valeur de "MM Interface".FromCamera."Status Code" est 2100, le système de vision a exécuté avec succès la commande envoyée par l’automate. Dans ce cas, "Camera_User".Get_VizData et "Camera_User".Status_Code_Error[1] sont réinitialisés. La commande P_TRIG est appelée pour récupérer le front montant de la sortie logique ("MM Interface".FromCamera."Status Code" égal à 2100), une valeur de 0 est attribuée à "Camera_User".Step_Num, et une valeur de 1 est attribuée à "Camera_Pose_Ready". Cela indique que l’automate a obtenu la trajectoire planifiée de Mech-Viz et peut transmettre la trajectoire planifiée au robot.

Cette page est-elle utile ?

Veuillez nous indiquer comment améliorer :

Nous accordons de l’importance à votre vie privée

Nous utilisons des cookies pour vous offrir la meilleure expérience possible sur notre site web. En continuant à utiliser le site, vous reconnaissez accepter l’utilisation des cookies. Si vous refusez, un cookie unique sera utilisé pour garantir que vous ne soyez pas suivi ou reconnu lors de votre visite sur ce site.