TIA Uhrzeitsynchronisierung KTP700 Basic (Tia Portal) mit S7-313 (Simatic Manager)

xxx123456

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

da ich in der Suche keinen direkten Lösungsweg gefunden habe, hier meine Frage :)

Ich möchte für ein Schulprojekt die Uhrzeitsynchronisierung zwischen einem KTP700 Basic Panel (6AV2 123-2GB03-0AX0) und einer 313 CPU (313-1AD03-0AB0) herstellen. Das Panel ist im TIA Portal V18 und die CPU im Simatic Manager V5.7.

-Ein möglicher Lösungsweg hat bisher nicht funktioniert, weil das Panel kein Script ausführen kann (Bild angehängt).

-Der Siemens Support hat mir geschrieben, dass ich das SPS Programm über ein Device Proxy Gerät einfügen muss und einen Bereichszeiger einstellen soll.
Anschließend dieser Anleitung folgen: https://support.industry.siemens.co...en-wincc-und-einer-simatic-sps?dti=0&lc=de-DE
Variante 4 mit dem FB110 ist für meine Anwendung notwendig.

Allerdings ist in dieser Anleitung der Baustein nur für das Tia Portal, da ich aber dort keine CPU habe, kann ich diesen Baustein auch nicht benutzen?
Übersehe ich etwas oder kennt Ihr eine andere Möglichkeit?

viele Grüße

XXX
 

Anhänge

  • Uhrzeit.PNG
    Uhrzeit.PNG
    7,6 KB · Aufrufe: 14
Dann musst du den Bereichszeiger Datum/Uhrzeit (nicht Datum/Uhrzeit PLC!!!) konfigurieren (mit einer DATE_AND_TIME Variable in der 300er verbinden) und dann kannst du die CPU Uhrzeit mit WR_SYS_T setzten.

Was soll FB110 sein? Wo ist der beschrieben?
 
Zuviel Werbung?
-> Hier kostenlos registrieren
Achtung, bei dieser Lösung mit FB110 darf nur 1 HMI-Gerät oder HMI-Simulation an der PLC online sein, oder in allen HMI muß der Bereichszeiger "Steuerungsauftrag" und/oder Bereichszeiger "Datum/Uhrzeit" auf jeweils andere Adressen projektiert werden, sonst kann es zu ungewollten Uhrzeit-Sprüngen in der PLC-Uhr kommen. Und obwohl mit WR_SYS_T gearbeitet wird, wird da mit der Lokalzeit hantiert. Die Uhr der CPU läuft dann mit Lokalzeit!
 
Dann musst du den Bereichszeiger Datum/Uhrzeit (nicht Datum/Uhrzeit PLC!!!) konfigurieren (mit einer DATE_AND_TIME Variable in der 300er verbinden) und dann kannst du die CPU Uhrzeit mit WR_SYS_T setzten.

Was soll FB110 sein? Wo ist der beschrieben?
Das probiere ich morgen direkt Mal aus, danke.
Der FB110 ist in der Siemens Anleitung verwendet worden, um die Uhrzeit zu synchronisieren.

Allerdings habe ich bei dieser Methode immer noch nicht verstanden, wie ich diesen Aufrufen kann, ohne CPU im Tia Portal. Mit einem Device Proxy kann ich ja keine "zusätzlichen" Bausteine einfügen🤔
 
Wie koppelst Du das KTP700 Basic PN an die CPU 313? Ein CP 343-1?
Hast Du im Netz des CP343-1 auch einen NTP-Server erreichbar? Dann wäre die wesentlich bessere Lösung, mit dem CP343-1 die Uhr der CPU313 per NTP zu synchronisieren und das KTP700 per Bereichszeiger "Datum/Uhrzeit PLC" mit der Uhr der CPU 313. Den Bereichszeiger füttert man dann mit der Lokalzeit der CPU 313, die man mit den Bausteinen BT_LT (FC61) von Siemens oder einfacher mit BT_LT_3 (von mir) erzeugt.

Beide Lösungen (FB110 und mein Vorschlag mit BT_LT) funktionieren nur noch bis Ende 2029, weil sie die Bereichszeiger "Datum/Uhrzeit" bzw. "Datum/Uhrzeit PLC" verwenden.
 
