LIBPFonOPC® Manuale di manutenzione e uso

Questo documento è il manuale di manutenzione e d’uso per soluzioni on-line LIBPFonOPC® sviluppate con LIBPF® (LIBrary for Process Flowsheeting) versione 1.1. È anche disponibile in inglese.

Si rimanda al Manuale di installazione di LIBPFonOPC® per maggiori informazioni sul sistema di sviluppo, l’architettura e le funzionalità di LIBPFonOPC®.

Concetti

Variabili

Le variabili sono così classificate:

  1. input: variabili acquisite in lettura dal Distributed Control System (DCS), almeno una;

  2. result: risultati cioè variabili scritte verso il DCS, facoltative;

  3. constant: parametri costanti per il calcolo, facoltativi.

Ciascuna variabile di tipo input o result contraddistingue quindi un link puntuale tra un TAG del DCS ed una variable di LIBPF.

Tutte le variabili (input, result o constant che siano) devono contenere tutti i seguenti elementi:

Grandezza fisica Unità ammesse
Temperatura C (note: without degree symbol °)
K
Portata massica t/h
kg/h
kg/s
Pressione barg
bar
atm
Velocity m/s
Densità di massa kg/m3
Dimensione lineare (lunghezza/diametro) m
mm
Potenza kW
Calore di reazione kcal/kg
Corrente elettrica A
Tensione elettrica V

In aggiunta gli item di tipo input o result possono contenere i seguenti elementi opzionali:

Se i campi min e max sono impostati a dei valori finiti e non ai valori di difetto, essi vengono usati per mantenere le variabili all’interno di range ammissibili:

Se i valori min / max sono inconsistenti (max <= min) viene inviato un messaggio di segnalazione nel registro eventi e ambedue i valori vengono resettati al valore di difetto.

Variabili in LIBPF

Per compilare correttamente l’elemento TAG di ogni variabile va indicato il percorso completo in LIBPF.

Le variabili LIBPF® possono essere scalari (temperatura, portata) o vettoriali (composizioni, portate per ogni componente); le seconde vengono indicizzate con gli identificativi dei componenti: x[H2], mdotcomps[N2].

L’elenco del componenti presenti è definito una volta per tutte durante la realizzazione dell’applicativo, per modificare in seguito la scelta dei componenti è necessaria la ricompilazione dell’applicativo.

Negli esempi seguenti i componenti disponibili con i rispettivi identificativi sono riportati in questa Tabella:

Componente Identificativo in LIBPF®
Azoto N2
Etano C2H6
Propano C3H8
Idrogeno H2

Le variabili sono raggruppate in oggetti che sono instanze di tipi, e che possono contenere a loro volta dei sotto-oggetti.

Quando si vuole referenziare una variabile mdot contenuta in un oggetto di tipo Phase denominato Tphase contenuto nell’oggetto di tipo StreamEosVapor denominato S01, la sintassi prevede di separare gli identificatori dei modelli con il carattere due punti (:) e alla fine la variabile con un punto (.); in questo esempio il percorso completo della variabile sarà:

S01:Tphase.mdot

I tipi utilizzati in LIBPFonOPC® sono i tipi generici LIBPF® (si veda la LIBPF® SDK Classes overview (inglese)):

e in aggiunta i tipi specifici sviluppati per la soluzione.

Il tipo Phase e suoi derivati definiscono una fase omogenea di materia, e contengono le variabili scalari riportate in questa tabella:

Scalar Variable Identificativo in LIBPF®
Portata massica mdot
Portata volumica vdot
Portata molare ndot
Peso molecolare medio AMW
Volume molare v
Densità massica rho
Entalpia specifica, per unità di massa h
Entalpia specifica, per unità di moli H
Calore specifico, per unità di massa cp
Calore specifico, per unità di moli Cp
Entropia specifica, per unità di massa s
Entropia specifica, per unità di moli S
Energia libera di Gibbs specifica, per unità di massa g

e le variabili vettoriali riportate in questa tabella:

Variabile vettoriale indicizzata dall’identificativo del componente Identificativo in LIBPF®
Frazione molare x
Frazione massica w
Portata massica di ciascun componente mdotcomps
Portata molare di ciascun componente ndotcomps

