mikrocontroller.net

Forum: Mikrocontroller und Digitale Elektronik Relais soll erst nach 5 sek. taster druck schalten wie?


Announcement: there is an English version of this forum on EmbDev.net. Posts you create there will be displayed on Mikrocontroller.net and EmbDev.net.
von Andreas (Gast)


Angehängte Dateien:

Bewertung
-3 lesenswert
nicht lesenswert
Ich stehe aufm schlauch...

Ich habe eine Leitung welche 5V hat, kurze taster signale auf GND 
schaltet eine led als beispiel ein, gesteuert von einem microcontroller,

jetzt möchte ich, dass wen ich den taster mind. 5 sek.lang drücke, damit 
ein wechsler relais schalten kann.. und damit eine andere Leitung 
trennen..

siehe bild.

Klar funktioniert das gezeichnete so nicht.. als Beispiel

normal kommen da ja max. 1 sek taster impulse durch, kann ich mit 
iorgend einer schaltung ads so schalten? ohne dass die 1 sek impulse 
beinträchtig werden und bei 5 sek ein wechsler relais schaltet, ohne den 
MCU Code ab zu ändern.. Ich finde gerade nichts passendes... :/

Danke für Tipps :D

von Andreas (Gast)


Bewertung
0 lesenswert
nicht lesenswert
irgendwas wo sich 5sek auflädt und dann das relais schaltet.. und wieder 
auf die nächsten 5 sek wartet um das relais wieder zu schalten..

von Jörg R. (solar77)


Bewertung
0 lesenswert
nicht lesenswert
Andreas schrieb:
> Ich finde gerade nichts passendes... :/

Komisch🤔

CD4538

von Andreas (Gast)


Bewertung
0 lesenswert
nicht lesenswert
ok.. und das geht damit..? laut pdf

H = HIGH Level
L = LOW Level
­ = Transition from LOW-to-HIGH
¯ = Transition from HIGH-to-LOW
= One HIGH Level Pulse
= One LOW Level Pulse


es soll erst bei einem mind. 5 sek. langem pulse schalten.

nicht High Low erkennung,Transition from LOW-to-HIGH, Transition from 
HIGH-to-LOW ioder singel pulse. kann mir laut datasheet nicht vorstellen 
wie die schaltung aussehen müsste. ich verstehe nun den IC Baustein aber 
ein bisschen. Ich Dachte man könnte es einfacher mit einem ELKO der sich 
auflädt und erst bei 5 sek 5v sich genug aufgeladen hat um sich zu 
entladen und dann ein Relais schalten.. Hast du vlt ein Beispiel :))

von Andreas (Gast)


Bewertung
0 lesenswert
nicht lesenswert
https://www.electroschematics.com/precision-monostable/

das habe ich darüber gefunden.. aber wie kann ich den hier die trigger 
time einstellen. also trigger muss 5sek gedrückt werden. erst dann 
arbeitet der IC den befehl ab .. ? davor soll er ales ignoriern. 1.. 
2...4 sek impulse...erst ab 5 sek darf er arbeiten

von Joachim B. (jar)


Bewertung
0 lesenswert
nicht lesenswert
Andreas schrieb:
> Ich stehe aufm schlauch...

es gibt hier doch die tolle Tasterentprellung von PeDa sogar mit 
Erkennung kurzer Druck langer Druck, damit kannst du das gewünschte doch 
bauen:
https://www.mikrocontroller.net/articles/Entprellung
/************************************************************************/
/*                                                                      */
/*                      Debouncing 8 Keys                               */
/*                      Sampling 4 Times                                */
/*                      With Repeat Function                            */
/*                                                                      */
/*              Author: Peter Dannegger                                 */
/*                      danni@specs.de                                  */
/*                                                                      */
/************************************************************************/
....
....
uint8_t get_key_short( uint8_t key_mask )

uint8_t get_key_long( uint8_t key_mask )


von Andreas (Gast)


Bewertung
0 lesenswert
nicht lesenswert
Danke jepp, aber ich kann den code im MCU nicht ändern.. Ich muss es mit 
Hardware Realisieren..

