Ich habe einen Hifi Vestärker, welcher über seine 12V Trigger Ausgänge
meinen Raumakustikprozessor, welcher wie ein normaler Desktop PC
funktioniert, einschaltet und auch ausschaltet.
Wenn ich den Verstärker einschalte, liegen die 12V an, wenn ich
ausmache, sind diese weg.
Um den PC einzuschalten benötige ich einen einfachen Impuls, der einfach
zwei Kontakte (des An/Aus Schalters vom PC) brückt, so dass der PC
eingeschaltet wird. Ausgeschaltet wird der PC über zwei Impulse.
Wenn ich nicht irre, wird am PC Schalter ein 5V Signal durchgeschleift.
Das Triggersignal ist auf max. 150mA beschränkt.
Der PC kann auch gern mit zwei Impulsen oder mehr eingeschaltet werden.
Da er dort eh grad erst hochfährt, nimmt er von Signal 1 gefolgte
Signale für die ersten 10 Sekunden nicht mehr wahr.
Somit bräuchte ich also eine Schaltung, die generell zwei kurze Impulse
im Abstand von einer Sekunde erzeugt.
Kann mir jemand sagen, wie ich das bewerkstellige ?
Ich habe hier noch einen Arduino Uno, mit welchem das doch funktionieren sollte ?!
Eine Master/Slave Dose ist übrigens nicht möglich.
Ich vermute, dass damit eine Steckdosenleiste gemeint ist, bei der n andere Steckdosen Energie bekommen, wenn nur das an einer Dose (eben der „Master“-Dose, an der z. B. der PC hängt) hängende Gerät eingeschaltet wird.
Markus2700:
Kann mir jemand sagen, wie ich das bewerkstellige ?
Ich habe hier noch einen Arduino Uno, mit welchem das doch funktionieren sollte ?!
Du nimmst ein Relais, hatte Uwe ja schon vorgeschlagen.
Dieses steuerst du mit einem Transistor an. Dieser wiederum bekommt aus dem Arduino für eine Sek. einen High-Impuls und geht danach wieder auf LOW.
Dem Uno musst du natürlich mitteilen, wann er das High ausgeben soll.
Wenn der Uno nichts anderes machen soll, kannst du hier natürlich mit delay arbeiten, auch wenn es unschön ist.
Markus2700:
Somit bräuchte ich also eine Schaltung, die generell zwei kurze Impulse
im Abstand von einer Sekunde erzeugt.
Gibt es eine Möglichkeit den PC mit nur einem Impuls abzuschalten? Dann brächte man ein Relais nur in Reihe mit einem Elko an den 12V Trigger zu schalten. Evtl. braucht man noch parallel dazu eine Diode. Beim Einschalten zieht das Relais an, bis der Kondensator geladen ist, beim Ausschalten bis er Entladen ist.
Ich pack hier nochmal rein, was ich oben geschrieben hatte :- )
"Der PC kann auch gern mit zwei Impulsen oder mehr eingeschaltet werden.
Da er dort eh grad erst hochfährt, nimmt er von Signal 1 gefolgte
Signale für die ersten 10 Sekunden nicht mehr wahr."
Markus2700:
Ich pack hier nochmal rein, was ich oben geschrieben hatte :- )
"Der PC kann auch gern mit zwei Impulsen oder mehr eingeschaltet werden.
Da er dort eh grad erst hochfährt, nimmt er von Signal 1 gefolgte
Signale für die ersten 10 Sekunden nicht mehr wahr."
Dann kannst du es gern so programmieren, wie ich es im Post #7 geschrieben habe.
Zum Einschalten und Ausschalten jeweils 2 Impulse.
void setup() //Hier beginnt das Setup
{ //Hier beginnt ein Programmabschnitt.
int eingang=A0;
pinMode(13, OUTPUT); //Pin 13 soll ein Ausgang sein.
} //Hier ist ein Programmabschnitt beendet.
void loop() //Hier beginnt das Hauptprogramm
{ //Programmabschnitt beginnt.
digitalWrite(13, HIGH); //Schalte die die Spannung an Pin13 ein (LED an).
delay(1000); //Warte 1000 Millisekunden (eine Sekunde)
digitalWrite(13, LOW); //Schalte die die Spannung an Pin13 aus (LED aus).
delay(1000); //Warte 1000 Millisekunden (eine Sekunde).
} //Programmabschnitt beendet.
Teilweise habe ich das jetzt mal versucht noch zu ergänzen.
Der Loop kann ruhig da sein, somit blieibt doch dann der Status immer aktuell.?
Ich versteh nun aber noch nicht, wo ich ihm sage, dass, wenn an Eingang=A0 kein Signal mehr anliegt, er zwei Impulse auf PIN13 geben soll. Irgendwie stehe ich auf dem Schlauch.
Markus2700:
Teilweise habe ich das jetzt mal versucht noch zu ergänzen.
Der Loop kann ruhig da sein, somit blieibt doch dann der Status immer aktuell.?
Ich versteh nun aber noch nicht, wo ich ihm sage, dass, wenn an Eingang=A0 kein Signal mehr anliegt, er zwei Impulse auf PIN13 geben soll. Irgendwie stehe ich auf dem Schlauch.
Was du mit "Loop da sein" und "Status aktuell" meinst, verstehe ich nicht.
Was den Eingang A0 betrifft, kannst du in der IDE unter "Beispiele - AnalogInput" nachlesen.
Na den Loop brauche ich doch, damit der Arduino kontiniurlich sein Programm ablaufen lässt oder ?!
Ich habe ja keine definierte Zeit, wann ich meinen Verstärker ausschalten will, also muss doch der Zustand des 12V Signals dauerhaft überwacht werden. ?! ...so war jetzt mein Gedanke.
Markus2700:
Habe ich noch etwas vergessen ? Muss hier auch ein loop bzw. setup rein ?
Du solltest dir unbedingt mal ein paar Beispiele ansehen.
In jeden lauffähigen Sketch gehört ein Setup und eine Loop.
Das sind Grundlagen, die du lernen musst.
Du wirst es durch einfaches testen (kompilieren) in der IDE auch feststellen.
Und bitte setze deinen Sketch immer in Code-Tags.
Verwende dazu die Schaltfläche </> oben links im Editorfenster. Das kannst du auch nachträglich machen. Dazu den Sketch markieren und die Schaltfläche klicken.
Auch sind die Definitionen deiner Variablen sehr merkwürdig.
char pin1 = 0; //pin1 = eingang
Ein "int" oder "Byte" ist hier eher angebracht.
Oder per "#define" wie ardubu es vormacht.
Und beide auf den Pin 0 setzen, funktioniert auch nicht.
Wobei du in den meisten Fällen D0 und D1 nicht belegen solltest, da diese vom USB-Serial-Wandler auf dem Board genutzt werden.