I tipi StreamEosVapor e StreamPcsaftVapor definiscono una corrente materiale in fase vapore con le proprietà volumetriche determinate con l’equazione di stato di Kwong, Redlich e Soave ovvero con PC-SAFT rispettivamente.

Contengono le seguenti variabili scalari:

e inoltre un oggetto di tipo Phase opportuno per la fase totale (vapore) denominato Tphase.

I tipi StreamEosLiquidVapor e StreamPcsaftLiquidVapor definiscono una corrente materiale bifasica (vapore / liquido) con le proprietà volumetriche ed i coefficienti di fugacità determinati con l’equazione di stato di Kwong, Redlich e Soave ovvero PC-SAFT rispettivamente.

Contengono le seguenti variabili scalari:

Inoltre contengono i seguenti sotto-oggetti:

Gruppi

L’interfaccia con il DCS è basata su gruppi di variabili (groups**)**, corrispondenti a set di dati omogenei o riferiti alla stessa unità impiantistica; deve essere presente almeno un gruppo.

Ogni gruppo deve:

I gruppi possono inoltre avere gli attributi opzionali description ed enabled.

La suddivisione delle variabili in gruppi permette di:

L’attributo obbligatorio id è l’identificativo del gruppi sia nei confronti del server OPC sia ai fini dell’instanziazione del corrispondente modello LIBPF. Pertanto è soggetto ai seguenti vincoli:

  1. Deve essere unico;

  2. È case-sensitive;

  3. Deve iniziare con un carattere alfabetico (solo caratteri UNICODE stampabili);

  4. I caratteri successivi devono essere alfanumerici oppure spazio, underscore _ trattino -, parentesi quadra aperta [ o chiusa ].

L’attributo obbligatorio model determina il tipo di modello LIBPF, a scelta tra i tipi specifici per l’applicativo on-line.

L’attributo description è facoltativo e permette di aggiungere una descrizione testuale al gruppo.

Attraverso l’attributo facoltativo enabled i gruppi possono essere abilitati (true oppure 1) oppure disabilitati (enabled=false oppure 0), in difetto dell’attributo sono considerati abilitati. Abilitati vuol dire che vengono configurati con il server OPC e viene fatto il calcolo, disabilitati vuol dire che vengono solo configurati con il server OPC; se i gruppi (abilitati o disabilitati che siano) contengono dei tag invalidi, ci saranno inizialmente degli errori del tipo “Configuration error: impossible to add OPC link [XXXXXX.YY] for group [ZZZZZZZZ]” quindi vengono scollegati in maniera definitiva poiché in ogni caso sarà sempre e comunque impossibile abilitarli.

Funzionamento

Una soluzione on-line basata su LIBPFonOPC® può funzionare in due modalità:

La modalità console è utile per il troubleshooting ed è descritta nel relativo capitolo.

Nella modalità di funzionamento come servizio l’applicativo non ha accesso a finestre grafiche o in modo testo visibili, non scrive alcun file e non interagisce in nessun modo diretto con l’utente. L’interazione con l’applicativo in funzionamento in questo caso avviene indirettamente tramite:

Configurazione e controllo attraverso il Control Panel

Il configuratore LIBPFonOPC è un’interfaccia interattiva per il controllo del servizio dell’applicativo on-line e la sua configurazione, che può essere usata in alternativa ai metodi manuali descritti al capitolo “Configurazione manuale”.

L’accesso al configuratore avviene attraverso il Control panel cliccando su “LIBPFonOPC Configurator” nella categoria “Sistema e sicurezza”:

control panel

Il configuratore presenta un’interfaccia con tre linguette:

  1. Avvia / arresta: per visualizzare lo stato del servizio LIBPFonOPC®, avviarlo o arrestarlo;

  2. Configura: per modificare le impostazioni generali del servizio LIBPFonOPC®;

  3. Variabili: per visualizzare, modificare, importare ed esportare le variabili ed i gruppi di variabili.

Avvia / arresta

Dalla linguetta Avvia / arresta è possibile visualizzare lo stato del servizio LIBPFonOPC®:

start stop

Sono inoltre presenti due bottoni:

