FX5 Strukturierter Text

Wicklerwelt

Level-1
Beiträge
4
Reaktionspunkte
0
Zuviel Werbung?
-> Hier kostenlos registrieren
Hallo erst einmal.
Ich bin neu hier und wie Ihr euch vorstellen könnt, bin ich aber nicht ohne Grund (ein Problem) hier gelandet.
Ich hoffe Ihr könnt mir helfen.
Als Programmierer im "Strukturiertem Text" bin ich Neuling und habe deshalb erst einmal eine erste Frage:
Ich möchte einen Eingang (oder Merker) nur für den ersten Zyklus aktivieren.
Wie mache ich das? (Mit steigender Flanke)

Bitte ganz einfach antworten. Sonst entstehen gleich wieder neue Fragen....:D:D:D:D
Gruß
Uli
 
Hallo Uli,

falls Du eine FX5U hast (Mitsubishi?), es gibt einen First Scan System - Merker, dieser ist beim ersten Zyklus high, Merker SM402

MfG

GFI
 
Zuviel Werbung?
-> Hier kostenlos registrieren
Hallo und Danke.
Vorab: Ja, ich habe eine FX5U von Mitsubishi. (Hatte ich vergessen zu erwähnen....)
Zu meiner Frage. Ich meinte, dass ein externer Eingang nur als Flanke erkannt werden soll.
Gruß
Uli
 
Bei FX5U kann man die PLS-Anweisung verwenden:
Code:
PLS(xInput1, xFlanke1);  [COLOR="#008000"]//xFlanke1 ist nur TRUE bei steigender Flanke von xInput1[/COLOR]

IF xFlanke1 THEN
  ...;
END_IF;

xOutput3:=xFlanke1 AND xInput2;
"International" programmiert man in Strukturiertem Text aber eher so:
Code:
xFlanke1 := xInput1 AND NOT xInput1_vorher;
xInput1_vorher := xInput1;  [COLOR="#008000"]//Zustand merken[/COLOR]
Dieser Code eignet sich gut für mehrfach verwendbare instanzierbare FB (Function Blocks):
Code:
FUNCTION_BLOCK R_TRIG
VAR_INPUT
  CLK : BOOL;
END_VAR
VAR_OUTPUT
  Q : BOOL;
END_VAR
VAR
  M : BOOL := FALSE;
END_VAR
  Q := CLK AND NOT M;
  M := CLK;
Code:
RTRIG_Instanz1(CLK:=xInput1);

IF RTRIG_Instanz1.Q THEN
  ...;
END_IF;

xOutput3:=RTRIG_Instanz1.Q AND xInput2;

Harald
 
Danke für die Tips. Werde es sofort austesten und hoffe, dass ich zu diesem Thema keine weitere Hilfe benötige.
Aber keine Angst, andere Probleme kommen sicherlich in der Zukunft auf euch zu....;);)

Gruß
Uli
 
Zurück
Oben