Wie kann ich ein UDT in Step7 Basic anlegen?

s3amdrer

Level-1
Beiträge
210
Reaktionspunkte
17
Zuviel Werbung?
-> Hier kostenlos registrieren
Hallo alle zusammen,

Wie kann ich ein UDT in Step7 Basic anlegen?
Kann man das überhaupt?

Hintergrund:
Ich möchte eine Stringvariable in einem DB mit NULL beschreiben (initialisieren)
Dies geht aber nur für Datenbausteine aus SDT oder UDT! (Fehlermeldung aus Step7 Basic.)

Hat jemand ne Idee?
Andere Lösungsansätze?
 
SFC Fill aufrufen, mit einem Pointer auf deinen String!

Danach aber wieder die Länge des Strings in das erste Byte schreiben, oder gleich das erste byte nicht mit füllen!
 
Zuviel Werbung?
-> Hier kostenlos registrieren
Hallo alle zusammen,

Wie kann ich ein UDT in Step7 Basic anlegen?
Kann man das überhaupt?

Bausteien markieren--->Reiter oben "Einfügen" anklicken
Baustein--->Datentyp UDT

H
intergrund:
Ich möchte eine Stringvariable in einem DB mit NULL beschreiben (initialisieren)
Dies geht aber nur für Datenbausteine aus SDT oder UDT! (Fehlermeldung aus Step7 Basic.)

:confused::confused::confused:

Was für eine Meldung aus Step7 kommt da ?
 
@Jochen Kühner

Wo finde ich die SFC FILL?

@Verpolt
geht nicht! siehe Anhang.
 

Anhänge

  • UDT erstellen.JPG
    UDT erstellen.JPG
    74,8 KB · Aufrufe: 91
@verpolt

Zitat:
intergrund:
Ich möchte eine Stringvariable in einem DB mit NULL beschreiben (initialisieren)
Dies geht aber nur für Datenbausteine aus SDT oder UDT! (Fehlermeldung aus Step7 Basic.)

siehe Anhang
 

Anhänge

  • Fehlermeldung Step7 Basic bei MOVE Befehl.JPG
    Fehlermeldung Step7 Basic bei MOVE Befehl.JPG
    11,7 KB · Aufrufe: 62
@ marlob

die Infos konnte ich schon in der Hilfedatei finden.hat mir nicht geholfen.
Nun weiß ich aber noch immer nicht wie oder ob ich ein UDT anlegen darf bzw. wie kann ich eine Stringvariable in einem DB initialisieren?
 
Zuviel Werbung?
-> Hier kostenlos registrieren
Du könntest deinen String evtl. mit einem MOVE_BLK initialisieren

String kann ich mit MOVE_BLK nicht bearbeiten.
Habe aber schon alle Sting Variablen in ARRAY of CHAR umgewandelt.
So klappt das mit dem MOVE_BLK Befehl.
Ich musste aber einen Reset ARRAY anlegen. Wie kann ich diesen ARRAY dauerhaft mit einem Zeichen vorbelegen? Z.B. = oder -

Ob ich einen UDT in Step7 Basic V10.5 anlegen kann oder nicht weis ich nun leider noch immer nicht :confused:
 
Zuviel Werbung?
-> Hier kostenlos registrieren
Hallo alle zusammen,
Hintergrund:
Ich möchte eine Stringvariable in einem DB mit NULL beschreiben (initialisieren)
Dies geht aber nur für Datenbausteine aus SDT oder UDT! (Fehlermeldung aus Step7 Basic.)

Hallo rerdma3s,

du kannst doch zum Einen jeder Variablen (auch einem string) einen default-wert zuweisen, der beim start der CPU automatisch übernommen wird. Damit hättest du direkt deine Initialisierung.

Zum Andren gehört bei deinem Beispiel mit dem Move-Baustein, die String-variable an den Ausgang "out". An den Eingang "In" gehört lediglich der Wert, welchen du in den String schreiben möchtest. Soweit ich mich erinnere (Aussage bitte nicht auf die waage legen:)), konnte man per move ohnehin keine Strings überschreiben. Ein Versuch wäre dann höchstens noch jeden Wert des Strings einzeln über Any zu verändern. Also an den Ausgang nicht den String, sondern P#DB1.DBX0.0 o.Ä. schreiben, wobei 0.0 immer für die Adresse deines zu überschreibenden Wertes steht.

Mfg
Cartman
 
Zurück
Oben