Step 7 Redunante Daten

arcomp

Level-1
Beiträge
8
Reaktionspunkte
0
Zuviel Werbung?
-> Hier kostenlos registrieren
Hi zusammen,
ich suche noch eine einfache Moeglichkeit Daten bzw. Konstanten dauerhaft abzuspeichern.

In PHOENIX WORKS gab es eine Checkbox wenn man die daten als redundant speichern moechte.


Checkbox an, und beim naechsten Neustart sind die alten werte vorhanden.

Bei S7 sehe ich das irgendwie nicht, oder es wird kompliziert.

Ich habe die CPU 300 oder 1200. Meine Transducer sollen ueber den HMI konfiguriert werden und dass moeglichst flexibel. Also 4-20mA sind zB. -5 bis +55 degC oder 0-40bar usw. Je nachdem was der Kunde als Eingang waehlt.


Freundlichen Gruss aus Kapstadt.


Andreas Rothe
 
Meintest du womöglich remanent? Immer diese Fachbegriffe.... :ROFLMAO:

Bei der 300er ist alles was in einem Datenbaustein und Instanzdatenbaustein liegt automatisch redundant. Die Remanenz der Merkerbreiche kann man in der Hardware-Konfig der CPU einstellen.
Bei der 1200er gibt es bei den Datenbausteinen im TIA-Portal für jeden Datenpunkt den du erstellst ein Häkchen. Merker weiß ich bei der 1200er auf die schnelle nicht - könnt aber auch in der HW-Konfig stehen.
 
Zuviel Werbung?
-> Hier kostenlos registrieren
Hi Ronin, danke fuer die Antwort. Ja immer diese Fachbegriffe, es scheint mir aber auch so dass nach einer gewissen Zeit die Profis alles neu benennen um uns (ewig jungen) Benutzer es wieder schwieriger zu machen.

ICh hab jetzt im Instanzdatenbaustein die Werte als Static deklariert. Jetzt kann ich Werte abspeichern und beim naechsten Neustart sind diese Werte auch wieder vorhanden. Aber man sieht diese Werte im OB1 nicht da sie ja nicht INPUT sind.

Diesen PLC Tag moechte ich gerne vom HMI aus veraendern und remanent haben.

Ist dass moeglich?


Gruss

Andy
 
ICh hab jetzt im Instanzdatenbaustein die Werte als Static deklariert.
Jetzt kann ich Werte abspeichern und beim naechsten Neustart sind diese Werte auch wieder vorhanden.
Ja jetzt sind die Daten remanent. Ich persönlich würde aber davon abraten Einstellwerte als Static in Instanzdaten zu speichern. Diese DBs werden müsseb, wenn du die Bausteinschnittstelle veränderst, neu generiert und in die SPS übertragen werden.

Für Einstellwerte nimm lieber einen normalen DB (Globaldatenbaustein)

Aber man sieht diese Werte im OB1 nicht da sie ja nicht INPUT sind.
Diesen PLC Tag moechte ich gerne vom HMI aus veraendern und remanent haben.
Ist dass moeglich?
:confused::confused::confused:
Vorher sprichst du von Instanz-Static jetzt von Instanz-IN. Ein IN-Paramter ist nur von der Theorie her statisch.
Der Parameter an sich ist es, er wird jedoch bei jedem FB-Aufruf mit dem Überschrieben was auf dem Gänsefüßchen des Bausteineingangs hängt.
Wichtig ist das die Parameter die du an den FB übergibst statisch sind.

Man kann schon vom HMI auf die Daten des IDB, man muss dann einfach den richtigen IDB und die richtige Multi-Instanz wählen.
Der generelle Konsensus ist aber dass man das lassen soll!
Die Instanzdaten sollten in der Regel (pauschal gesagt) nur den FB was angehen.
Das ist zwar eine Frage des Programmierstils, man sollte aber meiner Meinung nach, vor allem als Neuling, externe IDB-Zugriffe meiden.

Das mit dem "sehe ich in OB1 nicht" kapier ich nich... :confused:
Ich könnte mir vorstellen das du damit den genauen Wert des IN-Paramters meinst. Der ist aber ident mit dem Wert des Variable die du am Gänsefüßchen übergibst.
Werteübergaben an Funktionen sollte es bei Phoenix-Works doch auch geben, oder?
 
Zuletzt bearbeitet:
Es sind die Variablen im OB1 die in Gänsefüßchen stehen. Diese moechte ich gerne remanent machen. Ich kann zwar die globale Datenbank oeffnen, aber das Feld fuer RETAIN laesst sich nicht editieren. Was ist wenn ich in Eigenschaften eine andere Speicher Adresse angebe. Im Moment steht da %MD80
 
Zuviel Werbung?
-> Hier kostenlos registrieren
Es sind die Variablen im OB1 die in Gänsefüßchen stehen. Diese moechte ich gerne remanent machen. Ich kann zwar die globale Datenbank oeffnen, aber das Feld fuer RETAIN laesst sich nicht editieren. Was ist wenn ich in Eigenschaften eine andere Speicher Adresse angebe. Im Moment steht da %MD80

1.) Globale Datenbank? Meinst du globaler Datenbaustein oder etwa den Merkerbereich
2.) Alle globalen Datenbausteine und sämtlicher Inhalt ist bei der 300er automatisch remanent. Ein RETAIN-Attribut gibt es nur für Datenbausteine der 1200/1500-Serie. Welche CPU hast du denn jetzt?
3.) Das was du als Globaldatenbank beschreibst ist vermutlich der Merkerbereich, da du ja auch MD80 angibst.
Verwechsle das bitte nicht mit globalen Variablen in anderen Programmierumgebungen! Verwechsle auch nicht Merker mit Global-Datenbausteinen.​
Dieser Bereich ist zwar ähnlich, aber auch recht klein (bei den kleinen 300ern manchmal nur 250Byte).​
Der Merkerbereich ist eher als Hilfsbereich, z.B.: zum Austausch einiger Flags zwischen einzelnen Programmteilen gedacht.​
Er ist eher ein Relikt aus früheren Zeiten, ist aber auch nicht komplett nutzlos. Ich bin froh das es ihn noch gibt.​
4.) Die Remananz dieses Merker-Bereichs wird in der Hardware-Konfiguration der CPU verstellt.
5.) Der Globaldaten-Bereich im Sinne anderer Programmierumgebungen sind bei der S7 die Global-Datenbausteine.
6.) Füge dir einfach einen Globalen Datenbaustein ist Projekt ein (Bausteinorder - Neues Objekt erstellen) und lege die Werte da remanent ab.
 
Zuletzt bearbeitet:
Danke Ronin,

Ich simuliere mit einer 300er und spaeter soll das ganze mit einer 1200er laufen.

Ich denke fuer dieses Projekt werde ich alle ( bzw. die meisten) Daten als STATIC im FB deklarieren.

Zum zweiten muss ich mich noch ein bischen mehr mit dem Thema Global, Datenbereich Merkerbereich usw. auseinander setzten.

Wie der Koelner zu sagen pflegt

"Et is noch immer alles joot jejange"


Schoenen Gruss aus Kapstatdt und schoene Ferien.


Andy
 
Zurück
Oben