Flankenerkennung in TwinSAFE

foxtrottNB

Level-1
Beiträge
39
Reaktionspunkte
6
Zuviel Werbung?
-> Hier kostenlos registrieren
Hi zusammen,

hat jemand von Euch schon einmal eine Flankenerkennung eines digitalen Signales im TwinSAFE gebaut?
Also soetwas wir TRG_R / TRG_F.
Mich würde eine Umsetzung interessieren.

mfg
foxtrott
 
Zuletzt bearbeitet:
Ich verstehe jetzt nicht, wie die Flankenerkennung mit TwinSafe zusammenhängt.
FlankenErkennung im Programm:
1. positive Flanke:
Code:
U   aktuellerZustand     // nicht negierten, aktuellen Zustand mit dem negierten, vorherigen über UND verknüpfen 
UN  gemerkterZustand
=   FlankenImpuls
U   aktuellerZustand     // aktuellen Zustand speichern für die Verwendung als vorherigen Zustand im nächsten Zyklus
=   gemerkterZustand
2. negative Flanke:
Code:
UN  aktuellerZustand     // negierten, aktuellen Zustand mit dem nicht negierten, vorherigen über UND verknüpfen 
U   gemerkterZustand
=   FlankenImpuls
U   aktuellerZustand     // aktuellen Zustand speichern für die Verwendung als vorherigen Zustand im nächsten Zyklus
=   gemerkterZustand
3. jede Flanke:
Code:
X   aktuellerZustand     // aktuellen Zustand mit dem vorherigen über XOR verknüpfen
X   gemerkterZustand
=   FlankenImpuls
U   aktuellerZustand     // aktuellen Zustand speichern für die Verwendung als vorherigen Zustand im nächsten Zyklus
=   gemerkterZustand
Die boolesche Variable, die für den Vergleich im nächsten Zyklus unverändert zur Verfügung stehen muss, darf nicht temporär sein und nicht anderweitig verwendet werden.
Kann z.B. als IN_OUT an den Baustein übergeben werden.
 
Zuletzt bearbeitet:
Heinrich,
in TwinSafe kann man soweit ich mich erinnere nur grafisch ala CFC programmieren. Die Liste der verfügbaren Bausteine ist hierbei auch sehr eingeschränkt ( wie bei Siemens Safety auch ).

Hier noch ein Bild:
TS.jpg
 
Zuletzt bearbeitet:
Ich hatte gehofft, dass wir mal noch mehr Informationen bekommen, wozu die Flanke benötigt wird.

Sichere Signale sind in erster Linie statische Signale. und die Reset-Signale werden bereits von den Bausteinen auf das Vorhandensein einer Flanke zum richtigen Zeitpunkt abgefragt. Ich weiß, dass ist nicht bei allen Safety-PLC so. Bei Jokab-Safety beispielsweise wird eine zusätzliche Flanke am Reset-Eingang empfohlen um den Diagnose-Deckungsgrad zu erhöhen.

TwinCAT bietet tatsächlich keine einzelne Flankenerkennung an.

Meine Frage wäre nämlich, muss dass unbedingt im sicheren Teil sein, oder lässt sich die Aufgabe auch in den normalen SPS-Programm lösen und das Ergebnis mit TwinSAFE verknüpfen?

Ich habe die jedenfalls noch nicht gebraucht.
 
Zuviel Werbung?
-> Hier kostenlos registrieren
Mal unabhängig davon, ob man in einer Safety-Steuerung mit Flanken arbeiten kann/darf/soll/muss, sollte es eigentlich genauso funktionieren wie in einer Standard-SPS. Schliesslich kann man die Bearbeitungsreihenfolge der FBs ja selbst bestimmen.
 

Anhänge

  • TwinSafe.jpg
    TwinSafe.jpg
    30,9 KB · Aufrufe: 27
Mal unabhängig davon, ob man in einer Safety-Steuerung mit Flanken arbeiten kann/darf/soll/muss, sollte es eigentlich genauso funktionieren wie in einer Standard-SPS. Schliesslich kann man die Bearbeitungsreihenfolge der FBs ja selbst bestimmen.

Recht hast Du. Jedoch bezog ich mich nur darauf, ob die Aufgabe mit der Flanke in der normalen SPS auch gemacht werden kann.

Ein wenig hoffe ich ja noch auf etwas Licht vom TE. Sonst laufen wir hier Gefahr im eigenen Brei rum zu köcheln - ohne zu wissen, was der TE eigentlich braucht.
 
Heinrich,
in TwinSafe kann man soweit ich mich erinnere nur grafisch ala CFC programmieren. Die Liste der verfügbaren Bausteine ist hierbei auch sehr eingeschränkt ( wie bei Siemens Safety auch ).

Hier noch ein Bild:
Anhang anzeigen 53086
Du erinnerst Dich falsch. Mittlerweile kann man in TwinCAT auch Safety Anwendungen mit Safety C erstellen, das ist eine auf C++ basierte Hochsprache. Das ganze läuft dann allerdings nicht mehr auf einer extra Logikklemme (z.B. EL9610), sondern direkt in TwinCAT. Die Details dazu findet man hier.
 
Zuviel Werbung?
-> Hier kostenlos registrieren
Du erinnerst Dich falsch. Mittlerweile kann man in TwinCAT auch Safety Anwendungen mit Safety C erstellen, das ist eine auf C++ basierte Hochsprache. Das ganze läuft dann allerdings nicht mehr auf einer extra Logikklemme (z.B. EL9610), sondern direkt in TwinCAT. Die Details dazu findet man hier.

Na meine Erinnerung war schon richtig zum damaligen Stand :ROFLMAO:

Aber das mit Safety C ist mir tatsächlich neu. Hört sich für mich etwas abenteuerlich an. Aber gut, ich denke es gibt auch Sparten hierfür.
 
Zurück
Oben