Signalaufzeichnung

Servernexus

Level-1
Beiträge
260
Reaktionspunkte
2
Zuviel Werbung?
-> Hier kostenlos registrieren
Servus,
hat jemand eine Idee wie ich in einer S7 300 das Kommen eines Signals mit positiver Flanke zur Fehlersuche aufzeichnunen kann, ohne einen teuren SPS_ Analyser zu kaufen. Entweder irgendwie mitzählen oder auch Datum und Uhrzeit mitspeichern. Gibts da ein Step 7 Tool dafür?

Danke im Vorraus
 
Hallo,
ich denke schon dass das geht ...
Beschreib doch mal etwas konkreter, was du machen willst ...
Aber grundsätzlich :
Im OB35 ein kleines Zeit-Intervall konfigurieren (z.B. 5ms) und dann hier auf das Ereignis warten und wenn es kommt dann den Zeitstempel speichern.
Wichtig hier allerdings : wenn du auf Adressen aus dem Prozessabbild zugreifen willst dann diese erst mit " L PEW xyz und T EW xyz" aktualisieren ...

Gruß
Larry
 
Zuviel Werbung?
-> Hier kostenlos registrieren
Hallo,
ich denke schon dass das geht ...
Beschreib doch mal etwas konkreter, was du machen willst ...

Es geht z.B um ein Signal, daß von einer Fremdmaschine über DP Koppler gesendet wird. Ich müsste wissen wann das Signal gekommen ist.
evtl. wenn das geht, das ich die Aufzeichnung starte und sagen wir nach 2 Stunden wieder beende. Das 2. ist, daß mir im laufenden Betrieb ein Eingang abhanden kommt und ich nicht weis wann und somit nicht weis wo ich anfangen soll zu suchen.
 
Es geht z.B um ein Signal, daß von einer Fremdmaschine über DP Koppler gesendet wird. Ich müsste wissen wann das Signal gekommen ist.
evtl. wenn das geht, das ich die Aufzeichnung starte und sagen wir nach 2 Stunden wieder beende.

Also ... es gibt dafür nichts fertiges ... das mußt du dir schon selbst programmieren - das ist aber kein Beinbruch ... :)
Ich würde auch nicht (schon allein aus Speicherplatz-Gründen) die ganze Zeit den Zustand aufzeichnen sondern (wie schon von mir geschrieben) auf die relevante Änderung warten und diese dann protokollieren - also z.B. den Zeitstempel in ein FiFo schreiben.

Das 2. ist, daß mir im laufenden Betrieb ein Eingang abhanden kommt und ich nicht weis wann und somit nicht weis wo ich anfangen soll zu suchen.

Hier gilt im Grunde das Gleiche wie oben - nur das dir da m.E. ein Zeitstempel nichts hilft um den Fehler zu finden / beseitigen ...

Gruß
Larry
 
Welche Visualisierung benutzt du?
z. B. bei WinCC Flex kannst du die Signale in einer Tabelle archivieren (mit Datum/Uhrzeit) und musst dazu keinen großen aufwand machen. Ich hab das mal vor langer Zeit so gemacht.
 
Zuviel Werbung?
-> Hier kostenlos registrieren
:confused: ... dann darf das (die Signalwechsel) aber nicht allzu schnell passieren (also Nichts im Millisekunden-Bereich) ... und bezüglich des Signals aus dem "anderen Profibus-Strang" würde das gar nichts nutzen ...
 
Also ... es gibt dafür nichts fertiges ... das mußt du dir schon selbst programmieren - das ist aber kein Beinbruch ... :)
Ich würde auch nicht (schon allein aus Speicherplatz-Gründen) die ganze Zeit den Zustand aufzeichnen sondern (wie schon von mir geschrieben) auf die relevante Änderung warten und diese dann protokollieren - also z.B. den Zeitstempel in ein FiFo schreiben.


Ich stehe da kurz auf dem Schlauch, bin in Sachen Datenspeicherung oder Zeitstempel speichern nicht der Überflieger. Wie muß ich das im oB35 programmieren? Kannst Du mir ein Beispiel geben?
 
Zuviel Werbung?
-> Hier kostenlos registrieren
Hallo Servernexus,

wenn es sich zunächst nur um ein oder zwei Signale handelt, kannst Du das Problem bequem mit der kostenlosen Demo von AutoSPy lösen, mit der Du zwei Signale von einer S7 zeitlich unbegrenzt aufzeichnen und auswerten kannst. Zur sicheren Erkennung Deiner Flanken solltest Du die zyklusgenaue Aufzeichnung benutzen. Einfach mal herunterladen und ausprobieren.

Viele Grüße,
Jens
 
Ich würde auch nicht (schon allein aus Speicherplatz-Gründen) die ganze Zeit den Zustand aufzeichnen sondern (wie schon von mir geschrieben) auf die relevante Änderung warten und diese dann protokollieren - also z.B. den Zeitstempel in ein FiFo schreiben.

willst du nur den zeitstempel?
 

Anhänge

  • CsReadEvents.txt
    21 KB · Aufrufe: 67
  • S7SaveTimeStamp.txt
    76,4 KB · Aufrufe: 54
Zuviel Werbung?
-> Hier kostenlos registrieren
ok habr ich mir geholt und mache Bausteine daraus und entschuldige die dumme Frage wie mache ich weiter?

du definierst im FC die einzelnen trigger, z.b. durch vergleicher etc. ... eine boolsche verknüpfung muß es werden.
bei jeder positiven flanke wird der aktuelle zeitstempel in den instanzdatenbaustein geschrieben (siehe array-beschreibung im bausteinkommentar)

das ganze kannst du dir dann aus der steuerung holen... im bsp. über ein C#-projekt...
 
du definierst im FC die einzelnen trigger, z.b. durch vergleicher etc. ... eine boolsche verknüpfung muß es werden.
bei jeder positiven flanke wird der aktuelle zeitstempel in den instanzdatenbaustein geschrieben (siehe array-beschreibung im bausteinkommentar)

das ganze kannst du dir dann aus der steuerung holen... im bsp. über ein C#-projekt...

ich bekomme im DB Daten aber ich kann diese nicht rücksetzen und interpretieren geschweigedenn exportieren.

nochmals Hilfe Danke
 
:confused: ... Schade ... dann hätte man das mit ein paar wenigen und m.E. gut verständlichen Codezeilen lösen können ... :rolleyes:
 
bei jeder positiven flanke wird der aktuelle zeitstempel in den instanzdatenbaustein geschrieben (siehe array-beschreibung im bausteinkommentar)

das ganze kannst du dir dann aus der steuerung holen... im bsp. über ein C#-projekt...[/QUOTE]

ich finde keine array beschreibung
 
Zurück
Oben