TIA R_TRIG ohne Funktion

Beckx-net

Level-1
Beiträge
132
Reaktionspunkte
18
Zuviel Werbung?
-> Hier kostenlos registrieren
Hallo zusammen,

ich habe ein Problem mit einer Flankenauswertung in Verbindung mit einer S7-1212 AC/DC/Rly (FW3.0) Steuerung eines Kunden.
Ich habe einen Funktionsbaustein (ST) geschrieben, der sowohl für eine 1500er, sowie für S7-1200 Steuerungen einsetzbar ist. Dieser Baustein verwendet zum erzeugen einer pos. Flanke den Baustein R_TRIG. Auf meiner S7-1513-1 PN und sowie meiner S7-1212C DC/DC/DC (FW3.0.2) funktioniert dieser Baustein ohne Probleme.

Programmaufruf:
Code:
Req : Bool; (*Input*)
fbFPReq : R_TRIG; (*Statischer Bereich*)

(*Flankenerzeugung*)
#fbFPReq(CLK:= #Req);

(*Abfrage*)
IF #fbFPReq.Q THEN
 ...
END_IF;

Erst nachdem ich den Baustein beim Kunden auf eine manuelle Flankenerzeugung umgebaut habe war die Funktion gegeben.
Hatte einer von euch schon mal ein ähnliches Problem?

Beim meiner Websuche ist mir folgendes Dokument in die Hände gefallen, wo auf Seite 7 beschrieben ist, dass der R_TRIG Baustein nur für KOP/FUP einsetzbar ist (habe ich das richtig interpretiert?)
http://support.automation.siemens.c...5_HB/s7_1500_compare_table_de_mnemo_de_DE.pdf

Ich habe mehrere Funktionsbausteine, welche den R_TRIG verwenden im Umlauf. Ist es ratsam diese auf eine manuelle Flankenauswertung umzubauen?

Vielen Dank für euer Feedback...
Andreas
 
Hallo zusammen,

anbei die Antwort von Siemens:
Der Baustein R_TRIG kann bei der S7-1200 ab Step7 V12 eingesetzt werden.
Eine Programmierung ist nur in FUP und KOP möglich.

Wenn man also Bausteine entwickelt, die auf beiden Steuerungen 1200/1500 lauffähig sein sollen, sollte man vermeiden den Baustein R_TRIG einzusetzen (wenn man ST/SCL programmiert).
 
Zuviel Werbung?
-> Hier kostenlos registrieren
Dann wäre die SPS-Programmierung von Siemens ja nicht mehr IEC-Konform, wenn es nicht mal einen immer funktionierenden R_TRIG gibt. Echt dämlich das, oder?
 
Hallo zusammen,

anbei die Antwort von Siemens:
Der Baustein R_TRIG kann bei der S7-1200 ab Step7 V12 eingesetzt werden.
Eine Programmierung ist nur in FUP und KOP möglich.

Wenn man also Bausteine entwickelt, die auf beiden Steuerungen 1200/1500 lauffähig sein sollen, sollte man vermeiden den Baustein R_TRIG einzusetzen (wenn man ST/SCL programmiert).

Hast du dazu irgendwas offizielles, weil eigentlich ist das total undenkbar, da F_Trig bzw. R_Trig ja letzten Endes ganz ordinäre FBs sind,
auch der Schnittstellenbereich des FBs deutet jetzt nicht auf irgendwelche Besonderheiten hin ...

Mfg
Manuel
 
Dann wäre die SPS-Programmierung von Siemens ja nicht mehr IEC-Konform, wenn es nicht mal einen immer funktionierenden R_TRIG gibt. Echt dämlich das, oder?

Als ob die sich bisher groß um den IEC Standard gekümmert hätten....

Das irgendwelche Super-Rechenintensiven-Spezial-FBs nicht auf den kleinen Steuerungen laufen, wäre einsehbar. Aber das ein 0815 Standard-FB, den man in 2 Minuten selber geschrieben hat, auf einer 1200er nicht funktionieren soll? Das wäre ja selbst für BigS ein starkes Stück *ROFL*
 
Servus,

es handelt sich schon um den Baustein R_TRIG. Anbei die komplette Antwort, die noch einige Restriktionen enthält.

Der Baustein R_TRIG kann bei der S7-1200 ab Step7 V12 eingesetzt werden.
Eine Programmierung ist nur in FUP und KOP möglich.

Bitte beachten:
In KOP darf die Anweisung R_TRIG nicht am Anfang oder Ende eines Netzwerks angeordnet werden.
In FUP darf die Anweisung R_TRIG an einer beliebigen Stelle angeordnet werden, ausgenommen am Ende einer Verzweigung.

Handbuch S7-1200 Seite 221
http://support.automation.siemens.com/WW/view/de/91696622


Das komische ist einfach nur, dass es auf einigen S7-1200 Steuerungen problemlos läuft und auf anderen nicht. Um Probleme aus dem Weg zu gehen, werde ich die Flankenauswertung zukünftig wieder von Hand programmieren.

Grußle
 
Hallo, folgendes habe ich bereits im einsatz.

Code:
#R_TRIG_Instance(CLK:=#"Datensatz Auswertung"."Übertragung fehlerfrei beendet");

         IF   #R_TRIG_Instance.Q = true THEN
               #HM.Datensatz := #HM.Datensatz+1 ;
               #Reset := true;
               #Datensatzspeicher [#"Datensatz Auswertung".Datensatznummer] := #Rezeptdaten;
        END_IF;


Das habe ich einer S7-1200 CPU1214C DC/DC/DC.

Mit freundlichen Grüssen
.
 
Zuletzt bearbeitet:
Bitte beachten:
In KOP darf die Anweisung R_TRIG nicht am Anfang oder Ende eines Netzwerks angeordnet werden.
In FUP darf die Anweisung R_TRIG an einer beliebigen Stelle angeordnet werden, ausgenommen am Ende einer Verzweigung.

Schön wäre noch, wenn die schreiben würden, welche Bausteine und Funktionen man besser nicht in der Mitte vom Programm oder darüber oder darunter verwenden sollte.
Oder treffender, welche man besser überhaupt nicht verwenden sollte. :ROFLMAO:

Der Wutbürger
 
Zurück
Oben