Go Down

Topic: Led bei Tasten druck an und nach Verzögerung aus. (Read 2060 times) previous topic - next topic

Doc_Arduino

#45
Nov 29, 2019, 11:34 pm Last Edit: Nov 29, 2019, 11:38 pm by Doc_Arduino
Hallo,

wie kann man mit einem Schwimmer eine Hysterese einarbeiten?

Noch eine Frage.
Der Schwimmer schaltet ja irgendwann wieder um während des pumpens.
Ab wann sollen die 60s zählen?
Sofort oder erst wenn der Schwimmer sagt voll?
Wären dann entweder sturr 60s oder 60s nachpumpen wenn voll.
Tschau
Doc Arduino '\0'

Messschieber auslesen: http://forum.arduino.cc/index.php?topic=273445
EA-DOGM Display - Demos: http://forum.arduino.cc/index.php?topic=378279

Diter

Also der Schwimmer kann nur an oder aus quasi ein taster oder schalter und wenn der betätigt wird soll halt für eine gewisse zeit bsp 60sec die pumpe laufen.

Da es noch ein versuchs aufbau ist sollte halt auch nur einmal durchlaufen, dan halt wieder beim neu Start.

Doc_Arduino

Hallo,

gut, dann auf die ganz einfache Art und Weise.
Wenn der Arduinopin vom Schwimmer "LOW" sieht passiert nichts.
Wenn er "HIGH" sieht dann laufen einmalig xx Sekunden bis zum Reset.

Code: [Select]

// https://forum.arduino.cc/index.php?topic=649965.30

const byte pinSchwimmer = 9;      // zu GND verbunden wenn geschlossen, unterbrochen wenn ausgelöst
const byte pinPumpe = 10;
bool safety = false;
unsigned long einschaltzeitPumpe;

void setup()
{
  pinMode(pinSchwimmer, INPUT_PULLUP);
  pinMode(pinPumpe, OUTPUT);

  if (digitalRead(pinSchwimmer) )    
  {
    einschaltzeitPumpe = millis();  
    digitalWrite(pinPumpe, HIGH);
  }
  else
  {
    safety = true;
  }
}

void loop(void)
{
  if (!safety)
  {
    schaltePumpe(5000);
  }
}


// ****** Funktionen ******

void schaltePumpe (const unsigned long zeit)
{
  if (millis() - einschaltzeitPumpe >= zeit)
  {
    digitalWrite(pinPumpe, LOW);
    safety = true;
  }
}
Tschau
Doc Arduino '\0'

Messschieber auslesen: http://forum.arduino.cc/index.php?topic=273445
EA-DOGM Display - Demos: http://forum.arduino.cc/index.php?topic=378279

Diter

Hi, Ja vom Prinzip so ähnlich wie zu Anfang gemacht, aber leider ohne Funktion.
Wenn Ich den Pin 9 an GND lege und den Arduino Starte ist das Relais für die Pumpe schon permanent betätigt und schaltet auch nicht ab :/

postmaster-ino

Hi

Etwas mitarbeiten darfst Du hier aber durchaus auch.
Was passiert, wenn Du dem Relais-Pin statt HIGH LOW anbietest?

MfG
Dein Problem, Dein Sketch, Deine Bilder.
Ob ich ohne Diese an Deinem Problem arbeiten will, entscheide aber immer noch ich.
Große Buchstaben? Immer wieder, neben Punkt und Komma, gerne gesehen.

Diter

Das habe Ich schon getestet dann ist der effect umgedreht immer aus.

Doc_Arduino

Hallo,

das kann doch langsam alles nicht mehr wahr sein.

Wenn der Pin 9 auf GND liegt, also Schwimmerschalter geschlossen, dann soll nichts pumpen. Richtig?

Dann wäre dein Relais "low" aktiv. So wie das viele Relaisboards machen.
Dann musste wie postmaster schreibt die Logik umdrehen.
Also das High/Low der beiden Zeilen
digitalWrite(pinPumpe, xxx)
vertauschen.

Wenn du dann schreibst es ist damit immer aus, dann ist das doch genau das was du wolltest.
Signal auf GND ... es pumpt nicht.
Legste das Signal auf High, pumpt es für 60s nach Reset.

Ansonsten hätte ich jetzt eine Spannungsmessung von dir.

