TIA Projektname/Stand auf HMI anzeigen

Sickone4

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

ich wurde vom Kunden gebeten die Version meines Projektes, also den Speicherstand auf dem Panel anzuzeigen.
Mir ist nicht bekannt, wie und ob das geht. Ich habe mal in Option+ geschaut aber auch nichts gefunden.

Hat jemand eine "einfache" Lösung, wie man das auslesen/anzeigen kann?

Eine Möglichkeit via E/A Feld und händisch einen String eintragen finde ich nicht gut, da hier oft eine Aktualisierung nach dem speichern vergessen wird.

MfG
Sven
 
würde nen DB "Projekt-Informationen" anlegen dort die gewünschten Daten eintragen und per HMI auslesen.
Die Daten müssen natürlich jeweils bei projektänderung manuell im DB aktualisiert werden.
 
Hallo,

es gibt de Befehl "GetChecksum" damit kann man die Prüfsumme aus der CPU lesen.
Dann ein kleinen Baustein der die Aktuelle Prüfsumme mit der letzten Vergleicht. Im falle von 1 hoch zählen.
Somit muss nicht manuell bearbeitet werden (wird sonnst eh vergessen)
 
Zuviel Werbung?
-> Hier kostenlos registrieren
So könnte das aussehen, Die version wird dann als Real angegeben mit 1.01 beim nächsten übertragen dann 1.02 usw.

Code:
REGION Checksumme auslesen
    #GetChecksum_Instance(Scope := 1,
                          Range := 0,
                          Subrange := 0,
                          Checksum := #"Checksum akt.");
    
END_REGION


REGION Version hochzählen;
    
    IF #"Checksum akt." <> #"Checksum speicher 1" THEN
        #SW_V := #SW_V + 1;
        #"Checksum speicher 1" := #"Checksum akt.";
    END_IF;
    
    #"SW-Version" := (INT_TO_REAL(UINT_TO_INT(#SW_V))) / 100;
    
END_REGION
 
es gibt de Befehl "GetChecksum" damit kann man die Prüfsumme aus der CPU lesen.
Dann ein kleinen Baustein der die Aktuelle Prüfsumme mit der letzten Vergleicht. Im falle von 1 hoch zählen.
Somit muss nicht manuell bearbeitet werden (wird sonnst eh vergessen)
Nicht schlecht.
Aber dann haben identische Maschinen unterschiedliche Versionsnummern.
Ich suche auch wie man automatisch ein Versionsstand von das TIA Programm in die CPU hinterlegen kann.
Dasselbe mit die HMI.
Ich möchte dass man auf ein Bild auf die HMI die Versionsstände visuell checken kann. Was ist die aktuelle Version, und sind PLC und HMI Programme synkronisiert ?
 
Nicht schlecht.
Aber dann haben identische Maschinen unterschiedliche Versionsnummern.
Ich suche auch wie man automatisch ein Versionsstand von das TIA Programm in die CPU hinterlegen kann.
Dasselbe mit die HMI.
Ich möchte dass man auf ein Bild auf die HMI die Versionsstände visuell checken kann. Was ist die aktuelle Version, und sind PLC und HMI Programme synkronisiert ?
Bin nicht 100% sicher aber bei gleicher Software sollte auch die Checksum gleich sein. Bedeutet, wenn man die Checksum anzeigt, kann man bei mehreren baugleichen Anlagen vergleichen, ob die Software gleich ist. (ähnlich wie bei safety Programmen.)
 
Zuviel Werbung?
-> Hier kostenlos registrieren
Also, man kann die Checksum im SPS Programm auslesen, gibt es auch ein Systemfunktion für dasselbe in die WinCC HMI ?
Dass wäre dann eine Möglichkeit.
Man konnte vielleicht sogar die Werte vergleichen und ein Warnung anzeigen wenn sie unterschieldich sind.
 
