-> Hier kostenlos registrieren
Hallo zusammmen,
ich beschäftige mich momentan mit der Hardware Diagnose. Von den Anforderungen her kann ich gar nicht so tief ins Detail gehen, da noch gar nicht so richtig klar ist, was man GENAU will am Ende. Aber mir sind bei meiner Recherche diverse Dinge aufgefallen, die ich einfach mal in die Runde fragen würde.
Grundlegend soll EIN PN IO System überwacht werden. Dabei sollen Fehler, das ziehen einer Baugruppe und das Deaktivieren einer Baugruppe erkannt werden, um in der PLC entsprechend zu reagieren.
(1) Die Überwachung auf Deaktivierung einer Baugruppe würde ich mit der Anweisung "DeviceStates"/"ModuleStates" im Mode 3 zyklisch im OB1 abfragen.
(2) Das Ziehen/Stecken einer Baugruppe könnte man ebenfalls mit der Anweisung "DeviceStates"/"ModuleStates" im Mode 4 zyklisch im OB1 abfragen, oder man könnte dies auch im Interrupt OB83 lösen.
(3) Fehler kann man ebenfalls mit der Anweisung "DeviceStates"/"ModuleStates" im Mode 5 zyklisch im OB1 abfragen, oder alternativ im Interrupt OB82.
Ich tendiere ja stark dazu, für (2) und (3) die entsprechenden OBs 83 und 82 zu nutzen, da dann keine zyklisch abfrage notwendig ist. Kann ich nun davon ausgehen, dass ich mit dem OB83 dasselbe erkenne, wie mit den Anweisungen "DeviceStates"/"ModuleStates" im Mode 4? Und das ich mit dem OB82 dieselben Fehler erkenne wie mit den Anweisungen "DeviceStates"/"ModuleStates" im Mode 5?
Zusätzlich stellt sich mir die Frage, was genau unter Störungen bei den Anweisungen "DeviceStates"/"ModuleStates" im Mode 2 erkannt wird? Sind das letztendlich auch Fehler, die ich im OB82 auch erkennen würde? Die Anweisung "Get_Diag" erkennt laut Doku keine "Störungen" sondern nur Fehler oder diverse andere Dinge.
Außerdem ist es doch so, dass die CPU beim Stecken/Ziehen bzw. Fehler in STOP geht, wenn der OB82/83 nicht programmiert ist. Inwiefern mach dann eine zyklische abfrage überhaupt Sinn? Oder liege ich da falsch?
In diesem Siemens Beispiel
https://support.industry.siemens.co...m-anwenderprogramm-mit-s7-1500?dti=0&lc=de-WW
erfolgt die Fehlerabfrage z.B. zyklisch. Allerdings mit Ausführungsbedingung der CPU Fehler LED. Wäre es aber nicht "besser" den OB82 dafür zu nutzen? Im OB82 wird ja lediglich der Fehlerzustand des IO-Systems gesetzt. Das könnte man doch direkt im OB82 tun und sich das Zyklische sparen???
In eigener Recherche bin nicht wirklich fündig auf die obigen Fragen geworden. Demnach wäre ich über Hilfe sehr dankbar.
Gruß
ich beschäftige mich momentan mit der Hardware Diagnose. Von den Anforderungen her kann ich gar nicht so tief ins Detail gehen, da noch gar nicht so richtig klar ist, was man GENAU will am Ende. Aber mir sind bei meiner Recherche diverse Dinge aufgefallen, die ich einfach mal in die Runde fragen würde.
Grundlegend soll EIN PN IO System überwacht werden. Dabei sollen Fehler, das ziehen einer Baugruppe und das Deaktivieren einer Baugruppe erkannt werden, um in der PLC entsprechend zu reagieren.
(1) Die Überwachung auf Deaktivierung einer Baugruppe würde ich mit der Anweisung "DeviceStates"/"ModuleStates" im Mode 3 zyklisch im OB1 abfragen.
(2) Das Ziehen/Stecken einer Baugruppe könnte man ebenfalls mit der Anweisung "DeviceStates"/"ModuleStates" im Mode 4 zyklisch im OB1 abfragen, oder man könnte dies auch im Interrupt OB83 lösen.
(3) Fehler kann man ebenfalls mit der Anweisung "DeviceStates"/"ModuleStates" im Mode 5 zyklisch im OB1 abfragen, oder alternativ im Interrupt OB82.
Ich tendiere ja stark dazu, für (2) und (3) die entsprechenden OBs 83 und 82 zu nutzen, da dann keine zyklisch abfrage notwendig ist. Kann ich nun davon ausgehen, dass ich mit dem OB83 dasselbe erkenne, wie mit den Anweisungen "DeviceStates"/"ModuleStates" im Mode 4? Und das ich mit dem OB82 dieselben Fehler erkenne wie mit den Anweisungen "DeviceStates"/"ModuleStates" im Mode 5?
Zusätzlich stellt sich mir die Frage, was genau unter Störungen bei den Anweisungen "DeviceStates"/"ModuleStates" im Mode 2 erkannt wird? Sind das letztendlich auch Fehler, die ich im OB82 auch erkennen würde? Die Anweisung "Get_Diag" erkennt laut Doku keine "Störungen" sondern nur Fehler oder diverse andere Dinge.
Außerdem ist es doch so, dass die CPU beim Stecken/Ziehen bzw. Fehler in STOP geht, wenn der OB82/83 nicht programmiert ist. Inwiefern mach dann eine zyklische abfrage überhaupt Sinn? Oder liege ich da falsch?
In diesem Siemens Beispiel
https://support.industry.siemens.co...m-anwenderprogramm-mit-s7-1500?dti=0&lc=de-WW
erfolgt die Fehlerabfrage z.B. zyklisch. Allerdings mit Ausführungsbedingung der CPU Fehler LED. Wäre es aber nicht "besser" den OB82 dafür zu nutzen? Im OB82 wird ja lediglich der Fehlerzustand des IO-Systems gesetzt. Das könnte man doch direkt im OB82 tun und sich das Zyklische sparen???
In eigener Recherche bin nicht wirklich fündig auf die obigen Fragen geworden. Demnach wäre ich über Hilfe sehr dankbar.
Gruß
Zuletzt bearbeitet: