Einige Fragen zur IEC60870-5-104-Slave

Mattin81

Level-1
Beiträge
96
Reaktionspunkte
3
Zuviel Werbung?
-> Hier kostenlos registrieren
Hallo zusammen, ich würde gerne mit der IEC60870-5-104-Slave arbeiten. Ich kann auch schon einige Daten senden und empfangen, leider tauchen nun einige Fragen auf, die ich so bisher anhand der Unterlage nicht klären konnte:

- Wie reagiere ich auf Abfragebefehl, Zählerabfragebefehl, Prozess-Rücksetztbefehl, Prüfbefehl und Generalabfrage? Wo werden die bei der High-Level hin geschickt?
- Wo kann man die Gültigkeit einsehen bei einer Nachricht?
- Ist es möglich mehrere Leitstellen mit der SPS zu verbinden? Ich kann meine Testsoftware zwar mehrfach starten, bekomme aber bei der 2. Eine Fehlermeldung, dass Startdt fehlt…
- Wenn es möglich ist mehrere Leitstellen zu verbinden:
[FONT=&quot]o [/FONT]Bekommen dann beide den gleichen Wert? (also auch Zeitgleich?)
[FONT=&quot]o [/FONT]Wenn nur eine Station abfragt, bekommen dann alle den (zeitgleichen) Wert?
- Bei Doppelmeldungen soll jedes mal über die 00 gegangen werden (bei Umschaltung von 01 auf 10 und umgekehrt). Unterstützt die IEC das oder muss ich das selbst programmieren?




So, ich hoffe ich hab mich richtig ausgedrückt und ein Fernwirkprofi kann mir helfen :rolleyes:


Vielen Dank schonmal für Eure hilfe und Gruß


Martin
 
Hast Du Dir schon das Beispielprojekt angeschaut (TutorialSampleR.pro)?
Ich kenne 104 zwar, aber leider die Beckhoff-Lib nicht. Müssten bei einer GA nicht alle Objekte des Slaves (Unterstationen) automatisch geschickt werden?
 
Zuviel Werbung?
-> Hier kostenlos registrieren
Anhand von diesem Programm habe ich mir das soweit erarbeitet, so dass ich alles andere schicken kann.

Automatisch wird dabei soweit gar nichts geschickt. Die muss ich selber rausschicken, was ja auch kein Problem ist. Aber es bleiben die oben gestellten Fragen bestehen.

Vor allem eben auch, wie ich auch z.B. eine Generalabfrage reagieren soll. Da tut sich nämlich nichts, wenn ich die zur SPS hin raus schicke ;)
 
muss das Thema einfach nochmal schieben, sorry. Hab auch schon ein paar Dinge klären können:
- Prozess-Rücksetztbefehl, Prüfbefehl funktionieren nun
- Die Doppelmeldungssache habe ich inzwischen selbst gebaut
- mehrere Leitstellen kann man wohl nicht mit der SPS verbinden, da es sich um eine Punkt zu Punkt-Verbindung handelt.

Nur bleiben irgendwie noch ein paar echt wichtige Fragen offen:

- Wo kann man die Gültigkeit eine Nachricht einsehen?

- Wie reagiere ich auf Abfragebefehl, Zählerabfragebefehl und Generalabfrage? Wo werden die bei der High-Level hin geschickt?


So, ich hoffe ein Fernwirkprofi kann mir helfen :rolleyes:


Vielen Dank schonmal für Eure Hilfe und Gruß


Martin
 
Also:
Abfragebefehl funktioniert jetzt, Zählerabfrage auch. Musste ja nur die Adresse angeben, was ich abfragen möchte und den Zähler als IEC870_GRP_REQCO1 definieren. Jedoch,

- Weiß denn niemand, wo man die Gültigkeit einer Nachricht einsehen kann?

- Wie reagiere ich auf und Generalabfrage? bzw. wie muss ich die einzelnen Nachrichten initialisieren? Habs bisher so:

Code:
initError := F_iecInitAOEntry( M_SP_NA_1, 100, IEC870_GRP_INROGEN, 0, MAP_AREA_MEMORY, 100, 0, AODB[0] );
bekomme aber nur eine meldung zurück, dass die Generalabfrage aktiviert wurde aber keine Werte...

Ich hoffe ein Fernwirkprofi kann mir helfen :rolleyes:


Vielen Dank schonmal für Eure Hilfe und Gruß


Martin
 
Zuletzt bearbeitet:
Zuviel Werbung?
-> Hier kostenlos registrieren
Kann es sein, dass die Gültigkeit in den Quality Flags zu finden ist?

Und wenn ich eine Meldung wie folgt definiert habe:
Code:
initError := F_iecInitAOEntry( M_SP_NA_1, 100,  IEC870_GRP_INROGEN, 0, MAP_AREA_MEMORY, 100, 0, AODB[0] );
was muss ich denn dann in meinem Testprogramm einstellen, um eine Generalabfrage auch funktionabel zu haben? (siehe Bild)

fvge-1-jpg.html


Ich hoffe ein Fernwirkprofi kann mir helfen :rolleyes:


Vielen Dank schonmal für Eure Hilfe und Gruß


Martin
 
Zuletzt bearbeitet:
Falls noch irgendwann mal für jemand anderen Interesse bestehen sollte:

Man musste für die Generalabfrage als Kennung 20 angeben. 21-36 als Abfragekennung fragen die einzelnen Gruppen ab.
 
Zurück
Oben