Quando il servizio è in esecuzione, il bottone avvia è disattivato, mentre quando il servizio è arrestato, il bottone arresta è disattivato.

Quando si preme su uno di questi bottoni, il cursore diventa una clessidra finché il comando è andato a buon fine o comunque entro un certo time-out.

Al termine del comando o in caso di mancata risposta dal servizio, un messaggio viene mostrato nella barra di stato.

Nota: All’uscita del servizio vengono interrotti i collegamenti, eliminati tutti i riferimenti agli oggetti (in particolare gli handles ai gruppi sul server OPC) e chiusi i modelli.

Impostazioni

Nella linguetta impostazioni è possibile modificare le impostazioni generali del servizio LIBPFonOPC®:

settings

Le variabili che possono essere configurate sono:

Le impostazioni alfanumeriche possono essere modificate direttamente scrivendo il nuovo valore nel campo, o per l’impostazione sleepTime muovendo la barra di scorrimento (slidebar). Nel caso dei percorsi home_path e kernel_path, la modifica avviene premendo sul bottone con l’icona della cartella folder, e navigando alla cartella che interessa.

Le modifiche vengono immediatamente scritte nel registro di sistema, pertanto non è presente in questa maschera un bottone “applica” o “salva”. Tuttavia affinché le modifiche abbiano un effetto, è necessario un riavvio del servizio (che deve essere effettuato a cura dell’utente).

Dopo che ogni modifica è stata scritta nel registro di sistema, viene mostrato un messaggio di conferma nella barra di stato, ad esempio: “Key [sleepTime] set to 1; restart service to make change effective“.

Variabili

Dalla linguetta variabili è possibile consultare e modificare interattivamente i gruppi e le variabili come definite nel file settings.xml corrente, quindi premendo “Salva” si salvano su disco le modifiche:

variables

I gruppi e le variabili si possono consultare cliccando prima sul gruppo nel pannello sinistro; ad esempio nella figura seguente è stato selezionato il gruppo “E200”:

group selection

nel pannello destro vengono mostrate le variabili (input, risultati e costanti) del gruppo selezionato.

Le modifiche ai gruppi esistenti si fanno modificando direttamente la check box di attivazione/disattivazione, la descrizione e il modello (per quest’ultimo appare una pull-down list con i modelli disponibili); per entrare in modalità modifica nei campi alfanumerici, cliccare una volta ed attendere un secondo.

Nella figura precedente ad esempio i gruppi “E200” ed “S500” sono stati attivati.

Non appena qualche variabile o qualche gruppo vengono cambiati, viene mostrato un messaggio nella barra di stato: “Modifiche non salvate“ e il bottone “Salva” diventa attivo.

Per aggiungere un nuovo gruppo si clicca sul tasto col simbolo add in blu a sinistra della riga vuota in fondo; in questo modo viene creato un nuovo gruppo con impostazioni predefinite:

group add

che possono essere modificate – in particolare almeno l’id e il modello devono essere obbligatoriamente impostati:

Per eliminare un gruppo esistente si clicca sul tasto col simbolo delete in rosso a sinistra della riga corrispondente.

Per riordinare i gruppi si usano i comandi “Move up” / “Move down” disponibili cliccando col tasto destro del mouse su ciascun gruppo.

Le modifiche alle variabili esistenti si fanno modificando direttamente l’OPC tag, la descrizione, il LIBPF tag, le unità di misura (per le unità di misura appare una pull-down list con le unità disponibili), e i limiti ammissibili inferiore e superiore; per entrare il modalità modifica in questi campi, cliccare una volta ed attendere un secondo.

Per aggiungere una nuova variabile si clicca sul tasto col simbolo add in blu a sinistra della riga vuota; in questo modo viene creata una nuova variabile con impostazioni predefinite:

variable add

che possono essere modificate – in particolare almeno i campi OPC tag, Description, LIBPF tag e UOM devono essere impostati.

Per eliminare una variabile esistente si clicca sul tasto col simbolo delete in rosso a sinistra della riga corrispondente.

Per riordinare le variabili si usano i comandi “Move up” / “Move down” disponibili cliccando col tasto destro del mouse su ciascuna variabile.

