ARRAY als IN bei FB?

Pinmaster

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

man kann bei FB's als IN Variable Array benützen. Jetzt stellt sich für mich die Frage wie muss ich im eigentlichen Programmteil diesen Eingang des FB's belegen.
Hintergrund ist folgender:
Ich würde gerne eine IP Adresse, die ja aus 4 Byte besteht an meinen FB übergeben. Ich würde jetzt gerne diese IP Adresse so im Programmteil benutzen wie Sie auch in Windows steht z.B. 192, 168,4,88 (, weil dieses Arraydimensionen abtrennt) Punkt geht nicht ist mir aber auch klar ;) Also sollte letztendlich so etwas wie 192,168,4,88 am IN des FB's stehen.
Hat jemand eine Idee wie das funktionieren könnte?
 
Die direkte Wertübergabe bei Arrays ist glaube ich nicht möglich.
Ich würde das mit einem String machen, den man nachher wieder zerlegen kann oder aber 4 int Werte.
 
Einfach 4 separate BYTE oder INT IN's programmieren.
Dann kannst Du die feste IP Werte direkt eintippen.

Wenn Du ein ARRAY oder ein STRING verwenden willst, dann geht das einfache Wertübergabe nicht.

Mit ein ARRAY muss ein passender DB addresse die IP Werte zugewiesen werden.
Es konnte z.B. so aussehen:

L 192
T "IP_setup".Connect1.IP_Adr[1]
L 168
T "IP_setup".Connect1.IP_Adr[2]
L 1
T "IP_setup".Connect1.IP_Adr[3]
L 32
T "IP_setup".Connect1.IP_Adr[4]

Jetzt gibt es in "IP_setup".Connect1.IP_Adr der Adresse 192.168.1.32

Das ganze kann denn an FB/FC übergeben werden:

CALL FC_Setup_TCPIP
IP_Adr:="IP_Setup".Connect1.IP_Adr
// IP_Adr ist ein ARRAY[1..4] OF INT
es gibt viele weitere mögligheiten, z.B. mit UDTs.
 
Zuviel Werbung?
-> Hier kostenlos registrieren
Hallo,
in Wirklichkeit wird bei diesen Variablentypen (STRING, ARRAY, Datenbereich wie z.B. UDT) an den nächsten Baustein ein ANY-Pointer, der auf die Quelle der Daten zeigt, übergeben.
Als direkten Wert kannst du nur Variablen bis Größe DWORD übergeben ...

Gruß
LL
 
Und ein STRING wurde ich nicht empfehlen.
Es ist nicht möglich zu schreiben z.B.:

L "192.168.1.32"
T "IP_setup".Connect1.str_IP_Adr

Das hantierung von STRINGs in KOP/FUP/AWL ist sehr umständlich.
 
Zurück
Oben