Textliste an Usercontrol übergeben

Max2.0

Level-2
Beiträge
94
Reaktionspunkte
16
Zuviel Werbung?
-> Hier kostenlos registrieren
Hallo zusammen,

ich arbeite mich gerade in Beckhoff ein und bin auf ein Problem gestoßen, bei dem ich nicht weiterkomme.

Ich versuche, einen Standard-Roboter-Baustein in TwinCAT nachzubauen. Die SPS-Seite läuft soweit gut. Ich habe die grundlegenden Funktionen umgesetzt und zusätzlich einige Methoden integriert, die es bei Siemens so nicht gibt.

Jetzt habe ich mich an die HMI gewagt und hänge bei folgendem Problem:

Ich möchte ein Dropdown-Menü mit einer Textliste befüllen. Die Textliste konnte ich auf SPS-Seite erstellen, aber ich schaffe es nicht, sie korrekt mit der HMI zu verknüpfen.

Mein Ansatz war, einen Roboter User Control zu erstellen und die Textliste von außen zu übergeben, was bei mehreren Instanzen durchaus sinnvoll wäre. Leider lässt sich die Textliste so nicht von außen befüllen, oder ich weiß schlicht nicht wie das geht. Ist das bei Beckhoff überhaupt die richtige Herangehensweise, oder geht man hier komplett anders vor?

Zusätzlich habe ich noch das Problem, dass Änderungen von der HMI nicht in die Steuerung zurückgeschrieben werden. Wenn ich jedoch den Wert direkt in der Steuerung ändere, wird er auf der HMI korrekt angezeigt. Die Verbindung scheint also nur in eine Richtung zu funktionieren.

Hat jemand einen Tipp, wie sich das sauber lösen lässt?


1779104298212.png

1779106124626.png


Gruß,
Max
 
Anbei ein kleines video. hier siehst du wie man das enum mit dem usercontrol verknüpft. ich denke das hilft dir
schöne grüße
 
Zuviel Werbung?
-> Hier kostenlos registrieren
Zusätzlich habe ich noch das Problem, dass Änderungen von der HMI nicht in die Steuerung zurückgeschrieben werden. Wenn ich jedoch den Wert direkt in der Steuerung ändere, wird er auf der HMI korrekt angezeigt. Die Verbindung scheint also nur in eine Richtung zu funktionieren
Im Eigenschaftseditor rechtsklick auf das Symbol, dann Edit symbol. Binding mode auf Two Way
 
Anbei ein kleines video. hier siehst du wie man das enum mit dem usercontrol verknüpft. ich denke das hilft dir
schöne grüße
Sorry für die relativ späte Rückmeldung bin erst heute wieder zum Rumprobieren gekommen.

Wie du das in deinem Video zeigst funktioniert das bei mir auch.
Nur habe ich das Problem, dass immer die gleiche eNum angezeigt wird auch wenn ich unterschiedliche eNums an den UserControl anhänge.

Unser Ziel ist es 2 Instanzen des Roboters auf der HMI anzuzeigen und dann in beiden unterschiedliche eNums zu verwenden.

Ich habe in meinem Projekt auch 2 unterschiedliche eNums angelegt und mit der HMI verbunden.(eRobotJob und eRobotJob_1)
Hier habe ich aber das Problem, dass immer auf die eRobotJob zugegriffen wird und nie auf die eRobotJob_1.
Das liegt vermutlich daran, dass ich hier auch direkt auf den Datentyp eRobotJob zugreife aber auch keinen generrellen eNum datentyp gefunden habe.
Ich habe auch versucht bei den Übergabeparametern einen generellen eNum Datentypen zu finden bin hier aber auch nicht fündig geworden.

Hier die 2 eEnums
Beschaltung Eums.png
Beschaltung 1
Beschaltung Robot Control 1.png
Verschaltung 2Beschaltung Robot Control 2.png
Parameter übergab mit Test Datentypen die nicht geklappt haben
RoboterParameter.png
Anzeige der Dropdown Menüs
RoboterDropDown1.pngRoboterDropDown2.png
 
Zurück
Oben