RCDCTL Control V1.00

 

Reference manual

V1.0 20-06-2006  WWW.QFP.IT


Il controllo gestisce tutte le funzionalità delle schede di acquisizione dati e controllo QFP Engineering OmniBus del tipo OB-RCD-XXX (Analog/Digital/Counter I/0 Module)

La comunicazione con il dispositivo è attivata dal metodo Connect ed è terminata dal metodo Disconnect , la segnalazione dell'avvenuta connessione o disconnessione è notificata rispettivamente dagli eventi Connected e Disconnected. Le proprietà Status e StatusDescription rappresentano lo stato corrente della connessione.

Il metodo GetDevicesList fornisce una lista dei dispositivi installati nel sistema. Il metodo ExplorerShow avvia il software di configurazione OmniBus Explorer, mentre DeviceDialogShow permette di variare la configurazione del dispositivo ed effettuare la diagnostica.

Per leggere gli ingressi si usano i metodi ReadInputs, ReadCounters, ReadAll, i valori letti sono disponibili nella proprietà InPort(n).

Per controllare le uscite  a relè e modificare i contatori si usa la proprietà OutPort(n) congiuntamente ai metodi  WriteOutputs, WriteCounters, WriteAll.

Di seguito è riportato l'elenco completo delle proprietà dei metodi ed degli eventi del controllo:

Proprietà Metodi Eventi

Status

StatusDescription

InPort(n)

OutPort(n)

DeviceId

DeviceDescription

SerialNumber

OutCount

Connect

Disconnect

ErrDescription

GetDevicesList

ExplorerShow

DeviceDialogShow

ReadInputs

WriteOutputs

ReadCounters

WriteCounters

ReadAll

WriteAll

Connected

Disconnected

 

 


Metodo Connect

Richiede la connessione ad un dispositivo. Se la connessione riesce viene generato l'evento Connected, altrimenti viene generato l'evento Disconnected.

Sintassi:

oggetto.Connect  DeviceId, (Optional) Account, (Optional) Password

Argomento Tipo Descrizione
DeviceId String Identificativo del dispositivo*, fa riferimento al nome che si è assegnato al dispositivo in fase di configurazione (vedi documentazione OmniBus Explorer).
Account String Opzionale, Nome account, da specificare in caso di dispositivi protetti (vedi documentazione OmniBus Explorer)
Password String Opzionale, Password di accesso per dispositivi protetti  (vedi documentazione OmniBus Explorer).

Restituisce 0 se la richiesta viene accettata, altrimenti restituisce un codice di errore che può essere decodificato con il metodo ErrDescription, in questo caso non sarà generato nè l'evento Connected nè l'evento Disconnected.

Esempio:

result = oggetto.Connect "DAQ01"

if result<>0 then msgbox oggetto.ErrDescription(result), vbExclamation

Richiede la connessione al dispositivo "DAQ01", se la richiesta non viene accettata una msgbox  descrive il motivo del rifiuto.

* In alternativa all'identificativo del dispositivo può essere usata una notazione del tipo ".\\indirizzo_server\nome_dispositivo_sul_server" (per maggiori informazioni si veda  Utilizzo dei controlli su pagine web)

<<


Metodo Disconnect

Richiede la terminazione della connessione.

Nessun Argomento, restituisce 0 se la richiesta viene accettata, altrimenti restituisce un codice di errore che può essere decodificato con il metodo ErrDescription.

<<


Metodo ErrDescription

Restituisce una stringa che contiene la descrizione del codice di errore ErrorCode

esempio: 

msgbox oggetto.ErrDescription ErrorCode

<<


Metodo GetDevicesList

Riempie una ComboBox con gli identificativi dei dispositivi installati sul sistema e supportati dal controllo.

Esempio:

oggetto.GetDevicesList ComboBox

<<


Metodo ExplorerShow

Visualizza la shell del software OmniBus Explorer

<<


Metodo DeviceDialogShow

Visualizza la finestra di dialogo di configurazione del dispositivo corrente, funziona solo dopo l'evento connected.

<<


Evento Connected

Viene generato al completamento dell'operazione di connessione richiesta con il metodo Connect. Dopo questo evento è possibile utilizzare tutte le funzionalità del dispositivo.

Sintassi:

oggetto_Connected()

<<


Evento Disconnected

Segnala all'applicazione che la comunicazione tra il dispositivo ed il controllo è terminata. Dopo questo evento non è più possibile comunicare con il dispositivo.

Sintassi:

oggetto_Disconnected (ErrorCode)

L'evento può essere causato sia da una richiesta di disconnessione (Disconnect) sia da cause esterne (es. perdita di comunicazione con un server remoto), in quest'ultimo caso ErrorCode (long) è un codice di errore che è possibile decodificare con il metodo ErrDescription

<<


Proprietà Status

Rappresenta lo stato attuale della connessione, i valori possibili sono:

Valore Significato
0 Dispositivo connesso
1 Dispositivo disconnesso
2 Dispositivo in attesa di connessione
3 Dispositivo in fase di disconnessione

<<


Proprietà StatusDescription

Di tipo String, fornisce una descrizione dello stato attuale della connessione (vedi proprietà Status)

<<


Proprietà DeviceId

Identificativo del dispositivo, fa riferimento al nome che si è assegnato al dispositivo in fase di configurazione (vedi metodo Connect, documentazione OmniBus Explorer). 

<<


Proprietà DeviceDescription

Descrizione del dispositivo, fa riferimento alla descrizione che si è assegnata al dispositivo in fase di configurazione (vedi documentazione OmniBus Explorer). 

<<


Proprietà SerialNumber

Proprietà di sola lettura, restituisce il numero di serie del dispositivo connesso. Se il dispositivo non è connesso restituisce 0.

<<


Metodo ReadInputs

Legge i valori degli ingressi e aggiorna la proprietà InPort(n).

Questo metodo aggiorna solo gli ingressi digitali e analogici, ossia le uscite 1..4 e 9..10.

Sintassi:

result = oggetto.ReadInputs

Restituisce 0 se la lettura ha avuto successo, altrimenti restituisce un codice di errore che può essere decodificato con il metodo ErrDescription.

<<


Metodo ReadCounters

Legge i valori dei contatori e aggiorna la proprietà InPort(n).

Questo metodo aggiorna solo i contatori, ossia gli ingressi 5..8.

Sintassi:

result = oggetto.ReadCounters

Restituisce 0 se la lettura ha avuto successo, altrimenti restituisce un codice di errore che può essere decodificato con il metodo ErrDescription.

<<


Metodo ReadAll

Legge i valori di tutti gli ingressi e contatori e aggiorna la proprietà InPort(n).

Sintassi:

result = oggetto.ReadCounters

Restituisce 0 se la lettura ha avuto successo, altrimenti restituisce un codice di errore che può essere decodificato con il metodo ErrDescription.

<<


Metodo WriteOutputs

Aggiorna le uscite della scheda con i valori contenuti nella proprietà OutPort(n).

Dopo questo comando, nelle proprietà OutPort(n) e InPort(n), sono disponibili i valori aggiornati delle uscite e degli ingressi.

Questo metodo aggiorna solo le uscite digitali, ossia le uscite 1..4.

Sintassi:

result = oggetto.WriteOutputs

Restituisce 0 se l'operazione ha avuto successo, altrimenti restituisce un codice di errore che può essere decodificato con il metodo ErrDescription.

<<


Metodo WriteCounters

Aggiorna i contatori con i valori contenuti nella proprietà OutPort(n).

Dopo questo comando, nelle proprietà OutPort(n) e InPort(n), sono disponibili i valori aggiornati dei contatori.

Questo metodo aggiorna solo i contatori, ossia le uscite 5..8.

Sintassi:

result = oggetto.WriteCounters

Restituisce 0 se l'operazione ha avuto successo, altrimenti restituisce un codice di errore che può essere decodificato con il metodo ErrDescription.

<<


Metodo WriteAll

Aggiorna tutte le uscite della scheda con i valori contenuti nella proprietà OutPort(n).

Dopo questo comando, nelle proprietà OutPort(n) e InPort(n), sono disponibili i valori aggiornati delle uscite e degli ingressi.

Sintassi:

result = oggetto.WriteAll

Restituisce 0 se l'operazione ha avuto successo, altrimenti restituisce un codice di errore che può essere decodificato con il metodo ErrDescription.

<<


Proprietà InPort(n)

Rappresenta il valore dell'ultima lettura effettuata con il metodo ReadInputs, ReadCounters o ReadAll sull'ingresso n*.

Gli ingressi sono:

Numero Ingresso Descrizione
1..4 Ingressi digitali
5..8 Stato dei contatori sugli ingressi digitali
9..10 Ingressi analogici 0..255

1..4 ingressi digitali, 5..8 stato dei contatori, 9-10 ingressi analgici

* n va da 1 a 10

<<


Proprietà OutPort(n)

In scrittura, rappresenta il valore che si vuole far assumere all'uscita n* quando si richiama il metodo WriteOutputs, WriteCounters o WriteAll. In lettura rappresenta lo stato corrente dell'uscita n*.

Le uscite sono:

Numero Ingresso Descrizione
1..4 Uscite a relè
5..8 Stato dei contatori

* n va da 1 ad 8

Esempio:

oggetto.OutPort(1)=1                 'ingresso 1  ON

oggetto.WriteOutputs              'Aggiorna le uscite

msgbox "Lo stato dell'uscita 1 è " & oggetto.OutPort(1)    ' Visualizza lo stato corrente dell'uscita 1

<<


Proprietà OutCount

Restituisce il numero di uscite disponibili (8). 

<<