flex2007: Runtime stellt meine Laptop Uhr

sven

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

ich habe mal wieder ein Phänomen mit WinCCflex (2007).
In der projektierung ist vorgegeben, das die Uhrzeit aus einem DB-Bereich zyklisch (jede Minute) aus der CPU ausgelesen werden soll. Das klappt auch sehr gut.
Mein Problem: Wenn ich diese Projektierung über die Runtime laufen lasse, dann wird die Uhr auf die CPU-Zeit aktualisiert. Die Laptop (WindowsXP) - Uhr wird dann jedoch auf die CPU Uhr gestellt.

Ich hatte dieses Problem schon auf flex 2005 gehabt:
Lang, lang ist es her und die Lösung war sehr schwer.:-D

Hat jemand eine Idee?

Vielen Dank und schönes arbeiten.

Sven
 
Den Effekt kenn ich auch - ob er einem würg-around würdig ist, weiß ich nicht. Ich wäre jetzt geneigt, das auf die WCf-Wunschliste zu setzen: wenn Panel, dann synchro mit CPU, wenn runtime auf ES - bitte die Finger von der PC-Uhr lassen!
 
Zuviel Werbung?
-> Hier kostenlos registrieren
Ja, das kenne ich auch; habe mal viel Zeit damit verbracht ein Word-Dokument zu suchen das ich während einer Runtime-Sitzung gespeichert hatte. (Nein, ich habe 1994 noch nicht mit WinCC flex gearbeitet *g*)

Das Spielchen geht sogar noch weiter: Ein genervter Kollege im Nachbarbüro bekam alle während des Tests von mir provozierten Meldungen auf seinem Drucker protokolliert.
Seitdem gilt bei uns: erst Netzwerkkabel ziehen, dann simulieren.
 
also,
meiner meinung nach ist das absolut richtig das die zeit verändert wird.

was wäre denn wenn :

die runtime auf einem panel laufen soll, dann wird doch auch die zeit der cpu angezeigt und nicht die des gerätes!!

und in dem fall wenn man die runtime startet wird ein panel simuliert, das heist alle funktionen die auf dem panel geschehen geschehen dann im simulierten panel also dem pc!
 
also,
meiner meinung nach ist das absolut richtig das die zeit verändert wird.

was wäre denn wenn :

die runtime auf einem panel laufen soll, dann wird doch auch die zeit der cpu angezeigt und nicht die des gerätes!!

und in dem fall wenn man die runtime startet wird ein panel simuliert, das heist alle funktionen die auf dem panel geschehen geschehen dann im simulierten panel also dem pc!

Wenn Runtime auf einem Panel läuft und dort die CPU-Uhrzeit anzeigt, so liegt das meist daran, dass das Panel keine Uhr mit Gangreserve hat (so ist das jedenfalls bei meinem Billich-Panel OP277).

Und wenn Runtime auf meinem PC ein Panel simuliert, dann ist Runtime sehr wohl in der Lage, zu merken, dass das ein PC ist und stellt dann die auf meinem PC nicht vorhandenen Hardwaretasten auf meinem Bildschirm dar. Ebenso könnte Runtime merken, dass das Gerät, auf dem es läuft, eventuell keine Uhrzeitsynchronisation benötigt. Und es könnte höflich fragen, ob der Druckjob wirklich ausgeführt werden soll und ob es wirklich in ein Unterverzeichnis namens Flash auf der Festplatte schreiben soll.
 
Zuviel Werbung?
-> Hier kostenlos registrieren
also,
die systemzeit des siumulierten panels ist die pc zeit.
wenn du einen bereichszeiger projektierst der deine uhrzeit am panel stellt, also die systemzeit des gerätes aktuelisiert, dann wird logischer weise die systemzeit des panels ( des simulierten panels ) mit der zeit der cpu abgeglichen!
und wenn jemand mit rezepturen/ passwortverwaltung arbeitet( und dies am pc simulieren will), und kein verzeichnis namens flash/recipies oder benutzerverwaltung.txt anlegt, dann wären die menschen die sich über das aktuelle verhalten beschweren auch die menschen die sich über das geänderte verhalten beschweren würden!!
und auch das anlegen eines /flash ordners ist logisch, denn diesen ordner gibst du ja schließlich im projekt an, also wird auf die systempartition ein ordner namens flash angelegt und die entsprechenden daten gespeichert.
und ob du ein windows xp oder windows ce hast kann eine software application wie eine runtime sicherlich nicht überprüfen!

ach ja, bin auf die breitseite gespannt die mich erwartet, denn wenn ein verhalten korrekt ist, ich es aber nicht verstehe/ einsehen will dann muss der jenige der es einem erklärt immer der schuldige sein.

früher nannte man das inquisition ...
 
also, da gibt es ja was, das auf meinem PC die nicht vorhandene Tastatur eines OP mir am Bildschirm darstellt. Nun, die ist nicht vorhanden, muss also simuliert werden - logisch:)

In einem TP177 gibts keine Hardwareuhr, nur die Softwareuhr von CE. Die muss ich nach Power-on mit der CPU-Zeit synchronisieren.

Mein PC hat eine Hardwareuhr und eiine Softwareuhr. Dass Runtime danach greift, kann eventuell logisch sein. Aber könnte es nicht ebenso logisch sein, so wie die simulierte Tastatur auch eine für Runtime simulierte Uhr zur Verfügung zu stellen :confused: ?