Zuviel Werbung?
-> Hier kostenlos registrieren
Allerdings habe ich bei dieser Methode immer noch nicht verstanden, wie ich diesen Aufrufen kann, ohne CPU im Tia Portal. Mit einem Device Proxy kann ich ja keine "zusätzlichen" Bausteine einfügen🤔
Du musst den FB110 mit dem Simatic Manager in der CPU 313 programmieren, dazu brauchst du sehr wahrscheinlich den AWL-Code aus dem hier mehrfach verlinkten Siemens-FAQ (habe ich aber nicht nachgeschaut, was da drin ist).
 
Wie koppelst Du das KTP700 Basic PN an die CPU 313? Ein CP 343-1?
Hast Du im Netz des CP343-1 auch einen NTP-Server erreichbar? Dann wäre die wesentlich bessere Lösung, mit dem CP343-1 die Uhr der CPU313 per NTP zu synchronisieren und das KTP700 per Bereichszeiger "Datum/Uhrzeit PLC" mit der Uhr der CPU 313. Den Bereichszeiger füttert man dann mit der Lokalzeit der CPU 313, die man mit den Bausteinen BT_LT (FC61) von Siemens oder einfacher mit BT_LT_3 (von mir) erzeugt.

Beide Lösungen (FB110 und mein Vorschlag mit BT_LT) funktionieren nur noch bis Ende 2029, weil sie die Bereichszeiger "Datum/Uhrzeit" bzw. "Datum/Uhrzeit PLC" verwenden.
Die Verbindung ist über einen Helmholz NetLink Pro Compact Adapter. In der Netzsicht im Tia Portal ist eine Dummy CPU 315-2 PN/DP dafür angelegt.

Bis Ende 2029? Gibt es bereits eine Lösung die darüber hinaus funktionieren wird?

Das habe ich mir auch schon überlegt, und den Code/DB usw. in den Simatic Manger kopiert. Allerdings war erstmal bei meinem Wissen Ende, als ich nachgelesen habe, dass in dem Code Befehle verwendet werden, die es im Simatic Manager nicht gibt. Und 1/4 vom Code rot Unterstrichen war.
 
Bis Ende 2029? Gibt es bereits eine Lösung die darüber hinaus funktionieren wird?
Bei S7-300: CPU und HMI jeweils per NTP synchronisieren. Oder auf der CPU einen SNTP-Server installieren (vermutlich nur PN-CPU?) Ob/wie eine funktionierende Sommerzeit-Umstellung realisiert werden kann, weiß ich allerdings (noch) nicht.
Tip: Wenn es im Netzwerk keinen NTP-Server gibt, dann kann man auch eine aktuelle LOGO 8 als NTP-Server verwenden.

Das habe ich mir auch schon überlegt, und den Code/DB usw. in den Simatic Manger kopiert. Allerdings war erstmal bei meinem Wissen Ende, als ich nachgelesen habe, dass in dem Code Befehle verwendet werden, die es im Simatic Manager nicht gibt. Und 1/4 vom Code rot Unterstrichen war.
Zeige mal ein Bild von dem Code, den es "im Simatic Manager nicht gibt" :confused: und was rot unterstrichen ist.
 
Zuviel Werbung?
-> Hier kostenlos registrieren
Bei S7-300: CPU und HMI jeweils per NTP synchronisieren. Oder auf der CPU einen SNTP-Server installieren (vermutlich nur PN-CPU?) Ob/wie eine funktionierende Sommerzeit-Umstellung realisiert werden kann, weiß ich allerdings (noch) nicht.
Tip: Wenn es im Netzwerk keinen NTP-Server gibt, dann kann man auch eine aktuelle LOGO 8 als NTP-Server verwenden.


Zeige mal ein Bild von dem Code, den es "im Simatic Manager nicht gibt" :confused: und was rot unterstrichen ist.
Alles klar. Für mein Projekt habe ich nur die SPS und das HMI zur Verfügung. Ich werde mir das aber anschauen und als Vorschlag in der Dokumentation aufnehmen. 2030 ist ja auch bald... :)

