TADAM6000.ReadAllValues

TADAM6000 = class (TObject)Interface de TADAM6000Exemples de TADAM6000

Qubes 6.0 Lecture de toutes les données possibles du module ADAM6000

Syntaxe

procedure ReadAllValues(lstValues: TStrings)
lstValues: TStrings contenant les données lues

Remarques

Les données lues dépendent du modèle de module ADAM connecté.
Elles sont renvoyées dans une TStrings sous la forme Nom=Valeur.
NB : les données préalablement contenues dans la TStrings sont remplacées.

Si le module possède :

  • N entrées numériques (DI), leurs noms seront de la forme 'DIx', où x est un nombre entier de 0 à N-1
  • N sorties numériques (DO), leurs noms seront de la forme 'DOx', où x est un nombre entier de 0 à N-1
  • N entrées analogiques (AI), leurs noms seront de la forme 'AIx', où x est un nombre entier de 0 à N-1
  • N sorties analogiques (AO), leurs noms seront de la forme 'AOx', où x est un nombre entier de 0 à N-1
  • N drapeaux dans la GCL, leurs noms seront de la forme 'GCLFlagx', où x est un nombre entier de 0 à N-1

Exemple : si le module possède 8 entrées numériques (DI), elles seront nommées DI0 à DI7.

Si le module possède la fonctionnalité :

  • compteurs sur les entrées numériques, leurs noms seront de la forme 'DICounterx', où x est le numéro de l'entrée numérique correspondante
  • fréquence (en 1/10ème Hz) sur les entrées numériques, leurs noms seront de la forme 'DIFrequencyx', où x est le numéro de l'entrée numérique correspondante
  • pulse sur les sorties numériques, leurs noms seront de la forme 'DOPulseLowx' (durée du niveau bas, en 1/10ème ms), 'DOPulseHighx' (durée du niveau haut, en 1/10ème ms), 'DOPulseAbsolutex' (nombre de pulses), 'DOPulseIncrementalx' (nombre de pulses complémentaires), où x est le numéro de la sortie numérique correspondante
  • calcul de la moyenne des entrées analogiques, son nom sera 'AIMoy'
  • statuts des entrées analogiques, leurs noms seront de la forme 'AIStatusx', où x est le numéro de l'entrée analogique correspondante
  • détection des burn-out des entrées analogiques, leurs noms seront de la forme 'AIBurnoutFlagx', où x est le numéro de l'entrée analogique correspondante
  • alarme sur dépassement de seuil haut de la moyenne des entrées analogiques, son nom sera de la forme 'AIHighAlarmFlagMoy'
  • alarme sur dépassement de seuil bas de la moyenne des entrées analogiques, son nom sera de la forme 'AILowAlarmFlagMoy'
  • alarme sur dépassement de seuil haut des entrées analogiques, leurs noms seront de la forme 'AIHighAlarmFlagx', où x est le numéro de l'entrée analogique correspondante
  • alarme sur dépassement de seuil bas des entrées analogiques, leurs noms seront de la forme 'AILowAlarmFlagx', où x est le numéro de l'entrée analogique correspondante
  • historisation du maximum de la moyenne des entrées analogiques, son nom sera 'AIHistoricalMaxMoy'
  • historisation du minimum de la moyenne des entrées analogiques, son nom sera 'AIHistoricalMinMoy'
  • historisation du maximum des entrées analogiques, leurs noms seront de la forme 'AIHistoricalMaxValuex', où x est le numéro de l'entrée analogique correspondante
  • historisation du minimum des entrées analogiques, leurs noms seront de la forme 'AIHistoricalMinValuex', où x est le numéro de l'entrée analogique correspondante
  • réinitialisation du maximum de la moyenne des entrées analogiques, son nom sera 'AIResetHistoricalMaxMoy'
  • réinitialisation du minimum de la moyenne des entrées analogiques, son nom sera 'AIResetHistoricalMinMoy'
  • réinitialisation du maximum des entrées analogiques, leurs noms seront de la forme 'AIResetHistoricalMaxValuex', où x est le numéro de l'entrée analogique correspondante
  • réinitialisation du minimum des entrées analogiques, leurs noms seront de la forme 'AIResetHistoricalMinValuex', où x est le numéro de l'entrée analogique correspondante

Exemples

uses SysUtils, Networking.ADAM;

var lstValues := TStrings.Create;

var boitier := TADAM6000.ConnectModbusTCP('6052', '192.168.0.30');

// Attente que la connexion soit établie
var i := 0;
while not boitier.Connected do begin
   if i>=20 then
      raise Exception.Create('Connexion impossible avec le module ADAM');
   Sleep(100);
   Inc(i);
end;
// Lecture de toutes les valeurs
boitier.ReadAllValues(lstValues);
// Affichage des valeurs
InformationDlg(lstValues.Text);

Classification

Networking.ADAM TADAM6000