Multiplexen von Datenmengen

Riba

Level-1
Beiträge
9
Reaktionspunkte
0
Zuviel Werbung?
-> Hier kostenlos registrieren
Moin,
Ich habe ein Problem:
Ich soll Daten über den Bus senden, muß aber dabei ein Nadelöhr überwinden was es Datenmenge und Konsistenz betrifft.
Die Lösung heißt "Multiplexen" !
Wie kann ich größere Daten z.B. aus einem DB über den Bus zu einem Teilnehmer in einen anderen DB transportieren ?
Wenn die Daten zerstückelt werden muß ja irgendwie das Ganze auch wieder zusammengesetzt werden, die Pakete müßen ja identifiziert werden.
Gruß
 
Zuletzt bearbeitet:
Kannst Du etwas genauer erlären, was Du vorhast.
Welcher Bus?
Wieviele Daten?
Konsitenz über welche Breite?
:confused:
Gruss Audsuperuser
 
RE:Multiplex

Es sind zwei 315er mit je einem CP 343-1 lean.

Mir geht es prinzipiell um die Realisierung eines Multiplexbetriebes, wie so was programmiert wird, vielleicht gibt es da Standardlösungen FC's oder irgendwelche Links.
Grüß
 
Zuviel Werbung?
-> Hier kostenlos registrieren
In den Unterlagen deiner CPs siehst du die technischen Begrenzungen usw, wieso willst du überhaupt multiplexen , kannste den Kram nicht aufteilen und verschicken. Kennst du dich mit Datenaustausch per Ethernet denn aus?Programmbeispiele hier im Forum oder auf der Siemens Seite gibts genug.

Wichtig auch noch zu wissen wie relevant die die Daten sind und in welchem Zeitraum sie verschickt werden sollen.
 
... um dem Ganzen mal eine andere Richtung zu geben ...

Ein auf diese Weise gesendetes Telegramm ist in sich auf jeden Fall schon mal konsistent. Es wird übertragen oder nicht übertragen (irgendein Fehler).
Willst du mehrere Telegramme verschicken (nacheinander) und sicherstellen, dass sie zusammengehörig verschickt wurden, dann könntest du ein Byte des Übertragungsblocks zum Kennbyte ernennen. Erst wenn alle übertragenen Blöcke das gleiche Kennbyte haben, dann ist die Übertragung vollständig. Für die nächste Übertragung erhöhst du dann das Kennbyte um 1.
Vielleicht macht es auch Sinn, hier über einen Wechselpuffer nachzudenken - jede ungerade Übertragung geht in DB x und jede gerade Übertragung in DB y.

Gruß
LL
 
Meltiplexen

Ich würde 2 FB (oder FC, je nach Wunsch) Der Sende-FB teile die zu sendenden Pakete in die gewünschte Blockgröße auf und sendet ein Paket. Ein solches Paket enthält dann einen Header, der z.Bsp. die DB-Nummer, das Startbyte und nochmal die Länge enthält. Das gesamte Paket übergibt man ganz normal dem Sendebaustein, schickt es ab und wartet auf eine Empfangsquittung, wenn gewünscht. Der Empfangs-FB in der anderen SPS bekommt ein empfangenes Paket vom Receivebaustein, wertet diesen Kopf aus, und sortiert dann die Daten in den gewünschten DB ein, bei Bedarf sendet er eine Quittierung an die Sende-SPS, bestehend aus dem empfangenen Header z.Bsp. Danach geht es mit dem nächsten Paket weiter.
 
Zurück
Oben