Anmerkung: es geht nicht um Tasterenprellung, die habe ich extra nicht 
eingefügt.. es soll mal nur auf 5 sekunden langem Tasten druck eine 
Aktion ausgeführt werden könne per Hadrware. und darunter soll nichts 
passieren...

von ich (Gast)


Bewertung
0 lesenswert
nicht lesenswert
Schonmal was vom NE555 gehört? Vielleicht kann der ja was du brauchst...

von Andreas (Gast)


Bewertung
0 lesenswert
nicht lesenswert
Eine Hardware basierte "einfach" lösung, sollte reichen zum entprellen 
des tasters Signales.

Wie kriege ich das mit den 5 Sek hin..

Also zum besser verstehen..

-kurze impulse machen das was der mcu ausführen soll. geht die leitung 
auf LOW wird die zu verichtende arbeit ausgeführt. diese Signale sind in 
der mcu SCHON ENTPRELLT.

5sek druck auf den taster soll dann die stromversorgung eines anderen 
bauteiles deaktivieren, nicht gesteuert von dem MCU, unabhängig was an 
der MCU angeschlossen ist. OHNE den mcu Code ändern zu müssen,

Ich zapfe die vorhandene leitung hinter dem Schalter/Taster ab.
somit ist es der MCU egal wie das signal auf LOW geht..

:D

von Wolfgang (Gast)


Bewertung
2 lesenswert
nicht lesenswert
Andreas schrieb:
> Ich habe eine Leitung welche 5V hat, kurze taster signale auf GND
> schaltet eine led als beispiel ein, gesteuert von einem microcontroller,

Wenn du deine Gedanken vielleicht mal in klare Sprache überführen 
könntest, wäre es etwas einfacher zu erfassen, was du dir vorstellst.

Warum willst du mit irgendwelchen externen Bauteile einen Puls von einem 
Mikrocontroller in eine zeitlich modifizierte Steuerung umwandeln.
Nutze doch den Mikrocontroller dafür.

Evtl. hilft dir ein Impulsdiagramm beim strukturieren deiner Gedanken.

von ich (Gast)


Bewertung
0 lesenswert
nicht lesenswert
Kannst auch einen zweiten Controller nehmen. Ein ATTINY402 oder 
PIC10F200 sollte das locker können. Nichts für ungut, aber das geht 
sicherlich schneller, als wenn du mit deinen Elektronikkenntnissen etwas 
versuchst zu basteln. Vielleicht könntest du auch mal konkret erklären, 
was hinter deinem Vorhaben steckt, alles andere ist Stochern im Nebel. 
Oft findet sich bei genauen Kenntnissen über die Gesamte Schaltung 
schneller eine ganz andere Lösung.

von Andreas (Gast)


Bewertung
0 lesenswert
nicht lesenswert
eigentlich steht alles da :) vlt bisschen durcheinander..;)

Ich kann/will den Code nicht ändern. habe kein Zugriff momentan darauf.
Deshalb per Hardware...

also als Beispiel: die mcu schaltet mit jedem taster druck eine rote led 
an und wieder aus.. LOW erkennung im code mit entprellung. Digital Pin 
to GND Flankenerkennung oder wie man dem sagen möchte.

nun zapfe ich die leitung hinter dem Taster an, 5v kommen bei 
tasterdruck.. drücke ich dann 5sek lang weiter.. soll ein Relais extern 
schalten. wie kriege ich das mit den 5 sek hin.. :) so schwer dürfte es 
eigentlich ja nicht sein...

Eine schaltung die alles unter 5sek ignoriert und ab 5sek pulse dauer 
etwas schalten kann :)

von Andreas (Gast)


Angehängte Dateien:

Bewertung
0 lesenswert
nicht lesenswert
also die led wird natürlich am MCU an einer anderem port geschaltet. ist 
auch keine led die geschalten wird.. sonder in einem menu die steuerung 
für hoch und runter per taster.. das spiellt aber keine rolle auf meinen 
wunsch hin..

von Andreas (Gast)


