Fehlernummern auswerten

Bensen83

Level-1
Beiträge
777
Reaktionspunkte
3
Zuviel Werbung?
-> Hier kostenlos registrieren
Halo Leute, ich habe mal ne Frage, ich mache es in WINCC Flexible im moment so, das ich bitmeldungen übergebe um Fehler darzustellen. Kann man dies auch mit einer Integervariale darstellen und jedem Zahlenwert einen Fehler zuweisen? wenn ja, wie realisiere ich es dann, dass ich mehrere Fehler gleichzeitig darstelle?
 
Halo Leute, ich habe mal ne Frage, ich mache es in WINCC Flexible im moment so, das ich bitmeldungen übergebe um Fehler darzustellen. Kann man dies auch mit einer Integervariale darstellen und jedem Zahlenwert einen Fehler zuweisen? wenn ja, wie realisiere ich es dann, dass ich mehrere Fehler gleichzeitig darstelle?
Also ich übergebe meine Störungen immer als Array of Word.
In WinCC Flex habe ich dadurch nur eine Variable für die Störungen.
Das gleichzeitige darstellen gleichzeitiger Störungen übernimmt Flex für mich.
Kann jetzt aber auch sein das wir aneinander vorbei reden.
 
Zuviel Werbung?
-> Hier kostenlos registrieren
Ja

Ja denke, dass wir aneinander vorbei reden. ich habe jetzt auch ein array, aber ich würde gerne eine DInt Variable haben, die ich auch im SPS Programm nur als eine Variable benutze. und mir so immer nen fehlercode von den Bausteinen zurückgeben lasse. also nen RetValue
 
Hallo,
da wirst du dann wohl einen Fehler-Puffer bauen müssen, in dem du (wie z.B. beim Tastatur-Puffer) die erste freie Stelle suchst und dort deinen Fehler-Code hineinschreibst. Die Puffergröße sollte dann so groß gewählt sein, dass die maximal erwartete Anzahl von Meldungen dort hinein passt.

---

Die Bit-Meldung macht das auch so - für jede Meldung gibt es ein eigenes Bit ...

Gruß
LL
 
Ja denke, dass wir aneinander vorbei reden. ich habe jetzt auch ein array, aber ich würde gerne eine DInt Variable haben, die ich auch im SPS Programm nur als eine Variable benutze. und mir so immer nen fehlercode von den Bausteinen zurückgeben lasse. also nen RetValue

Scheint ein interessanter Ansatz, sofern du nicht im DINT eine Bitauswertung vorhast, denn dann müsstest du eigentlich DWORD benutzten und hast auch wieder den Ärger mit LowByte/HighByte gedreht:rolleyes:.
 
Zuviel Werbung?
-> Hier kostenlos registrieren
Hallo,

mit einer Analogen Variable kannst Du immer nur einen Alarm zur gleichen Zeit generieren! Ein Baustein kann aber auch nur ein momentanes RetVal zurückgeben. Du müsstest halt für jeden Bausteinen eine Alarmvariable anlegen, dann gehts.
Für eine Datailierte Anzeige mehererer Alarme gleichzeitig kommt man um Bits nicht rum. Ist nur äusserst lästig daß man bei WinCC Flexible "Bitmeldungen!!!" nicht auch auf Bits verschalten kann wie sich das gehört sondern sich immer mit Wörtern rumärgern muss (Bytetausch!).
 
Ich hab das jetzt nicht ausprobiert, aber du könntest eine Textliste erstellen die die Fehlercodes enthält und für jeden Bausteine eine Analogmeldung deklarieren mit der Grenze 1 und steigender Flanke (wenn der Wert 0 = alles ok ist) dann poppt die Meldung auf und durch die Textliste in der Analogmeldung kannst du den Fehlercode ausgeben
 
Zurück
Oben