Jump to content
Melde dich an, um diesem Inhalt zu folgen  
kaleun

Frage zu ->Automatische Filterung + Anzeige des Filterstatus

Empfohlene Beiträge

Habe mal versucht in meinem Filter Raum dieses Script laufen zu lassen und so lange ich nur 2 Filter laufen lasse ist auch alles ok...

Wenn ich jetzt meine anderen Filter mit laufen lassen will, muss ich da aus FilterA, FilterB etc. das in FilterC, FilterD etc. ändern ?

Ist es auch möglich da noch eine Abfrage mit einzubauen, so das die Filter erst anspringen wenn vorher ein gewisser Druck im Tank erreicht ist ?

Habe vor den Filtern einen Mix Tank der sich erstmal zum Teil füllen soll bis die Filter anspringen.

Das sollte ein ewiges an/aus springen der Filter verhindern...

 

Diesen Beitrag teilen


Link zum Beitrag

Hi,

du musst im Script selbst nichts ändern, außer das Gas das ausgewertet werden soll (z.B. RatioPollutants). FilterA und FilterB sind immer gleichbedeutend, auf die Schrauben wird in Gelb geschrieben was FilterA und was FilterB ist. Da musst du einfach deine neuen Filteranlagen einstellen. Ich hab meine Filteranlagen deswegen mit dem Labeler benannt, z.B. Filter.Oxygen oder sowas. Dann kannst du beim durchklicken sehen, welche Filteranlage gerade auf FilterA steht. Damit der Text geschrieben wird musst du das Programm einmal kurz starten, also das Gehäuse einschalten. Für die Konfiguration der Schrauben kannst du es wieder ausschalten.
Bei RatioA musst du dann das Gas einstellen, was die Filteranlage unter FilterA filtern soll / kann.

Um den Tank noch auszuwerten müsstest du ihn zusätzlich anschließen. Ich will auch noch eine Auswertung mit einbauen, die das an-/ausschalten der Filteranlagen verhindern soll. Ohne es jetzt getestet zu haben könntest du mal folgendes probieren:

alias Tank d5
alias Tank.Pressure r14

bdnsal Tank restart
l Tank.Pressure Tank Pressure
sub Tank.Pressure Tank.Pressure 100
brgez Tank.Pressure 4
s FilterA On 0
s FilterB On 0
j restart

... Rest vom Code ...

Die beiden Aliase sortierst du am Besten da ein wo sie hinpassen, d.h. den Tank ganz oben zu den Geräten und den Druck mit r14 unter den anderen Registern.

Als nächstes wird geprüft ob der Tank angeschlossen ist, ansonsten wird das Programm neugestartet, bis der Tank verbunden ist (sonst stürzt das Programm ab, weil wir den Tank als nächstes auswerten wollen).
Anschließend wird in Tank.Pressure der Druck aus dem Tank abgespeichert. Der Wert wird dann durch 'sub' abgeändert, d.h. wir ziehen von dem gespeicherten Wert 100 ab (unser Wunschdruck in kPA, also frei wählbar) und speichern das Ergebnis wieder in Tank.Pressure. Ist der Druck also genau 100 kPA ist das Ergebnis 0.
In der nächste Zeile wird das Programm neugestartet, wenn unser Wert < 0 ist, d.h. der Druck im Tank ist < 100 kPA. Schlägt die Überprüfung fehl, weil der Druck > 100 kPA ist und somit unser Wert > 0 wird, dann wird der Rest vom Code ausgeführt, deswegen sollte der Teil direkt hinter der Sprungmarke start: kommen.

bearbeitet von Phil
Fehler ausgebessert

Diesen Beitrag teilen


Link zum Beitrag

ah stimmt... weil nichts ausgeschaltet wird 😄 Hoppla, mein Fehler.

Löschen:

bltz Tank.Pressure restart

Einfügen:

brgez Tank.Pressure 4
s FilterA On 0
s FilterB On 0
j restart
[... Rest vom Code ...]

Probier es mal damit. Wir drehen einfach den Check um. Wenn unser Rechenergebnis von sub >= 0 ist (also mindestens den eingestellten Wert hat) dann wird der Rest vom Code ausgeführt (relativer Sprung 4 Zeilen weiter). Ist der Druck kleiner als gewünscht werden die Filteranlagen ausgeschaltet und zum restart:  gesprungen.

Diesen Beitrag teilen


Link zum Beitrag

Erstelle ein Benutzerkonto oder melde dich an, um zu kommentieren

Du musst ein Benutzerkonto haben, um einen Kommentar verfassen zu können

Benutzerkonto erstellen

Neues Benutzerkonto für unsere Community erstellen. Es ist einfach!

Neues Benutzerkonto erstellen

Anmelden

Du hast bereits ein Benutzerkonto? Melde dich hier an.

Jetzt anmelden
Melde dich an, um diesem Inhalt zu folgen  

×

Wichtige Information

Wir haben Cookies auf deinem Gerät platziert, um die Bedienung dieser Website zu verbessern. Du kannst deine Cookie-Einstellungen anpassen, andernfalls gehen wir davon aus, dass du damit einverstanden bist. Beachte auch unsere Datenschutzerklärung.