# Fragen zur RSLogix 5000



## adonismensch (22 September 2009)

Hi, ich habe mal eine Frage zu der Allen Bradley RS Logix und zwar möchte ich ein Baustein schreiben und diesen dann als "Multiinstanz" mehrfach aufrufen. Das bekomme ich absolut nicht hin, hat jemand eine Ahnung wie das geht ? Vielen Dank schonmal.


----------



## marlob (22 September 2009)

RSLogix hat keine Multiinstanzen wie bei Siemens. Wenn du wiederverwendbare Basteine schreiben willst, kannst du ab Version 16 Add-Ons programmieren


----------



## adonismensch (22 September 2009)

Das funktioniert ja schonmal gut, aber weisst Du auch wie man der Eingangsvariable der AddOns mehr als eine Variable zuordnen kann. Also ich will davor halt noch mehrere Variablen anfügen die dann vor dem Eingang sitzen.


----------



## marlob (22 September 2009)

Wenn du bei deinem Add-On auf Parameters and Local Tags gehst, kannst du mit rechter Maustast neue Local tags hinzufügen. Bei Usage kannst du dann auswählen ob es ein Input, Output oder so werden soll


----------



## adonismensch (22 September 2009)

Ah, glaub ich habe mich nicht so gut ausgedrückt. 
Ich habe diesen Add On Baustein in einer Programm Routine aufgerufen. Da sehe ich jetzt den "Baustein" mit seinen Eingangs und Ausgangsvariablen. Jetzt möchte ich an einer Eingangsvariable nicht nur eine Variable dran hängen sondern vor dieser Eingagsvariable noch eine Und/Oder Verknüpfung z.B. mehrere Variablen oder Hardware Eingänge machen ohne irgendwie eine Zwischenvariable zu bauen. Geht das ?


----------



## AUDSUPERUSER (22 September 2009)

warum sollte das nicht gehen. jede addon hat eine tagstructur die du beim aufruf der addon festlegst und der addon übergibst.

diese variablen kannst du ganznormal beschreiben, allerdings nicht so wie bei siemens ein graphisches undgatter vor den baustein hängen


----------



## adonismensch (22 September 2009)

Und wenn ich nur einen Input Tag im ADD On habe, kann ich von ausserhalb nicht zwei Parallele Variablen "anschliessen", immer nur eine ? Das ist doch nicht so schön !


----------



## adonismensch (23 September 2009)

Hat keine einer Ahnung mehr ?


----------



## HSThomas (24 September 2009)

Es ist natürlich möglich, zwei Variablen da anzuschliessen. Dazu musst Du allerdings einen "Select"-Baustein verwenden.
An den Baustein kannst Du zwei Variablen anhängen und mit einem Boolschen Wert dann auswählen, welche der Variablen benutzt werden soll.


Viel Erfolg...



Hauke


----------



## adonismensch (29 September 2009)

This instruction is not available in ladder diagram logic. Ich muss aber nur in KOP schreiben, da habe ich diesen Select nicht. Gibt es da was anderes ?


----------



## HSThomas (30 September 2009)

Das ist dann natürlich etwas umständlicher - aber nicht unmöglich.


Du benötigst dazu eine "Transfervariable", die direkt mit deinem Baustein verbunden ist.

In den Rungs darüber setzt Du jeweils einen "Move"-Baustein, der den Wert einer der vorherigen Variablen in die Transfervariable schiebt.
Diese "Move"-Bausteine steuerst Du dann genau so an, wie eben den Select Baustein.


Ich hoffe, dass ist soweit verständlich. 



Gruß

Hauke


----------



## adonismensch (30 September 2009)

Kann mir einer helfen ?


----------



## HSThomas (30 September 2009)

Schau Dir mal den Screenshot an... Das müsste Dir weiterhelfen.


----------



## adonismensch (30 September 2009)

Vielen Dank, also doch mit ner Zwischenvariablen . Ganz schön mühselig....


----------



## HSThomas (30 September 2009)

Schade, dass Du an Ladder-Logic gebunden bist. In FBS oder Structured Text wäre es einfacher und unproblematischer.


----------



## adonismensch (1 Oktober 2009)

Ja das nervt mich auch, aber muss so sein......


----------



## M_o_t (6 Oktober 2009)

Hi,

wenn du in dem AddOn die Variable nicht als requiered angibst kannst du ganz einfach über dem Bausteine eine Zuweisung machen.

So wie bei einem TON eine Variable Zeit funktioniert.

Gruß
Silke


----------



## schloeri (20 Mai 2010)

*Instanz der AOI mit sich selbst beschalten*

Eine Zwischenvariable ist icht nötig. Du kannst die Eingänge einfach mit
den tags der eigenen instanz belegen. Dann hast Du den Eingang praktisch mit sich selbst beschaltet. Im Program brauchst Du nun nur einen Rzusätzlichen Rung in dem Du ein OTE auf den tag der Instanz legst.

Probier mal!


----------



## schloeri (30 Oktober 2010)

*Na klar geht das!*

Um das Thema abzuschliessen und vieleicht einigen, die dieser Punkt interessiert aber hier ja keine Antwort finden, nun des Rätsels Lösung:

Man kann auf die einzelnen Ein-und Ausgangs Variabeln als Tag zugreifen.
Hierzu einfach den Eingang der AOI mit sich selbst beschalten.
Wenn meine AOI (bzw. die Instanz der AOI) z.B. 'test' heist und den Eingang 'eins' hat gibt man bei der AOI im Eingangs Feld test.eins an.

Nun kann man in einem separetem Rung diesen Tag in Ladder Logik beschalten z.B. als OTE dann auch einfach test.eins angeben und schon klappt das.


----------

