Hi zusammen
Ich bin grade wiedermal dran eine neue CPU für Dubai zu normieren.
Neu habe ich die abgesetzten Schaltränke komplett auf RemoteIOs umgerüstet. Da es die Fehlerquote beim Verkabeln enorm einschränkt wenn man keine 20 paralellen Drähte von Schrank zu schrank anschliessen lassen muss.
Also bekommt jeder Schrank ein ET200sp IO mit exakt der gleichen belegung. Also 32DI, 16DO, 2AO und eine 480VAC Energiemesskarte (zum ersten mal).
Jetzt wollte ich das erst wie gehab mit Strukturen in der Symbolik aufbauen.
und dann so zuweisen
Aber die 1500er bietet ja jetzt z.B. einen Symbolischen Zugriff auf die Module an mit dem man gleich die Länge und Adresse rauskriegt und ummappen kann.
Man könnte also z.B. "Local~DI_8x24VDC_BA_1_1" auch über die Objektbausteinschnittstelle übergeben und das Mapping intern machen. Würde auch Schnittstellenverlängerungen automatisch mitkriegen etc. Aber dasselbe ginge ja auch einfach mit nem UDT auf der Hardwaresymbolik und UDT Schnittstelle am Baustein.
Also wozu genau dient das GETIO genau? was sind die Vorteile?
mfG René
Ich bin grade wiedermal dran eine neue CPU für Dubai zu normieren.
Neu habe ich die abgesetzten Schaltränke komplett auf RemoteIOs umgerüstet. Da es die Fehlerquote beim Verkabeln enorm einschränkt wenn man keine 20 paralellen Drähte von Schrank zu schrank anschliessen lassen muss.
Also bekommt jeder Schrank ein ET200sp IO mit exakt der gleichen belegung. Also 32DI, 16DO, 2AO und eine 480VAC Energiemesskarte (zum ersten mal).
Jetzt wollte ich das erst wie gehab mit Strukturen in der Symbolik aufbauen.
und dann so zuweisen
Aber die 1500er bietet ja jetzt z.B. einen Symbolischen Zugriff auf die Module an mit dem man gleich die Länge und Adresse rauskriegt und ummappen kann.
Code:
#statErrInfo := RD_ADDR(LADDR := "Local~DI_8x24VDC_BA_1_1",
PIADDR => #statAddrInIO,
PICount => #statLenIn,
PQADDR => #statAddrOutIO,
PQCount => #statLenOut);
//read inputs from Energy Meter 480VAC
#GETIO_PART_Instance(ID:="Local~DI_8x24VDC_BA_1_1",
OFFSET:=0,
LEN:=UDINT_TO_INT(#statLenIn),
STATUS=>#statStatusGetIOPart,
ERROR=>#statErrGetIOPart,
INPUTS:=#ldb_SL1);
"IO_DB".LDB1.CabinTempAlert := NOT #ldb_SL1.CabinTempAlert;
"IO_DB".LDB1.CB230VAC := NOT #ldb_SL1.CB230VAC;
Also wozu genau dient das GETIO genau? was sind die Vorteile?
mfG René