Taster Verständnisproblem

Ich habe ein Verständnisproblem zu den Tastern auf dem Board im Anhang.

Was ich erreichen möchte:

Mittels Arduino möchte ich den Taster verzögernd aktivieren, sobald der Arduino mit Strom versorgt wird. also 1 Minute nachdem er Strom bekommt. Das habe ich mittels Delay gelöst. Das ist für den Arduino ja eine recht simple Aufgabe. Funktioniert auch - mittels LED geprüft. Die geht nach einer Minute an.

Woran es hapert:

Die 4 Kontakte des Power-Tasters kann ich von den Seiten erreichen. Verbinde ich mit einem Kabel jeweils zwei Kontakte schaltet das Gerät ein und bei den anderen Kontakten aus. So funktioniert ein Taster. Klappt.

Wenn ich nun aber den Arduino mit den Kontakten verbinde, die für das Einschalten zuständig sind, dann schaltet das Gerät bereits ein, bevor der Arduino den Strom freigibt. Also bevor die LED zu leuchten beginnt.

Ich dachte es hätte etwas mit dem Widerstand zu tun, aber selbst mit 300K Widerstand reagieren die Kontakte schon, sobald ich sie berühre und bevor die LED zu leuchten beginnt.

Was mache ich falsch? Der Kreislauf ist doch zu dem Zeitpunkt quasi noch unterbrochen…?!?

Hoffe auf lehrreiche Antworten. :slight_smile:

Da wären ein Schaltplan und Dein Sketch notwendig, um Dir sinnvolle Antworten geben zu können.

Gruß Tommy

daniel_e:
Die 4 Kontakte des Power-Tasters kann ich von den Seiten erreichen. Verbinde ich mit einem Kabel jeweils zwei Kontakte schaltet das Gerät ein und bei den anderen Kontakten aus. So funktioniert ein Taster. Klappt.

Das glaube ich erst einmal nicht. Die Taster, die ich kenne, haben nur 1 Kontakt mit je 2 Anschlüssen.
Prüfe das nochmal.

Ich dachte es hätte etwas mit dem Widerstand zu tun, aber selbst mit 300K Widerstand reagieren die Kontakte schon, sobald ich sie berühre und bevor die LED zu leuchten beginnt.

So empfindlich sind offene Eingänge.
Offene Eingänge müssen mit einemm Widerstand auf + oder - gezogen werden (pull-up, pull-down).

Hallo,

also ich hab nicht verstanden was Du vorhast.

Du willst einen Taster an den Arduio anschliessen , wenn der gerückt wird soll eine Minute später eine LED angehen die an dem Arduino angeschlossen ist.

Bei Tastern u Schaltern am Arduino gibt es zwei Möglichkeiten:

  1. der Schalter schaltet Plus , dann ist ein zusätzlicher Pull-down Widerstand erforderlich.
  2. der Schalter schaltet Minus, dann kann ein im Arduino eingebauter Widerstand als Pull-up verwendet werden dazu gibt es die Anweisung PinMode(pin,INPUT_PULLUP)

Tutorial/BuiltInExamples

was ist ist das für eine Platine auf dem Foto , was ist das Gerät von dem Du schreibst das es ein /und aus schaltet. Ist die Platine irgendwo eingebaut und mit irgendwas anderem verbunden ?

So wie ich das sehe, will er mit einem Arduino einen vorhandenen Taster betätigen ( indem er ihn überbrückt ).

daniel_e:
Wenn ich nun aber den Arduino mit den Kontakten verbinde, die für das Einschalten zuständig sind, dann schaltet das Gerät bereits ein, bevor der Arduino den Strom freigibt.

Wie verbindest Du das denn? Am sichersten wäre es wohl mit einem kleinen Relais.

Hi

Suche dazu Mal nach 'Reed-Relais' - Das ist im Endeffekt ein mit Draht umwickelter Reed-Kontakt - hat den Vorteil, daß der Kontakt zum Arduino potentialfrei ist - also keinerlei elektrische Verbindung mit dem Arduino zustande kommt.
Gibt's in verschiedenen Spannungen, die Schaltleistung ist aber eher begrenzt - für einen Taster sollte Das aber reichen.

MfG

Optokoppler wäre auch noch eine Möglichkeit

