UDT an Funktionsbaustein übergeben

A

Anonymous

Guest
Zuviel Werbung?
->Hier kostenlos registrieren
Hallo,

Habe hier eine Funktion die als Parameter eine UDT Struktur von mir will, wie parametriere ich die?
Kann ihr weder direkt die UDT übergeben noch einen db vom Typ der UDT.
Was könnte noch falsch sein?

Danke schonmal, mfg Thorsten
 

sps-concept

Well-known member
Beiträge
2.235
Punkte Reaktionen
251
UDT

Hallo Thorsten,

du musst den Bereich ranschreiben den die UDT belegt. Am besten die legst in einem DB eine Variable vom Typ UDT an und nimmst die vom FB/FC verlangte. Dann schreibst du an den FB/FC am Parameter einfach DB_xx.Variablenname

Wenns Probleme gibt ruf mal an

MfG
André Räppel
 

sps-concept

Well-known member
Beiträge
2.235
Punkte Reaktionen
251
UDT

und beim DB vom Typ UDT dürfte das nicht gehen, weil keine Variable über den gesamten Bereich geht. Den Parameter einfach als Pointer einzugeben wie bei ANY funktioniert nicht.

Übrigens (da es gerade um UDTs geht) ich erweitere in Kürze die UDT-Sammlung auf www.sps-concept.de für MP/OP wieder.

MfG
André Räppel
 

thorsten

Well-known member
Beiträge
105
Punkte Reaktionen
0
Hi,

Das hat mir jetzt schon ein Stück weitergeholfen. Wenn ich eine eigenen DB erstelle und die UDT als variable eingebe kann ich diese als Parameter an die FB übergeben.

= DB1.DB_VAR

Problem bei der FB ist ein Instanzdatenbaustein dabei, bei dem ab 14.0 eine solche UDT Struktur untergebracht ist. Ich vermute ich muss diese UDT bei der Parameterübergabe eingeben.

Sie ist als in/out deklariert heißt Visu und hat als Typ die "UDT129".
Wenn ich diese jetzt aber parametriere:

= DB129.Visu verweigert wir S7 die übernahme des Parameters.

Könnt ihr mir nochmal nen Tipp geben?

Danke schonmal, Thorsten
 

sps-concept

Well-known member
Beiträge
2.235
Punkte Reaktionen
251
Zuviel Werbung?
->Hier kostenlos registrieren
UDT

nein das musst du nicht, du siehst in diesem Fall nur nochmal die Schnittstelle des FBs. Was sollte es für nen Sinn machen, einen Parameter zu übergeben den der FB doch eh schon hat. Was soll denn der FB machen? Wenns keine Geheimnisse sind kannste ja auch mal was hochladen oder mailen. Und wie gesagt, das Telefon gibts auch noch. Nr ist auf der HP.

MfG
André Räppel
 

plc_tippser

Well-known member
Beiträge
2.500
Punkte Reaktionen
301
Wo sich die Variable im FB befindet, hat dich gar nicht zu stören. Wenn du den DB angebunden hast, bist du fertig. In den DB übergibst du dann die Parameter, die gefordert sind.
pt
 

thorsten

Well-known member
Beiträge
105
Punkte Reaktionen
0
Hi,

Hat sich erledigt, Ihr hattet recht, und es hätte schon mit der 1. Parametrisierung funktioniert.
Aber die Schnittstellenkonfiguration am Stromrichter ist wohl noch verkehrt.

Natürlich ist das alles keineswegs geheim, wollte es nur nicht unnötig durch große Beschreibungen verkomplizieren.
Ich sitze hier gerade vor nem Stromrichter der Fa. Lenze (vektor 8200) und versuche diesen davon zu überzeugen auch am Freitag Mittag noch zu arbeiten. Bisher bestand er jedoch auf sein Wochenende.

Von Lenze bekommt man da einen Standart FB den man parametrisieren muss, was jetzt auch schon läuft. Nur im Stromrichter stimmt wohl was bei der Auswertung des PEW`s noch nicht. Muss wohl die Schnittstelle noch falsch eingestellt sein!

Danke jedenfalls an alle die hier mitgeholfen haben, und ansonsten wünsche ich ein schönes Wochenende (denen die eins haben)!

mfg Thorsen
 

sps-concept

Well-known member
Beiträge
2.235
Punkte Reaktionen
251
Symbol

falsch Jogi,

in diesem Fall funktionierts auch ohne Symbol für den DB. Das es so nicht geht dafür sorgt Step7 selbst: "Strukturierte Daten aus dem IO-Bereich des Instanz DBs xx sind nicht als Operanden im globalen DB-Zugriff erlaubt"

MfG
André Räppel
 

jogi

Well-known member
Beiträge
81
Punkte Reaktionen
0
@ André

:oops: hab's eber ausprobiert, geht tatsächlich :oops:

war das schon immer so, oder erst ab einer bestimmten Version ?

Ich meine, mich zu erinnern, daß es mal nicht ging :?:

wieder was g'lernt, Danke für den Tipp :)

Gruß Jörg
 
Oben