Erläuterungen zum TrySim-Beispiel <Oszi>
Kurzbeschreibung:
Beispiel Oszi
Sie können sich diesen Text im Projekt mittels
Projekt | Kommentar anzeigen lassen.
Hier können Sie sehen, wie der Oszillograph
analoge und binären Werte anzeigt. Die Tabelle der anzuzeigenden Operanden mit
dem Kommentar aus der Symbol-Tabelle sehen Sie, wenn Sie den Oszillographen mit
der rechten Maustaste anklicken.
Die Simulationsgeschwindigkeit wird mithilfe
des SpeedTriggers angepasst, so können Sie beim Simulieren kritischer Prozesse
genau im richtigen Moment automatisch die
Zeitlupe aktivieren.
Im OB 1 ist ein bedingter Breakpoint gesetzt.
Wenn die Bedingung erfüllt ist, wird die Ausführung des Programms unterbrochen
und das CPU-Fenster angezeigt. Die Akku-Darstellung müssen Sie in diesem Fall
auf REAL umstellen, um zu sehen, dass bei Akku1 > 18.00 gehalten worden ist.
Sie können die Ausführung dann schrittweise,
netzwerkweise oder zyklusweise fortsetzen. Interessant ist dies natürlich
besonders, wenn der Beobachten-Modus aktiv ist. Der Beobachten-Modus muß jedoch
vor Eintreten der Breakpoint-Bedingung aktiviert werden, da dies mitten im
Zyklus nicht möglich ist.
Wenn Sie die Simulation normal weiter laufen
lassen wollen, müssen Sie den Breakpoint löschen. Klicken Sie dazu mit
der rechten Maustaste auf die blaue Zeile und wählen Sie das Häkchen ab.
Wie Sie sehen, kann der Schieberegler auch als
Analoganzeige verwendet werden. Diese Mehrdeutigkeit ist bei vielen Element in TrySim vorhanden, bitte berücksichtigen
Sie dies, wenn Sie nach einer bestimmten Funktion in der Hilfe suchen.
Sie können mit TrySim beliebige Werte als Kurvenverlauf
darstellen. Mit dem SpeedTrigger kann sogar die
Simulationsgeschwindigkeit geändert werden. Siehe dazu unter TrySim-Hilfe |
Index | „speedtrigger“.
Auszug aus TrySim-Hilfe | Index | „speedtrigger“:
Mithilfe dieses Elementes können Sie die
Simulationsgeschwindigkeit automatisch ändern lassen. Sie geben ein Bit der SPS
vor und können dadurch Zeitlupe bzw. Zeitraffer aktivieren.
Es gibt vier Triggermöglichkeiten:
1.) Steigende Flanke: Hierbei wird die Geschwindigkeit
einmalig bei einer steigenden Flanke des Bits auf den eingestellten Wert
gesetzt.
2.) Fallende Flanke: wie 1.)
3.) „Dauernd 1“: Hier wird die Geschwindigkeit bei einer
steigenden Flanke auf den eingestellten Wert gesetzt. Wenn die Geschwindigkeit
bis zu der fallenden Flanke nicht geändert wird (durch einen weiteren
Speed-Trigger oder über Kaninchen/Schildkröte), wird beim Verschwinden des
Signals die alte Geschwindigkeit wieder eingestellt.
4.) „Dauernd 0“: wie 3.)
Sie können auch einstellen, dass die Simulation beim
Eintreten der Triggerbedingung ganz gestoppt wird.
Die in AWL blau dargestellte Zeile zeigt an, dass hier ein Breakpoint (Haltepunkt) gesetzt wurde.
Im MD 10 steht der Winkel im Bogen-maß. Bei 90 Grad ist
der sin = 1. Nur zur Darstellung als Ganzzahl (INT) wird dieser Wert
mit 100 multipliziert. Der maximal dazustellende Wert ist also 100, der
minimale –100. Die richtige Zuordnung im Oszillo-graphen liefert die FC
50, um deren „Innenleben“ wir uns eigentlich nicht kümmern müssen. MW 14 übergibt – weiter unten - den Wert an FC 50.
Wenn Sie mit der rechten Maustaste auf die blaue Zeile
klicken, öffnet sich das Kontextmenü. Das Häkchen zeigt an, dass an dieser
Stelle ein Breakpoint gesetzt wurde. Siehe TrySim-Hife | Index | „breakpoint“
Wenn Sie <Edit Breakpoint> markieren, öffnet sich das
folgende Fenster: Siehe TrySim-Hife | Index | „bedingte breakpoint“
Auszug aus TrySim-Hife | Index | „bedingte breakpoint“ Wenn das Programm nur unter bestimmten Bedingungen
gestoppt werden soll, können Sie einen bedingten Breakpoint setzen oder
einen bereits gesetzten Breakpoint nachträglich mit Bedingungen versehen.
Klicken Sie dazu im AWL-,FUP- oder KOP - Editor mit rechts auf den
Breakpoint und wählen Sie Beachten Sie, dass die Bedingung in AWL vor Bearbeitung
der aktuellen Zeile ausgewertet wird, in FUP/KOP jedoch nach Bearbeitung
des gesamten Netzwerkes (siehe auch Besonderheiten in FUP/KOP). Das VKE können Sie folgendermaßen auswerten: 1.) Es soll nicht berücksichtigt werden, d.h. es wird
immer gestoppt, wenn keine Bedingung für den Akku vorgegeben wird. 2.) Es wird nur gehalten wenn das VKE „1“ ist. 3.) Es wird nur gehalten, wenn das VKE „0“ ist. 4.) Es wird nur bei einer steigenden Flanke des VKE gehalten. 5.) Es wird nur bei einer fallenden Flanke des VKE
gehalten. 6.) Es wird bei jedem Zustandswechsel des VKE gehalten. 7.) Es wird nur gehalten wenn das VKE keinen
Zustandswechsel macht. Als Referenzwert für 4.) - 7.) gilt immer das VKE, wie
es bei der letzten Bearbeitung der Zeile mit dem Breakpoint war, „ Steigende Flanke“ bedeutet also nicht, dass das VKE
jetzt gerade von Null nach Eins geht, sondern dass es im letzten Zyklus
Null war und jetzt Eins ist. Den Akku 1 können Sie mit einem Referenzwert
vergleichen. Dazu müssen Sie angeben, wie der Inhalt des Akkus
interpretiert werden soll: als INT, DINT oder REAL.
„Edit Breakpoint“.
Hier werden die Werte eingetragen, unter denen der Breakpoint
wirksam werden soll. Das MD 10
[REAL] wird in kleinen Schritten hochgezählt, in jedem Zyklus um
0.1. Und irgendwann hat es dann 18.0 (Bogenmaß) überschritten. Grober
Überschlag : 18.0 / (2*pi) = 3, d.h., nach ca. 3 Zyklen unterbricht der Breakpoint.
Wenn der sin >
0.9 ist, soll die Darstellung langsamer ablaufen. Das bewirkt M 2.0
(siehe nächstes Bild).
Dies ist ein Element, mit dem Sie den zeitlichen Verlauf von
Bits und analogen Werten (16 Bit) darstellen können. Für die Darstellung der
analogen Werte müssen Sie den Minimal- und den Maximalwert geeignet anpassen.
Wenn der Minimalwert kleiner als 0 ist, wird das SPS-Word als Integer
interpretiert und der Maximalwert entsprechend auf 32767 begrenzt.
Wenn Sie DINTs oder REALs darstellen wollen, müssen Sie sie
im SPS-Programm in Wörter umrechnen. Dazu können Sie die FC51 oder FC52 (DINT
und REAL) im Verzeichnis IECFuncs verwenden. Plazieren Sie solche Programmteile,
die nur in der Simulation benötigt werden vorzugsweise im OB 2 oder OB 3.
Klicken Sie auf <Hilfe>, um mehr über die
Einstellmöglichkeiten zu erfahren.
Im TrySim - Hauptverzeichnis gibt es ein Unterverzeichnis „IECFuncs“.
Darin sind vorgefertigte Funktionen enthalten, die zum Manipulieren,
Vergleichen und Konvertieren von STRINGS, Datumsformaten usw. benötigt
werden. Daneben sind auch die Köpfe der Funktionen enthalten, die in der
Siemens-Bibliothek „TI - S7 Converting Blocks“ sind.
Diese Funktionen müssen Sie mit Projekt | Dateien
hinzufügen in Ihr Projekt importieren und ggf. umbenennen, wenn die FC-Nummern
mit selbst programmierten FC’s kollidieren.
Mit <Öffnen> wird die markierte Funktion in das
Projekt übernommen.
Unter SPS | Öffnen sehen Sie, dass FC 50 mit
obigem Befehl kopiert wurde und jetzt geöffnet werden kann.
Die Scalierung des Ausgabewertes (MW 14) können Sie
getrost der FC 50 überlassen. Wichtig sind nur die Grenzen, das Eingangs-
und das Ausgangswort (MW 22).
Das Verständnis des „Innenlebens“ der FC 50 ist für die Anwendung des Oszillographen
nicht unbedingt erforderlich.