Bewertung
0 lesenswert
nicht lesenswert
ich schrieb:
> Schonmal was vom NE555 gehört? Vielleicht kann der ja was du brauchst...

ja. aber damit kann ich doch nur ausgangs pulse einstellen...?

nicht den taster eingangs impuls abfrage. ich weiss per code währe das 
sehr schnell gelöst..

von Andreas (Gast)


Bewertung
0 lesenswert
nicht lesenswert
es gibt ja solche relais... einschalt ausschalt Verzögerung, wisch 
funktion, zeit relais usw.. aber damit lässt sich mein wunsch mit keiner 
Version verwirklichen..

oder gibt es spez relais welche solch eine funktion anbieten.. ?

Taster muss lange gedrückt werden...

von Joachim B. (jar)


Bewertung
0 lesenswert
nicht lesenswert
Wolfgang schrieb:
> Wenn du deine Gedanken vielleicht mal in klare Sprache überführen
> könntest, wäre es etwas einfacher zu erfassen, was du dir vorstellst.

Andreas schrieb:
> eigentlich steht alles da :) vlt bisschen durcheinander..;)

deswegen blickt ja keiner durch, wie wäre es mal mit Zustands Diagrammen

Andreas schrieb:
> wen ich den taster mind. 5 sek.lang drücke

woher weiss eine externe Schaltung das du den Taster 5s drückst?
Kommen da mehr LED Impulse?
Ist der Taster irgendwie erreichbar?

Kann das Tastersignal abgegriffen werden? (dann reicht ein 555 oder ein 
retrigerbares FF)

von ich (Gast)


Bewertung
-1 lesenswert
nicht lesenswert
OK, nochmal. Such nach dem NE555, das ist ein weltbekannter 
Timerbaustein, der auf analogen Wege fast jede Timing-Aufgabe 
bewerkstelligen kann.

von ich (Gast)


Bewertung
0 lesenswert
nicht lesenswert
PS: Du solltest das Stichwort "Einschaltverzögerung" bei der Suche 
benutzen

von Andreas (Gast)


Bewertung
0 lesenswert
nicht lesenswert
ich schrieb:
> Einschaltverzögerung

klar habe ich .. kenne ich.. steht oben auch.

verstehe ich das falsch.. ein pulse kommt vom schalter. das relais merkt 
sich das und schaltet nach der vorgegebenen zeit das relais um.. ?

währe dann ja falsch...

oder ist damit gemeint, die eingestellte zeit 7sek z.b muss gedrückt 
werden damit das relais umschaltet? das währe dann richtig und währe die 
Lösung..

von ich (Gast)


Bewertung
0 lesenswert
nicht lesenswert
Dann nimm ein T-Flipflop und dahinter ein Monoflop. Wird doch nicht so 
schwer sein, oder? Man könnte meinen, heute wäre Freitag. Probleme immer 
in Einzelprobleme zerlegen und diese dann lösen. Ich wäre immer noch für 
einen ATTINY für 37Cent.

von Andreas (Gast)


Bewertung
0 lesenswert
nicht lesenswert
https://www.elektronik-kompendium.de/sites/slt/0206241.htm

du meinst dass.. danke.

aber ist es dass was ich will?

ich drücke mind. 5 sek. lang s1 und erst dann leuchtet die lampe..

beschrieben wird es anderst. eben nicht dass was ich möchte :)

von Jörg R. (solar77)


Bewertung
0 lesenswert
nicht lesenswert
Andreas schrieb:
> aber ist es dass was ich will?

Ist die Frage ernst gemeint?

von Andreas (Gast)


Bewertung
0 lesenswert
nicht lesenswert
ich schrieb:
> einen ATTINY für 37Cent.

ich komme aus der arduino welt.. habe noch diese mcu s beschrieben.. 0 
ahnung :D

T-Flipflop und dahinter ein Monoflop.


so einfach ja offenbar nicht mit flip flop schaltungen hatte ich noch 
wenig zu tun,...  und dan gleich 2 hintereinander verschalten.. das wird 
ja lustig. einfach ist einfacher :)

von Wechsler (Gast)


