Ich erstelle eine Box, mit der Sie eine Stromquelle mit einer Taste ein- und ausschalten können.
Wenn ich das Aurdino über den Micro-USB mit Strom versorge, funktioniert es wie es soll. Ein Klick auf die Taste, und das Relais wird eingeschaltet (Licht geht an und gibt ein Klickgeräusch von sich).
Aber wenn ich den USB entferne und versuche, dem Arduino Strom von den umgewandelten 5 V über die Pins zu geben, geht es in eine Art Schleife, wenn ich die Taste drücke. Ich kann hören/sehen, dass das Relais schnell in einer Endlosschleife ein-/ausgeschaltet wird.
Was ist denn hier los? Ich vermute, dass es ein Problem mit dem Protoboard mit dem Arduino gibt, aber ich kann das Problem nicht erfolgreich debuggen.
int ledPin = 13; // choose the pin for the LED
int inputPin = 7; // choose input pin 7 for the push button
int relay = 8;
void setup() {
pinMode(ledPin, OUTPUT); // declare LED as output
pinMode(inputPin, INPUT); // declare push button as input
pinMode(relay, OUTPUT);
}
void loop() {
int pushed = digitalRead(inputPin); // read input value
if (pushed == HIGH) { // check if the input is HIGH
digitalWrite(ledPin, HIGH); // turn LED OFF
digitalWrite(relay, LOW);
} else {
digitalWrite(ledPin, LOW); // turn LED ON
digitalWrite(relay, HIGH);
}
}
Sicherheit zuerst.
Wie es sich anhört, wird Ihr Arduino-Board braun, sobald Sie es über das SMPS mit Strom versorgen. Ich würde empfehlen, dass Sie zuerst Ihr 230-V-Netz abschirmen und es für die Fehlersuche vollständig sicher machen. Ich empfehle auch, dass Sie den Ausgang des 5-V-Reglers testen. Irgendwie funktioniert Ihr DC-Netzteil entweder nicht richtig oder hat viel zu viel Rauschen für Arduino. Obwohl das Rauschen durch den 5V-Regler behoben werden sollte, sollte man sich dennoch etwas ansehen. Außerdem benötigt Ihr 5-V-Regler möglicherweise einen Kühlkörper zur Wärmeableitung. 12V - 5V = 7V. Daher sind 7 V * 1,5 A = 10,5 W. Selbst wenn Sie keinen Strom von 1,5 A verwenden, wird Ihr 5-V-Regler möglicherweise immer noch warm und Sie benötigen möglicherweise einen Kühlkörper, um ihn kühl und glücklich zu halten.
Ich empfehle auch, kein Steckbrett zu verwenden und Netzspannung im selben Raum zu haben. Es ist keine gute Praxis und sicherlich ziemlich riskant. Ich würde Ihnen empfehlen, eine Leiterplatte zu bauen, auf der alle Komponenten auf die Platine gelötet (geklebt) sind, ohne dass sich Drähte von der Steckplatine lösen und „ungeschirmte“ 230-V-Anschlüsse berühren könnten, was nur eine Katastrophe ist, die darauf wartet, passiert zu werden.
Aus Ihrem Bild sieht es so aus, als hätten Sie Ihren eigenen 12-V-zu-5-V-Konverter hergestellt. Was also passieren könnte, ist, dass die Spannung, die an Ihr Arduino geht, auf weniger als 2,7 V abfällt und dies zu einem Brown-Out-Reset führt (da es ist standardmäßig aktiviert). Dies erklärt die Tatsache, dass Ihr Arduino von einer externen Versorgung, aber nicht von USB zurückgesetzt wird. Allerdings müssen Sie diese Spannung überprüfen
Nur ich
eivindml
Nur ich
Tony Stewart EE75
jfowkes
jfowkes
eivindml
setup()
Zweitens: Ich habe der Methode eine Verzögerung und eine LED-Blinksequenz hinzugefügt , und es hat Ihren Verdacht bestätigt, dass es tatsächlich neu gestartet wird. Jetzt wird es einmal neu gestartet, dann funktioniert es ohne Neustart nach diesem ersten Neustart. Die Frage ist dann, wie verhindere ich den "Spannungsabfall", damit er nicht neu startet?eivindml
eivindml
jfowkes
eivindml