- Ich habe den AWL Code mit Hilfe von "ChatGPT" anpassen können. Jetzt sind noch folgende Befehle rot unterstrichen (siehe Bilder 1-3):
A JC JCN IN: OUT:

- In Netzwerk 7 und 8 muss ich das "CALL WR_SYS_T" und "CALL RD_SYS_T" noch ersetzen durch SFC0 und SFC1 wie in Bild 4 beschrieben?
 

Anhänge

  • 1.png
    1.png
    52,8 KB · Aufrufe: 14
  • 2.png
    2.png
    46,4 KB · Aufrufe: 15
  • 3.png
    3.png
    64,4 KB · Aufrufe: 11
  • 4.png
    4.png
    26,6 KB · Aufrufe: 14
Ich habe den AWL Code mit Hilfe von "ChatGPT" anpassen können
:rolleyes:

Mal ein Tipp:
Deine Programmiersprache steht auf deutsch, die Befehle sind aber Englisch ( international ). Du solltest wissen, was die Befehle machen/bewirken. Dann kommst du da auch selber drauf....


Oder Frage weiterhin ChatGPT, ich hoffe das ist auch zur Abschlussprüfung zugelassen.
 
Du musst den FB110 mit dem Simatic Manager in der CPU 313 programmieren, dazu brauchst du sehr wahrscheinlich den AWL-Code aus dem hier mehrfach verlinkten Siemens-FAQ (habe ich aber nicht nachgeschaut, was da drin ist).
Der AWL-Quellcode des FB110_TimeSyn_HMI_To_PLC (für S7-300/400) ist in der erwähnten Siemens-FAQ für TIA in den "Beispielprojekte und Bibliothek für WinCC und STEP 7 V13" drin (69864408_WinCC_TimeSyn_CODE_v40.zip für TIA V13, in Project_04 und in Library FB_TimeSyn). Den AWL-Code müsstest Du manuell von TIA zu Step7 V5.x konvertieren:
- in TIA als Quellen aus den Bausteinen generieren
- die Quellen in den Simatic Manager in AWL-Quellen kopieren
- so lange manuell bearbeiten bis der AWL-Compiler keine Fehler mehr meldet

Ich habe das mal gemacht. Im Anhang ein Step7-V5.x-Projekt mit dem FB110_TimeSyn_HMI_To_PLC für V5.x und die zugehörigen DB und der Aufruf in OB1. sowie die AWL-Quelle des konvertierten FB110

Der "FB110_TimeSyn_HMI_To_PLC" für TIA wurde ursprünglich aus dem FB101 "** SYS_CLK_WinCE_V2" von Step7 classic nach TIA konvertiert, dann aber mehr oder weniger sinnvoll so stark überarbeitet und falsch kommentiert, daß die Beschreibung des FB110_TimeSyn_HMI_To_PLC nicht mehr zum SYS_CLK_WinCE_V2 passt. Man kann aber auch den ursprünglichen FB101 SYS_CLK_WinCE_V2 im Programm der S7-300 im Simatic Manager V5.x verwenden, entsprechend der Beschreibung des SYS_CLK_WinCE_V2
siehe Wie werden Datum und Uhrzeit zwischen einem Bediengerät und einer S7-300 (...) synchronisiert? (Step7 V5.x) Download Anlage 3 Projekt Time_WinCE_flexible_A3.zip
 

Anhänge

  • FB110_TimeSyn_HMI_To_PLC_V5x.zip
    37,1 KB · Aufrufe: 3
  • V5x_FB110_TimeSyn_HMI_To_PLC_v04.awl.txt
    6 KB · Aufrufe: 5
Zuviel Werbung?
-> Hier kostenlos registrieren
Ich habe den AWL Code mit Hilfe von "ChatGPT" anpassen können.
Dir ist klar, daß ChatGPT nicht alles weiß? Und daß ChatGPT, wenn es die korrekte Antwort nicht weiß, ganz unverfroren und überzeugend irgendeine schön zusammenphantasierte, aber falsche Antwort gibt? :rolleyes:
 
