S7-1200 Automatisierungssystem Anweisung CTRL_HSC (Schnellen Zähler steuern) Anweisung CTRL_HSC (Schnellen Zähler steuern) Tabelle 1 Anweisung CTRL_HSC (für allgemeine Zählaufgaben) KOP/FUP 1 SCL Beschreibung "CTRL_HSC_1_DB" ( hsc:=W#16#0, dir:=False, cv:=False, rv:=False, period:=False, new_dir:=0, new_cv:=L#0, new_rv:=L#0, new_period:=0, busy=>_bool_out_, status=>_word_out_); Jede Anweisung CTRL_HSC (Schnellen Zähler steuern) nutzt eine in einem DB abgelegte Struktur, um Zählerdaten zu speichern. Sie weisen den DB zu, wenn Sie die Anweisung CTRL_HSC im Editor einfügen. Wenn Sie die Anweisung einfügen, zeigt STEP 7 den Dialog "Aufrufoptionen" zum Erstellen des zugehörigen DB an. 2 Im SCL-Beispiel ist "CTRL_HSC_1_DB" der Name des Instanz-DBs. Tabelle 2 Datentypen für die Parameter Parameter und Datentyp Datentyp Beschreibung HSC IN HW_HSC HSC-Kennung DIR1, 2 IN Bool 1 = Neue Richtung anfordern CV1 IN Bool 1 = Anforderung zum Setzen eines neuen Zählwerts RV1 IN Bool 1 = Anforderung zum Setzen eines neuen Referenzwerts PERIOD1 IN Bool 1 = Anforderung zum Setzen eines neuen Zeitintervalls (nur bei Frequenzmessung) NEW_DIR IN Int Neue Richtung: 1= vorwärts, -1= rückwärts NEW_CV IN DInt Neuer Zählwert NEW_RV IN DInt Neuer Referenzwert NEW_PERIOD IN Int Neuer Zeitintervallwert in Sekunden (nur bei Frequenzmessung): 1=1s 2 = 0,1 s 3 = 0,1 s BUSY3 OUT Bool Funktion besetzt STATUS OUT Word Ausführungsbedingung 1 Wird keine Aktualisierung eines Parameterwerts angefordert, so werden die entsprechenden Eingangswerte ignoriert. 2 Der Parameter DIR ist nur gültig, wenn für die konfigurierte Zählrichtung die Programmsteuerung (interne Richtungssteuerung) vorgegeben ist. Sie legen fest, wie dieser Parameter in der HSC-Gerätekonfiguration genutzt wird. 3 Bei einem HSC in der CPU oder im SB hat der Parameter BUSY immer den Wert 0. This document constitutes a free excerpt compiled by the user himself/herself from the documentation provided by Siemens for this product. Siemens disclaims all liability for the completeness of this document. It shall only be used for the user's own internal purposes. It shall not be passed on to third parties. The complete documentation can be found at: /dokumentation/default.aspx?DocVersionId=79062402315&Language=de-DE&TopicId=72565309451 11.07.2016 S7-1200 Automatisierungssystem Anweisung CTRL_HSC (Schnellen Zähler steuern) Sie konfigurieren die Parameter für jeden HSC in der Gerätekonfiguration der CPU: Zähl-/ Frequenzfunktion, Rücksetzoptionen, Alarmereigniskonfiguration, Hardware-E/A und Adresse des Zählwerts. Einige der Parameter für den HSC können von Ihrem Anwenderprogramm geändert werden, um die Programmsteuerung für den Zählvorgang vorzugeben: • • • • Setzen der Zählrichtung auf einen Wert NEW_DIR Setzen das aktuellen Zählwerts auf einen neuen Wert NEW_CV Setzen des Referenzwerts auf einen neuen Wert NEW_RV Setzen des Zeitintervallwerts (nur bei Frequenzmessung) auf einen neuen Wert NEW_PERIOD Sind die folgenden Booleschen Merker auf 1 gesetzt, wenn die Anweisung CTRL_HSC ausgeführt wird, so wird der entsprechende Wert NEW_xxx in den Zähler geladen. Mehrere Anforderungen (mehrere Merker sind gleichzeitig gesetzt) werden in einer Ausführung der Anweisung CTRL_HSC verarbeitet. • • • • DIR = 1 ist eine Anforderung zum Laden eines Werts NEW_DIR, 0 = keine Änderung CV = 1 ist eine Anforderung zum Laden eines Werts NEW_CV, 0 = keine Änderung RV = 1 ist eine Anforderung zum Laden eines Werts NEW_RV, 0 = keine Änderung PERIOD = 1 ist eine Anforderung zum Laden eines Werts NEW_PERIOD, 0 = keine Änderung Die Anweisung CTRL_HSC wird typischerweise in einem Prozessalarm-OB platziert, der ausgeführt wird, wenn das Prozessalarmereignis des Zählers ausgelöst wird. Wird zum Beispiel der Zählerinterrupt durch ein Ereignis CV=RV ausgelöst, so führt ein ProzessalarmOB die Anweisung CTRL_HSC aus und kann den Referenzwert durch Laden eines Werts NEW_RV ändern. Der aktuelle Zählwert ist in den Parametern für CTRL_HSC nicht vorgesehen. Die Adresse des Prozessabbilds, in der der aktuelle Zählwert gespeichert wird, wird bei der Hardwarekonfiguration dem schnellen Zähler zugewiesen. Sie können den Zählwert über die Programmlogik direkt auslesen. Der an Ihr Programm ausgegebene Wert ist ein korrekter Zählwert für den Moment, in dem der Zähler gelesen wurde. Der Zähler setzt die Zählung schneller Ereignisse fort. Der tatsächliche Zählwert kann sich deshalb ändern, bevor Ihr Programm einen Prozess mit einem alten Zählwert beendet. Aktueller Zählwert des HSC: Programmzugriff, Wertebereich und Rollover-Verhalten Die CPU speichert den aktuellen Wert jedes HSC in der Adresse eines Eingangs (E). Die folgende Tabelle zeigt die Standardadressen für den aktuellen Wert jedes HSC. Sie können die E-Adresse für den aktuellen Wert ändern, indem Sie die Eigenschaften der CPU in der Gerätekonfiguration ändern. Schnelle Zähler speichern den aktuellen Zählwert in einem DInt-Wert. Ein DInt-Wert hat einen Bereich von -2147483648 bis +2147483647. Der Zähler springt beim Hochzählen vom maximalen positiven Wert zum maximalen negativen Wert und beim Herunterzählen vom maximalen negativen Wert zum maximalen positiven Wert. HSC Datentyp des aktuellen Werts Standardadresse des aktuellen Werts HSC1 DInt ED1000 This document constitutes a free excerpt compiled by the user himself/herself from the documentation provided by Siemens for this product. Siemens disclaims all liability for the completeness of this document. It shall only be used for the user's own internal purposes. It shall not be passed on to third parties. The complete documentation can be found at: /dokumentation/default.aspx?DocVersionId=79062402315&Language=de-DE&TopicId=72565309451 11.07.2016 S7-1200 Automatisierungssystem Anweisung CTRL_HSC (Schnellen Zähler steuern) HSC Datentyp des aktuellen Werts Standardadresse des aktuellen Werts HSC2 DInt ED1004 HSC3 DInt ED1008 HSC4 DInt ED1012 HSC5 DInt ED1016 HSC6 DInt ED1020 Bei einem Fehler wird ENO auf 0 gesetzt und der Ausgang STATUS gibt einen Bedingungscode an. Tabelle 3 Execution condition codes STATUS (W#16#) Beschreibung 0 Kein Fehler 80A1 HSC-Kennung adressiert keinen HSC 80B1 Ungültiger Wert in NEW_DIR 80B2 Ungültiger Wert in NEW_CV 80B3 Ungültiger Wert in NEW_RV 80B4 Ungültiger Wert in NEW_PERIOD 80C0 Mehrmaliger Zugriff auf den schnellen Zähler 80D0 Schneller Zähler (HSC) nicht in der CPU-Hardwarekonfiguration aktiviert This document constitutes a free excerpt compiled by the user himself/herself from the documentation provided by Siemens for this product. Siemens disclaims all liability for the completeness of this document. It shall only be used for the user's own internal purposes. It shall not be passed on to third parties. The complete documentation can be found at: /dokumentation/default.aspx?DocVersionId=79062402315&Language=de-DE&TopicId=72565309451 11.07.2016
© Copyright 2024 ExpyDoc