Multiplexproblem bei DP

Outrider

Level-1
Beiträge
745
Reaktionspunkte
5
Zuviel Werbung?
-> Hier kostenlos registrieren
Hallo,
folgendes Problem:
Ich habe ein Kühlaggregat der am Profibus hängt.
Es werden immer 6 Worte geschrieben und gelesen
Wort 1 ist bitweise codiert.
Wort 2 bis Wort 6 wird durch verschiedene Datensätze beschrieben und gelesen, d.h. über das selbe Wort werden verschieden Werte(Funktionen) bearbeitet.
Um zu entscheiden welcher Datensatz gerade gültig ist gibt es in Wort 1 zwei Bits ( entspricht also 4 Kombinationen ) mit deren Kombination ich 4 verschidene Datensätze ( Telegramme ) wählen kann.

Mein Problem ist die Abarbeitung,
die Werte werden über ein OP277 geschrieben und gelesen, d.h sie sind permanent in diesem DBW der auf diese Worte 2-6 schreibt.
Wenn ich nun aber einen Wert ändern möchte der sich im anderen Datensatz befindet so muß ich über die 2 Bits den Datensatz ändern.

Irgendwie muß ich doch zeitgleich den gewünschten Wert und die beiden Bits ändern !!...oder ?

Wenn ich den Wert ändere aber das Umschaltbit erst im nächsten Zyklus ändere dann wird der Wert in den falschen Datensatz geschrieben weil vor dem Umschalten der Bits immer noch der erste Datensatz gewählt ist.

Das Problem gilt aber auch anders rum, wenn ich vorher die Bits umschalte dann geht der bestehende Wert in den anderen Datensatz befor er geändert wird.

Ich hoffe dass ich das Problem verständlich beschrieben habe.

Wer kennt sich aus
Gruß und Danke für Infos
 
Hallo Outrider.
die frage ist ja wer ist die Mutter für deinen Zeiger umd die daten zu
lesen, ist es das OP oder kümmert sich die CPU darum.

Ist es das OP, kannst du für jedes aggregat eine eigene Bildschirmseite
machen und beim aufschlag der Seite deinen Zeiger entsprechend stellen.

In der CPU ist dieser Zeiger aber sinnvoller weise aufgehoben, dann mußt
du dir eine Routine bauen wo du die Aggregate nacheinander ausliest bzw.
beschreibst und dann in Variablen zwischenspeicherst. Dann kannst du
jedes Aggregat im OP gleichzeitig beobachten und bedienen.

gruß helmut
 
Zuviel Werbung?
-> Hier kostenlos registrieren
Hallo,
ich würde hier so vorgehen :
Für die entsprechenden Abfragen einen Baustein (oder mehrere Bausteine) in der SPS erstellen, die die jeweils abgefragten Daten gemäß ihrer wirklichen Funktion in einen DB schreiben. Diese Daten kannst du dann ausgeben.

Willst du deinem Teilnehmer Daten übergeben (im Sinne von "neuen Sollwert setzen"), so würde ich dies genauso machen. Du hast eine Sollwert-Eingabe und auf dem Bediengerät eine Taste "Sollwert setzen", der dann eine entsprechende Funktion in der CPU anstößt.

Die CPU hat keine Schwierigkeiten mehrere Dinge gleichzeitig zu schreiben (das wird dein Bediengerät NIEMALS zuverlässig schaffen) und selbstverständlich kann sie die Toggelbits entsprechend ihrer logischen Folge natürlich auch korrekt bedienen ...
Denk mal drüber nach ...

Gruß
LL
 
Zurück
Oben