Ausgänge mit Bitmuster aus WORD/DWORD direkt beschreiben ?

SyWiTec

Level-1
Beiträge
5
Reaktionspunkte
0
Zuviel Werbung?
-> Hier kostenlos registrieren
Hallo an die Wissenden unter euch :)
Ich möchte mit einer 750-871 zwei Ausgangsklemmen (750-1501, je 16 DO) so ansprechen, dass ich ein Bitmuster,
welches z.B. in einem WORD oder für beide einem DWORD steckt, ausgeben kann.
Ich könnte jetzt nun natürlich hergehen und ein WORD bitweise zerlegen, abfragen auf 0/1 und dann den entsprechend
benannten Ausgang ansteuern. Aber das scheint mir doch ein wenig umständlich.
Sicher gibt's eine (für mich leider derzeit nicht offensichtliche) viel einfachere Möglichkeit, die Ausgänge %QX2.x
zu beschreiben.
Das Bitmuster selber wird im Programm durch div. AND, OR, SHIFT Befehle verändert, aber das tut ja eigentlich nichts zur Sache.
So, hoffe, ich habe keine wesentlichen Infos vergessen.
Wenn also jemand eine Idee oder besser noch ein Beispiel hat, das wäre super !
Besten Dank schon mal !
 
Zuviel Werbung?
-> Hier kostenlos registrieren
Code:
    wAusgang  AT %QW0: WORD;

Den wert entsprechend den QX anpassen.

Gruß
ccore

Danke !
%QW übernimmt also den Wert einer als WORD definierten Variablen.
Was aber soll "wAusgang" sein ? In den div. Dokus ist da nichts zu finden.
Sorry für meine Begriffstutzigkeit, aber ein paar Worte der Eklärung bitte.

Gruß Reelf
 
Danke !
%QW übernimmt also den Wert einer als WORD definierten Variablen.
Was aber soll "wAusgang" sein ? In den div. Dokus ist da nichts zu finden.
Na, wAusgang ist diese von Dir erwähnte Variable. In der Hardwarekonfig mappst Du diese Variable auf die Ausgänge und wenn Du nun der Variable einen Wert zuweist werden die Ausgänge entsprechend gesetzt.
 
So hatte ich vermutet. Da das aber nicht ging, fing ich an zu grübeln und zu fragen ;-)
In der Hardwarekonfig ("Steuerungskonfiguration") kann ich WORD (%QW) nur analogen Ausgangsklemmen zuweisen. Da bekommt ja jeder D/A-Wander seinen
Wert als WORD. Das gaht auch alles ohne Probleme, auch die Digital-Ausgänge einzeln.
Aber DO und WORD? Bei den DO-Klemmen geht nur %QXy.z, z.B. "Ventil1 AT %QX2.0" .
Sehe ich jetzt etwas gar nicht? Suche ich an der völlig falschen Stelle? Liegt's an der Hitze? ;-)
 
Hm, "TwinCat" kenne ich nun wieder nicht. Habe hier CodeSy V2.3. Wahrscheinlich wird's daran liegen, vermutlich kann CodesSys das nicht.
Falls noch jemand eine Idee hat, dann her damit :)
Dir schon mal besten Dank !
 
Du kannst trotzdem die Variablen übersteuern.
@oliver.tonn: Ich kenne TwinCat 2 nur bedingt, ist aber meines Erachtens (bis auf ein paar Feinheiten)identisch mit Codesys 2.3

2020-08-12 14_47_46-CoDeSys - (Unbenannt)_ - [Steuerungskonfiguration].png2020-08-12 14_49_37-CoDeSys - (Unbenannt)_ - [PLC_PRG (PRG-CFC)].png2020-08-12 14_50_12-CoDeSys - (Unbenannt)_.jpg2020-08-12 14_52_53-CoDeSys - (Unbenannt)_.jpg2020-08-12 14_50_42-CoDeSys - (Unbenannt)_.jpg
 
Also ich kann eine WAGO mit Codesys 2.3 genauso progammieren wie mit I/O Pro. Bei Twincat gibt es mit sicherheit ein paar "Plugins" mehr als bei den nativen Varianten.
 
Zuviel Werbung?
-> Hier kostenlos registrieren
Super! Es kann so einfach sein :)
Es ist CodesSys V23 als WAGO I/O-Pro
Klar, ich programmiere die WAGO 750-8xx ja auch damit. Nur die beiden 1501 mit DWORD ansteuern, da kam ich auf keine Lösung.
Ein DWORD auf zwei WORD aufteilen und dann direkt an die 1501 schicken mit der o.g. Lösung (Danke für die Screenshots!) ist ja nun auch machbar :)
Danke nochmals, ich stand da echt auf'm Schlauch. Liegt vielleicht doch an der Hitze, 29.3°C hier im Büro ...
 
@oliver.tonn: Ich kenne TwinCat 2 nur bedingt, ist aber meines Erachtens (bis auf ein paar Feinheiten)identisch mit Codesys 2.3
Ist es auch, das Schöne bei TwinCAT ist der Systemmanager und das man I/Os selber keine Adresse vergeben muss wie %QX1.0, sondern TwinCAT das selber macht und man lediglich %Q* angeben muss.
TwinCAT 3 basiert auch auf Codesys, aber da hat Beckhoff kaum ein Stein auf dem Anderen gelassen.
 
Zurück
Oben