Bewertung
0 lesenswert
nicht lesenswert
puhhh was für ein Deutsch, dann dieses Gekrickel wo immer die Aktion auf 
Ground gelegt ist, schalte einen kleinen Proz rein und gut ist

von Andreas (Gast)


Bewertung
-1 lesenswert
nicht lesenswert
Jörg R. schrieb:
> Ist die Frage ernst gemeint?

ja, wen man darauf hingewiesen wird.. und dann durchliest aber 
merkt...es macht nicht dass was ich will.
ob ich dann zu doof bin... oder was falsches vorgeschlagen wird ;)

Ausschaltverzögerung iss ja falsch.  ich muss den schalt eingang vom 
taster, auf 5sek mind. Druckdauer einstellen können.

von Teo D. (teoderix)


Bewertung
-1 lesenswert
nicht lesenswert
Leute, was der µC (o. was auch immer) macht interessiert nicht (glaubt 
der TO, wir offen mal:). Er braucht ein Flip Flop, das bei >5s 
Tastendruck seinen Zustand wechselt.

von Andreas (Gast)


Bewertung
0 lesenswert
nicht lesenswert
So ich habs gefunden: NE555 Einschaltverzögerung,
ich wusste nicht dass man da den Taster gedrückt halten muss, auf die 
eingestellte Zeit (sonst passiert nichts).
Ich dachte ein Impuls würde schon reichen, und ab dann beginnt eine z.b 
7sek einschalt verzögerung und es leuchtet konstant.. hrmpf!!!

Also im Video brauche ich die Funktion der gelben LED.
Youtube-Video "Einschaltverzögerung mit TIMER NE555"

Danke trozdem für die zahlreichen Tipps. NE555 war schon richtig.
Einschaltverzögerung anstatt Ausschaltverzögerung.

von Andreas (Gast)


Bewertung
-1 lesenswert
nicht lesenswert
Teo D. schrieb:
> Er braucht ein Flip Flop, das bei >5s
> Tastendruck seinen Zustand wechselt.

Du hast mich ja gleich verstanden :D mit meinem Schweizer deutsch Danke 
;)

Beitrag #6144436 wurde vom Autor gelöscht.
von Teo D. (teoderix)


Angehängte Dateien:

Bewertung
2 lesenswert
nicht lesenswert
Mit nem zB. 4093 obiges aufbauen und ein freies Gatter, über ein
RC-Glied an den Taster hängen. Noch'n R zum Entladen an den C.


PS: Das FF könnte man uU noch vereinfachen?! Wie kA, nicht nach 1,5 
Flask Wino :)

von Jörg R. (solar77)


Bewertung
1 lesenswert
nicht lesenswert
Andreas schrieb:
> So ich habs gefunden: NE555 Einschaltverzögerung,
> ich wusste nicht dass man da den Taster gedrückt halten muss, auf die
> eingestellte Zeit (sonst passiert nichts).

Aber das war doch deine eigene Anforderung:

Andreas schrieb:
> jetzt möchte ich, dass wen ich den taster mind. 5 sek.lang drücke

..mind. 5 sek. drücke!

Was passieren soll wenn der Taster wieder losgelassen wird hast Du 
übrigens nicht geschrieben.


Teo D. schrieb:
> Mit nem zB. 4093 obiges aufbauen und ein freies Gatter, über ein
> RC-Glied an den Taster hängen. Noch'n R zum Entladen an den C.

Man könnte einen Komparator vor das FF setzen. Wenn in der RC-Kombi der 
R ein Poti ist kann die Zeit in gewissen Grenzen eingestellt werden.


> PS: Das FF könnte man uU noch vereinfachen?!

Gibt es FF mit Schmitt-Trigger-Eingängen?🤔

: Bearbeitet durch User
Beitrag #6144449 wurde vom Autor gelöscht.
von Heinz (Gast)


Bewertung
0 lesenswert
nicht lesenswert
NE555, Flip-Flops, etc. etc.

