BS (Bit-String), Darstellung im DB SPS S7?

Taddy

Level-2
Beiträge
291
Reaktionspunkte
34
Zuviel Werbung?
-> Hier kostenlos registrieren
Ist Stand:
SPS S5 135 mit CP 5431(FMS) mit Fremd-PC verbunden. Es ist nur ein Telegramm parametriert.
Datentyp BS 416 (BS = Bit String, 416 = 26 DW)
Meine Frage.
Gestern habe ich S5 durch S7 300 mit FMS CP ersetzt, Verbindung aufgebaut. Alles OK. Aber, wie soll mein DB unter SPS S7 aussehen? Wie kann ich Bit-String definieren?
Ich habe versucht Array mit Char. Die Datenlänge im DB stimmt natürlich. Unter Steuer-Variable Bits gesetzt (DW als binäre Darstellung), das Ergebnis. Bit 0 = Meldung mit Nummer 0, Bit 1 = Meldung mit Nummer 2, Bit 2 = Meldung mit Nummer 3. Manche Meldungen kommen nicht durch.
Unter S5 funktioniert alles. Wo mache ich Fehler?

Ich bedanke mich für Eure Vorschläge
 
Hallo,
ein Bit-String ist für mich ein ARRAY_of_BOOL und das ist dann auch 26 Datenworte lang bei 416 Bits.
Vielleicht versuchst du das mal ...

Gruß
Larry
 
Zuviel Werbung?
-> Hier kostenlos registrieren
Hallo,
danke für die schnelle Antwort. Ein FMS Telegramm darf maximum 255 Einträge haben (d.h. ARRAY_of_BOOL 416 ist leider zu lang ). Ich brauche 416 Bits. Gibt es vielleit Formatwandler IN -> String? aber ohne Vorzeichen, wie in Siemens Bibliothek?
 
:confused: ich verstehe dein Problem gerade nicht. Du verschickst einfach die 26 Worte und interpretierst sie in der Steuerung als 416 Bits (in dem Array z.B.) - weil die 416 Bits ja schlußendlich und tatsächlich in eben den 26 Worten landen ...

Gruß
Larry
 
Hallo,
danke für die schnelle Antwort. Ein FMS Telegramm darf maximum 255 Einträge haben (d.h. ARRAY_of_BOOL 416 ist leider zu lang ). Ich brauche 416 Bits. Gibt es vielleit Formatwandler IN -> String? aber ohne Vorzeichen, wie in Siemens Bibliothek?
Es ist Scheissegal als was du 416 Bits schickst,
416 Bits sind 416 Bits oder 52 Bytes, oder 26 Wörter oder 13 Doppelwörter.

Grundlagen? :confused:
 
Zuviel Werbung?
-> Hier kostenlos registrieren
Hallo,
ein FMS Telegramm muss vollkommen identisch von beiden Seiten parametriert sein. Mein DB muss eine feste Länge und Format haben. Ich finde nichts (unter S7), was man Bit String nennen kann.
 

Anhänge

  • FMS_.doc
    120,5 KB · Aufrufe: 10
  • FMS_2.doc
    33 KB · Aufrufe: 8
Zuletzt bearbeitet:
Hallo,
ich beziehe mich mal auf dein Bild "FMS_2.doc".
Darin lese ich, dass die Übertragung von DB150 - DW1 erfolgt mit der Anzahl von Worten, die in MW104 hinterlegt ist.

Was meintest du da jetzt ? Ein Bit-String ist (für mich) die nachfolgende Interpretation der Daten ...

Gruß
Larry
 
Hallo,

Bild FMS_2 = Sinec-NCM, Tool für FMS-Variable unter S5

Index 150 = das Datenpaket (in dem Fall DB) wird mit Index 150 "markiert"
Typ BS 416 = Bit String in Anzahl von 416 Bit (26 DW)
ZGRF RA = Zugriffrechte, nur lesen ohne Passworteingabe
S5-Adresse DB 150 1 = Daten liegen im DB 150 ab DW 1
ANZW MW 104 = in dem MW befindet sich Auftragstatus

Das sind Einstellungen in S5 135 (CP 5431). Das Programm funktioniert seit vielen Jahren.
Meine Aufgabe ist, die SPS S5 durch eine S7 zu ersetzen. Kommunikationstrecke habe ich aufgebaut. Beide Teilnehmer sehen sich. Alle Busparameter ok. Aber, gesteuerte Bits (von meiner Seite) bringen falsche Meldungen aufs Handy. Zu jedem Bit ist eine Störungsmeldung zugeordnet. Ich habe schon mit DW als INT, CHAR, STRING ausprobiert.
Aus dem Grund meine Frage. Was soll man unter Bit String verstehen?
 
Zuviel Werbung?
-> Hier kostenlos registrieren
Aus dem Grund meine Frage. Was soll man unter Bit String verstehen?

Siehe dazu bitte meinen Beitrag #2 in diesem Thread und als Vorschlag für das weitere Vorgehen meinen Beitrag #4.
Es ist doch vollkommen egal ob du 416 Bits in Folge überträgst oder 26 Worte oder oder ... (siehe auch Beitrag #5 von Zefix).

Gruß
Larry
 
S5-Adresse DB 150 1 = Daten liegen im DB 150 ab DW 1
[...]
Aber, gesteuerte Bits (von meiner Seite) bringen falsche Meldungen aufs Handy. Zu jedem Bit ist eine Störungsmeldung zugeordnet.
[...]
Was soll man unter Bit String verstehen?
Diesen Zusammenhang hast Du beachtet?
S5: DB150 DW1
S7: DB150 DBW2

Der Bit-String beginnt also in der neuen S7 bei DB150.DBX2.0 und ab dieser Adresse beginnt auch das FMS-Telegramm.

Wie Larry schon in #2 schrieb: ein Bit-String ist ein ARRAY OF BOOL.
Den DB150 würde ich etwa so aufbauen:
Code:
[ +0.0] Irgendwas  WORD
[ +2.0] Meldebits  ARRAY[0..415]
[ *0.1]            BOOL
[+54.0] ...

Harald
 
Zurück
Oben