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

Ergebnis 1 bis 8 von 8

Thema: Aktionen eines FBs mit Buttons der HMI aufrufen?

  1. #1
    Registriert seit
    03.12.2014
    Beiträge
    57
    Danke
    3
    Erhielt 1 Danke für 1 Beitrag

    Standard


    Zuviel Werbung?
    -> Hier kostenlos registrieren
    Hallo,
    ich habe eine blöde Frage und ich finde keine Antwort.
    Weder über die Suche, noch bei Beckhoff....

    Ich habe in TwinCat einen FB erstellt mit Aktionen.
    Nun möchte ich aus der Visu raus eine Aktion starten.

    Kann ich mit einem Button eine Aktion eines FBs starten?
    Ich finde immer nur Beispiele, wie man eine Aktion aus dem Code startet....
    Beim Button gibt es ja das "Programm ausführen".
    Da hab ich verschiedenes probiert, aber ich bekomm es nicht hin....

    Danke sehr!
    Zitieren Zitieren Aktionen eines FBs mit Buttons der HMI aufrufen?  

  2. #2
    Registriert seit
    25.11.2010
    Ort
    OWL
    Beiträge
    745
    Danke
    27
    Erhielt 164 Danke für 142 Beiträge

    Standard

    Die Aktion musst Du schon aus dem Code aufrufen. Aber Du kannst ja mit dem Visu-Button eine Variable tasten, diese auf einen Trigger-FB geben und mit dessen Ausgang die Aktion aufrufen.

  3. #3
    Registriert seit
    03.12.2014
    Beiträge
    57
    Danke
    3
    Erhielt 1 Danke für 1 Beitrag

    Standard

    Hi.
    Danke für die Antwort. Das hab ich befürchtet.
    Das bedeutet, dass ich somit für jede Aktion eine Variable machen muss.
    Gibt es sonst keine elegantere Möglichkeit?

    Ich hab eine Case Abfrage im FB und setze mit den Aktionen nur bestimmte Cases....
    In der Aktion frage ich ab, ob der FB Ready ist. Wenn ja, dann setze ich ein INT auf einen bestimmten Wert.
    Das kann ich ja dann in der Taste auch machen, oder? Nur freigeben, wenn Ready TRUE ist. Und dann setze ich direkt das INT für das Case.
    Spricht da was dagegen?

    Danke

  4. #4
    Registriert seit
    25.11.2010
    Ort
    OWL
    Beiträge
    745
    Danke
    27
    Erhielt 164 Danke für 142 Beiträge

    Standard

    Zitat Zitat von LMDaniel999 Beitrag anzeigen
    Das kann ich ja dann in der Taste auch machen, oder? Nur freigeben, wenn Ready TRUE ist. Und dann setze ich direkt das INT für das Case.
    Die Eingabefunktion der Buttons kannst Du schon mit NOT Ready sperren. Aber mit der Tastfunktion ein INT auf einen bestimmten Wert setzen? Ich kann mich täuschen, aber ich glaube das geht nicht.
    Du könntest aber die einzelnen Bits der INT-Variablen tasten. Dann hättest Du als CASE-Selektoren die Werte 1,2,4,8,16 usw. Wenn diese Werte auch nach Loslassen des jeweiligen Buttons erhalten bleiben sollen, musst Du aber noch etwas Code investieren, etwa so:
    Code:
    VAR
       varButton:WORD;   (* Variable, deren Bits aus der Visu getastet werden *)
       varSelector:WORD;   (* CASE-Selektor *)
    END_VAR
    
    IF varButton>0 THEN
       varSelector:=varButt;
    END_IF

  5. #5
    Registriert seit
    07.10.2013
    Beiträge
    96
    Danke
    7
    Erhielt 11 Danke für 10 Beiträge

    Standard

    Hallo,


    in der Visu das Fenster „Element Konfigurieren” aufrufen.
    Checkbox “Programm ausfuehren” setzen.
    Links neben der wiessen Flaeche den Button druecken.
    Im neuen Fenster den Button Oben (mit dem Pfeil) druecken.
    Jetzt auf ASSIGN,dann die Variable eingeben und den Wert.
    (Geht so ziemmlich alles damit)




    Irek
    Angehängte Grafiken Angehängte Grafiken
    Geändert von Irek (06.01.2015 um 01:41 Uhr)

  6. Folgende 2 Benutzer sagen Danke zu Irek für den nützlichen Beitrag:

    gnist (06.01.2015),StructuredTrash (06.01.2015)

  7. #6
    Registriert seit
    13.09.2007
    Beiträge
    566
    Danke
    50
    Erhielt 65 Danke für 57 Beiträge

    Standard

    Moin. Stell diese Fragen doch im KNX-User-forum da sind sehr viele Spezialisten. Namen wie GLT. , Peter Pan. Usw sollest du dir merken.
    Gruß Herbert


    Sent from my iPhone using Tapata

    Ups falsch abgebogen. Bitte verschieben nach Feldbus KNX Funk
    Geändert von Knaller (06.01.2015 um 06:36 Uhr)
    Zitieren Zitieren Aktionen eines FBs mit Buttons der HMI aufrufen?  

  8. #7
    Registriert seit
    25.11.2010
    Ort
    OWL
    Beiträge
    745
    Danke
    27
    Erhielt 164 Danke für 142 Beiträge

    Standard

    Zitat Zitat von Irek Beitrag anzeigen
    in der Visu das Fenster „Element Konfigurieren” aufrufen.
    Checkbox “Programm ausfuehren” setzen.
    Links neben der wiessen Flaeche den Button druecken.
    Im neuen Fenster den Button Oben (mit dem Pfeil) druecken.
    Jetzt auf ASSIGN,dann die Variable eingeben und den Wert.
    @Irek
    Ah, sehr schön. Habe ich noch nie gebraucht, aber gut zu wissen.

    @LMDaniel999
    Dann bleibt nur noch zu klären, ob die Tastenfreigabe in der Visu wirklich unproblematisch ist. Angenommen, die Eingabe ist freigegeben und Du drückst einen Button. Während die VISU_INPUT_TASK damit beschäftigt ist, den Tastendruck auszuwerten, wird sie möglicherweise durch die Steuerungstask unterbrochen und dann Dein FB aufgerufen. Wenn der dann die Freigabe löscht, kriegt die VISU_INPUT_TASK das anschliessend nicht mit. Wenn das passieren kann, musst Du die
    Freigabe doch im FB-Aufruf auswerten, z. B. mit den Buttons eine Vorwahlvariable setzen und diese im FB nur als Selektor übernehmen, wenn die Freigabe gesetzt ist.

  9. #8
    Registriert seit
    03.12.2014
    Beiträge
    57
    Danke
    3
    Erhielt 1 Danke für 1 Beitrag

    Standard


    Zuviel Werbung?
    -> Hier kostenlos registrieren
    Hi.
    Danke für die Antworten.
    Der ASSIGN Befehl ist mir bekannt, mit dem habe ich es jetzt ja schon gemacht.
    Freigabe ist ja auch kein Problem mit dem Bool.
    @StructuredTrash:
    Das ist ein guter Hinweis! Aber ich denke, dass ich diesen Fall vernachlässigen kann.
    Die Struktur gibt nur Logs im Klartext aus. Hab dazu eine angepasste Logliste gebastelt....
    Im laufenden Programm nutze ich eh die Aktionen, die Buttons sind hier nur zum Testen. Schade trotzden, dass das so nicht geht...

    Danke trotzdem an alle!!!

Ähnliche Themen

  1. Antworten: 1
    Letzter Beitrag: 04.01.2014, 16:27
  2. Aktionen in FBs auslösen
    Von twincatter im Forum CODESYS und IEC61131
    Antworten: 2
    Letzter Beitrag: 23.08.2013, 13:18
  3. Antworten: 5
    Letzter Beitrag: 25.02.2011, 14:30
  4. FBs indirekt aufrufen
    Von spsfreak12345 im Forum Simatic
    Antworten: 2
    Letzter Beitrag: 09.08.2010, 09:36
  5. Aktionen auf HMI Loggen
    Von Rdata im Forum HMI
    Antworten: 4
    Letzter Beitrag: 04.03.2009, 10:06

Lesezeichen

Berechtigungen

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