WinCC 11 und Step 5.5

Sisu

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

Versuche gerade die HMI über das TIA Portal zu erstellen. Das SPS Programm habe ich bereits in Step 7 5.5 geschrieben.

Nun muss ich ja das Ganze mit externen Variablen erstellen, da die beiden Programme nicht miteinander arbeiten.

Mein Vorgehen im TIA Portal:

1. Verbindung erstellt zur SPS
2. Variablentabelle erstellt für die Kommunikation
3. Variable erstellen

Wenn ich nun eine Variable habe, die als STRING deklariert ist und auf eine DB zugreift, müsste ich doch im Tabellenfeld "Adresse" folgendes eingeben können: DB108.DBB256.
Ich kann dort zwar die DB angeben, aber nur Bit zum Beispiel: DB108.DBX0.1

In der Hilfe habe ich auch bereits geschaut, aber irgendwo muss ich doch das ändern könnne? Oder mache ich einen Überlegungsfehler?

Danke für eure Hilfe
 
Wenn ich nun eine Variable habe, die als STRING deklariert ist und auf eine DB zugreift, müsste ich doch im Tabellenfeld "Adresse" folgendes eingeben können: DB108.DBB256.
Ich kann dort zwar die DB angeben, aber nur Bit zum Beispiel: DB108.DBX0.1


Das erste Byte eines STRING ist die Max-Länge
Das zweiteByte eines STRING ist die Ist-Länge
Das dritte Byte eines STRING ist das erste Zeichen (Byte)

Daher ist die Angabe DB108.DBB256 nicht der String als solches.

Wenn man innerhalb der SPS ganze STRING kopiert macht man das über Anfangspointer und Länge: P#DB108.DBX256.0 BYTE20

Da ich nicht weiß, welchen Kommunikationskanal du verwenden willst, kann ich aber nicht genauer antworten.
 
Danke für deine Antwort


Kommunikation ist Profinet und als Kommunikationstreiber habe ich folgendes eingestellt: SIMATIC S7 300/400

Das mit der String ist mir bewusst, aber ich bin von folgendem ausgegangen:

Da bereits ein Panel läuft und dies mit WINCC flexible programmiert wurde, habe ich dort in der Variablentabelle geschaut und dort stand eben oben genanntes Beispiel.

Jetzt kommt ein weiteres Panel und dies wird in TIA programmiert, dort kann ich aber bei der Adressierung in der Variabellentabelle beim Datentyp STRING nur ein Bit angeben.

Also Frage ich mich jetzt, welches Bit vom String ich angeben muss oder eine andere Lösung wählen?

Habe ein Printscreen hochgeladen!Unbenannt.JPG
 
Also Frage ich mich jetzt, welches Bit vom String ich angeben muss ...

Entweder du musst das Startbit ........DBX256.0 des Gesamtstrings nehmen oder - zwei Byte weiter - das Startbit des ersten signifikanten Zeichens, also DBX258.0 - das sind beides Varianten, die ich probieren würde.

Für die Längenangabe muss es noch irgendwo ein anderes Eingabefeld geben.
 
Zuviel Werbung?
-> Hier kostenlos registrieren
test.jpg
Mache mal einen Rechtsklick auf den oberen Bereich in der Variabelntabelle wo die Bezeichnung der Spalte ist

und blende die Spalte Länge ein. Die ist bei String nämlich variabel und ist vielleicht die Lösung.
 
Danke für eure Hilfe

Also so wie es aussieht, muss ich das erste Bit des Strings angeben.

Die Länge des Strings kann man auch unter Eigenschaften anschauen.
 
Also wir merken uns, es ist wie ein Pointer, d.h. Startbitadresse und Längenangabe. Durch den Typ STRING wird automatisch das dritte Byte als erstes darstellbares Zeichen dargestellt. ;-)
 
Zurück
Oben