▼
Scroll to page 2
of
15
Interface process 704980 / 00 08 / 2011 O3D200 FR Interface process O3D200 Contenu Protocole des données process . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4 Etablir la connexion TCP/IP . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4 Types de commandes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4 Bases de communication . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4 Versions de protocole . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5 Sélectionner la version du protocole . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5 Vérifier la version du protocole . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5 Déclencher l'impulsion trigger . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6 Modifier le mode trigger . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6 Vérifier le mode trigger . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7 Déclencher le trigger et demander l'affichage des résultats via l'interface process 7 Activer / désactiver l'affichage des résultats . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7 Sélectionner une application . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8 Vérifier l'affectation des données d'application de l'appareil . . . . . . . . . . . . . . . . . . 8 Vérifier le dernier résultat de l'appareil . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8 Vérifier les statistiques de l'appareil . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9 Vérifier les informations de l'appareil . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10 Demander l'heure de l'appareil . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10 Vérifier le code d'erreur de l'appareil . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11 Codes d'erreur de l'appareil . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11 Message du résultat . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13 Elements disponibles du message du résultat . . . . . . . . . . . . . . . . . . . . . . . . . . . 13 Image d'intensité ( <image_intensité> ) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14 Image de distance ( <image_distance> ) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15 Règle de calcul pour le format CSV . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15 2 Interface process O3D200 FR 3 Interface process O3D200 Protocole des données process L'interface process permet la communication entre le système de commande (p.ex. API ou PC de commande) et l'appareil. Une commande du processeur peut par exemple déclencher les impulsions du trigger, sélectionner des applications ou demander des informations statistiques. Etablir la connexion TCP/IP La sélection de TCP/IP pour l'interface process se fait dans le programme utilisateur ou dans le menu de deux boutons-poussoirs de l'appareil. Types de commandes On distingue deux types de commandes pour l'appareil : actions et demandes. Les actions demandent à l'appareil de faire quelque chose, p.ex. prendre une image et l'évaluer. Les demandes servent à la vérification d'informations de l'appareil. Des réponses de l'appareil sont ou des informations d'état, des messages de réponse ou des résultats. Les résultats sont transmis par l'appareil sans une demande précédente à l'appareil. Les informations d'état et les messages de réponse sont transmis par l'appareil comme réponse immédiate sur des commandes d'action ou des commandes de demande. Bases de communication Les caractères ASCII 7 bits sont permis. Toutes les transmissions vers l'appareil sont terminées par un caractère carriage return et un caractère line feed (CR + LF = ASCII 13 dec + 10 dec). Toutes les transmissions de l'appareil sont terminées par un caractère carriage return et un caractère line feed (CR + LF = ASCII 13 dec + 10 dec). Comme réponse à une commande valable, l'appareil fournit la chaîne de caractères * CR LF (ASCII 42 dec + 13 dec + 10 dec). Comme réponse à une commande non valable, l'appareil fournit la chaîne de caractères ? CR LF (ASCII 63 dec + 13 dec + 10 dec). Lorsque l'appareil ne peut pas exécuter un message, l'appareil fournit la chaîne de caractères ! CR LF (ASCII 33 dec + 13 dec +10 dec). 4 Interface process O3D200 Versions de protocole L'appareil supporte 4 versions de protocole différentes qui ont un format de message différent. Version Demande de format Réponse de format V01 <contenu>CR LF identique à la demande V02 <ticket><contenu>CR LF identique à la demande V03 <ticket><longueur>CR LF <ticket><contenu>CR LF identique à la demande V04 <contenu>CR LF <longueur>CR LF <contenu>CR LF <contenu> est la commande à l'appareil ou la réponse de l'appareil (p.ex. résultat d'évaluation). <ticket> est une chaîne de caractères de 4 chiffres 0-9, à interpréter comme nombre décimal. Un message à l'appareil avec un certain ticket est répondu par un message de l'appareil avec le même ticket. Ticket 0000 est réservé pour des messages que l'appareil transmet indépendamment. <longueur> est une chaîne de caractères qui commence par la lettre 'L' suivie par 9 chiffres qui sont à interpréter comme nombre décimal. Ce nombre indique la longueur des données suivantes (<contenu>CR LF) en byte. Les espaces sont remplies avec des zéros au début. Le réglage usine et l'état reset est V02. Sélectionner la version du protocole Commande v <chiffre><chiffre> Type Action Réponse * Cas normal ! L'appareil ne supporte pas la version de protocole indiquée. Remarque <chiffre><chiffre>: à interpréter comme nombre décimal à deux chiffres pour la version du protocole. La version du protocole n'est changée qu'après la réponse de l'appareil. Vérifier la version du protocole Commande V? Type Vérification Réponse <actuel><espace><min><espace><max> <actuel> Nombre décimal de deux chiffres indiquant la version actuelle <espace> Espace <min> Nombre décimal de deux chiffres indiquant la version minimale <max> Nombre décimal de deux chiffres indiquant la version maximale 5 FR Interface process O3D200 Remarque Réponse en cas de réglage usine : 02 01 04 Exemple pour la version de protocole V04 : Commande à appareil 'V?\r\n' Réponse de l'appareil 'L000000010\r\n03 01 04\r\n' 'L000000010\r\n' identifie la longueur des données suivantes '03 01 04\r\n' '\n' signifie le code ASCII 10d '\r' signifie le code ASCII 13d Déclencher l'impulsion trigger Commande t Descriptif Déclencher le trigger et évaluer l'image prise. Type Action Réponse * Le trigger a été déclenché. ! ●● L'appareil est en train d'évaluer. ●● L'appareil se trouve dans un état non valable, p.ex. la gestion d'applications. ●● Mode trigger réglé actuellement non possible via TCP/IP Remarque Activer l'affichage → Activer/désactiver l'affichage des résultats (p1/p0). Modifier le mode trigger Commande m <chiffre = 0><chiffre> Type Action Réponse * Exécution réussie ! ●● <chiffre> contient une valeur incorrecte. ●● L'appareil se trouve dans un état non valable. Remarque <chiffre = 0> le premier chiffre est toujours 0 <chiffre> le deuxième chiffre 1 Front positif entrée trigger 2 Front négatif entrée trigger 3 Trigger continu 4 Source trigger interface XML-RPC 5 Source trigger interface process Exemple : m05 active le trigger via l'interface process 6 Interface process O3D200 Vérifier le mode trigger Commande g? Type Action Réponse T1 T2 T3 T4 T5 Front positif entrée trigger Front négatif entrée trigger Trigger continu Source trigger interface XML-RPC Source trigger interface process ! ●● L'appareil est en train d'évaluer. ●● Aucune application active. Déclencher le trigger et demander l'affichage des résultats via l'interface process Commande T? Type Vérification Réponse Message en format de résultat → chapitre Message du résultat Cas normal ! ●● Aucune application active actuellement. ●● L'application est traitée. ●● Le mode trigger réglé actuellement non possible via TCP/IP. Remarque FR Le format de résultat contient normalement l'élément suivant : <roiprocval> (fournit une valeur de quatre chiffres avec trois positions après le point décimal par zone d'image p.ex. : 0012.120) Via le programme utilisateur, la liste des éléments souhaités peut être configurée librement. (Voir éléments disponibles du message du résultat) Activer / désactiver l'affichage des résultats Commande p <chiffre> Type Action Réponse * Exécution réussie ! ●● Aucune application active. ●● <chiffre> contient une valeur incorrecte. ●● L'appareil se trouve dans un état non valable. Remarque <chiffre> peut être 0 ou 1. 1 active l'affichage du résultat. 0 désactive l'affichage du résultat. Voir message T?. 7 Interface process O3D200 Sélectionner une application Commande c <groupe><numéro> Type Action Réponse * Changement réussi ! ●● L'appareil se trouve dans un état non valable p.ex. la gestion d'applications. ●● Groupe ou numéro d'application non valable ou non existant. Remarque <groupe> : chiffre pour le groupe d'application (toujours 0 pour O3D200). <numéro> : chaîne de deux caractères, à interpréter comme nombre décimal pour le numéro d'application. Vérifier l'affectation des données d'application de l'appareil Commande a? Type Vérification Réponse <nombre><espace><groupe><numéro><espace>< groupe> <numéro><espace>...<groupe><numéro> Cas normal ! Aucune application active sur l'appareil. Remarque <nombre> : chaîne de caractères de 3 chiffres pour le nombre d'applications sur l'appareil, à interpréter comme nombre décimal. <groupe> : chiffre pour le groupe d'application (toujours 0 pour O3D200). <numéro> : chaîne de deux caractères, à interpréter comme nombre décimal pour le numéro d'application. D'abord le numéro de la configuration active est affiché. <espace> : espace individuel. Vérifier le dernier résultat de l'appareil Commande R? Type Vérification Réponse Message en format de résultat → chapitre Message du résultat Cas normal ! ●● Aucune application active actuellement. ●● L'application est traitée. ●● Résultats pas encore disponibles. Remarque 8 Le format de résultat contient normalement l'élément suivant : <roiprocval> (fournit une valeur de quatre chiffres avec trois positions après le point décimal par zone d'image p.ex. : 0012.120) Via le programme utilisateur, la liste des éléments souhaités peut être configurée librement. (Voir éléments disponibles du message du résultat) Interface process O3D200 Vérifier les statistiques de l'appareil Commande s? Type Vérification Réponse <compte trigger><espace><temps éval min><espace><temps éval max><espace><compte sortie de commutation 1 bas><espace><compte sortie de commutation 1 haut><espace><compte sortie de commutation 2 bas><espace><compte sortie de commutation 2 haut><espace><température min><espace><température max> Cas normal ! Aucune application active sur l'appareil. Remarque FR <compte trigger> Nombre d'évènements trigger (nombre décimal de 10 chiffres avec des zéros au début) <temps éval min> Temps d'évaluation minimal (en millisecondes, nombre décimal de 4 chiffres avec des zéros au début) <temps éval max> Temps d'évaluation maximal (en millisecondes, nombre décimal de 4 chiffres avec des zéros au début) <compte sortie de commutation 1 bas> Nombre d'états " Low " (bas) de la sortie de commutation (nombre décimal de 10 chiffres avec des zéros au début) La sortie de commutation est mise à " analogique " : <compte sortie de commutation 1 bas> fournit le minimum des valeurs analogiques existantes. (Valeurs 16 bits) <compte sortie de commutation 1 haut> Nombre d'états " High " (haut) de la sortie de commutation (nombre décimal de 10 chiffres avec des zéros au début) La sortie de commutation est mise à " analogique " : <compte sortie de commutation 1 haut> fournit le maximum des valeurs analogiques existantes. (Valeurs 16 bits) <compte sortie de commutation 2 bas> Nombre d'états " Low " (bas) de la sortie de commutation (nombre décimal de 10 chiffres avec des zéros au début) <compte sortie de commutation 2 haut> Nombre d'états " High " (haut) de la sortie de commutation (nombre décimal de 10 chiffres avec des zéros au début) <température min> Température minimale (chiffres analogiques/numériques non calibrés, nombre décimal de 4 chiffres avec des zéros au début) <température max> Température maximale (chiffres analogiques/numériques non calibrés, nombre décimal de 4 chiffres avec des zéros au début) <espace> Espace individuel 9 Interface process O3D200 Vérifier les informations de l'appareil Commande D? Type Vérification Réponse <fabricant><t><référence><t><nom><t><site><t><ip><t><sous-réseau><t> <passerelle><t><MAC><t><DHCP><t><port_XML><t><port_video> <fabricant> IFM ELECTRONIC <référence> référence commerciale et le status, p.ex. O2D220AC <nom> nom du détecteur comme saisi dans le programme utilisateur <site> site du détecteur comme saisi dans le programme utilisateur <ip> adresse IP de l'appareil <sous-réseau> masque de sous-réseau de l'appareil <passerelle> adresse passerelle de l'appareil <MAC> adresse MAC de l'appareil <DHCP> 0 si DHCP est désactivé, 1 si DHCP est activé <t>tabulation <port_XML> numéro de port XML-RPC <port_video> données d'image numéro de port Remarque Aucune Demander l'heure de l'appareil Commande d? Type Action Réponse <10 bytes remplis avec des 0><espace><10 bytes remplis avec des 0> Cas normal ! Aucune application active sur l'appareil. Remarque 10 Les 10 premiers bytes contiennent les secondes depuis le démarrage du système, les 10 bytes suivants contiennent les millisecondes Exemple 1234d? 12340000015730 0000000951 Interface process O3D200 Vérifier le code d'erreur de l'appareil Commande E? Type Vérification Réponse <code> Remarque <code> est la valeur numérique du code d'erreur, chaîne de caractères de 4 chiffres, à interpréter comme nombre décimal. → chapitre Codes d'erreur Codes d'erreur de l'appareil FR Définition SENSOR_NO_ERRORS Valeur numérique 0 Descriptif Aucune erreur Solution/remède – Définition SENSOR_INVALID_PARM Valeur numérique 0105 Descriptif Paramètre d'entrée non valable Solution/remède Lire la documentation des commandes pour transmettre les informations nécessaires à l'appareil. Définition SENSOR_INVALID_STATE Valeur numérique 0108 Descriptif L'appareil se trouve dans un mode de fonctionnement qui ne permet pas l'exécution de commandes. Solution/remède Vérifier dans la documentation des commandes quand la commande peut être exécutée. Définition SENSOR_ERR_NO_MEM Valeur numérique 0110 Descriptif Erreur interne fatale. Solution/remède Redémarrer l'appareil. 11 Interface process O3D200 Définition SENSOR_CONFIG_NOT_FOUND Valeur numérique 0902 Descriptif L'application à activer non trouvée. Solution/remède Vérifier si le numéro d'application est correct. Vérifier si le programme utilisateur permet le traitement de l'application. Définition SENSOR_INVALID_TRIGGER_MODE Valeur numérique 1000 Descriptif Il n'est pas possible de déclencher l'appareil car la fonction trigger, via TCP/IP, n'est pas activée. Solution/remède Vérifier le mode trigger de l'appareil. (g?) Définition SENSOR_CONFIG_SWITCHING_ACTIVE Valeur numérique 1603 Descriptif Il n'est pas possible de charger une application dans l'appareil si la sélection externe de l'application est activée. Solution/remède Utiliser le programme utilisateur afin de désactiver la sélection de l'application externe. Définition SENSOR_TRIGGER_NOT_AVAILABLE Valeur numérique 1604 Descriptif L'utilisateur transmet un trigger à l'appareil via TCP/IP. Par une erreur interne l'appareil ne peut pas traiter le trigger. Solution/remède Ce code d'erreur indique un défaut de l'appareil. Normalement l'appareil essaie de remédier au défaut lui-même. Si cette erreur se produit, redémarrer l'appareil. 12 Interface process O3D200 Message du résultat Un résultat d'évaluation est transmis dans le format suivant : <démarrage>[<procval><sc>][<procvalmin><sc>][<procvalmax><sc>] [<config_id><sc>][<roicnt><sc>]{[<roiprocval><sc>][<roipos><sc>]} [<image_intensité>][<image_distance>]<arrêt> Les éléments entre crochets [] sont facultatifs. Si aucun élément n'est sélectionné, <démarrage> et <arrêt> ne sont pas transmis non plus. Les éléments entre accolades {} sont répétés pour chaque zone d'image (ROI). Elements disponibles du message du résultat Nom de l'élément Descriptif Formatage <démarrage> Chaîne de caractères de démarrage selon le réglage dans le programme utilisateur Chaîne de caractères <sc> Séparateur selon le réglage dans le programme utilisateur Chaîne de caractères <arrêt> Chaîne de caractères d’arrêt selon le réglage dans le programme utilisateur Chaîne de caractères <roiprocval> Zone d'image (ROI) valeur process Nombre en virgule flottante <config_id> Application active Entier 3 <roicnt> Nombre de zones d'image Entier 3 <roipos> Position de la zone d'image en format <roigauche><roidroite><roihaut><roibas> Entier 8 <roigauche> <roidroite> <roihaut> <roibas> FR Zone d'image coordonnée gauche Zone d'image coordonnée droite Zone d'image coordonnée haut Zone d'image coordonnée bas <procval> Valeur process totale Nombre en virgule flottante <procvalmin> Valeur process totale minimale de toutes les zones d'image Nombre en virgule flottante <procvalmax> Valeur process totale maximale de toutes les zones d'image Nombre en virgule flottante <image_intensité> Image d'intensité ou de niveau de gris Format graphique <image_distance> Image de distance Format graphique 13 Interface process O3D200 Remarque Réglage usine valeurs process de toutes les zones d'image <démarrage><roiprocval><sc><arrêt> Chaîne de caractères démarrage = star Séparateurs = ; Chaîne de caractères arrêt = stop Chaîne de caractères = ASCII ou Unicode en codage UTF-8 possible Nombre en virgule flottante = 10 caractères remplis avec des "0", 3 positions après le point décimal, séparateurs décimaux "," p.ex. : 1,234 / 000001,234 Entier 3 = naturel de 3 caractères, rempli avec des "0", p.ex. : 12 / 012 Entier 8 = naturel de 8 caractères, 2 caractères pour la position gauche, 2 caractères pour la position droite, 2 caractères pour la position haute, 2 caractères pour la position basse tous remplis avec des "0" p.ex. : 1,48,1,64 / 01480164 Format graphique selon le format d'image réglé dans le programme utilisateur (BMP, CSC...) Image d'intensité ( <image_intensité> ) Dans le tableau de niveaux de gris, les valeurs RVB sont pareilles pour tous les indicateurs. Dans l'image de niveaux de gris, des pixels surexposés sont présentés en orange RVB (255,153,0) selon le programme utilisateur. Des pixels sousexposés sont présentés en rouge RVB (255,0,0) également selon le programme utilisateur. Tableau des couleurs pour les niveaux de gris : Index R V B 0 0 0 0 1 1 1 1 2 2 2 2 ... ... ... ... 254 254 254 254 255 255 255 255 14 Interface process O3D200 Image de distance ( <image_distance> ) Le tableau de couleurs JET est utilisé pour l'image de distance. Ici aussi les pixels non valables sont traités de manière séparée. Les pixels surexposés sont présentés en blanc, les pixels sousexposés en noir. Le codage des couleurs est également identique à la présentation du programme utilisateur. Index R V B noir 0 0 0 0 0 0 128 1 0 0 131 ... ... ... ... 254 131 0 0 255 128 0 0 blanc 255 255 255 FR Règle de calcul pour le format CSV Le format CSV (comma-separated values, valeurs séparées par des virgules) est créé de manière identique que dans le programme utilisateur. Les valeurs sont séparées par un point virgule et sont fournies avec 8 positions après le point décimal. La virgule est utilisée en tant que séparateur décimal. 64 valeurs se trouvent dans une ligne, le nombre des lignes est de 50. Ainsi, on obtient une image avec les dimensions de 64x50. 15