ich möchte die Methode einer FB-Instanz in FUP aufrufen und bekomme es irgendwie nicht hin ...
In ST ist es kein Problem, aber wie geht's in FUP ?
In ST sieht es so aus
Ergebnis := myFB.Methode( IN := TRUE, OUT => myResult);
Vielleicht hat ja jemand ein kleines Beispiel oder sonst nen Tipp.
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
Eine Methode ist wie eine Funktion und kann selbst auch einen Rückgabewert haben ...
z.B. BOOL ....
dann müsste dort wo bei dir OUT steht doch METH stehen ...
Also ich hab's mal wie unten probiert, allerdings kann ich es dann nicht übersetzen (siehe Fehlermeldungen)
Wenn ich beim Aufruf der Methode die Zuweisung zu Result_2 entferne, dann kann ich es auch übersetzen
und in die Soft-SPS laden.
Allerdings kommt dann mein erwarteter Impuls bei einer pos.Flanke von Start nicht auf Result_1 an.
Sicher mach ich irgendwo noch etwas falsch ... aber was
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
Hallo ...
ich möchte die Methode einer FB-Instanz in FUP aufrufen und bekomme es irgendwie nicht hin ...
In ST ist es kein Problem, aber wie geht's in FUP ?
In ST sieht es so aus
Ergebnis := myFB.Methode( IN := TRUE, OUT => myResult);
Vielleicht hat ja jemand ein kleines Beispiel oder sonst nen Tipp.
Hallo,
das sollte folgendermaßen aussehen:
Ok, so in etwa hab ich das auch gedacht ...
allerdings mit CoDeSys 3.4 ging's nicht.
Ich benutze inzwischen CoDeSys V 3.5 SP2 Patch 1
Eine Methode ist wie eine Funktion und kann selbst auch einen Rückgabewert haben ...
z.B. BOOL ....
dann müsste dort wo bei dir OUT steht doch METH stehen ...
Also ich hab's mal wie unten probiert, allerdings kann ich es dann nicht übersetzen (siehe Fehlermeldungen)
Wenn ich beim Aufruf der Methode die Zuweisung zu Result_2 entferne, dann kann ich es auch übersetzen
und in die Soft-SPS laden.
Allerdings kommt dann mein erwarteter Impuls bei einer pos.Flanke von Start nicht auf Result_1 an.
Sicher mach ich irgendwo noch etwas falsch ... aber was
Hi,
ich bekomme auch den gleichen Fehler, wenn die Methode einen Rückgabewert hat. In ST funktioniert der gleiche Code einwandfrei:
Result_1 := myPOU.METH(IN:= Start, OUT=> Result_2);
Das mit der Flankenerkennung funktioniert bei mir. Allerdings wird bei Deiner Implementierung Result_1 nur einen Zyklus auf TRUE stehen.