Dazu müsste man aber schon wieder mehr über die Beschaltung des Tasters wissen.

Also ich bin mittlerweile weitergekommen… Es ist recht schwer das zu beschreiben, da meine Elektronik-Kenntnisse wirklich eher rudimentär sind.

Was ich im Detail vorhabe:

Meine alte Hifi-Anlage (ohne Fernbedienung) ist am TV angeschlossen. Der Sound ist super, daher will ich keine neue Soundbar kaufen müssen. Allerdings muss man sie händisch einschalten, da nach dem Verbinden mit Strom der Power-Schalter auf "Aus" geschaltet ist. Ich lasse daher die Anlage immer eingeschaltet, damit ich nicht jeden Tag aufstehen und sie per Knopfdruck einschalten müssen. Das ganze zieht aber sehr viel Strom - das will ich vermeiden.

Ich möchte nun mittels eines Arduinos den Taster auf dem Board manipulieren und einen Tastendruck simulieren. Alles (TV, Hifi-Anlage, Unitymedia-Box, Arduino) hängt an einer Funksteckdose. Sobald diese eingeschaltet wird, schaltet sich alles ein. Der Arduino soll 10 Sekunden, nachdem er eingeschaltet wurde den Tast-Impuls aussenden und so die Hifi-Anlage einschalten.

Was ich rausgefunden habe:

Ich habe die Kontakte des Tasters auf dem Board mittels Multimeter geprüft und die richtigen Kontakte zum Einschalten gefunden. Diese sind dauerhaft mit 5V versorgt. Beim Tastendruck geht das Multimeter auf 0,2V runter, dann wieder rauf.

Das gilt es also mit dem Arduino zu simulieren.

Nur wie? Die Spannung passt ja schon mal. Über die digitalen Pins gibt er 5V ab. Aber intern kann er nur Pull-Up - ich bräuchte aber Pull-Down, richtig?

Kann mir dazu jemand den nötigen Aufbau erläutern?

Eine direkte Verbindung des Arduino mit dem Gerät ist kritisch, z.B. beim Ein- und Ausschalten. Deshalb empfehlen sich Relais oder Optokoppler zur galvanischen Trennung, wobei ich Optokoppler bevorzuge.

Wenn ein Schalter im Ruhezustand 5V hat, dann werden diese 5V von einem Pullup-Widerstand erzeugt. Wenn die Spannung beim Einschalten nicht auf 0V geht, dann deutet das auf einen Multiplexer, und damit ist ein direkter Anschluß des Arduino sowieso nicht mehr möglich.

Kann mir dazu jemand den nötigen Aufbau erläutern?

Ich habe schon einige doofe Geräte mit Arduinos automatisiert.

Um Tastendrücke an Fremdgeräten zu emulieren/simulieren, verwende ich Reedrelais oder Optokoppler.
Die glavanische Trennung bedingt, dass keins der beiden Geräte das andere zerstören kann.
Es befreit davon, den Schaltplan des Fremdgerätes auswendig zu lernen.

daniel_e:
Nur wie?

Bauteile (Optokoppler oder Reed-Relais) wurden dir in den letzten Beiträgen bereits genannt. Ich würde vermutlich zum Reed-Relais greifen und den Schließkontakt ganz einfach parallel zum eigentlichen Taster schalten. Kleine Reed-Relais haben gelegentlich auch Löschdioden verbaut und können auch direkt ohne Treiberstufe (Transistor) vom Arduino angesteuert werden.
Möglich wäre auch die Verwendung eines CMOS4066 - viele Wege führen nach Rom.

Wie der Zufall es will habe ich ein Relais in einem Modul-Set für den Aduino gefunden, das ich mal irgendwann gekauft habe… (siehe Anhang)

Wenn ich allerdings so lese, dann beschleicht mich das Gefühlt, dass es nicht für die benötigten 5V geeignet ist…

Oder?

Oktokoppler habe ich einen 4N25 hier rumfliegen. Wäre das ein geeigneter?

daniel_e:
Wie der Zufall es will habe ich ein Relais in einem Modul-Set für den Aduino gefunden, das ich mal irgendwann gekauft habe… (siehe Anhang)

Wenn ich allerdings so lese, dann beschleicht mich das Gefühlt, dass es nicht für die benötigten 5V geeignet ist…

Oder?

