Vai al contenuto
PLC Forum

Partecipa anche tu alla Live su Youtube martedì 28/01/2025 per festeggiare i 24 anni di PLC Forum

Per ulteriori informazioni leggi questa discussione: https://www.plcforum.it/f/topic/326513-28012025




Tsx Premium & Modbus


Messaggi consigliati

Inserito:

Salve a tutti.

Sto lavorando con un PLC MODICON TSX Premium, devo comunicare con lui da un PC via rete tramite MODBUS.

Del sw che gira sul PLC ho la lista delle variabili, costanti, ingressi e uscite.

Vorrei sapere come faccio a "convertire" tali indirizzi in indirizzi MODBUS.

Spero di essere stato chiaro.

Ciao, Alessandro.


Stefano Sormanni
Inserita:

E' una istruzione specifica, si chiama READ_VAR per leggere le variabili, WRITE_VAR per scriverle :rolleyes:

Inserita:

Stefano, penso che il discorso sia il contrario, cioe' ale deve leggere da un PC all'interno del PLC...

Innanzitutto dipende dal tipo di "rete" che dici. Se e' una Ethernet TCP/IP con protocollo Modbus allora hai bisogno di una DLL che permetta al tuo sw di leggere nel PLC l'area di memoria che ti serve.

Inserita:

Ciao a tutti

Mi intrometto nella discussione perchè mi pare interessante...

Il modbus, sia RTU che TCP/IP legge i registri (ad esempio HR4000). Come faccio dire ad un semplice Master modbus (che si trova anche su internet) di leggere la variabile %MW100. In parole povere come faccio a dire al PLC di mettere la %MW100 nel registro HR4000?

Grazie

Riccardo

Inserita: (modificato)

Esatto, devo leggere da un PC la memoria di un PLC con una Ethernet TCP\IP.

Ho il SW per farlo (National Instruments Lookout Protocol Drivers) ma non so, per esempio, a che indirizzo MODBUS trovo l'informazione "LADDER" %I1.5 che corrisponde a "Canale di ingresso numero 5 del modulo di ingressi/uscite che si trova in posizione 1".

Grazie.

Alessandro.

Modificato: da ale914
Inserita:

Appoggi gli ingressi a delle WORD e leggi queste ultime...

Inserita:

purtroppo non posso mettere mano al sw sul PLC ma devo "solo" costruire uno SCADA intorno a lui quindi non posso comunque dai manuale della schneider sono venuto a sapere che sia %I e %Q sono delle copie in memoria degli stati degli ingressi/uscite dei vari moduli quindi si possono trattare come le WORD il problema è che non riesco a capire secondo quale logica tali informazioni vengono scritte in memoria e quindi come accedrvi.

Alessandro.

Inserita:

Come dice Ale914...Sapete come si fa ad associare una %MW ad un HR modbus?

Ciao,Riccardo

  • 2 weeks later...
Inserita:

Se posso esserVi utile...

1° - la mappa dati %MWi del TSX Premium è "separata" dalla mappa I/O;

2° - la "codifica" interna dei registri I/O digitali e/o analogici non è accessibile direttamente, se non con richieste protocollate secondo le specifiche UNITE (proprietarie Telemecanique) e non visibili quindi da standard MODBUS.

La soluzione piu' logica e' quella di trasferire tutto su %MWi, come per esempio:

%MW100:=%I1.0:16 per leggere 16 input,

%Q3.0:16:=%MW150 per scrivere 16 output.

Inoltre nel Premium la mappa dati %MWi e' "vista" secondo lo standard MODBUS come un insieme di registri apprtenenti alla zona 4000x, ovvero registri che possono essere letti e scritti.

Rispetto allo standard MODBUS, quello UNITE prevede la notazione di variabile 0 (zero) quindi occhio a "spostare" di +1 l'offset dell'elenco variabili: la 40001=coincide=%MW0 e cosi' via....

Purtroppo pero', non potendo accedere alla modifica del sw lato plc, l'unica alternativa che resta è quella di utilizzare il driver UNITE via Ethernet TCP/IP, se disponibile sullo Scada, e se disponibili/implementate le richieste per accedere agli oggetti linguaggio estesi tipo I/O.

E provare con lo "strato" OPC ?.

Saluti.

Nibble.

Inserita:

Grazie a tutti per le indicazioni e i consigli.

Ho risolto il problema utilizzando l'OPC Data Server OFS della Schneider.

Ciao, Alessandro.

  • 1 month later...
Inserita:

Per conoscenza di chiunque ha seguito questa discussione....

Ho provato a leggere con un Master modbus TCP/IP le %MW interne di un PLC Premium e tutto funziona correttamente (HR0001 == %MW0). L'unico problema è nella lettura dei digit. Infatti non sono riuscito nè a leggere nè a scrivere sui bit %M interni al PLC...Forse non vale lo stesso discorso con le word..

Ciao,Riccardo

Inserita:

Mi correggo, pensavo di aver risolto il problema con l'OPC server Schneider ma ho scoperto che non è così.

Il supporto Schneider afferma che per leggere e scrivere gli I/O (solo di schede analogiche o digitali) bisogna utilizzare il loro OPC server a partire dalla versione 2.5.5, con le versioni precedento di OPC server e con MODBUS è possibile leggere solo le MW e io per ora ho a disposizione la versione 2.5.1020.0 del 2001 dell OPC server...

Appena avrò sottomano la versione 2.5.5 farò le prove del caso e posterò un aggiornamento alla discussione.

Ciao, Alessandro.

Inserita:

Riccardo, Nibble, gli ingressi digitali come per esempio %I1.5 si trovano a partire dagli indirizzi 100001. Per le uscite %Q è differente e non so bene, ma i bit %M sono agli indirizzi 000001. Gli ingressi analogici %IW agli indirizzi 300001. %MW agli indirizzi 400001. Ad ogni modo ricordarsi sempre il codice Modbus per la lettura di questi diversi oggetti di memoria.

Inserita:

Per "rddiego", e non solo,....

-ingressi %I appartengono alla zona variabili 100001;

-le uscite %Q, come i bit %M appartengono alla zona variabili 000001.

In particolare nell'adattamento della mappa dati TSX Micro, TSX Premium, TSX Twido "osservata/tradotta" in oggetti Modbus l'accesso è solamente disponibile (in lettura e/o scrittura, ove permesso) solo alle zona

words interne (%MWi, %MDi,...) e bits interni (%Mi).

Tutti gli altri oggetti non sono raggiungibili direttamente perchè non previsto nella "traduzione" tra zona oggetti linguaggio Uni-te (tipicamente Telemecanique) e zona oggetti linguaggio Modbus (tipicamente Modicon).

In conclusione occorre appoggiare l'appoggiabile su %MWi e %Mi e lavorare con le richieste su queste 2 zone.

Saluti.

  • 2 months later...
Inserita:

Prova a guardare il Nematron OpenView, nasce come scada ma c'è anche una versione economica che potrebbe servire allo scopo (mi pare si chiami Machine edition o qualcosa del genere). Va sia su OPC che con driver nativi per la maggior parte dei PLC.

Ciao

Crea un account o accedi per commentare

Devi essere un utente per poter lasciare un commento

Crea un account

Registrati per un nuovo account nella nostra comunità. è facile!

Registra un nuovo account

Accedi

Hai già un account? Accedi qui.

Accedi ora
×
×
  • Crea nuovo/a...