Zuviel Werbung? - > Hier kostenlos beim SPS-Forum registrieren

Seite 1 von 2 12 LetzteLetzte
Ergebnis 1 bis 10 von 17

Thema: Datums und Zeit Handling mit Phoenix contact ILC 130 ETH

  1. #1
    Registriert seit
    05.03.2010
    Beiträge
    85
    Danke
    7
    Erhielt 5 Danke für 5 Beiträge

    Frage


    Zuviel Werbung?
    -> Hier kostenlos registrieren
    Hallo, ich arbeite mich gerade parallel zu einem anderen System, das ich langjährig bearbeite, in IEC 61131 Programmierung für die Phoenix SPS (für Nutzung Gebäudeautomatisierung Heizung / Klima 7 Lüftung) ein. Auffällig ist, dass ich mir jede Menge Funktionen, deren Bereitstellung durch die Programmierumgebung ich aufgrund meiner Erfahrung mit anderen Systemen vorausgesetzt hatte (Wochenzeitschaltuhr ...), erst selbst zusammen basteln muss. Im wesentlichen kein Problem, aber das Nutzen der Systemzeit für verschiedene Zwecke (hauptsächlich natürlich Zeitschaltprogramme) konnte ich bisher nicht lösen. Zum Beispiel brauche ich für Wochenzeitschaltuhranwendungen irgendwo her den aktuellen Wochentag, aber wie komme ich da 'ran?

    OSCAT stellt eigentlich fast alles, was ich brauche, zur Verfügung, aber mein Problem ist, dass deren Bausteine nach meiner Recherche als Systemzeit-Eingang analog zur UNIX-Zeit eine Sekundenzählung ab 1970-01-01 00:00:00 Uhr benötigen, wenn ich diesen Wert "irgendwie" bekäme (oder eine alternative Darreichungsform. wäre mir sehr geholfen. Die SSS stellt einige Systemzeitvariablen zur Verfügung:
    RTC_YEAR INT Systemzeit (Jahr)
    RTC_MONTH INT Systemzeit (Monat)
    RTC_DAY INT Systemzeit (Tag)
    RTC_HOURS INT Systemzeit (Stunden)
    RTC_MINUTES INT Systemzeit (Minuten)
    RTC_SECONDS INT Systemzeit (Sekunden)

    Weiß jemand Rat, wie ich daraus etwas passendes für den Eingang "DAY_OF_WEEK" aus OSCAT.333 zaubern kann? oder eine alternative Methode? Ich würde gern vermeiden, ohne OSCAT-Verwendung nun gleich noch einen Gregorianischen Kalenderbaustein erfinden zu müssen.

    Vielen Dank schon mal

    Rainer Bielefeld
    Zitieren Zitieren Datums und Zeit Handling mit Phoenix contact ILC 130 ETH  

  2. #2
    Registriert seit
    07.09.2011
    Beiträge
    145
    Danke
    0
    Erhielt 3 Danke für 3 Beiträge

    Standard

    Ich mach mir die UTC mit dem oscat FB SET_DT. Dieser baut die einzelnen Daten zu einem Wert zusammen.
    Mit UTC_TO_LTIME kann man diesen noch wegen Sommerzeit/Winterzeit und Zeitoffset anpassen.

    Wegen Zeitsync:
    Schau dir einmal den FB CPU_CONTROL an.

    Mit diesem kann man die Uhrzeit der SPS an einen SNTP Server abgleichen.

    ------------------------ xx
    <CPU_Set_Value_Request>
    02cb
    xxxx
    0001
    0481
    0003
    c0a8
    000c
    003c
    -------------------------xx

    0x02cb CMD
    0x0005 Parameter Count
    0x0001 Variable Count
    0x0481 Variable ID
    0x0003 Flags (3 = SNTP-Dienst aktivieren)
    0xc0a8 IP
    0x000c IP
    0x003c 60 min

    192.168.0.12 - c0.a8.00.0c

  3. #3
    RrBd ist offline Benutzer
    Themenstarter
    Registriert seit
    05.03.2010
    Beiträge
    85
    Danke
    7
    Erhielt 5 Danke für 5 Beiträge

    Standard

    Zitat Zitat von Portisch Beitrag anzeigen
    Ich mach mir die UTC mit dem oscat FB SET_DT.
    Hallo,

    danke, das hat mir sehr geholfen, funktioniert hervorragend. Manchmal ist man ja auch wie vernagelt, keine Ahnung, wie oft ich mir das OSCAT Handbuch durchgelesen habe, ohne die Funktion zu bemerken.

    Den Zeit-Synchronisierungs-Tipp lege ich mir für später zurück.

    Viele Grüße

    Rainer

  4. #4
    Registriert seit
    29.07.2008
    Beiträge
    143
    Danke
    4
    Erhielt 27 Danke für 21 Beiträge

    Standard

    Hallo

    es gibt von Phoenix auch eine Bibbliothek für Gebäude (BACL genannt)
    da findest du auch Schaltprogramme

  5. #5
    RrBd ist offline Benutzer
    Themenstarter
    Registriert seit
    05.03.2010
    Beiträge
    85
    Danke
    7
    Erhielt 5 Danke für 5 Beiträge

    Standard

    Hallo Oerw,

    nach der hatte ich gefragt, die wird aber (angeblich - Supportauskunft) nicht mehr vertrieben.

    Viele Grüße

    Rainer

  6. #6
    Registriert seit
    07.09.2011
    Beiträge
    145
    Danke
    0
    Erhielt 3 Danke für 3 Beiträge

    Standard

    Inzwischen habe ich ein Sync Programm fertig.
    Dies holt sich über einen SNTP Server die UTC Time und setzt dann die RTC der ILC. Falls es jemand braucht kann ich es mal hochladen.

    Es wird halt oscat dazu gebraucht.

  7. #7
    RrBd ist offline Benutzer
    Themenstarter
    Registriert seit
    05.03.2010
    Beiträge
    85
    Danke
    7
    Erhielt 5 Danke für 5 Beiträge

    Standard

    Hallo Portisch,

    Ich fände das ganz interessant, den Teil "RTC setzen" habe ich noch auf meiner ToDo liste, und "irgendwie" eine Zeit Synchronisation innerhalb des Netzwerkes will ich auch noch in angriff nehmen, wenn scheinbar Unabhängige teile der Gebäudeautomatisierung in eine Ereigniskette verwickelt sind, lässt sich mit wirklicher Einheitszeit leichter bestimmen, was nun Ei und was Henne ist. Ich bin immr genz froh, wenn ich ein Rad mal nicht neu erfinden muss, sondern abkupfern kann.

    Viele Grüße

    Rainer

  8. #8
    Registriert seit
    07.09.2011
    Beiträge
    145
    Danke
    0
    Erhielt 3 Danke für 3 Beiträge

    Standard

    Also hier einmal ein FB um von einem SNTP Server die Zeit einzulesen und dann an einem SNTP Server auf der SPS für das Netzwerk zur Verfügung zu stellen.

    Mit dem Input Enable kann bei einer positiven Flanke die Zeit erneuert werden.
    Mit dem Autorefresh kann ein Abstand in Stunden eingestellt werden wie oft sich der FB die Zeit selber holt.

    An der Domain gibt man den SNTP Server an.
    Der Gateway ist der Gateway des Routers (Netzwerkes).

    Der FB setzt dann die RTC der SPS auf UTC Time.

    Müsste so funktionieren!
    SNTP_UPDATE.png
    UPDATE_UTC_BY_SNTP.zip

    Edit: Habe noch die RTC vergessen... Jetzt sollte es passen!
    Geändert von Portisch (06.09.2012 um 21:39 Uhr)

  9. #9
    Registriert seit
    08.03.2014
    Beiträge
    2
    Danke
    0
    Erhielt 0 Danke für 0 Beiträge

    Standard

    Hallo Portisch

    Ich hab mir auch deinen FB geholt. Nach der installation von Oscat Network 1.21 hab ich jetzt immer noch drei nicht erkannte Datentypen

    arrAddError --> arr_Add_Error
    arrSD --> arrSend_Array
    arrRD --> arrReceive_Array

    Wie komme ich zu diese Datentypen ??

    Danke

    LG
    Geändert von Osi7 (10.11.2014 um 16:59 Uhr)

  10. #10
    Registriert seit
    07.09.2011
    Beiträge
    145
    Danke
    0
    Erhielt 3 Danke für 3 Beiträge

    Standard


    Zuviel Werbung?
    -> Hier kostenlos registrieren
    Habe die Datentypen vergessen!

    Einfach im Projekt hinzufügen:
    Code:
    TYPE
     arr_Add_Error : ARRAY [0..1] OF WORD;
    END_TYPE
    TYPE
     arrSend_Array : ARRAY [0..99] OF WORD;
    END_TYPE
    TYPE
     arrReceive_Array : ARRAY [0..99] OF WORD;
    END_TYPE

Ähnliche Themen

  1. Antworten: 2
    Letzter Beitrag: 21.08.2012, 16:49
  2. Antworten: 9
    Letzter Beitrag: 18.04.2012, 20:45
  3. Phoenix Contact ILC 150 ETH FTP Upload
    Von cag im Forum PHOENIX CONTACT
    Antworten: 7
    Letzter Beitrag: 10.11.2011, 19:14
  4. Phoenix Contact ILC 170 ETH 2TX
    Von plangner im Forum PHOENIX CONTACT
    Antworten: 2
    Letzter Beitrag: 24.03.2011, 10:55
  5. Phoenix Contact ILC 130
    Von Haytech im Forum PHOENIX CONTACT
    Antworten: 2
    Letzter Beitrag: 22.02.2011, 16:14

Stichworte

Lesezeichen

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •