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

Results 1 to 7 of 7

Thread: HMI Eingaben in leere Zeilen eines Arrays schreiben

  1. #1
    Join Date
    26.03.2020
    Posts
    3
    Danke
    0
    Erhielt 0 Danke für 0 Beiträge

    Default


    Zuviel Werbung?
    -> Hier kostenlos registrieren
    Hallo,

    BeckhoffT TwinCAT 3 Engineering + HMI, Masterarbeit im Bereich Ingenieurwesen

    ich möchte Eingaben, die in das HMI gemacht werden, in einer Zeile im Array in der PLC speichern, die Eingabe leeren und bei einer nächsten HMI-Eingabe, diese in der nächsten Zeile im Array speichern. Hat jemand eine Idee, wie ich das angehen könnte? Eingaben machen und diese in das Array speichern funktioniert schon, aber den Textblock dann wieder auf 0 zu setzen und bei einer erneuten Eingabe dann in die nächste Zeile zu springen noch nicht.

    Viele Grüße
    Neuling94
    Reply With Quote Reply With Quote HMI Eingaben in leere Zeilen eines Arrays schreiben  

  2. #2
    Join Date
    28.11.2016
    Location
    Oldenburg
    Posts
    291
    Danke
    33
    Erhielt 70 Danke für 60 Beiträge

    Default

    Man könnte hinter dem EA-Feld einen Button mit "Eingabe" machen, und damit dann Auslösen in den nächsten Array Eintrag zu springen. Beim EA-Feld könnte man das gut mit Multiplexen regeln.

    //EDIT: Was mir gerade noch einfällt. Habe gerade kein TIA zur Hand, aber unter "Ereignisse" vom EA-Feld gibt es glaube ich das Ereignis "Eingabe abgeschlossen", das könntest du ebenfalls anstatt des o.g. Buttons benutzen. Könnte allerdings Probleme geben, wenn der Bediener etwas falsches eingegeben hat.
    Last edited by Ph3niX; 26.03.2020 at 18:00.

  3. #3
    Join Date
    22.06.2009
    Location
    Sassnitz
    Posts
    15,162
    Danke
    1,241
    Erhielt 4,461 Danke für 3,595 Beiträge

    Default

    Könnte auch ganz gut möglich sein, daß das HMI gar nicht mit TIA programmiert wird. Bei der schwammigen Nicht-Angabe, um welches HMI es geht, kann man auch nur allgemeingültige Hinweise geben...

    Harald
    Es ist immer wieder überraschend, wie etwas plötzlich funktioniert, sobald man alles richtig macht.

    FAQ: Linkliste SIMATIC-Kommunikation über Ethernet

  4. #4
    Neuling94 is offline Neuer Benutzer
    Themenstarter
    Join Date
    26.03.2020
    Posts
    3
    Danke
    0
    Erhielt 0 Danke für 0 Beiträge

    Default

    Ich benutze das hier: Beckhoff TF2000 TC3 HMI Server und programmiere in Visual Studio, also nicht mit TIA. Tut mir leid, ich bin komplett neu hier im Bereich Programmierung und dachte die Angaben oben reichen.

    Wenn ich also mit dem Button Eingabe die Werte in die Zelle im Array speichere und dann die Inhalte des EA-Feld lösche, klappt das schonmal. Aber bei erneuter Eingabe wird der Array nur überschrieben. Wie kann ich hier schreiben, dass in die nächste Zelle geschrieben werden soll? Ich kann nur die einzelnen Zellen verlinken, nicht aber die nächste Zelle zB mit +1 auswählen, wenn ich richtig geschaut habe.

  5. #5
    Join Date
    27.06.2009
    Location
    am Nordharz
    Posts
    4,658
    Danke
    559
    Erhielt 1,249 Danke für 1,017 Beiträge

    Default

    Nur mal so grob ->

    PLC:
    Eingabewert (INT?)
    Array [x..y] of INT
    Index (INT)
    Übernahme (BOOL)

    HMI:
    Eingabefeld auf Eingabewert
    Button -> setzt Übernahme

    Programm PLC:
    Index = Start (nur einmal zum Programmbeginn)
    ...
    Übernahme?
    Array[Index] := Eingabewert
    Index := Index+1
    Eingabewert = leer
    Übernahme rücksetzen
    ...


    Mit dem HMI nicht direkt ins Array schreiben, sondern immer in die gleiche Variable außerhalb des Arrays.
    Das Übertragen ins Array macht dann die PLC. Eventuell auch das Index-Ermitteln, welches Feld das nächste leere ist.

  6. #6
    Neuling94 is offline Neuer Benutzer
    Themenstarter
    Join Date
    26.03.2020
    Posts
    3
    Danke
    0
    Erhielt 0 Danke für 0 Beiträge

    Default

    Ich verstehe, danke! Guter Tipp, das über die PLC und nicht das HMI zu regeln. Vielen Dank! Das werde ich heute probieren und schreibe dann!

  7. #7
    Join Date
    24.02.2009
    Posts
    1,448
    Danke
    29
    Erhielt 342 Danke für 278 Beiträge

    Default


    Zuviel Werbung?
    -> Hier kostenlos registrieren
    Benutzt du ein Datagrid zur Anzeige des Arrays? Du kannst Werte in einem Datagrid direkt beschreiben und die Daten werden dann in die entsprechenden Array Elemente übertragen.
    Sänd from mei Kombjudder mitse Dastadurr.

Similar Threads

  1. TC3 Daten in CSV-Datei schreiben / Zeilen überspringen
    By BrascoC in forum CODESYS und IEC61131
    Replies: 5
    Last Post: 04.06.2019, 11:17
  2. Deklaration MW eines Arrays
    By Kayle in forum CODESYS und IEC61131
    Replies: 6
    Last Post: 11.03.2017, 21:07
  3. Summe eines Arrays
    By Dr.MirakulixX in forum CODESYS und IEC61131
    Replies: 2
    Last Post: 29.12.2013, 15:09
  4. Arrays in S7 schreiben
    By CrazyCat in forum Simatic
    Replies: 19
    Last Post: 29.06.2012, 15:19
  5. Replies: 5
    Last Post: 28.03.2011, 16:05

Tags for this Thread

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
  •