Messdaten aufzeichnen ??

Zuviel Werbung?
-> Hier kostenlos registrieren
danke erstmal,und beim abfragen wie siehts dann aus wie rufe ich die daten dann auf wenn ich z.bsp am op eingebe 01.10.2008 15:00 wie finde ich den passenden messwert ??

Genauso wie die Position beim Speichern gefunden wird.
Falls die Eingabe am OP Date and Time ist, dort auch: Monat/Tag/Stunde/Minute als Integer extrahieren und dann an den Baustein damit.
 
danke für deine bemühungen,aber ich bin zu dumm glaube ich kannst du dein programm ein bischen näher beschreiben ?? ich verstehe es einfah nicht wie die daten da rein sollen ??:confused: schritt für schritt währe echt nett,wie schon gesagt ich hab sowas noch nie gemacht,darum ist es für mich sehr schwer das zu verstehen sorry.
 
Zuletzt bearbeitet:
Zuviel Werbung?
-> Hier kostenlos registrieren
Dachte das wär schon ausreichend kommentiert ;-)

Im Datenbaustein gehören zu einem Datum folgende Adressen:
angenommen sei der DB 103 für März:

+0.0 1.3. 00:00
+2.0 1.3. 00:15
+4.0 1.3. 00:30
+6.0 1.3. 00:45
+8.0 1.3. 01:00
...
+192.0 2.3. 00:00
+194.0 2.3. 00:15
+196.0 2.3. 00:30
+198.0 2.3. 00:45
+200.0 2.3. 01:00
+202.0 2.3. 01:15
...
+5950.0 31.3. 23:45

Nun hast du einen Zeitstempel von "2.3.2008 01:05"

Es wird die Datenbausteinnummer des Monats geöffnet, also 3+100 = DB103.

Dann wird die Anfangsadresse der Tagesdaten im DB bestimmt. Da du 4 Intervalle pro Stunde hast, und der Tag
24 Stunden kommen wir auf 96 Werte pro Tag. Damit wir bei Adresse 0 im DB beginnen können, ziehen wir vom Tag die 1 ab.
Also (2 - 1) * 96 = 96.
Dann wird der Stundenoffset bestimmt. Pro Stunde gibt es 4 Werte, darum bei jeder Stunde 4 Adressschritte vorwärts.
Bei 1 ergibt sich ein Stundenoffset von 4.

Bei der Intervalloffsetbestimmung kann durch die Ganzzahldivision durch 15 nur ein Wert von 0-3 herauskommen.
Bei 5/15 ergibt sich 0.

Also von 00-14 Minuten wird der Wert zu xx:00 Uhr eingetragen, bei 15-29 Minuten zu xx:15 Uhr usw.

Gesamtstartpunkt ist somit 96 + 4 + 0 = 100

Da ein Messwert 2 Bytes belegt wird das Ganze noch mal zwei genommen, ergibt eine Adresse von DBW 200.
 
Zuletzt bearbeitet:
und so geht es weiter ??? ich lese die systemzeit der cpu exrahiere die werte in int format ,paremetriere die fc mit dieser ? stunden minuten unsw. ok ? wie kommen jetzt die messdaten rein geschrieben ?? welcher befehl, und wie rufe ich die richtigen daten auf ? das ist mir auch nicht ganz klar.:confused:
 
Ich hänge mal die AWL-Quellen zu zwei FCs an.
Mit dem einen FC wird ein Wert in das Archiv geschrieben, mit dem anderen FC aus dem Archiv gelesen.
Die DBs muss du wie oben vermerkt noch händisch anlegen.

Wenn du die Möglichkeit zum Simulieren hast, einfach mal die FC mit ein paar Daten beschalten und schauen was passiert.
 

Anhänge

  • Messwertarchiv.txt
    2,9 KB · Aufrufe: 65
Zuviel Werbung?
-> Hier kostenlos registrieren
Hallo,

da kann mann doch auch eine S7-200 CPU221 (150€) mit 256kB Speicherkarte (???€) verwenden.
Die S7-300 überträgt die notwendigen Daten zur S7-200 mit MPI-Kopplung.

In der S7-200 werden die Daten dann per Dataloggin auf die Speicherkarte aufgezeichnet.

Die Daten können dann "von Hand" oder automatisch von einem PC abgeholt werden (S7-200 Exploerer). Geht auch über Telefon, Ethernet, usw.

Vieleicht das hilft dir das weiter.
 
Zurück
Oben