Adressierung korrekt!?

the

Level-1
Beiträge
20
Reaktionspunkte
0
Zuviel Werbung?
-> Hier kostenlos registrieren
hallo,

ich muss nochmal eine kleine "Anfängerfrage" stellen:

Sind die beiden folgenden Befehle identisch?
Code:
DB1[0]:=WORD#16#1
DB1[i]:=WORD#16#1 // vorrausgesetzt i:=0
und entspricht dies in AWL
Code:
DB1.DBW0
bzw.
DB1.DBW[i]
???
Gruß
Thomas
 
hallo,

ich muss nochmal eine kleine "Anfängerfrage" stellen:

Sind die beiden folgenden Befehle identisch?
Code:
DB1[0]:=WORD#16#1
DB1[i]:=WORD#16#1 // vorrausgesetzt i:=0
Unter der Voraussetzung i=0 dann ja.
Allerdings ist der Syntax generell falsch, da es in etwa so heißen sollte
DB1.Name_Array[Index]


und entspricht dies in AWL
Code:
DB1.Name_Array[0]
bzw.
DB1.DBW[i]
???

DB1.Name_Array funktioniert in AWL leider nicht, du musst dir den Pointer dafür selbst basteln,
die Forensuche sollte dir hier weiterhelfen.


Gruß
Thomas


Mfg
Manuel
 
ST
Code:
DB1[0]:=WORD#16#1;
DB1[i]:=WORD#16#1; (* vorrausgesetzt i:=0 *)
entspricht->

IL (AWL)
Code:
LD    1
ST        DB1[0]

LD    1
ST        DB1[i]
Das ganze erhält man als Ergebnis wenn man den Baustein mit dem ST Code in einen AWL Baustein konvertiert.

PS: Ein Array DB1 zu nennen nur um das gewohnte Siemens Umfeld nachzubilden ist armselig.
 
Zuviel Werbung?
-> Hier kostenlos registrieren
ruhig Blut ;)
Ich bin Student und sitze vor nem Berg von Aufgaben. K.a. an welchem Hersteller unser Prof. sich gerade orientiert ;)
Deswegen muss ich auch dumm fragen und kann nicht ausprobieren....
 
ruhig Blut ;)
Ich bin Student und sitze vor nem Berg von Aufgaben. K.a. an welchem Hersteller unser Prof. sich gerade orientiert ;)
Deswegen muss ich auch dumm fragen und kann nicht ausprobieren....

Also wenn Du nicht mal weist um was für eine Steuerung es sich dreht... kann man die Frage so auch nicht wirklich beantworten. Warum hast Du denn das Unterforum "Beckhoff - CoDeSys - IEC61131" gewählt?

Frag doch einfach mal Deinen Prof auf welche Steuerung (bzw. Norm) er sich da bezieht.
 
Im Labor steht eine S7. Damit arbeiten wir auch, ABER
wir sollen grundsätzlich nicht speziell auf Siemens getrimmt werden. Deswegen arbeiten wir viel nach IEC61131.... Deswegen dieses Unterforum.
 
Zuviel Werbung?
-> Hier kostenlos registrieren
Ich denke mal unabhängig von jedem System gilt
a und a[0] liefert für i = 0 denselben Wert. Aber wenn i eine Variable ist, dann ist der Code für den Zugriff deutlich länger, vor allem wenn man eine Art Indexüberwachung hat (in CoDeSys Checkbounds).
 
Ich denke mal unabhängig von jedem System gilt
a und a[0] liefert für i = 0 denselben Wert.
...


Aber nur wenn das System mit einer variablen Indexadressierung von Arrays umgehen kann. Siemens kann das nun mal nur in SCL und nicht in AWL und auch nicht in FUP und schon gar nicht in KOP.
 
Zurück
Oben