Zuviel Werbung?
-> Hier kostenlos registrieren
So könnte das aussehen, Die version wird dann als Real angegeben mit 1.01 beim nächsten übertragen dann 1.02 usw.

Code:
REGION Checksumme auslesen
    #GetChecksum_Instance(Scope := 1,
                          Range := 0,
                          Subrange := 0,
                          Checksum := #"Checksum akt.");
 
END_REGION


REGION Version hochzählen;
 
    IF #"Checksum akt." <> #"Checksum speicher 1" THEN
        #SW_V := #SW_V + 1;
        #"Checksum speicher 1" := #"Checksum akt.";
    END_IF;
 
    #"SW-Version" := (INT_TO_REAL(UINT_TO_INT(#SW_V))) / 100;
 
END_REGION
Aber wie sieht es aus wenn man das HMI neu überträgt? Bzw. wie stelle ich sicher das #"Checksum speicher 1" nicht wieder zurückgesetzt wird?
 
Hmm, wenn man zufällig nach neue Version 2 wird wieder alte Version 1 hochladen?

Code:
IF #"Checksum akt." <> #"Checksum speicher 1"

Und da kommt in HMI "neue" Version 3.
 
Ich wurde nicht ein Versionsnummer generieren lassen, sondern die Checksum anzeigen lassen.
Wenn man die Checksum von die HMI nicht auslesen kann, gibt es keinen Weg.
(also nicht die Checksum von die SPS auf die HMI anzeigen, sondern die Checksum von die HMI auf die HMI anzeigen).

Für die HMI wird nur versucht etwas mit die Datum zu basteln. Das führt mMn. zu nichts.
 
Egal wie vermeintlich clever man sich anstellt, es gibt nichts was automatisch wirklich funktioniert. Die Versionsnummer/Buildnummer des HMI-Projektes muß händisch vom HMI-Programmierer angepasst werden.
Es gibt zwar in den Eigenschaften des HMI-Projektes eine Versionsnummer/Buildnummer, an die kommt man aber in der Runtime nicht ran.

Harald
 
Ich habe so etwas auch schon leider vergeblich gesucht. Eine Alternative wäre es eine remanente Datumsvariable anzulegen und dann im HMI eine Seite anlegen auf der man per Button-Click (mit Benutzerrechten) das aktuelle Datum und Uhrzeit in die Variable schreibt. Tut mir Leid keine einfachere Lösung anbieten zu können. 😕
 
Zuviel Werbung?
-> Hier kostenlos registrieren
Was wäre der Sinn einer solchen Checksum- bzw. LetzteÄnderungsZeitpunkts-Eingabe/-Anzeige?
Doch eigentlich nur den generellen (= nicht näher spezifizierten) Hinweis bilden zu können:
"Achtung! Hier ist nicht (mehr) das drin, was (eigentlich gar nicht) draufsteht."
Den Zeitpunkt der letzten Änderung könnte man mit ZugriffsMöglichkeit auf die Checksum natürlich automatisch generieren nach der Methode "die Checksum hat sich zuletzt geändert am ... um ... Uhr".
 
Zuletzt bearbeitet:
Der Sinn der Anzeige einer Versionsnummer auf dem HMI ist, daß man "optisch" vergleichen kann, ob man (wahrscheinlich) das richtige HMI-Projekt hat zu der Version, die auf dem Panel geladen ist.
Weil ein Detailvergleich oder genereller Vergleich offline vs. online für die HMI nicht möglich ist, und bekanntermaßen fast alle HMI-Programmierer schlampig mit den Projektversionen umgehen und auch fast alle "vergessen", die HMI-Version händisch einzutragen. ;)

Harald
 
Gründe für die Versionsnummer bzw. die Checksum(me):
1. checken ob SPS und HMI Versionsstände synkron sind.
2. checken on SPS/HMI mit die Version arbeitet die man erwartet.
3. checken ob eine unautorisierte Programmänderung geladen wurde.
 
Zurück
Oben