DFB sur Ecostruxure Control
Posté : 31 janv. 2022, 16:56
Bonjour,
Je suis en train de développer un bloc fonction sur Ecostruxure control Expert avec un contrôleur en Ethernet/IP (connecté sur carte NOC401).
Mon bloc est bien programmé, j'ai renseigné toutes les E/S et j'ai créé une structure pour me faciliter la tâche.
Jusqu'ici tout va bien. Le problème est que je n'arrive pas à raccrocher les variables de mon contrôleur en Ethernet/IP avec les variables de mon DFB. J'ai créé une structure Data_Input et Data_Output pour le bloc fonction et la structure de mes variables du contrôleur dans mon programme de test sont T_EIP_Input et T_EIP_Output.
Bien sûr si je déclare ces types dans mon bloc fonction ça marche mais le but est d'utiliser le bloc avec plusieurs contrôleurs donc les structures n'auront jamais le même nom.
Si je déclare mon type avec les adresses %MW[x] ça marche aussi mais il y a un chevauchement d'adresse c'est désagréable.
Quelqu'un pourrait m'aider ?
Comment mettre en relation les variables de mon bloc avec les variables du périphérique ?
PS : Le fichier eds ne donne aucun nom, c'est un tableau de 64 octets. Dans les 2 cas j'ai déclaré 64 octets mais bien sûr le nom des types sont différents donc ça ne passe pas.
Merci de votre aide.
Je suis en train de développer un bloc fonction sur Ecostruxure control Expert avec un contrôleur en Ethernet/IP (connecté sur carte NOC401).
Mon bloc est bien programmé, j'ai renseigné toutes les E/S et j'ai créé une structure pour me faciliter la tâche.
Jusqu'ici tout va bien. Le problème est que je n'arrive pas à raccrocher les variables de mon contrôleur en Ethernet/IP avec les variables de mon DFB. J'ai créé une structure Data_Input et Data_Output pour le bloc fonction et la structure de mes variables du contrôleur dans mon programme de test sont T_EIP_Input et T_EIP_Output.
Bien sûr si je déclare ces types dans mon bloc fonction ça marche mais le but est d'utiliser le bloc avec plusieurs contrôleurs donc les structures n'auront jamais le même nom.
Si je déclare mon type avec les adresses %MW[x] ça marche aussi mais il y a un chevauchement d'adresse c'est désagréable.
Quelqu'un pourrait m'aider ?
Comment mettre en relation les variables de mon bloc avec les variables du périphérique ?
PS : Le fichier eds ne donne aucun nom, c'est un tableau de 64 octets. Dans les 2 cas j'ai déclaré 64 octets mais bien sûr le nom des types sont différents donc ça ne passe pas.
Merci de votre aide.