TIA Möglichkeiten zum Sichern von Bausteinparameter/ Einstellwerten

Mrtain

Level-3
Beiträge
1.610
Reaktionspunkte
988
Zuviel Werbung?
-> Hier kostenlos registrieren
Hi,

Ich bin aktuell dabei, ein zwei Sachen an meinen Bausteinen zu überarbeiten / überdenken.
Dabei unter anderem das sichern von Parametern oder Einstellwerten von zum Beispiel Motorbausteinen.
Folgende Möglichkeiten fallen mir dazu ein:
  1. Wie bisher, alles im Instanz-DB remanent zu speichern
  2. Als Rezept im HMI
  3. Eventuell als Textfile
Zu 1) Wenn die Werte nicht in den Startwerten hinterlegt werden, besteht natürlich die Gefahr, dass die Werte weg sind, falls der DB reinitalisiert wird.

Zu 2 & 3) Habt da jemand schon Erfahrung gemacht bzw. Spricht etwas für oder gegen eine dieser Möglichkeiten?

Ich freue mich auf euer Feedback:)
 
gegen Reinitialisieren (durch umbenennen von Reservevariablen) hilft u.U. das kopieren in einen Rettungs-DB. Ansonsten die DBs regelmässig ins Projekt abziehen, mindestens vor Änderungen am DB.

Remanenz hat aber mit dem Thema nichts zu tun, Remanenz bezieht sich auf CPU-Spannungsausfall.

Grundsätzlich erstmal alle Fälle auflisten, für die Du "sichern" willst:
- CPU-Defekt
- CPU-Spannungsausfall
- Reinitialisieren
- Fehleingaben am HMI
- Verlust/Defekt des TIA-Projektes
- Sichern von Merkern
- wie oft ändern sich Einstellwerte, minütlich, halbjährlich?
- ...

Das sind jeweils verschiedene Lösungen.

Und vor allem, wie soll eine Wiederherstellung funktionieren, wer macht die? Wer versteht das Rettungskonstrukt noch in 10 Jahren? ...
 
Zuletzt bearbeitet:
Remanenz hat aber mit dem Thema nichts zu tun, Remanenz bezieht sich auf CPU-Spannungsausfall.
Die Maschine mit dem Hauptschalter auszuschaltend kommt ja doch häufiger vor als man denkt

wie oft ändern sich Einstellwerte, minütlich, halbjährlich?
In der Theorie sollte sich das nicht allzu oft ändern. Ich rede von allgemeinen Einstellungen, wie Getriebeübersetzungen etc.. Also Werte die man bei der IBN einstellt und dann theoretisch nicht mehr angefasst werden sollten. Eigentliche sollte es reichen, dass mit Startwerten etc. abzudecken. Aber ich hab auch schon oft genug erlebt, dass das in die Hose gegangen ist. Vor allem wenn mehrere Programmierer an einer Anlage arbeiten.

Ansonsten die DBs regelmäßig ins Projekt abziehen, mindestens vor Änderungen am DB.
Das wäre natürlich wünschenswert, wird aber nicht passieren....

Und vor allem, wie soll eine Wiederherstellung funktionieren, wer macht die? Wer versteht das Rettungskonstrukt noch in 10 Jahren?
Guter Punkt...

Momentan tendiere ich zu den Bausteinen RecipeImport / RecipeExport. Werde ich mal mit experementieren und schauen, ob das passt.
 
Zuviel Werbung?
-> Hier kostenlos registrieren
Das einzige was meiner Erfahrung nach wirklich funktioniert, ist die relevanten Werte automatisiert zu sichern. In irgendeine Art von Datenbank. Wir haben einen Kunden bei dem alle Variablen die mit "Erreichbar aus OPC/UA" und "Einstellwert" gekennzeichnet sind, regelmäßig diese Aktualwerte per OPC/UA gesichert werden.
 
