TADAM6000.StartCounter

TADAM6000 = class (TObject)Interface de TADAM6000Exemples de TADAM6000

Qubes 6.0 Démarrage du comptage des impulsions sur une entrée numérique

Syntaxe

function StartCounter(numCounter: Integer): Boolean
numCounter: numéro du compteur (entre 0 et N-1)

Remarques

  • L'utilisation de cette fonction n'est possible que si le module possède des compteurs.
  • Si le compteur est arrêté, cela redémarre son comptage à la valeur précédente.
    Pour le remettre à zéro, il faut utiliser ResetCounter.
  • Pour arrêter le comptage, il faut utiliser StopCounter.

Exemples

uses SysUtils, Networking.ADAM;

var boitier : TADAM6000;
var i : Integer;

boitier:=TADAM6000.ConnectModbusTCP('6052', '192.168.0.30');
try
   // Attente que la connexion soit établie
   while not boitier.Connected do begin
      if i>=20 then Raise Exception.Create('Connexion impossible avec le module ADAM');
      Sleep(100);
      Inc(i);
   end;

   // Activation du compteur de l'entrée numérique n°2 (DI1)
   boitier.StartCounter(1);

   // On attend au minimum 5 secondes
   // durant lesquelles on provoque des impulsions sur l'entrée numérique n°2
   Sleep(5000);

   // On lit la valeur courante du compteur
   InformationDlg(IntToStr(boitier.ReadCounterValue(1)));

   // On attend au minimum 5 secondes
   // durant lesquelles on provoque des impulsions sur l'entrée numérique n°2
   Sleep(5000);

   // On arrête le comptage
   boitier.StopCounter(1);

   // On relit le compteur
   InformationDlg(IntToStr(boitier.ReadCounterValue(1)));

   // On réinitialise le compteur
   boitier.ResetCounter(1);

   // Autre exemple : on lit le statut d'overflow du compteur
   InformationDlg(IntToStr(boitier.ReadCounterProperty(1, 2)));

   // Autre exemple : on réinitialise le Latch Status
   boitier.WriteCounterProperty(1, 3, 0);
finally
   boitier.Free;
end;

Classification

Networking.ADAM TADAM6000