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

Results 1 to 2 of 2

Thread: Problem mit Funktionsbaustein in ST SUCOSOFT 4 / MOELLER PS4/300

  1. #1
    Join Date
    11.02.2007
    Posts
    12
    Danke
    0
    Erhielt 0 Danke für 0 Beiträge

    Default


    Zuviel Werbung?
    -> Hier kostenlos registrieren
    Hallo,

    ich habe einen für meine Rolladensteuerung einen "Urlaubs"-Baustein
    geschrieben der, wenn der Schalter "Urlaub" an ist um a-H und 30+- MIN
    die Rollos hoch, bzw herunter fahren soll.
    Dazu manipuliere ich den "Zentraleingang" des "HochRunter"-Bausteines.

    hier nun der Code:
    Code:
    (*------ FB_URL -------*)
    VAR_INPUT
     TimeHour: USINT; (* Stunde für Hoch)
     IsZEN_U:  BOOL;  (* Status des Zentraltasters Hoch*)
     IsZEN_D: BOOL;   (* Status des Zentraltasters Runter *)
     IsURL:  BOOL;     (* Status des Urlaubs-Schalters *)
    END_VAR
    VAR_OUTPUT
     ItsUpDown: BOOL;
    END_VAR
    VAR
     _GetRealTimeClock: GetRealTimeClock;
     _TimeMinute:     USINT;
     _MinuteAdd:     USINT;
     _Day:  USINT;
     _Weekday: USINT;
     _Month:  USINT;
     _Hour:  USINT;
     _Minute: USINT;
     _Second: USINT;
    END_VAR
     
    _GetRealTimeClock ( Year => ,
     Month => _Month,
     Day => _Day,
     Weekday => _Weekday,
     Hour => _Hour,
     Minute => _Minute,
     Second => _Second);
     
    IF (IsZEN_U) THEN
     ItsUpDown := IsZEN_U;
    ELSE
     IF (IsURL) THEN
      IF (NOT IsZEN_D) THEN
       IF (_Day > 30) THEN
        _Day := 30;
              END_IF;
       IF (_Day < 10) THEN
                _Day := 20 - _Day;
       END_IF;
       _MinuteAdd := _Day;
       CASE _Weekday OF
        0,2,4,6: _TimeMinute := 30 - _MinuteAdd;
        ELSE   _TimeMinute := 30 + _MinuteAdd;  
       END_CASE;
              IF (_Hour = TimeHour) AND (_Minute  = _TimeMinute) AND (_Second = 0) THEN
        ItsUpDown := TRUE;
       ELSE
        ItsUpDown := IsZEN_U;
       END_IF;
      ELSE
       ItsUpDown := FALSE;
      END_IF;
     ELSE
      ItsUpDown := IsZEN_U;
     END_IF;
    END_IF;
    (*------ FB_URL  ENDE -------*) 
     
     
    (*Anwendung im Programm:*)
     
    (*Zentraltaster*)
    ZEN_FT_U(CLK := ZEN_I_U); (*F_TRIG zum entprellen des Tasters*)
    ZEN_FT_D(CLK := ZEN_I_D); (*F_TRIG zum entprellen des Tasters*)
    ZEN_U := ZEN_FT_U.Q;
    ZEN_D := ZEN_FT_D.Q;
     
    (*Urlaubsschalter*)
    (*Hoch geht nur wenn weder ZEN_U noch ZEN_D aktiv Sind*)
    (*Bei IsZEN_U = true wird IsZen_U "durchgeschleift"*)
    URL_T ( TimeHour := 7,
            IsURL := URL_I_UD,
            IsZEN_U := ZEN_U,
            IsZEN_D := ZEN_D,
            ItsUpDown => ZEN_U);
     
    (*Runter*)
    URL_T ( TimeHour := 19,
            IsURL := URL_I_UD,
            IsZEN_U := ZEN_D,
            IsZEN_D := ZEN_U,
     ItsUpDown => ZEN_D);
    Das Problem ist, auf den Zentraltaster reagiert er, aber nicht auf den
    "Urlaubsschalter".
    Hat einer eine Idee warum ?

    Gruß Mario
    Reply With Quote Reply With Quote Problem mit Funktionsbaustein in ST SUCOSOFT 4 / MOELLER PS4/300  

  2. #2
    MarioR is offline Neuer Benutzer
    Themenstarter
    Join Date
    11.02.2007
    Posts
    12
    Danke
    0
    Erhielt 0 Danke für 0 Beiträge

    Daumen hoch


    Zuviel Werbung?
    -> Hier kostenlos registrieren
    Das manipulieren des "Zentral_tasters" hat, warum auch immer, nicht
    funktioniert.
    Deshalb habe ich einen eigenen "Merker" für den Urlaub Hoch und Runter
    defieniert und diesen mit in den Funktionsbaustein für
    "Rollladen_Hoch_Runter" eingefügt. Nun gehts.

    Gruß Mario

    Für Interessenten:
    Das komplette Projekt habe ich als Zip angefügt.

    Im Verzeichnis "Rolladen3\SOURCE" liegt der Quellcode der einzelnen
    Bausteine:

    FB_GAP.txt -
    Funktionsbaustein für Zeitgesteuertes Hoch und Runterfahren.
    Damit fahre ich die einzelnen Hausseiten im Sommer "Auf Lücke" runter,
    wenn die Sonne auf der Hausseite ist und wieder hoch, wenn sie weg ist.
    Die Zeiten habe ich einfach "geguckt".

    FB_URL.txt -
    Funktionsbaustein für die "Urlaubsfunktion", einfach mit einen Schalter
    einen Inputkontakt der SPS geschlossen und eine Zeit(Stunde) für Hoch
    bzw. Herunterfahren mitgeben und anhand des Monatstages und des
    Wochentages wird eine "Zufallsminute" 30 +- x, X=(11-30) berechnet
    und zu dieser Zeit wird dann alle Hoch bzw. Runter gefahren.

    FB_UD.txt -
    Funktionsbaustein für das Hoch und Runterfahren.
    Abfrage der Rolladentaster, Zentraltaster, Zeitbausteine etc.
    Vorrang für manuelle Bedienung vor Zeitbausteinen.
    Kollisionskontrolle etc.

    RLST.txt - "Mainprogramm"
    Definieren der Ein- und Ausgänge, der Funktionsbausteine etc.
    Attached Files Attached Files
    Reply With Quote Reply With Quote Erledigt  

Similar Threads

  1. Registrierung für Sucosoft S30 PS4
    By meinerseins in forum Sonstige Steuerungen
    Replies: 13
    Last Post: 23.02.2015, 18:43
  2. Moeller Sucosoft Problem
    By JonasHeil in forum Sonstige Steuerungen
    Replies: 1
    Last Post: 18.02.2009, 22:17
  3. Moeller PS4, Sucosoft S40 und USB
    By csommer in forum Sonstige Steuerungen
    Replies: 4
    Last Post: 03.10.2007, 22:53
  4. Gruppensteuerung mit Moeller Sucosoft
    By MarioR in forum Sonstige Steuerungen
    Replies: 1
    Last Post: 18.05.2007, 21:01
  5. Profinet mit Moeller PS4
    By DirkE1 in forum Feldbusse
    Replies: 0
    Last Post: 11.02.2005, 04:09

Bookmarks

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •