Herunterladen Inhalt Inhalt Diese Seite drucken

Beispielprogramm 4 (Lookup-Tabelle Erzeugen) - Beckhoff ELM3-Serie Kurz-Dokumentation

Messtechnik-klemmen
Inhaltsverzeichnis

Werbung

Inbetriebnahme
VAR_INPUT
   bEnable   AT%I*   :BOOL;
END_VAR
sowie die folgenden Programmzeilen erforderlich:
IF bEnable AND NOT startWrite THEN
   bWriteLUT2CoE := TRUE;
END_IF
4.3.3

Beispielprogramm 4 (LookUp-Tabelle erzeugen)

Download TwinCAT 3 Projekt: https://infosys.beckhoff.com/content/1031/elm3xxx/
Resources/2152669707.zip
Programmbeschreibung/ Funktion:
Aufnahme von LookUp-Tabellenstützwerten aus einem Eingangssignal der Klemme in eine Feldvariable
(und wahlweise anschließender Übertragung der LookUp-Tabellenstützwerte per CoE‑Zugiff in die Klemme
mittels Beispielprogramm 3).
Vorgesehen ist die Verwendung eines Rampengenerators mit Trigger-Eingang, dessen Pegel zusammen mit
einem Eingang einer digitalen Eingangsklemme (z.B. EL1002) über eine Verknüpfung die Variable
„bStartRecord" auf TRUE setzt (z.B. Taster an +24V verschaltet). Dadurch kann die Aufnahme der Werte mit
der Rampeneingangsspannung synchronisiert werden. Alternativ kann auch eine Ausgangsklemme
verwendet werden (z.B. EL2002), dessen Ausgang den Trigger-Eingang ansteuert und dann über die
Entwicklungsumgebung TwinCAT auf TRUE gesetzt wird („bStartRecord" müsste dann entsprechend als
AT%Q* deklariert werden und mit einem Ausgang der Klemme verknüpft sein).
Variablendeklaration Beispielprogramm 4
// Variablendeklaration for example program 4
PROGRAM MAIN
VAR CONSTANT
   nEndX                         : BYTE := 50; // Anzahl Stützwerte
END_VAR
VAR
   nPAISampleIn            AT%I* : DINT; // PDO PAISamples
   bStartRecord            AT%I* : BOOL; // Elektrische Verbindung zum Trigger für Rampe
   bGetMinMax                    : BOOL := FALSE;
   bRecordLUT                    : BOOL := FALSE;
   r_trigStartRecord             : R_TRIG;
   nX                            : BYTE := 0;
   aValues                       : ARRAY[0..nEndX-1] OF DINT;
   nYstepValue                   : DINT;
   tp_timer                      : TP;
   ton_timer                     : TON;
   nMinValue                     : DINT := 7812500;
   nMaxValue                     : DINT := -7812500;
   nYvalue                       : DINT;
   tRepeatTimerValue             : TIME := T#51MS;
   aLUT                          : ARRAY[0..99] OF DINT;
END_VAR
Ausführungsteil:
// Beispielprogramm 4:
// ################# Aufnahme von 50 Messpunkten: #################
// a) Ermittlung der min./max. Werte (entspricht Wertebereich des Sensors)
694
Version: 2.11
ELM3xxx

Werbung

Inhaltsverzeichnis
loading

Inhaltsverzeichnis