Welche Spannung liegt am Pin 9 wenn nicht gepumpt werden soll?
Welche Spannung liegt am Pin 9 wenn gepumpt werden?

Welche Spannung muss am Relais anliegen damit die Pumpe nicht läuft?
Welche Spannung muss am Relais anliegen damit die Pumpe läuft?

Ansonsten drehen wir uns nur im Kreis. Dann wäre ich auf Grund der Fliehkraft raus.
Tschau
Doc Arduino '\0'

Messschieber auslesen: http://forum.arduino.cc/index.php?topic=273445
EA-DOGM Display - Demos: http://forum.arduino.cc/index.php?topic=378279

postmaster-ino

Hi
Ansonsten drehen wir uns nur im Kreis. Dann wäre ich auf Grund der Fliehkraft raus.
DER ist gut, der Tag fängt schon Mal amüsant an :)

MfG
Dein Problem, Dein Sketch, Deine Bilder.
Ob ich ohne Diese an Deinem Problem arbeiten will, entscheide aber immer noch ich.
Große Buchstaben? Immer wieder, neben Punkt und Komma, gerne gesehen.

Doc_Arduino

Hallo,

ich habe jedesmal neu versucht die Schaltlogik zu verstehen. Jedesmal dachte ich jetzt ist alles klar. Jedesmal war es erneut falsch. Entweder ist die Beschreibung nicht schlüssig oder ich weiß langsam nicht weiter. Gefühlt sind alle Logikänderungen mittlerweile "durchprobiert". Letzte Chance sind eindeutige Messungen. Ansonsten hätte Diter genügend Ansätze um eine eigene Lösung zu erarbeiten. Ich denke ja immer noch das nur ein Logikfehler/Beschreibungsfehler in der Kommunikation steckt. Erstmal abwarten würde ich sagen.
Tschau
Doc Arduino '\0'

Messschieber auslesen: http://forum.arduino.cc/index.php?topic=273445
EA-DOGM Display - Demos: http://forum.arduino.cc/index.php?topic=378279

Diter

Quote
Welche Spannung liegt am Pin 9 wenn nicht gepumpt werden soll? // = 0V
Welche Spannung liegt am Pin 9 wenn gepumpt werden?                         // = 4,1V

Welche Spannung muss am Relais anliegen damit die Pumpe nicht läuft? //es solten 0V anleigen.
Welche Spannung muss am Relais anliegen damit die Pumpe läuft?  // momentan liegen 4,2V an und somit ist das Relais betätigt
[/URL][/img]

Hier einmal der Versuchsaufbau Pin 9 Liegt gegen GND, Arduino wurde eingeschaltet Pin9 hat 0V und das Relais ist betätigt!

Diter


Doc_Arduino

#56
Nov 30, 2019, 02:06 pm Last Edit: Nov 30, 2019, 02:09 pm by Doc_Arduino
Hallo,

häng das Bild als Anhang ran, ich verlinke es dann.

Bzw. als Anhang anhängen, Beiträg absenden, rechte Maustaste auf den Anhang, Link kopieren, Beiträg modifizieren wählen und als Bild (Symbol in der Leiste) einfügen. Etwas umständlich ich weiß, geht aber nicht anders. Dafür bleibt das Bild immer erhalten solange du es nicht bewußt entfernst.
Tschau
Doc Arduino '\0'

Messschieber auslesen: http://forum.arduino.cc/index.php?topic=273445
EA-DOGM Display - Demos: http://forum.arduino.cc/index.php?topic=378279

Doc_Arduino

Hallo,

Deine Spannungsmessung entspricht genau meinem letzten Sketch.
Beides, der Pin vom Schwimmer und das Relaissteuersignal sind demzufolge High aktiv.
Genau wie du es beschreibst.
Hast du vielleicht am Relais Öffner und Schließer verwechselt?
Tschau
Doc Arduino '\0'

Messschieber auslesen: http://forum.arduino.cc/index.php?topic=273445
EA-DOGM Display - Demos: http://forum.arduino.cc/index.php?topic=378279


Diter

Noch ein versuch :smiley-confuse:

Aber warum ist das Relais den Permanent betätigt?
Solange der Pin9 gegen GND liegt und der Schlater geschlossen ist soll das Relais doch gar nicht arbeiten.

Go Up