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

Ergebnis 1 bis 4 von 4

Thema: Timer mit Instanz als InOut Varíable

  1. #1
    Registriert seit
    22.06.2010
    Beiträge
    31
    Danke
    0
    Erhielt 0 Danke für 0 Beiträge

    Standard


    Zuviel Werbung?
    -> Hier kostenlos registrieren
    Hallo!

    ich habe ein Problem...

    Ich verwende einen TOF Timer für meine Bewegungsmelder und habe ich mir für diesen Anwendungsfall einen FB geschrieben den ich mehrfach aufrufe.

    Jetzt habe ich das Problem, dass wenn ein Bewegungsmelder anspringt, alle von diesem FB gesteuerten Lichter gleichzeitig angehen.

    Hmmm, jetzt habe ich mir gedacht, ok, könnte der Timer sein, da die Instanz nennen wir sie mal "Timer_Licht_An" eventuell global anspringt und so alle Ausgänge gleichzeitig schaltet. Ich habe die Instanz nämlich einfach im FB unter VAR deklariert. Deshalb kam ich zum Schluss den Timer als IN_OUT Variable zu deklarieren, um dem Timer für jeden Baustein eine eigene Instanz zuweisen zu können. Doch wenn ich die Deklaration unter IN_OUT kopiere und die Bausteine extern belege kommt die Fehlermeldung:
    Fehler 4052: Bewegung_Visu_Licht: 'Timer_Licht_An' muß eine deklarierte Instanz des Funktionsblock TOF sein.

    Wär es doch??? nur eben jetzt als IN_OUT?!?

    hat vielleicht wer von euch einen Lösungsweg?
    Danke

    greetz
    Christian
    Zitieren Zitieren Timer mit Instanz als InOut Varíable  

  2. #2
    Registriert seit
    27.05.2004
    Ort
    Thüringen/Berlin
    Beiträge
    12.218
    Danke
    533
    Erhielt 2.696 Danke für 1.948 Beiträge

    Standard

    Der Timer kann das nicht sein, wenn du ihn im Var-Abschnitt des FB definiert hast, dann wird mit jeder FB-Instanz ein eigener Timer erzeugt.

    Wie hast du die FB-Instanzen deklariert?
    Du mußt jede FB-Instanz extra in den Variablen des aufrufenden Programms oder als Globale Variable deklarieren.

    Also

    fbLicht1: MeinLicht_FB;
    fbLicht2: MeinLicht_FB;
    fbLicht3: MeinLicht_FB;
    .
    .
    .

    Dann jeweils im Programm aufrufen:

    fbLicht1(
    .
    .
    .
    );

    fbLicht2(
    .
    .
    .
    );

    fbLicht3(
    .
    .
    .
    );

    .
    .
    .
    Geändert von Ralle (31.01.2013 um 18:58 Uhr)
    Gruß
    Ralle

    ... there\'re 10 kinds of people ... those who understand binaries and those who don\'t …
    and the third kinds of people … those who love TIA-Portal

  3. #3
    blubbi ist offline Benutzer
    Themenstarter
    Registriert seit
    22.06.2010
    Beiträge
    31
    Danke
    0
    Erhielt 0 Danke für 0 Beiträge

    Standard

    hmm, naja ich bin mit meinem Latein ziemlich am Ende, da der Timer der einzige ist, der von allen aufgrufen wird.

    grundsätzlich wird der FB natürlich von einer eigenen Variable deklariert.

    zB.:
    fb_Bewegung_Licht_KG1_Vorraum:Bewegung_Visu_Licht;
    fb_Bewegung_Licht_EG_Abgang_KG1:Bewegung_Visu_Licht;

    Bewegung_Visu_Licht ist der FB der die Bewegungsmelder verarbeitet.
    Ich habe mir nur gedacht, dass das mit dem Timer ähnlich wie in der Siemens-Welt ist. Dort weist man auch jedem Timer einen pysikalischen Timer zu, da sonst die selbe Instanz durchlaufen werden würde.

    Aber ich habe zumindestens einen Lösungsweg gefunden die Timer extern zu deklarieren... Bei VAR_INPUT gibt Beckhoff zumindestens mal das OK
    testen wir mal, ob damit die Lichter einzeln geschaltet werden.

  4. #4
    Registriert seit
    27.05.2004
    Ort
    Thüringen/Berlin
    Beiträge
    12.218
    Danke
    533
    Erhielt 2.696 Danke für 1.948 Beiträge

    Standard


    Zuviel Werbung?
    -> Hier kostenlos registrieren
    Kannst ja mal des Projekt hier hochladen.
    Gruß
    Ralle

    ... there\'re 10 kinds of people ... those who understand binaries and those who don\'t …
    and the third kinds of people … those who love TIA-Portal

Ähnliche Themen

  1. Baustein mit IN & OUT Paramtern, oder INOUT`erstellen?
    Von Bensen83 im Forum CODESYS und IEC61131
    Antworten: 13
    Letzter Beitrag: 23.11.2012, 13:08
  2. variable Timer
    Von Anja im Forum Sonstige Steuerungen
    Antworten: 2
    Letzter Beitrag: 14.06.2010, 17:58
  3. FB mit Timer als Multiinstanz
    Von jackjones im Forum Programmierstrategien
    Antworten: 1
    Letzter Beitrag: 08.12.2009, 08:53
  4. Timer Zeit durch Variable ersetzen
    Von Otti20vt im Forum CODESYS und IEC61131
    Antworten: 2
    Letzter Beitrag: 04.09.2008, 10:14
  5. Timer nachbilden mit Variable
    Von Anonymous im Forum Simatic
    Antworten: 1
    Letzter Beitrag: 11.10.2005, 12:43

Lesezeichen

Berechtigungen

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