Aufgrund der dünnen Faktenlage nicht durch die Leser im Forum zu beantworten...

daniel_e:
Oktokoppler habe ich einen 4N25 hier rumfliegen. Wäre das ein geeigneter?

Versuch macht kluch! Sollte prinzipiell gehen, aber Strom durch die LED begrenzen.

sth77:
Aufgrund der dünnen Faktenlage nicht durch die Leser im Forum zu beantworten...

Was meinst du? Meine Beschreibung über die Funktion des Tasters auf der Anlage?

Könnt ihr meine folgenden Gedanken zum Vorgehen, als Elektro-Legastheniker, bitte kurz kommentieren?

Die eine Seite des Oktokopplers muss ja im Grunde nur die LED des Oktokopplers aktivieren. Und die Gegenseite muss den Tastendruck durch Reduktion der Spannung von 5V auf 0,2 simluieren. Heißt im Grunde, dass ich auf der Seite doch nur den Strom durch einen hohen Widerstand leiten muss.

Kein Denkfehler?

Wie groß müsste dieser Widerstand dann sein? Ich finde bei Google irgendwie keine geeignete Berechnungsgrundlage…

Hi

Gegenfrage:
Du hast Zuhause Steckdosen?
Wenn Du darin einen Föhn einsteckst, macht Der warme Luft?
Das liegt daran, daß der Widerstand des Föhn recht GERING ist (und damit viel Strom fließt, viel Leistung in Wärme umgewandelt wird ...).
Nun steckst Du den Föhn wieder aus - der Widerstand ist jetzt um zig Zehnerpotenzen höher - theoretisch nahe unendlich!!
Nach Deinem letzten Satz müsste jetzt - durch diesen emens großen Widerstand, die Spannung auf Null zusammen brechen - tut Sie aber nicht - Denkfehler.

Du Was macht der Taster?
Reduziert Der die Spannung? Nein!
Der verbindet stur die beiden zusammen gehörenden Beinchen - fertig.
Genau DAS willst Du mit dem Opto-Koppler erreichen - Du willst die Anschlüsse des Taster kurzschließen - wirklich!
Beim Opto-Koppler musst Du ggf. auf die Polarität achten, damit Der nur durchschaltet, wenn die LED darin bestromt wird.
Bei einem Reed-Relais hast Du das Problem nicht - Das ist ein ganz normaler mechanischer Kontakt (mit all den Nachteilen, Prellen z.B.) - 5V und den Strom eines PullUp wird Der können - der Opto-Koppler wohl auch.

Du willst jetzt die LED des Opto-Koppler an Deinen Arduino anstöpseln - Vorwiderstand NICHT vergessen!!
Nun verbindest Du die beiden anderen Beinchen (Die des Transistor) mit den beiden Kontakten des Taster - wenn die Anlage direkt durchstartet: falsch herum.
Die Anlage darf nur Starten, wenn der Arduino die LED des OK bestromt (wenn Du Diese da drüber auch AUS schalten kannst, sollte sich Das mit einem Blink-Sketch herausfinden lassen - die Anlage muß dann im 2-Sekunden-Takt (oder so) an/aus/an/aus/... gehen.

MfG

Danke für diese super coole Erklärung :slight_smile:

Alles verstanden. Werde es gleich ausprobieren und schauen, ob ich es hinkriege.

daniel_e:
Was meinst du? Meine Beschreibung über die Funktion des Tasters auf der Anlage?

Ich bezog mich auf das von dir gefundene Relaismodul. Das kennst nur du, hast es vor dir zu liegen und kannst einen Blick draufwerfen. Ob es tauglich ist oder nicht, können Unwissende nicht beurteilen. Ist nicht einmal als Vorwurf gemeint, da du ja auch andere Alternativen aufgezeigt bekamst, die ebenso bei dir vorhanden sind.

Probier das erstmal mit den Optokoppler aus.

Wenn ein bipolarer Optokoppler falsch herum angeschlossen wird, dann passiert garnichts, auch nicht wenn Strom durch die LED geschickt wird. Nur MOSFETs haben eine Invers-Diode, die bei falscher Polarität immer leitet, bei richtiger Polarität immer gesperrt ist. Beim BJT arbeiten zwischen Kollektor und Emitter immer zwei Dioden gegeneinander, egal wo man + und - anschließt.