Accueil > Forum > Informations sur l'environnement de développement LogicLab > Différence entre l'importation de bibliothèque et l'importation d'objet
- Ce sujet a 5 réponses, 3 participants et a été mis à jour pour la dernière fois 8 années, 2 mois da Sergio Bertana.
-
auteurPost
-
Juillet 20, 2012 à 10: 10 am #35249Anonymeinactif
Je fais mon premier programme avec LogicLab et je me retrouve à devoir utiliser des objets (blocs fonctionnels et fonctions) présents dans les différentes librairies fournies. J'ai du mal à comprendre la différence entre l'importation de toute la bibliothèque et l'importation d'objets individuels.
Quelle technique est la meilleure à utiliser?
Juillet 20, 2012 à 10: 40 am #37332Sergio BertanaAdministrateur du forumAvec l'installation de LogicLab, des bibliothèques sont également installées qui contiennent des objets (fonctions et blocs fonctionnels) utiles dans le développement de programmes. Pour utiliser les objets présents dans les différentes bibliothèques, il est possible d'insérer la bibliothèque entière ou uniquement les objets utilisés (Extrait manuel).
Certaines bibliothèques doivent être insérées dans le projet afin d'utiliser les objets présents, car la bibliothèque, en plus des objets utilisés dans le programme et documentés dans le manuel, contient également des objets et / ou des structures de données utilisés en interne, il n'est donc pas possible d'importer uniquement les objets individuels. A la date actuelle les bibliothèques de ce type sont:
eModemLib: Bibliothèque de gestion de modem.
ePLC1WireLib: Bibliothèque de gestion de périphérique One-Wire.
eNMEALib: Bibliothèque de gestion de séquençage NMea.Juillet 20, 2012 à 12: pm 05 #37333AnonymeinactifJ'ai créé un simple programme en échelle pour tester le bloc de fonction flash BLINK, j'ai importé la bibliothèque dans mon projet PLCUtyLib pouvoir disposer du FB. En complétant le programme, j'ai le message suivant.
Code generation .. aborted.
IEC62056_21Rd(187) – error A4107: MemSet => Target function not found
…
IEC62056_21Rd(241) – error A4107: MemSet => Target function not found
0 warnings, 4 errors.Je voulais savoir comment interpréter les erreurs, dans d'autres cas, la référence est faite au bloc de programme où se trouve l'erreur, les chiffres entre parenthèses indiquent-ils quelque chose? Si oui, comment puis-je les trouver dans le programme?
Juillet 20, 2012 à 12: pm 14 #37334Sergio BertanaAdministrateur du forumVous avez rencontré l'un des problèmes pouvant survenir lors de l'importation d'une bibliothèque entière au lieu d'objets individuels dans le projet. Dans ce cas, la bibliothèque PLCUtyLib c'est un conteneur d'objets (fonctions et blocs fonctionnels) de diverses utilité. Cette bibliothèque ne doit jamais être importée dans le projet, mais seuls les objets utilisés doivent être importés de la bibliothèque.
En important la bibliothèque entière lors de la compilation du projet, LogicLab compile également la bibliothèque et s'il y a des erreurs dans les objets de la bibliothèque (même si l'objet en erreur n'est pas utilisé dans le projet), une erreur est signalée. Dans votre cas, l'erreur provient du fait que le bloc fonction IEC62056_21Rd utilise la fonction à l'intérieur memset trouvé dans la bibliothèque ePLCAuxLib.
Pour chaque ligne du programme source où la fonction MemSet est appelée, il y a une erreur, 4 erreurs au total, sur chaque ligne en erreur le numéro de ligne est renvoyé (entre parenthèses). Le bloc fonction CEI62056_21Rd étant chiffré, il n'est pas possible de sauter au programme source en double-cliquant sur l'erreur, ce qui se produirait s'il s'agissait d'un bloc fonctionnel libre.
Février 5, 2016 à 2: pm 53 #39343LucaPartecipanteMalheureusement la bibliothèque eLLabUtyLib Je dois l'utiliser, car j'ai besoin de la fonction «ModMaster». Quoi qu'il en soit oui, le problème était le format du projet, j'ai essayé de l'enregistrer dans le nouveau format (.plcprj) et le problème a été résolu.
Février 6, 2016 à 7: 28 am #39344Sergio BertanaAdministrateur du forumComme je vous l'ai dit les éléments de la bibliothèque eLLabUtyLib ils peuvent être utilisés individuellement sans connecter toute la bibliothèque. Vous devez utiliser le FB ModbusMastertrès bien, dans votre projet, vous ne pouvez importer que cet objet et ne pas connecter toute la bibliothèque.
Dans le menu Projet choisir Importer un objet de la bibliothèque, puis sélectionnez le dossier dans lequel se trouvent les bibliothèques LogicLab et choisissez la bibliothèque souhaitée. Un double-clic ouvre la liste de tous les objets présents et vous pouvez importer les objets qui vous intéressent dans votre projet (Capture d'écran).
-
auteurPost
- Vous devez être connecté pour répondre à ce sujet.