Wir haben für Fahrdaten (Position, Geschwindigkeit, Beschleunigung.) einen eigenen DB je Motor oder auch einen DB für mehrere Motoren. Dort sind Daten, die gespeichert werden sollen remanent angelegt. Auch für wichitge remanente Daten, die die Produktion bzw. den Status von Stationen usw. (Teil vorhanden etc,) betreffen liegen in einem extra remanenten DB je Station. Im IDB liegen inzwischen keine remanenten Daten mehr, da kann man beliebig reinitialisieren. Die DB mit den rem. Daten können auch erweitert werden, die rem. Daten werden dann vorher als Aktualwerte in die Startwerte gespeichert und sind nach der Änderung wieder korrekt (wenn das nötig sein sollte). Wenn ich die Maschine fertig eingestellt habe speichere ich noch einmal die Aktualdaten der remanenten Speicherbereiche in die Startwerte, so sind die Positionen zumindest immer auf dem Stand, bei welchem ich die Maschine verlassen habe. Wenn auch die weiteren Änderungen vor Ort gesichert sein sollen, kommt man wohl um die Rezeptverwaltung nicht herum, allso speichern im Panel. Das haben wir auch für WinCC Adv. Panels aber für Unify haben wir das so noch nicht umgesetzt, war noch nicht gefordert.
 
Zu 2 & 3) Habt da jemand schon Erfahrung gemacht bzw. Spricht etwas für oder gegen eine dieser Möglichkeiten?
3. hab ich schon auf SPS-Seite per RecipeImport/ReciepeExport gesehen.
Hier ging es aber "nur" um Konfigurations-DBs, die sich nach der IB selten bis nie ändern sollten (Endlagen, Antriebs-Config & so Zeug).
Es gab einen Merker, der manuell nach Abschluss der IB gesetzt wurde, der allen Bausteinen mitgeteilt hat, dass sie ihre Parameter sichern sollen.
Diese wurden dann per "RecipeExport" aus dem jeweiligen Config-DB in eine .csv auf der SD-Karte geschrieben.
Zurückladen der Parameter wurde dann auf dem HMI per "Rücksetzen auf Werkseinstellungen"-Button oder der "Remanenzdaten verloren"-Flag aus OB100 angetriggert.

Ein ähnliches Konzept würde auch mit HMIs gehen, müsstest halt sämtliche Config-Parameter in der HMI-Rezepturverwaltung verarbeiten.
Außerdem: es gibt auf den HMIs auch genug genug Möglichkeiten die Rezepturdaten versehentlich zu löschen. Das bringt also nochmal eine zusätzliche Fehlerquelle mit, die einem um die Ohren fliegen kann.
Wäre mir persönlich etwas zu viel Aufwand.
 
Zuviel Werbung?
-> Hier kostenlos registrieren
Ich mache das mit Monemtaufnahmen (ähnlich zu dem "Als Startwerte setzen").
Im Instanz-DB wird bei uns an Parametern garnichts gespeichert, da sind Probleme mit re-init ja schon Vordefiniert.

Egal welches System man verwendet, der Inbetriebnehmer muss sowieso irgendwas machen, ob das jetzt auf Startwerte kopieren, oder das Rezept rausspeichern oder auf einen eigenen DB umkopieren ist...

Die Vorteile die ich mit Momentaufnahmen habe:
- Startwerte bleiben unverändert
- Ich sehe das Datum der Momentaufnahme und die Werte (Reiter ist Standardmäßig ausgeblendet)
- Ich kann den DB offline ändern und dann reinitialisieren (Muss dann halt die Momentwerte wieder laden, ist also nicht Stoßfrei)
- Ich brauche mich nicht um Strukturänderungen kümmern (Rezept / ShadowDB anpassen)

Die Nachteile:
- Nur im TIA-Projekt dokumentiert
- Reinitialisiern nicht Stoßfrei
- Vergessen darf man es nicht (wie überall), allerdings habe ich durch den Zeitstempel eine direkte Anzeige

So sieht das dann bei mir aus:
Hier gefällt mir bei Standardmaschinen auch, dass man gleich sieht was im Vergleich zum Startwert geändert wurde
1770037684364.png
 
Maybe sowas- via opc- ua und exel:








 
Zuletzt bearbeitet:
Das sind viele interessante ansätze, danke an euch alle dafür. Ich hoffe nur, dass ich demnächst Zeit bekomme, mich in die einzuarbeiten. Allerdings sind die nächsten Wochen vollgepackt mit Arbeit
 
Zurück
Oben