Le modifiche non vengono immediatamente salvate sul file settings.xml, pertanto deve essere premuto il bottone “salva”. Tuttavia affinché le modifiche abbiano un effetto, è necessario anche un riavvio del servizio (che deve essere effettuato a cura dell’utente).

Un volta salvate le modifiche su disco, viene mostrato nella barra di stato il messaggio: “Settings.xml file overwritten; restart service to make changes effective“.

Inoltre è possibile:

Configurazione e controllo manuale

In alternativa al configuratore di LIBPFonOPC è possibile configurare e controllare manualmente la

File settings.xml

La configurazione dei gruppi di variabili (inputs, risultati e costanti) con associato il modello di calcolo, può essere effettuata manualmente per mezzo del file di testo di configurazione settings.xml in codifica UNICODE UTF-8, che si trova sul disco al percorso completo definito dalla variabile home_path (tipicamente C:\ProgramData\LIBPF 1.0).

La costruzione o l’adattamento del file settings.xml deve quindi essere fatta a tavolino prima di usare LIBPFonOPC®. Le modifiche al file hanno effetto soltanto quando si lancia nuovamente l’applicazione LIBPFonOPC® in modalità console oppure quando si riavvia il servizio.

Per evitare errori il file di configurazione vero e proprio è accompagnato dai due files ausiliari (che non devono essere manipolati dall’utente): schema.xsd (per la validazione della sintassi dell’XML validation schema; https://www.w3.org/TR/xmlschema-2/) e stylesheet.xml (per la visualizzazione in forma user-friendly e il controllo della congruenza interna).

Per la visualizzazione del file di configurazione settings.xml usa un HTML compatibile con i files XSLT come Internet Explorer, Firefox o Safari; il file apparirà così:

settings list

in questa lista i gruppi non attivi sono visualizzati in azzurro. Cliccando su un gruppo è possibile vedere i dettagli:

settings detail

NOTE: Opera, Google Chrome e Chromium non sono supportati a causa di questo bug; Microsoft Edge non è supportato.

Per piccole modifiche incrementali del file di configurazione si consiglia l’uso dell’utility freeware Microsoft XML Notepad (https://microsoft.github.io/XmlNotepad/), mentre per le modifiche massicce (copia e incolla etc.) è più pratico un comune editor di testo (es. Notepad).

La figura seguente mostra il file durante l’editing all’interno di XML Notepad, con gli ausili alla composizione:

XML Notepad

Se il file di configurazione non è corretto sintatticamente, vengono riportati errori o warnings nel registro eventi “Applicazione” del sistema operativo ed i collegamenti non vengono abilitati.

In generale i descrittivi testuali (tag, etichette, descrizioni) non sono soggetti a limiti di lunghezza, e possono contenere qualsiasi carattere speciale (àèìòù, caratteri grafici, cirillico, greco..) grazie alla codifica UNICODE UTF-8.

La struttura generale del file di configurazione settings.xml è la seguente:

LIBPFOPC019

Il file è organizzato in gruppi, ognuno associato ad un modello, e all’interno di ogni gruppo in variabili input, output e costanti.

Un file settings.xml dimostrativo nel formato XML grezzo potrebbe avere il seguente aspetto:

<?xml version="1.0" encoding="utf-8"?>
<?xml-stylesheet type="text/xsl" href="stylesheet.xsl"?>
<groups xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="schema_dummy.xsd">
  <group id="200" enabled="true" description="Esterification section 200" model="ReactorEsterification">
    <input>
      <OPCtag>TRC201.PV</OPCtag>
      <description>Reactor inlet temperature</description>
      <TAG>R200.T</TAG>
      <UOM>m</UOM>
    </input>
    <input>
      <OPCtag>PRC204.PV</OPCtag>
      <description>Reactor pressure</description>
      <TAG>R200.P</TAG>
      <UOM>barg</UOM>
    </input>
    <input>
      <OPCtag>FIC210.PV</OPCtag>
      <description>Total mass flow</description>
      <TAG>S04.mdot</TAG>
      <UOM>t/h</UOM>
    </input>
    <input>
      <OPCtag>X208.PV</OPCtag>
      <description>Solvent mass fraction</description>
      <TAG>S02:Tphase.w[S]</TAG>
      <UOM></UOM>
    </input>
    <result>
      <OPCtag>X298.PV</OPCtag>
      <description>Predicted fractional conversion</description>
      <TAG>R200:reactions[4].z</TAG>
      <UOM>mm</UOM>
    </result>
  </group>
</groups>

Avvio / arresto del servizio

Aprire l’applet Microsoft management console relativo ai servizi da Start → Pannello di controllo → Strumenti di amministrazione → Servizi ed avviare / arrestare il servizio:

LIBPFOPC020

Nota: All’uscita del servizio vengono interrotti i collegamenti, eliminati tutti i riferimenti agli oggetti (in particolare gli handles ai gruppi sul server OPC) e chiusi i modelli.

Registro del sistema operativo

La configurazione dei parametri principali che controllano il funzionamento di LIBPFOPC può anche avvenire direttamente tramite il registro del sistema operativo.

Le chiavi rilevanti sono in HKEY_LOCAL_MACHINE\Software\libpf.com\LIBPF 1.0:

LIBPFOPC021

Troubleshooting

Traccia

La traccia (trace) è una diagnostica dettagliata sul funzionamento del programma.

LIBPFOPC ha due tipi di traccia:

T1) traccia del modulo LIBPFonOPC® e del programma principale;

T2) traccia dei calcoli eseguiti dal modulo LIBPF® CORE.

