# Obtenir des données depuis un système de vision In-Sight

Pour obtenir des données d’un In-Sight système de vision vers un PLC ControlLogix, les données doivent être poussées dans la pile EtherNet/IP en utilisant la fonction WriteResultsBuffer.

Cette fonction prend un tampon de données créé par la fonction FormatOutputBuffer et l’écrit dans la zone de données de du système de vision In-Sight lorsque l’événement configuré dans WriteResultsBuffer s’exécute. Ces données sont ensuite transférées au PLC pendant le cycle RPI suivant, une fois l’exécution de la feuille de calcul terminée.

Les écritures de la mémoire tampon EtherNet/IP dans cette zone de données sont mises en file d’attente lorsque Buffer Results Enable est activé, sinon les nouveaux résultats peuvent écraser les résultats précédents.

Astuce : Utilisez le bit Résultats valides pour décider du moment de la lecture des données afin d’éviter les problèmes de synchronisation intermittente de votre logique PLC qui peuvent résulter de cette configuration, car Résultats valides est défini sur un uniquement lorsque les données sont prêtes à être lues, et pas avant.

1. Insérez ces fonctions dans la feuille de calcul : Count, Rand, EditInt et Sum. Définissez les paramètres de la fonction Sum comme une référence de cellule à la somme de la valeur renvoyée par les fonctions Rand et EditInt.

2. Effectuez un clic droit sur une cellule vide et insérez la fonction FormatOutputBuffer dans la feuille de calcul.
3. Dans la boîte de dialogue FormatOutputBuffer, cliquez sur le bouton Ajouter. Cela lancera le mode de sélection des cellules ; sélectionnez la cellule avec la fonction Sum.
4. Dans la boîte de dialogue FormatOutputBuffer, utilisez le menu déroulant Type de données pour changer le type de données en virgule flottante 32 bits.

5. Dans la boîte de dialogue FormatOutputBuffer, cliquez à nouveau sur le bouton Ajouter. Cela lancera le mode de sélection des cellules ; sélectionnez la cellule avec la fonction Count.

6. Fermez la feuille de propriétés FormatOutputBuffer en cliquant sur le bouton OK.

7. Effectuez un clic croit sur une cellule vide et insérez la fonction WriteResultsBuffer dans la feuille de calcul. Définissez le paramètre Tampon de la fonction WriteResultsBuffer comme une référence de cellule à la fonction FormatOutputBuffer récemment créée.

8. Dans RSLogix, passez en mode hors ligne.

9. Dans RSLogix, effectuez un clic droit sur le dossier Data Types > User-Defined et sélectionnez New Data Type dans le menu.

10. Donnez au nouveau type de données un nom descriptif et ajoutez deux valeurs à virgule flottante à la liste Members:.

11. Ensuite, ajoutez une nouvelle balise aux Balises du contrôleur du projet, en utilisant le type de données défini par l’utilisateur.

12. Ajoutez une instruction COP au programme à enchaînement en échelle MainRoutine.

    Remarque : Le champ Length (Longueur) est le nombre de structures d’entrée qui seront copiées dans le champ Dest de COP.
13. Mettez le In-Sight système de vision en ligne.

14. Dans RSLogix, cliquez sur la flèche déroulante du bouton En ligne, puis sélectionnez Télécharger.

15. Une fois que ce programme a été téléchargé sur le PLC ControlLogix, les données des cellules Random et Acquisition apparaissent maintenant dans la balise InSight_Top_Input au format à virgule flottante.