# Frage zu Statusauswertung mehrerer Umrichter



## S_Liner (3 August 2021)

Hallo zusammen, ich wollte mal fragen wie Ihr so die Auswertung mehrerer Umrichter handhabt. 
Ich bin da noch nicht so ganz glücklich mit meiner Lösung. Meine ist gefühlt zu aufwändig und unflexible. Ich schaue welcher Umrichter (5 im System) sein Fehlerbit setzt, lese dann den Status des Umrichters aus. 




So, da ich 5 Umrichter habe , muss ich allein dieses Netzwerk noch weiter 4x schreiben, damit ich für alle Umrichter den Fehler Übertemperatur erzeugen kann.  
Zudem haben die Umrichter, in diesem Fall SEW MDX61B, ja nicht nur einen Fehlerstatus. 

Ich arbeite mit einer S7315-2DP und dem Simatic Manager V5.6.

Wie macht ihr da so?

Beste Grüße


----------



## Blockmove (3 August 2021)

Ich hab für den MDX nen FB. Da ist das Fehlerhandling mit drin


----------



## S_Liner (3 August 2021)

Ah ok,ja das klingt gut. 

Vielen Dank


----------



## DeltaMikeAir (3 August 2021)

Dito, bei vielen gleichen Umrichtern setze ich eine FOR Schleife über meinen Baustein und arbeite
so alle Umrichter nacheinander ab. Vorraussetzung ist natürlich dass man alle Daten- E/A Bereiche 
symbolisch "vernünftig" über Arrays belegt.


----------



## S_Liner (4 August 2021)

OK, könntest du mir da mal was zeigen? Nur als Beispiel zur Anregung vielleicht? 
Sowas strebe ich auch an, aber so richtig kriege ich den Gedanken nicht ins rollen.. 

Beste Grüße


----------



## Blockmove (4 August 2021)

DeltaMikeAir schrieb:


> Vorraussetzung ist natürlich dass man alle Daten- E/A Bereiche
> symbolisch "vernünftig" über Arrays belegt.


Du bringst mich damit auf ne Idee ... UDTs für die Umrichter EAs habe ich schon lange.
Also einfach noch ein Array of UDT. Mal schauen ob's dadurch noch einfacher wird


----------



## DeltaMikeAir (4 August 2021)

> Also einfach noch ein Array of UDT. Mal schauen ob's dadurch noch einfacher wird


Genau so mache ich es, dann kann man auch schön symbolische Schleifen drüber legen.
Das ist gerade bei Förderanlagen bei uns interessant mit zahlreichen Umrichtern.
Spart halt viel Code, funktioniert und man eliminiert viele Fehlermöglichkeiten durch Tippfehler usw..


----------



## ADS_0x1 (4 August 2021)

Wenn es immer der gleiche Umrichter ist, dann kann man auch ein Array of UDT machen, in das man per RDREC /GETIO udgl. per einfach übergebener HW Konstante die Werte schreibt bzw. den anderen Weg in die Komponente. Dann brauchst du nur einen FB zu machen, an dem du die HW ID anfügst und als IO deine Prozessparameter.


----------



## s_kraut (5 August 2021)

Ich hab da eher den objektorientierten Ansatz. Jede Anlage hat ihre Maschinen, jede Maschine hat ihre Antriebe und jeder Antrieb hat (möglicherweise) seinen Umrichter. Als Instanz-DB.
Schaut man halt regelmäßig durch Anlage, Maschine, Antriebe, FU und aktualisiert die Stati und gibt die neuen Befehle raus.
Da brauch ich keine FOR-Schleifen und Arrays dafür, viel zu fehleranfällig.


----------



## Holzmichl (5 August 2021)

Bei SEW und Siemens FU mit Feldbus werte ich meistens "nur" das Störungsbit aus und bilde am HMI eine Meldung mit Textliste, bei der die Fehlernummer vom FU den anstehenden Fehler als Klartext in die Meldung schreibt. Das Ganze natürlich auch als Inhalt vom UDT mit Auswertung über FC und HW-Adresse.
Bei FB gefällt mir nicht, dass ich entweder auf den Instanz-DB zugreifen oder doppelt nach dem FB mit IDB die relevanten Daten auf einen extra DB kopieren müsste.


----------



## TheLevel (5 August 2021)

Ich habe einen FB pro FU und da hängen dann zwei Strukturen dran: Parameter und Prozessdaten. Die haben dann schöne aussagekräftige Namen und wenn es mal in einer Station für eine Funktion mehrere FUs gibt, dann kommen bei mir erst arrays zum Einsatz. 
An einer anderen Stelle hängt die gleiche Prozessdatenstruktur an einem Auswertebaustein, der diverse Meldungen generiert (neben den Warnungen und Störungen die direkt aus dem FU kommen auch z.B. keine Busverbindung).


----------