La traccia T1 viene inviata normalmente a console, oppure ad una named pipe se qualcuno è in ascolto. La named pipe di difetto è locale: \\.\pipe\LIBPFTrace; utilizzando le voci di registro tracePipe e traceServer è possibile cambiare il nome della named pipe e la workstation remota su cui verrà tentata la connessione. In questo caso occorre che l’utente in nome del quale viene lanciato il programma LIBPFonOPC® (normalmente l’account locale sul server NT AUTHORITY/SYSTEM in caso di funzionamento come servizio) abbia le credenziali necessarie ad aprire la named pipe sulla workstation remota. È possibile ad esempio avviare il servizio come un account di dominio dotato di appropriati diritti d’accesso.

Per richiedere la traccia occorre aprire l’utility TraceListener.exe prima di avviare il servizio, con doppio-click sul collegamento Start → Programmi → LIBPF 1.0 → Trace Listener.

La traccia T2 invece viene inviata unicamente a console quindi per poterla vedere è necessario avviare LIBPFonOPC® in modalità console (vedi paragrafo successivo).

Funzionamento in modalità console

Per poter vedere sia la traccia T1 che la traccia T2, invece di avviare LIBPFonOPC® come servizio, avviare tramite il collegamento Start → Programmi → LIBPF 1.0 → LIBPFonOPC console.

Se necessario salvare su file la traccia inviata a console, aprire una finestra di Prompt dei comandi, cambiare la directory corrente a C:\Programmi\LIBPF 1.0 (oppure C:\Programmi (x86)\LIBPF 1.0 se la versione a 32 bit di LIBPFonOPC viene installata su un sistema operativo a 64 bit) ed eseguire il programma con i comandi:

cd C:\Programmi\LIBPF 1.0
LIBPFonOPC -console > %USERPROFILE%Desktop\log.txt

Il programma può essere fermato premendo il tasto q (lettera Q minuscola) quando il focus è sulla console dove sta eseguendo.

Chiudendo in questo modo LIBPFonOPC in modalità console, elimina tutti i riferimenti agli oggetti (in particolare gli handles ai gruppi sul server OPC), chiude la simulazione, interrompe il collegamento con il server OPC e infine chiude l’applicazione. Se invece la console dove è in esecuzione LIBPFonOPC viene chiusa direttamente, non vengono liberate le risorse sul server OPC, la qual cosa potrebbe portare a problemi con certe implementazioni del server OPC.

Codici d’uscita

L’applicativo al termine di una girata in modalità console senza errori uscirà con il codice 0. I codici di uscita negativi sono associati ad errori irreversibili:

