Drucktest

Messi90

Level-1
Beiträge
35
Reaktionspunkte
0
Zuviel Werbung?
-> Hier kostenlos registrieren
Hi,
ich habe mal wieder eine Frage an euch. Ich würde gern für mein Projekt einen Drucktest durchführen. Dieser Test soll aus drei Phasen bestehen, welche manuell durch jeweils einen Button anwählbar sein soll. Druckaufbau, Druckprüfung und Druckabbau. Diese Drei Phasen sollen durch ein Diagramm optisch visualisiert werden. Jeder der drei Phasen besteht aus einer seperaten Kurve.

Eckdaten: Ich programmiere in Fup mit Codesys 3.5.6 und visualisiere mit Galileo 10.0.2 von Eaton. Steuerung: XV303, Drucktransmitter: 4...20mA0...1,6 bar

So und nun mein Problem:
Im Galileo ist es leider nicht möglich einzelne Kurven an- oder auszuschalten. Sprich, ich kann meine drei Phasen nur in drei Diagramme gleichzeitig darstellen.
Vielleicht habe ich nur einen Denkfehler aber wie kann ich meinen Real-Wert des Drucksensors in drei aufteilen und diese seperat abfragen? Ich hätte gern jeweils eine boolsche Variable zum aktivieren und deaktiveren der Druckwerte aber da es sich hierbei um einen Real-Wert handelt wird dies ja nicht möglich sein, oder?
Mit einer solchen boolschen Variable wäre es mir widerum möglich, im Graphen die Kurven einzeln zu starten/stoppen.

LG Messi
 
Wieso du hast 3 Bits.Mit denen erzeugst du die 3 Werte für die 3 Zustände.Die Zahl zeigst du mit an.

1=Druckaufbau
2=Druckprüfung
3=Druckaufbau.

In Abhängigkeit von deinem Bit schiebst du die Werte in eine Variable und zeigst es mit an.
Drunter noch eine legende was die Zahl bedeuted.
 
Zuviel Werbung?
-> Hier kostenlos registrieren
Also so ganz verstehe ich nicht wie du das meinst. Kannst du mir das vllt als Programmcode zeigen?

Anbei der Programmabschnitt vom Drucksensor.
Mir ist nun hier nicht klar wie ich den Wert "Druck" auf drei Variablen geschrieben bekomme und diese ein- und ausschalten kann.
 

Anhänge

  • druck.png
    druck.png
    6,5 KB · Aufrufe: 18
Du hast gesagt du hast pro Druckzustand ein Bit.
Ich habe kein Logo.

Du schiebst mit dem Move befehl jeweils in Abhängigkeit von dem jeweiligen Bit 1 oder 2 oder 3 in eine Integervariable.
Diese Integervariable nimmst du mit in den Trend.einen Trend.Eine trendvariable für den Druck und eine in welchem Zustand du bist.Dann hast du einen Trend.
Wenn man den Trend dann anschaut weiss man wenn die Trendvariable "Druckszustand" auf 1 steht das du im Druckaufbau bist.
Die legende schreibst du darunter.

Wieso brauchst du da 3 Trend-Kurven?
 
Anbei mal eine Grafik wie das Ganze am Ende aussehen sollte.

Wohlgemerkt, ich nutze keinen Trend im Codesys sondern die Visu von Galileo. Dabei ist es nicht möglich mit einer Variable 3 Kurven zu zeichnen.

Momentan habe ich auch noch kein Druckzustand. Mir ist noch unklar wie ich den Druckzustand programmieren soll.
 

Anhänge

  • Unbenannt30.png
    Unbenannt30.png
    36,3 KB · Aufrufe: 17
Zuviel Werbung?
-> Hier kostenlos registrieren
Ich habe zwar nur CoDeSys 2.3, aber du könntest den "MOVE"-Befehl nutzen, oder es in AWL mit Sprüngen programmieren:
Code:
VAR
 x_Aufbauphase     :BOOL;
 x_Pruefphase      :BOOL;
 x_Abbauphase     :BOOL;
 r_Istdruck       :REAL;
 r_Druck_Aufbauphase   :REAL;
 r_Druck_Pruefphase    :REAL;
 r_Druck_Abbauphase   :REAL;
END_VAR

 LD  x_Aufbauphase
 JMPCN M001

 LD  r_Istdruck
 ST  r_Druck_Aufbauphase

M001:

 LD  x_Pruefphase
 JMPCN M002

 LD  r_Istdruck
 ST  r_Druck_Pruefphase

M002:

 LD  x_Abbauphase
 JMPCN M003

 LD  r_Istdruck
 ST  r_Druck_Abbauphase

M003:



Jan
[h=4][/h]
 
Ich versuche die Problematik noch mal genauer zu schildern, da ich mich wahrscheinlich oben nicht so gut ausgedrückt habe:

Die Messkurve wird in verschiedenen Farben dargestellt, abhängig davon welche Phase des Tests gerade abläuft. Dabei erscheint in der Legende ein Eintrag erst wenn die Phase angelaufen ist, d.h. vor dem Start eines Tests ist die Legende leer.
BlauVorfüllen
RotPrüfen
GrünDruckabbau
Start Vorfüllen

Durch drücken dieses Knopfs wird die Aufzeichnung der Daten gestartet.
Der Bediener füllt manuell mit Druckluft. Dabei wird der aktuelle Druck immer angezeigt. Nach Ablauf der eingestellten Vorfüllzeit (fehlt hier im Bild!) startet automatisch die nächste Phase.
Start Prüfung

Falls der geforderte Prüfdruck bereits vor Ablauf der Vorfüllzeit erreicht ist kann mit dem Knopf <Start Prüfung> die eigentliche Druckprüfphase auch manuell gestartet werden.
Ansonsten startet die Prüfung nach Ablauf der voreingestellten Vorfüllzeit. Ab jetzt wird die bereits verstrichene Prüfzeit angezeigt.
Start Druckabbau

Nach Ablauf der Prüfphase wird automatisch die Aufzeichnung des Druckabbaus gestartet. Der Bediener muss ab diesem Zeitpunkt manuell die Luft entleeren. Diese Phase muss manuell beendet werden
Prüfung Ende

Die Druckprüfung muss manuell beendet werden mit dem Knopf <Prüfung Ende>.

Im Anhang noch mal ein Bild dazu. So sollte es verständlich sein

Vielen Dank für eure Hilfe!
 

Anhänge

  • Unbenannt31.png
    Unbenannt31.png
    38,5 KB · Aufrufe: 10
Zuletzt bearbeitet:
Zurück
Oben