Forum: Analoge Elektronik und Schaltungstechnik Nachlaufschaltung mit 555 Timer


von Christoph S. (christoph818)


Lesenswert?

Hallo,

bin neu hier im Forum und habe ein Problem mit einer Schaltung. Habe 
eher nur Grundlegende Kenntnisse und hoffe auf Hilfe.

Zu meinem Vorhaben:

Es soll eine Pumpe angesteuert werden die aus einem Tank ansaugt.
Wenn der Tank zur neige geht soll über einen Schwimmerschalter die Pumpe 
nach einer Zeit von ungefär 3 Minuten abgeschaltet werden. Weiters 
sollte es nachtriggerbar sein wenn das Wasser im Tank "schwappt" und der 
Schwimmerschalter ein/aus schaltet.

Ich habe es mit einem 555 Timer probiert nur habe ich das Problem das es 
nicht Nachtriggerbar ist bzw. wenn ich ein low Signal vom 
Schwimmerschalter bekomme bleibt der 555 nach der eingestellten Zeit 
immer noch Aktiv.

Vielleicht hat jemand von euch eine Idee wie man das umsetzten kann bzw. 
einen Tip was man beim monostabilen Modus ändern kann dass es 
Funktioniert.

Falls es mit etwas anderem als dem 555 umsetzbar ist wäre es auch in 
Ordnung (außer einem µC) aber ich möchte die Schaltung selber machen und 
nicht fertig kaufen.


Danke für hilfreiche Ideen.

von Dirk J. (dirk-cebu)


Lesenswert?

Warum muß die Pumpe 3 Minuten nachlaufen? Sie kann doch sofort 
ausschalten.
Ein Schwimmerschalter hat meistens eine Hysterese, der schaltet nicht 
sofort wieder ein.
Also: keine Elektronik, höchstens ein Relais zwischen Schalter und 
Pumpe!

von Christoph S. (christoph818)


Lesenswert?

Es hängt auch noch eine Heizung mit auf der Pumpe, ich wollt es nicht 
verkomplizieren :-)
Die Heizung soll gleich abschalten und nach 3 Minuten die Pumpe dass das 
Gerät abkühlen kann.

von HildeK (Gast)


Lesenswert?

Christoph S. schrieb:
> (außer einem µC)

Ja, ich habe deine Randbedingung gelesen, trotzdem: ich würde für eine 
solche Aufgabe einen kleinen Tiny nehmen.
Minimale Beschaltung, nachtriggerbar oder nicht, nahezu beliebige 
Zeiten, wenn nötig, länger als du lebst :-) und 3 Minuten sind für den 
555 schon recht lange.
Und wenn die nach den ersten Tests noch ein paar weitere Randbedingungen 
einfallen, dann sind die leicht implementierbar.
Vielleicht wäre solch ein Projekt ein idealer Einstieg in die 
µC-Technik?

von Martin K. (Gast)


Lesenswert?

Christoph S. schrieb:
> etwas anderem als dem 555 umsetzbar ist wäre

Für t>1min würde ich CD4541 oder CD4060 nehmen.

von Christoph S. (christoph818)


Lesenswert?

Ich habe mir gedacht das ein µC zu überdimensioniert ist für so eine 
Schaltung, scheint aber ideal dafür zu sein.

Einen kleinen Tiny hätt ich sogar zuhause ? ich wollte schon mal 
anfangen mit µC aber mir fehlt eindeutig die Zeit dazu. Werde mich mal 
etwas einlesen.

Ich möchte dann gerne ein Relais ansteuern, reicht hier ein gewöhnlicher 
Transistor?

von HiildeKK (Gast)


Lesenswert?

Christoph S. schrieb:
> Ich möchte dann gerne ein Relais ansteuern, reicht hier ein gewöhnlicher
> Transistor?

Wir kennen dein Relais nicht. Aber grundsätzlich ja, auch wenn oft ein 
kleiner MOSFET mehr Strom kann, falls ein niederohmiges Relais 
angesteuert werden soll.
Welchen Spulenwiderstand hat dein Relais denn und an welcher Spannung 
willst du es betreiben?

von HildeK (Gast)


Lesenswert?

Mistige Touchscrean-Tastatur: der letzte Post kam von mir.

von Christoph S. (christoph818)


Lesenswert?

So hab jetzt ein bisschen nachgelesen und probiert, leider erkennt mein 
PC den Programmer nicht mehr den ich habe also hab ich jetzt mit einem 
Simulator gearbeitet, der Arbeitet glaube ich nicht korrekt. 
(123DCircuits.io)

Relais soll ein KFZ Öffnerrelais sein mit ca 90 Ohm Spulenwiderstand

Mal mein Code in [c]

/*
 * GccApplication2.c
 *
 * Created: 23.04.2016 07:44:50
 * Author : chris
 */

#include <avr/io.h>
#include <util/delay.h>


int main(void)
{
  // Auf Eingang 0 hängt der Schwimmerschalter

  // Auf Ausgang 1 ist ein Öffnerrelais angeschlossen und deaktiviert 
die Heizung
  // Auf Ausgang 2 ist ein Öffnerrelais angeschlossen und deaktiviert 
die Wasserpumpe/Motor

  DDRB = 0xff; // alle Ports von B auf Ausgang setzen
  DDRB |= (0<<PB0); // Port B0 auf Eingang setzen
  PORTB |= (1<<PB0); // Port B0 internen Pullup aktivieren


    while (1)
    {

      if (PINB & (1<<PB0)) // Taster abfragen
          {
          // wenn Taster nicht gedrückt ist ist der Zustand high durch 
internen Pullup
          }
          else
          {
          _delay_ms(150000); // Taster ist gedrückt, warte 15 Sekunden
          PORTB |=(1<<PB1); // Warten ist abgeschlossen, Schalte Port B1 
auf High, somit Öffnerrelais für Heizung aktiviert
          _delay_ms(3000000); // Warte noch 3 Minuten
          PORTB |=(1<<PB2); // Taster ist aktiviert, Schalte Port B2 auf 
High, somit Öffnerrelais für Pumpe aktiviert

          }

          }
  return(0);
}

Warscheinlich keine elegante Lösung, für Verbesserungen bin ich dankbar.

Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.