Questo argomento contiene le seguenti sezioni:
Utilizzare il nodo SCADAInput per ricevere i messaggi dai client che si connettono al broker attraverso WebSphere MQ Telemetry Transport. I client dell'unità SCADA utilizzano il protocollo MQIsdp per inviare messaggi, che sono convertiti dal nodo SCADAInput in un formato riconosciuto da WebSphere Event Broker. Il nodo inoltre stabilisce l'ambiente di elaborazione per questi messaggi.
I flussi di messaggi che gestiscono i messaggi ricevuti dalle unità SCADA devono sempre iniziare con un nodo SCADAInput. Impostare le proprietà del nodo SCADAInput per controllare come sono ricevuti i messaggi: ad esempio, è possibile indicare che un messaggio venga elaborato sotto il controllo della transazione.
Quando si distribuiscono i flussi di messaggi che contengono i nodi SCADA ad un broker, è necessario distribuirli in un singolo gruppo di esecuzione, indipendentemente dal numero dei flussi di messaggi.
Poiché l'unità SCADA esegue principalmente pubblicazione/sottoscrizione, in genere si include un nodo Publication per terminare il flusso. In scenari in cui non si desidera un nodo Publication, è possibile includere un nodo SCADAOutput. In tal caso, è necessario includere anche un nodo SCADAInput indipendentemente dall'origine dei messaggi, poiché il nodo SCADAInput fornisce le informazioni sulla connessione richieste dal nodo SCADAOutput.
Se si include un nodo di output in un flusso di messaggi che inizia con un nodo SCADAInput, questo può essere un nodo di output qualsiasi tra quelli supportati, compresi i nodi definiti dall'utente. E' possibile creare un flusso di messaggi che riceve i messaggi dalle unità SCADA e crea messaggi per i client che utilizzano tutti i trasporti supportati per collegarsi al broker, poiché è possibile configurare il flusso di messaggi per richiedere al broker di fornire tutte le conversioni necessarie.
E' possibile richiedere che il broker avvii o arresti un listener SCADA pubblicando i messaggi con un argomento specifico. Questo si può realizzare per tutte le porte o per una porta singola identificata nel messaggio.
Non è possibile utilizzare i nodi SCADAInput nei flussi di messaggi che vanno distribuiti ai sistemi z/OS.
Se si crea un flusso di messaggi da utilizzare come un flusso secondario, non è possibile utilizzare un nodo di input standard, è necessario utilizzare un'istanza del nodo Input come primo nodo per creare un terminale in per il flusso secondario.
Se il flusso di messaggi non riceve messaggi attraverso le connessioni SCADA, è possibile scegliere uno dei nodi di input supportati.
Il nodo SCADAInput è rappresentato nel workbench dalla seguente icona:
Per avere un esempio di come utilizzare questo nodo, ipotizziamo di creare un flusso di messaggi con un nodo SCADAInput che riceva messaggi da un sensore remoto quando rilevi una modifica nel proprio ambiente operativo (ad esempio, un calo della temperatura esterna). Si connette il nodo ad un nodo MQOutput che renda questi messaggi disponibili in una coda che utilizza un'applicazione WebSphere MQ che analizza e risponde alle informazioni ricevute.
Una volta inserita un'istanza del nodo SCADAInput in un flusso di messaggi, è possibile configurarla. Fare clic con il tasto destro del mouse sul nodo nella vista dell'editor e fare clic su Proprietà. Le proprietà base del nodo vengono visualizzate nella finestra di dialogo delle proprietà.
Tutte le proprietà obbligatorie, per le quali è necessario immettere un valore (quelle per le quali non è specificato un valore predefinito), sono contrassegnate con un asterisco nella finestra di dialogo delle proprietà.
Configurare il nodo SCADAInput come segue:
È possibile aggiornare lo stato del listener tramite la pubblicazione nell'argomento di controllo $SYS/SCADA/MQIsdpListener/<port_number> con la sezione relativa al Payload del messaggio impostata su ON o OFF.
Se si sta utilizzando DB2 per il database del broker, è necessario specificare un valore inferiore o pari al valore impostato per i parametri di configurazione DB2 maxappls e maxagents. Consultare Connessione ai database per ulteriori informazioni.
Utilizzare questa opzione solo se si prevede la connessione di un numero elevato di client (superiore a 200).
Fare clic su Annulla per chiudere la finestra di dialogo ed eliminare tutte le modifiche apportate alle proprietà.
SCADAInput instrada ogni messaggio che richiama con esito positivo al terminale out. Se questa operazione ha esito negativo, il messaggio è trasmesso al terminale failure; per gestire questa condizione si possono collegare nodi a questo terminale. Se il terminale failure non è stato connesso, il messaggio entra in loop continuo attraverso il nodo fino a quando non viene risolto il problema.
Se il messaggio viene rilevato da questo nodo dopo che è stata generata un'eccezione nel successivo avanzamento del flusso di messaggi, il messaggio viene instradato al terminale catch. Se il terminale catch non è stato connesso, il messaggio entra in loop continuo attraverso il nodo fino alla risoluzione del problema. Assicurarsi che sia sempre connesso un nodo a questo terminale se c'è la possibilità che il messaggio sia sottoposto a rollback all'interno del flusso di messaggi.
Quando si include un nodo SCADAInput in un flusso di messaggi, il valore impostato per Modalità transazione definisce l'eventuale ricezione dei messaggi nel punto di sincronizzazione:
(Il nodo MQOutput è l'unico nodo di output che è possibile configurare per sovrascrivere questa opzione.)
I terminali del nodo SCADAInput sono descritti nella seguente tabella.
Terminale | Descrizione |
---|---|
Failure | Il terminale di output a cui è instradato il messaggio se si verifica un errore. |
Out | Il terminale di output a cui è instradato il messaggio se è richiamato con con esito positivo dalla coda. |
Catch | Il terminale di output a cui è instradato il messaggio se viene generata un'eccezione nel proseguimento dell'elaborazione e questo nodo la rileva. |
Le seguenti tabelle descrivono le proprietà del nodo; la colonna con l'intestazione O indica se la proprietà è obbligatoria (contrassegnata con un asterisco nella finestra di dialogo delle proprietà, se è necessario immettere un valore quando non è specificato un valore predefinito), la colonna con l'intestazione C indica se la proprietà è configurabile (è possibile modificare il valore quando si aggiunge un flusso di messaggi a un file bar per distribuirlo).
Le proprietà base del nodo SCADAInput sono descritte nella seguente tabella.
Proprietà | O | C | Valore predefinito | Descrizione |
---|---|---|---|---|
Abilita listener all'avvio | Sì | No | Selezionata | Quando è avviato il listener. Se si seleziona la casella di spunta, il listener si avvia quando il flusso di messaggi è avviato dal broker. Se si deseleziona la casella di spunta, il listener si avvia all'arrivo di un messaggio sulla porta specificata. |
Porta | Sì | Sì | 1883 | La porta su cui il protocollo SCADA è in ascolto. |
Numero massimo di thread | Sì | Sì | 500 | Il numero massimo di thread da avviare per il supporto alle unità SCADA. |
Utilizza pool di thread | Sì | Sì | Deselezionata | Indica se utilizzare il pool di thread. Questa azione viene eseguita se si seleziona la casella di spunta. |
La proprietà Avanzate del nodo SCADAInput è descritta nella seguente tabella.
Proprietà | O | C | Valore predefinito | Descrizione |
---|---|---|---|---|
Modalità transazione | Sì | No | Sì | Indica se il messaggio in entrata viene ricevuto nel punto di sincronizzazione. I valori validi sono Automatico, Sì e No. |
Le proprietà Descrizione del nodo SCADAInput sono descritte nella seguente tabella.
Proprietà | O | C | Valore predefinito | Descrizione |
---|---|---|---|---|
Descrizione breve | No | No | Una breve descrizione del nodo. | |
Descrizione completa | No | No | Testo che descrive lo scopo del nodo nel flusso di messaggi. |