Der AWL-Quellcode des FB110_TimeSyn_HMI_To_PLC (für S7-300/400) ist in der erwähnten Siemens-FAQ für TIA in den "Beispielprojekte und Bibliothek für WinCC und STEP 7 V13" drin (69864408_WinCC_TimeSyn_CODE_v40.zip für TIA V13, in Project_04 und in Library FB_TimeSyn). Den AWL-Code müsstest Du manuell von TIA zu Step7 V5.x konvertieren:
- in TIA als Quellen aus den Bausteinen generieren
- die Quellen in den Simatic Manager in AWL-Quellen kopieren
- so lange manuell bearbeiten bis der AWL-Compiler keine Fehler mehr meldet

Ich habe das mal gemacht. Im Anhang ein Step7-V5.x-Projekt mit dem FB110_TimeSyn_HMI_To_PLC für V5.x und die zugehörigen DB und der Aufruf in OB1. sowie die AWL-Quelle des konvertierten FB110

Der "FB110_TimeSyn_HMI_To_PLC" für TIA wurde ursprünglich aus dem FB101 "** SYS_CLK_WinCE_V2" von Step7 classic nach TIA konvertiert, dann aber mehr oder weniger sinnvoll so stark überarbeitet und falsch kommentiert, daß die Beschreibung des FB110_TimeSyn_HMI_To_PLC nicht mehr zum SYS_CLK_WinCE_V2 passt. Man kann aber auch den ursprünglichen FB101 SYS_CLK_WinCE_V2 im Programm der S7-300 im Simatic Manager V5.x verwenden, entsprechend der Beschreibung des SYS_CLK_WinCE_V2
siehe Wie werden Datum und Uhrzeit zwischen einem Bediengerät und einer S7-300 (...) synchronisiert? (Step7 V5.x) Download Anlage 3 Projekt Time_WinCE_flexible_A3.zip
Vielen Dank. Ich werde das hoffentlich am Freitag testen können und gebe Rückmeldung.

Thema ChatGPT, ich habe auch schon gemerkt, dass manchmal falsche Antworten heraus kommen :) Und hatte es bisher nicht für schulische Zwecke verwendet.

In unserer Schule ist aber ChatGPT bisher schon soweit "zugelassen", dass Dokumentationen und Hausarbeiten komplett damit geschrieben werden dürfen. Begründung: ... technischer Inhalt muss ja weitestgehend immer noch von einem selber kommen. Auch wenn es nur die Kontrolle ist, ob es richtig geschrieben worden ist :D
 
Zuviel Werbung?
-> Hier kostenlos registrieren
Die Fehler, die Chat GPT generiert lässt man dann einfach in einem Forum ausbessern (y)
Ich habe den Code nicht von ChatGPT umschreiben lassen. Ich habe es verwendet, um mir die Befehle erklären zu lassen, die nicht gepasst haben.
Die rot unterstrichenen sind welche, auf die ChatGPT keine Infos gefunden hat :)
 
Ich habe es verwendet, um mir die Befehle erklären zu lassen, die nicht gepasst haben.
Die rot unterstrichenen sind welche, auf die ChatGPT keine Infos gefunden hat :)
Du brauchst nicht im Internet suchen, sondern kannst die bestmögliche Erklärung "direkt aus erster Hand" aufrufen. In Step7 ist eine ausführliche Hilfe zu AWL enthalten. Im Programm-Editor "Hilfe > Hilfe zu AWL" aufrufen (oder bei einer nicht roten Anweisung F1 drücken). In der "Hilfe zu AWL" dann "Inhalt > AWL-Operationen Übersicht > ... sortiert nach deutscher/englischer Mnemonik" aufrufen. Da erhältst du erstens eine Gegenüberstellung der deutschen mit der englischen Mnemonik und eine Beschreibung/Erklärung der Operation. z.B.
A = U
JC = SPB
JCN = SPBN

Du kannst auch in TIA die Mnemonic-Sprache vor dem genereieren der Quellen auf deutsch umstellen, oder im Simatic Manager auf englisch umstellen, dann brauchst Du nicht jede Operation manuell in die jweils andere Sprache ändern.
 
Zurück
Oben