9 Zeichen werden von String abgezogen

Bensen83

Level-1
Beiträge
777
Reaktionspunkte
3
Zuviel Werbung?
-> Hier kostenlos registrieren
Hallo Leute, ich habe einen String in meiner S7 angelegt und diesen auch in WINCC Flexible angelegt. wenn ich nun in ein Feld im WInCC Flexible etwas eingebe, werden die ersten 9 Zeichen weggeschnitten. warum ? Kann mir jemand helfen?
 
Bist Du Dir sicher, daß die 9 Zeichen auch wirklich im String in S7 enthalten sind? Evtl. ist beim Schreiben der Datenbereich nicht richtig zugeordnet worden oder die Zeichen werden an anderer Stelle im Programm wieder gelöscht.
Stell doch mal den Code in dem der String im Programm beschrieben wird hier rein, sonst kann ich nur raten.

Sollte das Anzeigefeld in WCCF zu klein sein, würdest Du nur Rauten (#) sehen.

Gruß
maweri
 
Zuviel Werbung?
-> Hier kostenlos registrieren
Ok

Das ist ja das Problem, ich verwende den String im Programm noch überhaupt nicht, wollte nur mal sehen ob es Funktioniert. und anscheinend geht es nicht, habe also einen Strin[20] in einem DB angelegt. Im WCCF habe ich die Variable angelegt und über die Verbindung zu S7 ausgewählt. hier steht ( db355.dbb0) und als Typ auch string. und sobald ich etwas über wincc flexible hereinschreibe werden diese 9 zeichen gelöscht.
 
Ahh, so rum läuft der Hase:)

Ich habe bisher nur Strings, die im Programm erzeugt werden auf dem Panel wiedergegeben.
Bin gleich wieder an einer Anlage und kann da mal Deinen Weg testen. Melde mich dann wieder.
 
Wo und wie willst Du den String denn kontrollieren.

geh man in Steuern Variable und laß dir folgendes anzeigen
Code:
DB355.DBB0 Dez
DB355.DBB1 Dez
Db355.DBB3 Zeichen
...
DB355.DBB22 Zeichen
 
Zuviel Werbung?
-> Hier kostenlos registrieren
Ok

Wenn ich das tue, dann habe ich in dbb0 immer 20 drin stehen, dbb1 wechselt und die restlichen zeigen das hier an ''.
bsp.

eingegeben: 12345678901234

dbb0 20
dbb1 14
dbb3 -dbb20 ''
 
Irgendwas passt da nicht zusammen.
in DBB0 steht die deklarierte länge 20
in DBB1 steht das Du 14 Zeichen eingegeben hast, also sollte man die sehen können.
Ist in WinCCLFex die Länge auch wirklich mit 20 angegeben und die Eingabe auch 20 Zeichen lang ?

Kannst Du das mal hochladen oder an jabbapoint(at)gmx.de senden ?
 
Ok

im winCCF ist eine Variable angelegt, welche als string deklariert ist aber man kann die länge nicht verändern die steht auf 1
 
Zuviel Werbung?
-> Hier kostenlos registrieren
Hast Du denn den String richtig im DB angelegt ?
Wenn ja versuch mal in WinccFlex Variable Markieren ->rechte taste-> Neu Verbinden.
 

Anhänge

  • string2.jpg
    string2.jpg
    5,2 KB · Aufrufe: 12
Ok

Also ich habe den String in nem DB angelegt, komischerweise kann ich nichts dran ändern, also auch nichts in bspw. db355.dbb10 rein schreiben
 
Ist die delaration sie in meinen Bild vom letzten Beitag ?

Mit steuern Variable würd nicht gehen, da ja vom Panel zyklisch überschrieben wird. Im ersten Bild war die Länge der Variablen ja bei mir 20 und bei der 1 das muss auf jeden auf auf 20 stehen.

Wenn Du in WinCCFlex bei Symbol den Symbolnamen löschst, aknnst du anschliessen bei Länge den Wert 20 eintragen, probier mal ob es so geht.
 
So hat ein bischen gedauert, aber leider bin ich arbeitstechnisch manchmal fremdbestimmt :cool:

Habe das Ganze auf einem TP177B mit 'ner 315-2DP/PN getestet. Läuft super :p

Habe im DB177 ab Byte 78 eine Variable TEST als String[20] angelegt.
Anschließend in WCCF in einem Bild ein E/A-Feld eingefügt. Variable TEST ausgewählt. Darstellungsart 'Zeichenkette' und Feldlänge auf 20 gesetzt.

Alles übertragen und dann am Panel den Text eingegeben.
Ergebnis s. Anhang.

Evtl. liegt's an der RT-Version auf dem PC :confused: Weiß nicht, ob die immer so 100% kompatibel ist. Mit PLC-Sim gibt's auch diverse Abweichungen zur "echten" CPU.
 

Anhänge

  • VAR-String.jpg
    VAR-String.jpg
    274,4 KB · Aufrufe: 12
  • TP-String.jpg
    TP-String.jpg
    67,5 KB · Aufrufe: 6
Das Eingabefeld steht per default auf Zahlen, hast Du das in String geändert ?
Bei mir läuft das ohne Problem, im Anhang mein Test
 
Zuletzt bearbeitet:
Zurück
Oben