Codice di uscita Messaggio a registro eventi
-10 MSG_DEMO_EXPIRED
-11 MSG_CONNECTION_ERROR1
-12 MSG_CONNECTION_ERROR2
-13 MSG_CONNECTION_ERROR3
-14 MSG_VALIDATION
-15 MSG_XML_INSTANCE
-16 MSG_MISSING_ID
-17 MSG_MISSING_MODEL
-18 MSG_SELECT_NODES
-19 MSG_UNKNOWN_NAME
-20 MSG_SCDISPATCHER_FAIL
-21 MSG_INCORRECT_NAME
-22 MSG_SSSTATUS_FAIL

Quando il programma genera un errore irreversibile, dovrebbe anche inviare un messaggio al registro eventi “Applicazione” del sistema operativo.

Si rimanda alla sezione successiva “Errori” per le azioni correttive da prendere caso per caso.

Event logging: categorie e tipi di messaggi

I messaggi a registro eventi “Applicazione” sono di quattro tipi (classificazione definita dal sistema operativo):

  1. Errori

  2. Warning

  3. Informazioni

  4. Successo

Inoltre i messaggi emessi da LIBPFonOPC® sono catalogati in quattro categorie:

  1. XML: legati alla validazione e scansione del file settings.txt

  2. OPC: legati alla comunicazione con il server OPC

  3. LIBPF: legati a LIBPF® CORE

  4. General: legati alla connessione alla named pipe, alla gestione della comunicazione con il SCM (Service Control Manager), alla scadenza della licenza d’uso dell’applicativo, notifica di avvio e chiusura.

Errori

Codice di uscita Nome simbolico Errore Suggerimenti ed azioni correttive
-10 MSG_DEMO_EXPIRED Sorry, this demo has expired. Verificare la presenza di una valida licenza d’uso dell’applicativo LIBPFonOPC.
-11 MSG_CONNECTION_ERROR1 Connection error: the interface [%1] is not registered L’OPC server non è correttamente installato oppure la voce di registro HKEY_LOCAL_MACHINE\SOFTWARE\libpf.com\LIBPF\CLSID è settata incorrettamente.
-12 MSG_CONNECTION_ERROR2 Connection error: impossible to get a pointer to the IOPCServer interface for [%1] Errore interno OPC: l’OPC server non è correttamente installato.
-13 MSG_CONNECTION_ERROR3 Connection error: impossible to get a pointer to the IOPCCommon interface for [%1] Errore interno OPC: l’OPC server non è correttamente installato.
-22 MSG_INCORRECT_NAME Incorrect variable name Errore interno: la funzione linkmap è stata chiamata con un TAG inesistente.
-16 MSG_MISSING_ID Missing id for group [%1] Manca l’attributo obbligatorio id per uno dei gruppi nel file settings.xml. Rivedere la sintassi del file di configurazione.
-17 MSG_MISSING_MODEL Missing model for group [%1] Manca l’attributo obbligatorio model per uno dei gruppi nel file settings.xml. Rivedere la sintassi del file di configurazione.
-21 MSG_SCDISPATCHER_FAIL StartServiceCtrlDispatcher failed. Si è tentato di avviare il programma direttamente. Avviare come servizio oppure se si desidera far partire in una console, usare il parametro a linea di comando “-console”.
-19 MSG_SELECT_NODES Error while calling selectNodes /groups/group Errore grave nel file settings.xml. Rivedere la sintassi del file di configurazione.
-22 MSG_SSSTATUS_FAIL SetServiceStatus failed. Errore interno nella comunicazione con il SCM (Service Control Manager).
-20 MSG_UNKNOWN_NAME Unknown name Uno degli elementi item aveva un sotto-elemento non ammesso nel file settings.xml. Rivedere la sintassi del file di configurazione.
-14 MSG_VALIDATION XML Validation: %1 Il file settings.xml non è stato trovato oppure non è un file XML corretto. Verificare la presenza del file nella posizione home_path oppure rivedere la sintassi del file di configurazione.
-15 MSG_XML_INSTANCE Error while instantiating MSXML2::DOMDocument60 Il componente MSXML 6.0 non è correttamente installato sul computer. Scaricare dal sito Microsoft ed installare.

Avvisi

