TADAM6000.StartPulse

TADAM6000 = class (TObject)Interface de TADAM6000Exemples de TADAM6000

Qubes 6.0 Démarrage du pulse d'une sortie numérique

Syntaxe

function StartPulse(numDO: Integer; lowDuration: Integer; highDuration: Integer): Boolean
numDO: numéro de la sortie numérique (entre 0 et N-1)
lowDuration: durée du niveau bas, en 1/10ème ms
highDuration: durée du niveau haut, en 1/10ème ms

Remarques

  • L'utilisation de cette fonction n'est possible que si le module possède des sorties numériques qui supportent le pulse.
  • StartPulse démarre un pulse perpétuel. Pour l'arrêter, il faut utiliser StopPulse.
  • une valeur négative pour lowDuration et highDuration sera ignorée et la propriété correspondante actuellement réglée dans le module sera conservée.
  • Il est possible de déclencher un nombre fini de pulses en utilisant SetPulse.

Exemples

uses SysUtils, Networking.ADAM;

var boitier : TADAM6000;
var lstValues : TStrings;
var i : Integer;

lstValues:=TStrings.Create;
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 de 4 pulses (créneau haut dure 1s, créneau bas dure 0.5s)
   // sur la sortie numérique n°2 (DO1)
   boitier.SetPulse(1, 500, 1000, 4, 0);

   // On attend au minimum 10 secondes (le train de 4 pulses dure 6 secondes)
   Sleep(10000);

   // Activation du pulse de la sortie numérique n°2 (DO1)
   // sans changer les paramètres temporels
   boitier.StartPulse(1, -1, -1);

   // On attend au minimum 10 secondes
   Sleep(10000);

   // Arrêt du pulse de la sortie numérique n°2 (DO1)
   boitier.StopPulse(1);
finally
   lstValues.Free;
   boitier.Free;
end;

Classification

Networking.ADAM TADAM6000