Na vielleicht gibts für Windows irgendwo ein Dienstprogramm, dass so wie ne Firewall oder Antivirenprogramm die Systemuhr schützen kann, dann son Fenster aufgeht: "Anwendung will Uhrzeit stellen, OK oder blocken?" :twisted:
 
Das einzig sinnvolle wäre es,
diesen Punkt in die Wunschliste mit zu übernehmen.
Dann bei Einstellungen ein Check-Button, Uhrzeit auf Host übernehmen ja/nein.

Wenn ich die Zeit setzen will, muss das Ding das auch in der Silumation machen egal welches OP.
Beim ersten mal ist man halt verwundert, genau wenn nach der Simualtion das PG die MPI Adresse vom OP übernimmt.
 
Zuviel Werbung?
-> Hier kostenlos registrieren
Simulation

wünschenswerter wäre meiner Meinung nach die Simulation der Tasten als Profibus-Tasten, wenn der Anschluß über Profibus erfolgt.
Leider sind die PB-Tasten und die Runtime verschiedene Schuhe und so wird dies ein Wunsch bleiben.
mfG. Jo
 
Der Denkanstoß kommt heut nacht um drei

Lösung Teil 1: UTC!

Was ist neu in STEP 7 Version 5.4?
SIMATIC Manager:
Sie können sich die Baugruppenzeiten in der Lokalzeit Ihres PG/PC anzeigen lassen. Die Einstellung nehmen Sie im SIMATIC Manager vor, im Register "Datum und Uhrzeit" des Dialogfeldes "Einstellungen".

WCf scheint da noch weit weg zu sein, zumindest in der Version 2005 - zu 2007 kann ich zu dieser Sekunde keine Aussage machen, aber prüfe ich dann am Montag.


Lösung Teil 2:

Uhren bleiben stehen - aber sie zeigen sehr selten die Zeit der Zukunft. Wenn also der Uhrstellalgorithmus feststellt, dass die fremde Uhr im Vergleich mit der eigenen Uhr eine Zeit aus dem letzten Jahrhundert zeigt, dann könnte eine Systemmeldung kommen "Uhr-synchro fehlgeschlagen" und fertig. Ist dagegen die eigene Uhr stehen geblieben, dann synchronisieren.
 
Warum einfach wenn es auch kompliziert geht.

Hallo gemeinsam,

die ersten Antworten auf meine Frage waren in meiner Wellenlänge und ich habe sie begriffen. Dann folgten Antworten von rethorisch hochentwickelten Sprachgeniessern und ich versteh nicht mehr viel.

Das stellt dann, glaube ich, meine doch sehr einfach gestrickte Strickweise dar. Dementsprechend einfach ist auch mein TP177 gestrickt. Keine Rezepturen, keine "Flash" Angaben, kein gar nichts ausser einem Bereichszeiger.

Demzufolge meine Gleichung:
keine Anforderungen ans Panel == keine Ausführung vom Panel.

Dennoch allen einen schönen Wochenanfang.

Gruß Sven
 
an FuncDoc

Hallo,

die Uhr ist als Bereichszeiger definiert, klappt ja auch alles wunderbar.

Das Problem ist ja nur, das die Runtime die Laptop Uhr verstellt.

Für mich ist das Problem bei den Akten, ich werde das mal aussitzen und auf Siemens Support warten.

Gruß Sven
 
hab das jetzt mal bei mir getestet.

also wenn du nur die Baugruppenzeit auf dem Laptop/in der runtime anzeigen willst, aber die Laptop uhr nicht verstellt werden soll, solltest du keinen Bereichszeiger definieren und normal per variable einlesen!

bei mir klapt das wunderbar, und geht so:

Im S7 programm:
die Uhrzeit (=Datum und Tageszeit =Format DATE_AND_TIME = DT#) mit der SFC1 auslesen und in einen DB schreiben. !!ACHTUNG!! das format DT# benötigt 8 Byte = 64 Bit

Beispiel:
Code:
CALL  "READ_CLK" //SFC1
       RET_VAL:=MW122 //Fehlermeldung
       CDT    :=P#DB1.DBX0.0 //gepointet auf Anfangsbit
...und im WinCCflex 07:
1. Variable erstellen und verknüpfen //variable zeigt auf DB1 DBW 0
2. Uhrzeitfeld einfügen und unter eigenschaften nicht process sondern varibale einfügen.....fertig
...die uhr der CPU wird angezeigt ohne iergendwelche verstellungen der lokalen zeit

alternativ dazu solltest du mal im SIMATIC MANAGER-->ZIELSYSTEM-->DIAGNOSE/EINSTELLUNGEN-->UHRZEIT STELLEN die einstellungen checken und den haken bei PC/PG zeit aushaken.

hoffe das wars
grüsse
 
Zuviel Werbung?
-> Hier kostenlos registrieren
Intelligente Antwort von Siemens

Hallo FunkDoc,

erst mal danke für den Hinweis mit Uhrzeitfeld und Variable, würde funktionieren und wird überdacht.

Der Gedanke mit dem Haken im Simatic-Manager wirkt nicht, der Haken ist schon raus.

Rückfrage bei Siemens Hotline:
"Kontrollieren Sie doch, das die CPU die richtige Uhrzeit hat."

Intelligenz pur, vielen Dank.


Schönes Wochenende allseits.

Sven
 
Zurück
Oben