Nome simbolico Errore Suggerimenti ed azioni correttive
MSG_CONFIGURATION Configuration error: impossible to add OPC link [%1] for group [%1] Rivedere la sintassi per l’item indicato, e verificare che sia correttamente configurato sull’OPC server.
MSG_CONVERGENCE Convergence for group [%1], the values of the input variables were: [%2] Errore interno LIBPF CORE. Raccogliere i valori per le variabili di ingresso e comunicare il problema al supporto.
MSG_CORE Severe error in LIBPF CORE [%1] in group [%2] Errore interno LIBPF CORE. Raccogliere i valori per le variabili di ingresso e comunicare il problema al supporto.
MSG_GROUP_ACTIVATE Error activating group [%1] Errore interno OPC.
MSG_GROUP_ADD1 Error adding group [%1] Errore interno OPC.
MSG_GROUP_ADD2 Group add error: NULL pointer to the IOPCItemMgt interface for group [%1] Errore interno OPC.
MSG_GROUP_ADD3 Group add error: NULL pointer to the IOPCGroupStateMgt interface for group [%1] Errore interno OPC.
MSG_GROUP_DEACTIVATE Error deactivating group [%1] Errore interno OPC.
MSG_GROUP_REMOVE Error removing group [%1] Errore interno OPC.
MSG_SYNCH_READ1 Synchronous read error: impossible to read item [%1] [%2] Rivedere la sintassi per l’item indicato, e verificare che sia correttamente configurato sull’OPC server.
MSG_SYNCH_READ2 Synchronous read error: NULL value for item [%1] [%2] Rivedere la sintassi per l’item indicato, e verificare che sia correttamente configurato sull’OPC server.
MSG_SYNCH_WRITE Synchronous write error: impossible to write item [%1] [%2] Rivedere la sintassi per l’item indicato, e verificare che sia correttamente configurato sull’OPC server.
MSG_TRACEPIPE_CONNECT Problem while connecting to trace pipe: [%1] Non sembra essere raggiungibile la named pipe per la traccia. È possibile ignorare questo avviso.
MSG_UNKNOWN_ATTRIBUTE Unknown attribute [%1] È stato rilevato un attributo di troppo per uno dei gruppi nel file settings.xml. Rivedere la sintassi del file di configurazione.
MSG_UNKNOWN_ATTRIBUTE_VALUE Unknown value [%1] for attribute [%2] Il valore assegnato all’attributo per uno dei gruppi nel file settings.xml è incomprensibile. Rivedere la sintassi del file di configurazione.
MSG_UNKNOWN_TAGTYPE Unknown tag type %1 All’interno di ogni gruppo nel file settings.xml sono ammessi solo elementi di tipo input, result oppure constant. Rivedere la sintassi del file di configurazione.
MSG_MINMAX Max is less or equal to min for item %1 I limiti specificati per il range di validità della variabile sono inconsistenti. Il programma resetterà min e max ai valori di difetto. Rivedere i dati inseriti nel file di configurazione.

Informazioni (information e success)

Non è normalmente richiesta alcuna azione correttiva specifica per questi messaggi.

Nome simbolico Errore Suggerimenti ed azioni correttive
MSG_SYNCH_READ_MAXERR Too many read errors for item [%1] [%2] any further error will be silenced Per il tag OPC indicato è stato ecceduto il numero massimo di avvisi per errori di lettura. Ulteriori problemi non saranno segnalati nel registro eventi.
MSG_SYNCH_WRITE_MAXERR Too many write errors for item [%1] [%2] any further error will be silenced Per il tag OPC indicato è stato ecceduto il numero massimo di avvisi per errori di scrittura. Ulteriori problemi non saranno segnalati nel registro eventi.
MSG_CONNECTION_OK Successfully connected to OPC Driver [%1] -
MSG_DISCONNECTION_OK Successfully disconnected from OPC Driver -
MSG_OPERATION_STARTED Started processing data -
MSG_OPERATION_STOPPED Stopped processing data -
MSG_CONVERGENCE_MAXERR Too many convergence errors for group [%1] any further error will be silenced Per il gruppo indicato è stato ecceduto il numero massimo di avvisi per errori di convergenza. Ulteriori problemi non saranno segnalati nel registro eventi.