Zeichenkette eingeben

SCLNewbie

Active member
Beiträge
42
Punkte Reaktionen
0
Zuviel Werbung?
->Hier kostenlos registrieren
Hallo zusammen,

ich nutze das HMI TP277, welches ich über den SIMATIC-Manager in eine STEP7 Projekt eingebunden habe. Nun möchte über die Bedienoberfläche eine Zeichenkette eingeben, welche automatisch in einen bestimmten DB-Bereich geschrieben wird. Wie mache ich das in WinCC flexible 2008?
Ist es möglich, diese Zeichenkette automatisch in einezelne BYTE's umzuwandeln? Vielen Dank für eure Hilfe!
 

Larry Laffer

Supermoderator
Teammitglied
Beiträge
13.084
Punkte Reaktionen
2.717
Hallo,
ich würde in der S7 in dem DB einen String mit der gewünschten Länge angeben und den in Flex als Variable anbinden und deinem EA-Feld übergeben.

Gruß
Larry
 

Larry Laffer

Supermoderator
Teammitglied
Beiträge
13.084
Punkte Reaktionen
2.717
Hallo,
ich denke mal schon, dass du in dem DB auch ein Array of String deklarieren kannst. Die Visu kann aber nur die Strings einzeln (und nicht als Array) ansprechen. Je nachdem was du vorhast gäbe es dann vielleicht noch den Weg der Multiplex-Variablen.

Gruß
Larry
 
OP
S

SCLNewbie

Active member
Beiträge
42
Punkte Reaktionen
0
Ich möchte über mein Touch-Panel eine ganze Zeichenkette eingeben, welche in einem DB geschrieben wird und vom Programm aus weiterverarbeitet wird. Geht das über die Multiplex-Variablen?
Besten Dank!
 

Larry Laffer

Supermoderator
Teammitglied
Beiträge
13.084
Punkte Reaktionen
2.717
Zuviel Werbung?
->Hier kostenlos registrieren
Im Grunde geht das ...
Ob mit einer Eingabe habe ich noch nicht probiert und kann es auch gerade nicht.
Wenn es mit einer Eingabe geht, dann muß du trotz allem vorher festlegen, wohin der Multiplex-Zeiger zeigen soll.
Wenn es mit der Eingabe so nicht geht dann mußt du die Zuordnung an die SPS weiterleiten und die muss dann die Eingabe an den richtigen Platz im DB umkopieren ...

Gruß
Larry
 

Matze001

Well-known member
Beiträge
2.509
Punkte Reaktionen
486
Ich glaube ihr redet aneinander vorbei ;)

Der TE möchte einen String in einen DB eintragen. nehmen wir mal an es ist der DB1 und der String ist dort allein zu hause, und 20 stellen lang.

Dann erstellst du einen String20. Dieser belegt im DB 22 Byte (2 Statusbytes vorn weg, dahinter die 20 Bytes mit den einzelnen zeichen).

In WinCCflex legst du nun eine Variable vom Typ String an, sagst sie beginnt bei DB1.DBB0 und hat 20 Zeichen.

Auf diese 20 Zeichen kannst du dann aus deinem Programm natürlich einzeln zugreifen, in AWL einfach mit

L DB1.DBB2 // Erstes Zeichen
L DB1.DBB3 // Zweites Zeichen
etc.

Oder in SCL mit der AT-Ansicht.

Grüße

Marcel

EDITED: DANKE LL
 
Zuletzt bearbeitet:

Larry Laffer

Supermoderator
Teammitglied
Beiträge
13.084
Punkte Reaktionen
2.717
@Marcel:
möglicherweise hast du Recht. Ich hatte hier das mit dem Array_of_String aufgegriffen und angenommen, dass der TE weiß, was er da angefragt hat ... Naja ... und wenn du an ein Array_of_String ran willst ... 8) ... dann halt multiplexen ...

Ach ja ... AT in SCL - nicht in AWL ...
 
Oben