Herunterladen Inhalt Inhalt Diese Seite drucken

Faq Checkliste Für Programmierer - Siemens SIMATIC NET CP 5613 Handbuch

Programmierschnittstelle dp-base
Inhaltsverzeichnis

Werbung

5.3
FAQ Checkliste für Programmierer
Was ist bei der Programmstruktur besonders zu beachten?
Überprüfen Sie Ihre Programmstruktur auf folgende Punkte:
• Beginnen Sie Ihr Anwenderprogramm mit einem DP_start_cp, DP_open und
DP_get_pointer und beenden Sie diese in allen Fällen mit DP_release_pointer,
DP_close und DP_reset_cp.
• Beachten Sie, dass nach einem DP_release_pointer oder DP_close-Aufruf nicht
mehr auf das Dualport-RAM zugegriffen werden darf (Pointer ungültig).
• Werten Sie alle Fehleranzeigen aus, und prüfen Sie alle Diagnosedaten.
• Prüfen Sie, ob die angegebenen Vorbedingungen zur Gültigkeit von Daten ge-
geben sind. Beispielsweise muss beim Lesezugriff auf Slave-Daten der Master
im Zustand OPERATE oder CLEAR und der Slave READY sein. READY be-
deutet, dass der Slave vom DP-Master parametriert und konfiguriert worden ist
und am DP-Zyklus teilnimmt. Zusätzlich müssen aber immer die Diagnoseda-
ten, die der Slave an den Master sendet, ausgewertet werden.
• Lesen Sie bei alarmfähigen DPC1-Slaves Diagnosedaten nur über die Funktion
DP_fetch_alarm aus. Quittieren Sie bei Alarmen diese durch DP_alarm_ack.
• Bei nicht alarmfähigen Slaves können Diagnosedaten ebenfalls durch
DP_fetch_alarm ausgelesen werden (Alternative: konsistentes Lesen der Dia-
gnosedaten im DPR). Beide Verfahren (DP_fetch_alarm und konsistentes Le-
sen der Diagnosedaten im DPR) dürfen nicht kombiniert werden, weil sonst die
gleichen Daten mehrfach angezeigt werden können.
• Werden asynchrone Aufrufe an einen Slave mit Kommunikationsfehler (siehe
DP_get_result) beendet oder meldet der Aufruf DP_fetch_alarm Datenfehler,
muss der entsprechende Slave durch den Aufruf DP_slv_state neu initialisiert
werden (nähere Informationen sind bei den einzelnen Funktionsbeschreibungen
zu finden).
• Ereignisse können in beliebiger Reihenfolge gemeldet werden; gestalten Sie Ih-
re Algorithmen entsprechend flexibel.
• Schicken Sie an einen Slave nicht mehrere asynchrone DPC1-Aufträge
(DP_ds_read/DP_ds_write, DP_alarm_ack) parallel.
• Ist das Ergebnis eines DP_enable_event-Aufrufs abgeholt, müssen Sie ihn er-
neut absetzen, damit neue Ereignisse gemeldet werden können.
Programmierschnittstelle DP-Base für CP 5613/CP 5614
C79000-G8900-C139-04
FAQ (Frequently Asked Questions)
251

Werbung

Inhaltsverzeichnis
loading

Diese Anleitung auch für:

Simatic net cp 5614

Inhaltsverzeichnis