Einzelheiten zu den bedingten Haltepunkten

TwinCAT C++ stellt bedingte Haltepunkte zur Verfügung. Einzelheiten zur Formulierung dieser Bedingungen finden Sie hier.

Einzelheiten zu den bedingten Haltepunkten 1:

Im Gegensatz zu den Visual Studio C++ bedingten Haltepunkten werden die TwinCAT-Bedingungen kompiliert und anschließend auf das Zielsystem übertragen, sodass sie während kurzen Zyklenzeiten verwendet werden können.

WARNUNG

Anlagen- und Personenschäden durch unerwartetes Verhalten der Maschine / Anlage

Haltepunkte verändern das Verhalten der Maschine bzw. Anlage. Abhängig von der gesteuerten Maschine können Schäden an Maschine und Werkstücken entstehen oder Gesundheit und Leben von Personen gefährdet werden.

Stellen Sie sicher, dass das veränderte Verhalten des gesteuerten Systems keine Schäden verursacht und beachten Sie unbedingt die Anlagendokumentation.

Die Optionsschaltflächen bieten zwei Optionen, die getrennt voneinander beschrieben werden.

Option: Is true

Bedingungen werden mit Hilfe von logischen Termen, vergleichbar mit den konjunktiven Normalformen definiert.
Sie werden aus einer Kombination von mit „&&“ verbundenen Maxtermen gebildet:

(Maxterm1 && Maxterm2 && ... && MaxtermN)

wobei jeder Maxterm eine Kombination von || verbundenen Bedingungen darstellt:

(condition1 ||condition2 || ... || conditionN )

Mögliche Vergleichsoperatoren: ==,!=, <=, >=, <, >

Für die Bestimmung der verfügbaren Variablen beachten Sie das Live Watch Fenster. Alle aufgeführten Variablen können für die Formulierung von Bedingungen herangezogen werden. Dazu gehören sowohl TMC-definierte Symbole, als auch lokale Member-Variablen.

Beispiele:

m_counter == 123 && hr !=  0

m_counter == 123 || m_counter2 == 321 && hr == 0

m_counter == 123

Überwachung von Modul-Instanzen

Die OID des Objekts ist in m_objId gespeichert, somit kann z. B. die Überwachung des OID folgendermaßen aussehen m_objId == 0x01010010

Überwachung von Tasks

Es wird eine spezielle Variable #taskId bereitgestellt, um auf die OID der aufrufenden Task zugreifen zu können. Z.B. #taskID == 0x02010010

Option: Has changed

Die Option „Has changed“ ist einfach zu verstehen: Indem Variablennamen bereitgestellt werden, wird der Wert überwacht und die Ausführung angehalten, wenn der Wert sich gegenüber dem vorangegangenen Zyklus geändert hat.

Beispiele:

m_counter

m_counter && m_counter2