TIA Vermeidung vom Initialisieren der DBs

Zuviel Werbung?
-> Hier kostenlos registrieren
Für mich immer noch die Gretchenfrage
Gegenfragen und Kritik sind unerwünscht, dass weißt du doch.

Aber im Ernst, ich verstehe es auch nicht. Der TIA Spezialist der alle Kritiker als Muppetshowleute bezeichnet erklärt ja, dass es nicht gehen kann. Über Openess dann doch? Er kann das ja gerne mal erklären.
 
Hängt vielleicht mit der Neustrukturierung des Remanzspeichers in der CPU zusammen.
Vor über 55 Jahren sind die Amis auf dem Mond gelandet, spaziert und wieder nach Hause geflogen. Vor kurzem wurden erfolgreich die Triebwerke von Voyager 1 reaktiviert ( seit 47 Jahren unterwegs, Signallaufzeit zur Voyager 24h ), welche vor über 20 Jahren als defekt aufgegeben wurde.

Aber heute ist es nicht möglich, einen Namen ohne Reinit zu ändern oder stoßfrei eine Variable aus dem nicht remanenten Speicher auszuchecken und in den Remanenzspeicher einzuchecken.

🤔
 
Kurze spinige Idee.

In der Visualisierung für wichtige Variablen eine Dummy Seite spendieren.Das Rezept nennen wir mal großzügig
Aktualwerte speichern.Dann könnte man vor der Änderung diese von der SPS->Visualisierung scheiben und dann wieder
von der Visualisierung->SPS.Also ein lade/transfer Button.Die Seite könnte man verstecken und als Service Seite nur für
berechtigte Personen aufrufbar machen.Man könnte so zumindest die Tipperei sich sparen.Löst aber das Gesamtproblem nicht.
Vor allem hat man dann noch diesen Rezepteditor der ebenfalls nicht sehr gut ist.Da gibt es übrigens wieder externe Excel Rezepteditoren für Siemens, die aber wieder sehr teuer sind, da sie als Lizens gekauft werden müssen pro Steuerung.Auch in diesem Bereich ein Rückschritt.
 
Kurze spinige Idee.

In der Visualisierung für wichtige Variablen eine Dummy Seite spendieren.Das Rezept nennen wir mal großzügig
Aktualwerte speichern.Dann könnte man vor der Änderung diese von der SPS->Visualisierung scheiben und dann wieder
von der Visualisierung->SPS.Also ein lade/transfer Button.Die Seite könnte man verstecken und als Service Seite nur für
berechtigte Personen aufrufbar machen.Man könnte so zumindest die Tipperei sich sparen.Löst aber das Gesamtproblem nicht.
Vor allem hat man dann noch diesen Rezepteditor der ebenfalls nicht sehr gut ist.Da gibt es übrigens wieder externe Excel Rezepteditoren für Siemens, die aber wieder sehr teuer sind, da sie als Lizens gekauft werden müssen pro Steuerung.Auch in diesem Bereich ein Rückschritt.
ja, zum Sichern der Aktualwerte kann ich mit TIA die Momentaufnahme nutzen. Das Problem bleibt aber, wenn zwischen Momentaufnahme und DB-Änderung und Einspielen sich so viele Variableninhalte geändert haben, dass die Anlage nicht ordentlich weiterläuft...

Also es sind 2 verschiedenen Themen:
1. Einstellwerte sichern, z.B. Grenzwerte für irgendwas
2. stoßfreies Beibehalten der Aktualwerte, z.B. Setze/Rücksetze-Variablen, Zähler usw. (für ein Laden eines DBs im laufnden Betrieb, darf keine einzige Variable ihren Wert verändern)
 
Aber heute ist es nicht möglich, einen Namen ohne Reinit zu ändern oder stoßfrei eine Variable aus dem nicht remanenten Speicher auszuchecken und in den Remanenzspeicher einzuchecken.

🤔

Wenn man sich mal genauere Gedanken macht, was alles mit stoßfreiem Laden verbunden ist und welche Randbedingungen da mit reinspielen, dann ist das schon komplex.
Bei Classic hast du halt mehr Möglichkeit auf den Ladeprozess gehabt und konntest die Reihenfolge selbst bestimmen. Aber auch da bist du an Grenzen gestoßen und musstest dann teils Hilfsbausteine schreiben um von Version A zu Version B zu gelangen.
Den Weg hast du heute auch noch. Bei TIA muss man sich halt mehr Gedanken machen. Je mehr ich über Parameter und Instanzen mache, umso schwieriger wird es. Programmiere ich "altmodisch", dann ist's einfacher.
Nicht immer liegt es an TIA sondern manchmal sitzt das Problem vorm PC
 
Zuviel Werbung?
-> Hier kostenlos registrieren
Nicht immer liegt es an TIA sondern manchmal sitzt das Problem vorm PC

Zumal die Erwartungshaltung mancher Programmierer zuweilen absurde Züge annimmt.
Wenn man vorab ein gutes DB-Variablen Modell gewählt hat, wird es nur selten Variablenänderungen geben müssen.
Auch sollte man, nicht so wie früher riesige DBs anlegen sondern modular.
Damit legt man für neue Komponenten neue DBs an und fertig.
Wenn alles nichts hilft, dann altmodisch (wenn es nicht zu viele sind) die Aktualvariablen als Steuervariablen innerhalb einer VAT/Beobachtungstabelle "retten" und nach dem Programmdownload zurückkopieren.
 
enn man vorab ein gutes DB-Variablen Modell gewählt hat, wird es nur selten Variablenänderungen geben müssen.
100% Zustimmung.
Nur wer macht sich heute noch Gedanken um ein DB-Modell?
Am liebsten objektorientiert alles in die Instanz und dann die ganze Station / Maschine in einen Über-FB.
Und bloß keine Global-DBs.
Wenn ich so programmiere, dann darf ich nicht wundern, wenn ich bei jeder Änderung die Anlage leerräumen muss.
 
Wenn man sich mal genauere Gedanken macht, was alles mit stoßfreiem Laden verbunden ist und welche Randbedingungen da mit reinspielen, dann ist das schon komplex.
Primär gehts ja hier erstmal ums "Umbenennen" von (Einzel-) Variablen in einem Global-DB.
Von stoßfreiem Ändern und Erweitern von UDTs welche im gesamten Projekt 1000 mal verwendet werden haben wir ja noch garnicht geredet 😂
 
Das schreibt ja Siemens auch so in seinen vielzitierten Programmierrichtlinien🙄
Die Diskussion hatte ich vor Jahren schon mit den Herren von Siemens.
Wenn sie wenigstens mal auf Alternative mit Global-DBs hinweisen würden und ein paar Beispiele zeigen würden, wär ich ja zufrieden.
Jeder Anfänger meint, dass die Guidelines fast sowas wie die Bibel sind.
 
Zurück
Oben