1985 hätte ich das so etwas auch so gelöst. In den Zeiten, wo man 
Arduinos für 1€ bekommt, macht man das meiner(!) Meinung nach damit. 
Auch wenn es Kanonen auf Spatzen sind.
Das Arduino-Programm ist in 5 Minuten fertig, Anpassungen sind in 1 
Minute gemacht. Gerade als Anfänger die einfachste Lösung.

Gerne stelle ich auch noch das Programm hier ein, falls es damit 
realisiert werden soll.

von Andreas (Gast)


Angehängte Dateien:

Bewertung
0 lesenswert
nicht lesenswert
Arduino im KFZ betreiben.. 15v und den ganze spikes...  :) nicht ganz 
einfach wen man es richtig machen will.. aber das wusstet ihr ja nicht. 
da muss ich mehr rumlöten als mit NE555 als einschaltverzögerung,

Mit diesem aufbau funktioniert es, wie gewünscht.

von Andreas (Gast)


Bewertung
0 lesenswert
nicht lesenswert
so brauch ich nicht mal eine stromversorgung für die schaltung .. :) die 
kommkt vom Taster signal

von Peter D. (peda)


Bewertung
0 lesenswert
nicht lesenswert
Andreas schrieb:
> aber ich kann den code im MCU nicht ändern..

Dann nimmste eben einen 2. MC (ATtiny13).
Es gibt aber auch die Reset-ICs in PCs, die das Hardreset bei langen 
Druck auslösen.
Ein Dual Monoflop (74HC123) ginge auch, der erste wartet die 5s ab, der 
2. schaltet dann für eine gewünschte Zeit das Relais.

von Oppa Josef (Gast)


Angehängte Dateien:

Bewertung
0 lesenswert
nicht lesenswert
Wenn es Hardware sein muss, dann evtl. mit einem Darlingtontransistor. 
Der 10k Widerstand kann auf 100k vergrößert werden und der Elko auf 
470uF verkleinert.

von Andreas (Gast)


Bewertung
0 lesenswert
nicht lesenswert
Peter D. schrieb:
> Es gibt aber auch die Reset-ICs in PCs, die das Hardreset bei langen

ach ja stimmt, so wie es der pc power knopf macht... kurzes drücken aus. 
langes drücken softdwon. hast du per zufal mal ein link zu solch einem 
PC IC? :)

ja (ATtiny13) muss ich mir mal beibringen.

74HC123

Danke für die Tipps

von Andreas (Gast)


Bewertung
0 lesenswert
nicht lesenswert
Oppa Josef schrieb:
> Wenn es Hardware sein muss, dann evtl. mit einem Darlingtontransistor.
> Der 10k Widerstand kann auf 100k vergrößert werden und der Elko auf
> 470uF verkleinert.

Danke ;) währe wohl auch eine einfache Lösung. TOP

von Andreas (Gast)


Bewertung
0 lesenswert
nicht lesenswert
Peter D. schrieb:
> Es gibt aber auch die Reset-ICs in PCs, die das Hardreset bei langen
> Druck auslösen.

https://www.rohm.de/products/power-management/voltage-detectors/fixed-delay-time

so was ?

intressiert mich gerade diese ICs

Antwort schreiben

Die Angabe einer E-Mail-Adresse ist freiwillig. Wenn Sie automatisch per E-Mail über Antworten auf Ihren Beitrag informiert werden möchten, melden Sie sich bitte an.

Wichtige Regeln - erst lesen, dann posten!

  • Groß- und Kleinschreibung verwenden
  • Längeren Sourcecode nicht im Text einfügen, sondern als Dateianhang

Formatierung (mehr Informationen...)

  • [c]C-Code[/c]
  • [avrasm]AVR-Assembler-Code[/avrasm]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] - Link zu Artikel
  • Verweis auf anderen Beitrag einfügen: Rechtsklick auf Beitragstitel,
    "Adresse kopieren", und in den Text einfügen




Bild automatisch verkleinern, falls nötig
Bitte das JPG-Format nur für Fotos und Scans verwenden!
Zeichnungen und Screenshots im PNG- oder
GIF-Format hochladen. Siehe Bildformate.

Mit dem Abschicken bestätigst du, die Nutzungsbedingungen anzuerkennen.