Vai al contenuto

Utilizzo libreria eLLabDataExchLib

Home Forum Programmazione IEC 61131 (LogicLab) Utilizzo libreria eLLabDataExchLib

Stai visualizzando 6 post - dal 1 a 6 (di 6 totali)
  • Autore
    Post
  • #56014
    Paolo
    Partecipante

    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?

    #56030
    Paolo
    Partecipante

    Ho 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?

    #56032
    Paolo
    Partecipante

    Come non detto, ora funziona anche con uno solo dei due client.

    #56034
    Sergio Bertana
    Amministratore del forum

    Nell’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.

    #56829
    Roberto
    Partecipante

    Abbiamo 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?

    #56846
    Sergio Bertana
    Amministratore del forum

    Tutto 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.

Stai visualizzando 6 post - dal 1 a 6 (di 6 totali)
  • Devi essere connesso per rispondere a questo topic.