Home › Forum › Programmazione IEC 61131 (LogicLab) › Utilizzo libreria eLLabDataExchLib
Taggato: Utilizzo libreria eLLabDataExchLib
- Questo topic ha 5 risposte, 1 partecipante ed è stato aggiornato l'ultima volta 3 anni, 9 mesi fa da Sergio Bertana.
-
AutorePost
-
Giugno 12, 2020 alle 6:41 am #56014PaoloPartecipante
Avrei la necessità di scambiare pochi byte tra 3 SlimLine Cortex M7 ed avevo intenzione di utilizzare la libreria eLLabDataExchLib. Mi sono basato sugli esempi trovati nel forum e nella documentazione ma non riesco a farla funzionare, i sistemi non si parlano.
Per cercare di restringere il problema ho definito un progetto che contiene sia il server che il client proprio come da esempi server e client, la versione del firmware dello slimline è SFW198C330 e la libreria utilizzata è eLLabDataExchLib scaricata dal sito ma non riesco a farli funzionare, qualche suggerimento?
Giugno 12, 2020 alle 6:42 am #56030PaoloPartecipanteHo scoperto che se nel progetto di esempio si definiscono lato server due oggetti TCPDEXCHNODEDEFS, per relativi due client, e si istanzia UN solo client dei due, lo scambio non avviene. Se invece si istanziano entrambi i client allora lo scambio dei dati funziona. E’ normale?
Questo vorrebbe dire che se un sistema client è spento anche gli altri eventuali client non riescono a parlare con il server?
Giugno 12, 2020 alle 6:43 am #56032PaoloPartecipanteCome non detto, ora funziona anche con uno solo dei due client.
Giugno 12, 2020 alle 6:48 am #56034Sergio BertanaAmministratore del forumNell’esempio del server ho definito due oggetti TCPDEXCHNODEDEFS per illustrare come sia possibile lato server gestire la connessione di più clients.
Se noti ogni client ha definito un NodeID, questo numero server al server per capire chi è il nodo client che stà inviando i dati. Quindi occorre che ogni client abbia definito correttamente il valore di NodeID.
Non ci sono dipendenze di funzionamento tra i nodi, ad un server possono connettersi più clients e comunque la comunicazione con ogni client funziona indipendentemente dagli altri.
Luglio 17, 2020 alle 2:36 pm #56829RobertoPartecipanteAbbiamo realizzato con successo lo scambio dati tra due CPU serie SlimLine usando la libreria eLabDataExchLib, con il linguaggio ST funziona ma abbiamo riscontrato problemi con il LD.
Un esempio pratico con questo linguaggio oppure non è possibile realizzarlo?
Luglio 17, 2020 alle 5:49 pm #56846Sergio BertanaAmministratore del forumTutto quello che si può realizzare in ST in teoria è realizzabile con gli altri linguaggi della normativa, ma ogni linguaggio ha peculiarità che rendono più semplice la scrittura di certe sequenze.
Nel tuo caso per gestire lo scambio tra i sistemi occorre valorizzare le strutture dati TCPDEXCHNODEDEFS e la valorizzazione di strutture in LD o FBD diventa una sequenza interminabile di MOVE, molto più semplice scriverlo in ST.
Quindi in definitiva non abbiamo fatto esempi con altri linguaggi perchè sarebbero una sequenza infinita di “scatole” ancora più difficile da comprendere che in ST. Quello che invece s i può fare è di costruirsi i proprii FB (In linguaggio ST) e poi utilizzarli in modo grafico con altri linguaggi, nel nostro canale youtube trovi dei video che spiegano come fare.
-
AutorePost
- Devi essere connesso per rispondere a questo topic.