Funktionsbaustein
Level-1
- Beiträge
- 69
- Reaktionspunkte
- 2
-> Hier kostenlos registrieren
guten morgen Alle!!!
bitte könnte jemand mir sagen, was ich falsch gemacht habe...
danke im voraus für ihre beiträge.
1-ich möchte fallende flanke eines sensors S15 zählen.
2- falls die zahl der fallenden flanke von S15 kleiner 2 ist , bei fallenden flanke von einen Positioninitiator Drahterror ausgeben;
3- beim drahterror , leerlauf , werkstückt true/ false, soll Drahterror und counter zurückgesezt werden.
code im anhang
Anhang anzeigen Bachelor1.project.pdf
bitte könnte jemand mir sagen, was ich falsch gemacht habe...
danke im voraus für ihre beiträge.
1-ich möchte fallende flanke eines sensors S15 zählen.
2- falls die zahl der fallenden flanke von S15 kleiner 2 ist , bei fallenden flanke von einen Positioninitiator Drahterror ausgeben;
3- beim drahterror , leerlauf , werkstückt true/ false, soll Drahterror und counter zurückgesezt werden.
code im anhang
Code:
FUNCTION_BLOCK ST_station4_s
2 VAR_INPUT
3 clk_S3 : BOOL ;
4 clk_S4 : BOOL ;
5 END_VAR
6 VAR_OUTPUT
7 drahtError : BOOL ;
8 END_VAR
9 VAR
10 m : BOOL ;
11 counter : INT ;
12 m1 : BOOL ;
13 m2 : BOOL ;
14 END_VAR
15
1 IF NOT clk_S3 AND m THEN // zählen der fallenden flanken von s15
2 counter := counter + 1 ;
3 ELSIF ( NOT clk_S4 AND m1 ) AND ( counter < 2 ) THEN // wenn steigende flanke von Init. und counter kleiner 2
4 drahtError := TRUE ;
5 ELSE
6 drahtError := FALSE ;
7 END_IF
8 IF drahtError AND ( bReset AND NOT m2 ) OR Leerlauf_S3 OR NOT TranferieteS13 THEN // drahterror quittieren bei Störung oder leerlauf oder bei fehlende werkstück.
9 drahtError := FALSE ;
10 counter := 0 ;
11 END_IF
12 m := clk_S3 ;
13 m1 := clk_S4 ;
14 m2 := bReset
Anhang anzeigen Bachelor1.project.pdf
Zuletzt bearbeitet: