Stoppuhr-Funktion mit S7-200

reini69

Level-2
Beiträge
75
Reaktionspunkte
1
Zuviel Werbung?
-> Hier kostenlos registrieren
Tach.
Ich habe an meiner S7-200 ein paar Eingänge. Für jeden Eingang möchte ich die verstrichene Zeit zwischen zwei positiven Flanken messen, um diese Zeit (in Sekunden incl. einer Nachkommastelle) über die serielle Schnittstelle an einen PC zu schicken. Das Senden über die Schnittstelle sollte soweit klar sein, aber wo ich im Moment keinen Schimmer habe, ist die Zeitmessung.
Wie geh ich denn da am besten vor ? Gibt es in der S7-200 auch Zeit-OBs wie bei den großen Simatic-Steuerungen oder kann ich das über Timer realisieren ?
Über komplette Programmbeispiele würden ich mich natürlich besonders freuen.
 
reini69 schrieb:
Tach.
...Wie geh ich denn da am besten vor ? Gibt es in der S7-200 auch Zeit-OBs wie bei den großen Simatic-Steuerungen oder kann ich das über Timer realisieren ?
Über komplette Programmbeispiele würden ich mich natürlich besonders freuen.
Zeit-OBs gibt es nicht (es gibt überhaupt nur einen OB1, der das ganze Programm umfaßt).
Habe jetzt kein Handbuch vor mir, daher sind nachfolgende Aussagen etwas unpräzise:
Die (einige?) Timer können jedoch beim Überlauf einen Interrupt auslösen.
Die Auflösung der Timer wird nicht durch die Angabe einer Zeitbasis, sondern durch die Nummer des Timers bestimmt.
Ich habe in einem Programm (CPU224) den Timer T32 mit 1ms Auflösung und 1000ms Endwert laufen, so daß er beim Ablaufen nachgetriggert wird (Anweisungen TON oder TONR). Er löst dann jede Sekunde einen Interrupt aus, sofern dem Ereignis ein Interruptprogramm zugeordnet ist.
Im Timer-Interruptprogramm würde ich einen Wert für die ganzen Sekunden hochzählen.
Bei einer Flanke am Eingang liest du die ganzen Sekunden und den Timer Wert.
Wenn's genau sein soll nimmst du interruptfähige Eingänge und konfigurierst die positive Flanke als Interruptquelle. Das geht am besten mit dem Assistenten in Microwin.
 
Zurück
Oben