LabVIEWForum.de - Architektur Prüfstand: parallele Loops für Störung

LabVIEWForum.de

Normale Version: Architektur Prüfstand: parallele Loops für Störung
Du siehst gerade eine vereinfachte Darstellung unserer Inhalte. Normale Ansicht mit richtiger Formatierung.
Hallo allerseits!

ich bin gerade an der Planung für einen Prüfstand für Hydraulikpumpen.
Ich bin mir aber bezüglich der Architektur nicht sicher, daher wende ich mich hier ans Forum.

Hier eine Auflistung, welche Anforderungen der Prüfstand erfüllen muss:
- Eine Störung muss den Prüfstand in einen sicheren Zustand bringen (Not-Aus-Kreis ist zusätzlich vorhanden)
- Es müssen geregelte Werte ausgegeben werden (habe keine Erfahrung mit Regelungen in Labview)
- Eine Messanzeige der aktuellen Werte, sowie die Möglichkeit diese abzuspeichern

Ein Messprogramm, welches den letzten Punkt realisiert, gibt es schon als State Machine. Ich habe nun die Überlegung ob eine State Machine sicher genug im Störungsfall agieren kann. Nicht, dass aufgrund von irgendwelchen Problemen die State Machine in einem Case stecken bleibt und es nicht zu einem sicheren Zustand kommen kann. Die Alternative dazu wäre eine zusätzliche kleine State Machine in einem parallelen While Loop. Jedoch habe ich mit dem Queque Handler noch keine Erfahrung und wüsste nicht, wie ich die Kommunikation zwischen den Schleifen realisieren sollte.

Für den Prüfstand wurde ein cRio 9056 gekauft, wobei ich die Real-Time Funktion für diese Anwendung für zu präzise halte. Hier eine Liste der verwendeten Module:
[attachment=62581]
Nun Frage ich mich auch, ob die Datenerfassung nicht doch einfach über DAQmx erfolgen sollte. Scheint mir simpler zu sein als die Erfassung mit Real-Time- oder FPGA-Modulen.

Hier habe ich zum besserem Verständnis noch eine Mindmap des Ansatzes mit zwei parallelen State Machines angefügt:
[attachment=62582]

Wie würdet ihr so eine Aufgabe realisieren? Ist die State Machine sicher genug bzw. mit Modifikationen? Macht der parallele Loop Sinn?

Vielen Dank schonmal!
Grüße VersuchundErprobung
Hallo VuE,

Zitat:Hier eine Auflistung, welche Anforderungen der Prüfstand erfüllen muss:
- Eine Störung muss den Prüfstand in einen sicheren Zustand bringen (Not-Aus-Kreis ist zusätzlich vorhanden)
- Es müssen geregelte Werte ausgegeben werden (habe keine Erfahrung mit Regelungen in Labview)
- Eine Messanzeige der aktuellen Werte, sowie die Möglichkeit diese abzuspeichern
Das sind schon sehr allgemeine und grundlegende Anforderungen an eine Prüfstandssoftware…

Ich hatte ähnliche die gleichen Probleme an Prüfständen zu lösen, dehalb ein paar Ideen:
1. Ich habe mir eine Bufferroutine geschrieben, die alle aktuellen Werte innerhalb der Software verwaltet hat. Dies betraf nicht nur Messwerte, sondern auch Rechenwerte (z.B. von Regelalgorithmen), Benutzereingaben und Werte für die Ausgabekanäle.
2. Es gibt eine parallel laufende Schleife, die relevante Messwerte auf (benutzerkonfigurierte) Limit-Überschreitungen prüft und einen "Safety-Alert"-Status berechnet. Alle diese Werte sind im Buffer (siehe 1.) verfügbar…
3. Es gibt eine "Gatekeeper"-Routine, die im "Normalfall" die Benutzereingabe und Reglerstellwerte auf die passenden Ausgänge weitergeleitet hat. Im "Safety-Alert"-Modus wurde diese "normalen" Stellwerte dagegen geblockt und stattdessen (benutzerkonfigurierte) Werte für den "sicheren Zustand" ausgegeben.
4. Die Anzeige bedient sich aus dem Buffer, siehe 1.
5. Das Logging bedient sich aus dem Buffer, siehe 1.
6. Reglerroutinen bedienen sich aus dem Buffer und legen dort ihre Stellwerte ab…
Referenz-URLs