Vakuumpumpe mit Wertspeicherung

Hallo, ich bin neu hier und kenne mich nicht besonders stark mit arduino aus und benötige deswegen Hilfe.
Es geht um ein Programm, welches über einen Start Taster oder einen Touchpanel Taster gestartet werden soll. Nach Betätigung soll eine Vakuumpumpe gestartet werden bis zu einem bestimmten Wert (55mbar) währenddessen soll der Wert dauerhaft ausgelesen und auf einem Display angezeigt werden. Die Vakuumpumpe soll bei 55 mbar abschalten und ein Timer starten welcher alle 60 Sekunden einen Wert speichert. Wenn nach 5 zusammen gerechneten Werten der Wert und 0,66 mbar ist soll das Programm beendet werden, oder nach 10 Werten unter 1,33 mbar. Wird ein 11 Wert benötigt soll der erste überschrieben werden. Abbruch des Programms wäre nach 20 Werten, wenn man dann nicht im passenden Bereich ist.

Könnte mir da jemand helfen oder Tips geben wie man das realisiert?

Mfg Paulsen

Dann solltest du erst mal das Beispiel "Blink Without Delay" durchgehen und verstehen lernen.

Wenn du weist wie das mit millis() - previousMillis funktioniert, ist es ein leichtes deine if-Anweisungen in den Code zu bringen.

Eigentlich eine typische Statemachine mit Abbruchbedingung(en)
Was passiert ab Wert 11 mit der Auswertung? Wird dann erst bei 15 und 20 geprüft oder ab 11 laufend bis zum Abbruch?
Welcher Wert muss dann erreicht werden 1.33?

Ansonsten kein Hexenwerk.

Was ist mit der ganzen Hardwareproblematik?

Was ist das für eine Pumpe, wie soll die geschaltet werden?

Wer misst den erzeugten Druck, und wie kommt man an die Information?

Außerdem, wie können Werte von 1,33 mbar jemals erreicht werden,
wenn die Pumpe bei 55 mbar abgestellt wird?

Hallo,
Was für einen Druckaufnehmer hast du denn, Messbereich , Ausgangsgröße.

Mit deiner Logik und den damit verbundenen Bedingungen bin ich auch noch nicht ganz klar.

Was verstehst du darunter , einen Mittelwert?
Heinz

Ich ahne da ein Rolling Average mit 10 Elementen.

Hallo
Ja würde ich auch annehmen . Allerdings wird es da immer irgendwelche Leakagen geben und wenn die Pumpe aus ist wird der Druck langsam wieder ansteigen. Da macht ein Mittelwert über 10 Minuten nicht viel Sinn
Heinz

Mein Problem ist eher, wie der Druck jemals so niedrig werden kann,
scheint sich also um Leakage in ein Vakuum zu handeln.

Bei einer Luftschleuse zur ISS macht das ja auch Sinn,
mit einer Vakuumpumpe das Gas in die ISS zu befördern,
ehe man die Außentür der Schleuse öffnet.
Dann zischt es auch weniger. :grinning:

Die Werte kommen über ein Drucktransmitter an den Eingang, und die Werte sollen so sein das der Anstieg des Vakkums gemessen werden soll also zum Beispiel am Anfang 55mbar und nach 1min 55,6 mbar dann soll der Wert 0,6 gespeichert werden als Anstieg und damit kann man auf die 0,66 bzw. 1,33 mbar kommen und die Werte sollen ab 11 nicht pausieren sondern immer weiter also 12 13 etc.

wenn ich das richtig verstehe, hast du eine Maschine die

auf einem Tastendruck wartet (IDLE)
dann etwas tut (PUMPEN)
dann etwas misst (MESSEN)

bis daher war es eine nette State Machine.
Abgesehen davon dass du noch definieren musst wodurch MESSEN beendet wird, oder welche Aktionen darin vorkommen sollen,
solltest du auch definieren Mit welcher Aktion du aus MESSEN rauskommst und in welchen Status deine Maschine dann geht.

ZEICHNE dir deine Maschine.
Wenn du es vollständig zeichnen kannst, kannst du auch es auch programmieren (oder jemanden übergeben, der programmieren kann).

Man kann auf einem Blatt Papier anfangen.