STEP 7-Micro/WIN Rezepte schreiben und speichern

BB030

Level-1
Beiträge
2
Reaktionspunkte
0
Zuviel Werbung?
-> Hier kostenlos registrieren
Hallo,

ich muss bei der Arbeit für die Firma ein Programm schreiben, mit dem man die Messdaten ins bestimmte Rezept schreiben und speichern kann.
Mit der Hilfe von Rezept-Assistent konnte ich die Daten manuell ändern, anschließend die Rezepte in CPU hochladen.
Meine frage sind:
1) kann man die Rezepte auch durch SIMATIC AWL Programm-Code direkt ändern und speichern? (wie z.B. mit CALL RCP0_WRITE?)
2) Wenn ja, wie spreche ich die Rezepte mit bestimmte Adresse an? z.B. Ich habe die Daten für Rezept_10 mit der Adresse 10, und es sollen nur die Werte im Rezept_10 geschrieben und gespeichert werden.

Für eine Antwort würde ich mich sehr freuen. :)

p.s. bin bei der SPS-Programmierung noch eine Anfängerin und Deutsch ist nicht meine Muttersprache.

Grüße
 
ein Programm schreiben, mit dem man die Messdaten ins bestimmte Rezept schreiben und speichern kann.
Meine Erfahrungen sind da sehr beschränkt, aber ich versuch's mal:

Du legst im Assistenten einen Variablenbereich für Deine aktuellen Daten fest, der dem Speicherbedarf eines Rezeptes entspricht. Das ist der Bereich, an den Dein SPS-Programm aktuelle Daten ablegt oder ein gespeichertes Rezept wieder liest.
Zusätzlich erstellt der Assistent 2 Unterprogramme:
Beim Aufruf der RCPx_Write (CALL RCPx_WRITE:SBRx, #RezeptNr, #Error) werden die vorhandenen Daten in diesem Variablenbereich ausgelesen und unter der angegebenen Rezeptnummer auf dem EPROM abgelegt.
Beim Aufruf der RCPx_Read (CALL RCPx_READ:SBRx, #RezeptNr, #Error) wird das angegebene Rezept auf dem EPROM ausgelesen und im oben angegebenen Variablenbereich hinein geschrieben.
Die beiden Unterprogramme findest Du nach dem Erstellen durch den Assistenten ganz links unten bei den Operationen-Unterprogrammaufrufe und kannst sie dann von dort wie alle anderen Befehle in Dein Programm ziehen.

Beides kann wie jede andere SBR aus dem Programm heraus aufgerufen werden. Also z.B.:
Code:
[FONT=courier new]LD     E0.0
CALL   RCP0_READ:SBR1, 1, VB10

LD     E0.1
CALL   RCP0_READ:SBR1, 2, VB10

...

[/FONT][FONT=courier new]LD     E0.2[/FONT]
[FONT=courier new]CALL   RCP0_WRITE:SBR2, 1, VB10

[/FONT][FONT=courier new]LD     E0.3[/FONT]
[FONT=courier new]CALL   RCP0_WRITE:SBR2, 2, VB10[/FONT]
Das Lesen bzw. Schreiben wird in diesem Fall also über das Setzen der verschiedenen Eingänge ausgelöst.

Zusammengefasst:
Das SPS-Programm selbst arbeitet immer nur mit dem einen eingestellten Variablenbereich und kann diesen weiterhin wie vorher bearbeiten oder lesen. Das Übertragen zu und vom Rezeptspeicher auf dem EEPROM übernehmen die beiden Unterprogramme.
Man kann Rezepte vordefinieren, muss aber nicht. Vordefinierte Rezepte können aus dem Programm heraus geändert werden.
Im Assistenten gibt es unten links ein Hilfefeld, das Dir sicher noch weitere Hinweise in Deiner Muttersprache gibt.



PS: Rein zum Daten sammeln kann man auch den DataLog verwenden. Diese gesammelte Daten lassen sich hinterher als csv-Datei über den S7-200-Explorer auslesen und z.B. mit Excel weiterverarbeiten. Dabei erfolgt aber aus dem SPS-Programm heraus nur das Schreiben der Daten.
 
Zuletzt bearbeitet:
Zurück
Oben