Arduino Programm Fehler nachdem anschließen an den Strom?

Hallo Leute,
wie im Titel beschrieben wurde ein Sketch geschrieben aber nachdem anschließen an den Strom funktioniert es nicht mehr normal.
Das Sketch ist für eine Treppe und zwar wurden zwei Bewegungsmelder angebracht (je einer oben und unten).Wenn z.B. unten durch läuft gehen 10 Leds,die auf den Stufen verteilt sind, von unten nach oben an und bleiben für einen Moment an und gehen danach von unten nach oben aus.Andersrum natürlich genauso. Wir haben einen LDR eingebaut,da die Treppe draußen ist und das Licht nur angehen soll wenn es dunkel. Des weitere wurde ein Schalter eingebaut um die Leds länger anzulassen. Der Sketch ist mit Sicherheit nicht perfekt, aber er hat am Pc und auch per 9 Volt Batterie funktioniert. Da wir nur ein 5 Volt Netzteil, dachten wir uns wir schneiden ein USB Kabel für den Arduino auf und schließen an das Netzteil ground und masse vom Kabel an. Nun ja wie im Titel funktioniert auf einmal der Sketch nicht mehr und die Leds gehen dauerhaft von unten nach oben an.
Woran könnte es liegen?
LG

#include <SoftPWM.h>
#include <SoftPWM_timer.h>

//Treppenbeleuchtung Draußen
//inklusive lichtschranke, vorrüber gehend zweite schranke bewegungsmelder
//inklusive fotowiderstand
//inklusive pwm
//bein Abfrage auf "HIGH" weil PIR Sensor

int licht;
int schranke1 = 12; 
int schranke2 = A1 ;

int button1 = A2;

int LED1 = 2;
int LED2 = 3;
int LED3 = 4;
int LED4 = 5;
int LED5 = 6;
int LED6 = 7;
int LED7 = 8;
int LED8 = 9;
int LED9 = 10;
int LED10 = 11;

int ledPins[] = {2, 3, 4, 5, 6, 7, 8, 9, 10, 11};

int fadeEin = 450;
int fadeAus = 450;
int Leuchtzeit = 5000;
int LeuchtzeitButton = 5000;

int lichtsensorPin = A0;
 int schrankeState1;
 int schrankeState2;
 int numberOfLED = 10;
 //int taster1 = LOW;
 //int taster2 = LOW;
 int buttonState1;
 

void setup() {
Serial.begin(9600);
  SoftPWMBegin();
  SoftPWMSet (LED1, 0);
  SoftPWMSetFadeTime(LED1, fadeEin, fadeAus);
  SoftPWMSet (LED2, 0);
  SoftPWMSetFadeTime(LED2, fadeEin, fadeAus);
  SoftPWMSet (LED3, 0);
  SoftPWMSetFadeTime(LED3, fadeEin, fadeAus);
  SoftPWMSet (LED4, 0);
  SoftPWMSetFadeTime(LED4, fadeEin, fadeAus);
  SoftPWMSet (LED5, 0);
  SoftPWMSetFadeTime(LED5, fadeEin, fadeAus);
  SoftPWMSet (LED6, 0);
  SoftPWMSetFadeTime(LED6, fadeEin, fadeAus);
  SoftPWMSet (LED7, 0);
  SoftPWMSetFadeTime(LED7, fadeEin, fadeAus);
  SoftPWMSet (LED8, 0);
  SoftPWMSetFadeTime(LED8, fadeEin, fadeAus);
  SoftPWMSet (LED9, 0);
  SoftPWMSetFadeTime(LED9, fadeEin, fadeAus);
  SoftPWMSet (LED10, 0);
  SoftPWMSetFadeTime(LED10, fadeEin, fadeAus);

  pinMode(LED1, OUTPUT);
  pinMode(LED2, OUTPUT);
  pinMode(LED3, OUTPUT);
  pinMode(LED4, OUTPUT);
  pinMode(LED5, OUTPUT);
  pinMode(LED6, OUTPUT);
  pinMode(LED7, OUTPUT);
  pinMode(LED8, OUTPUT);
  pinMode(LED9, OUTPUT);
  pinMode(LED10, OUTPUT);

  pinMode(button1, INPUT);
 
 for (int i = 0; i < numberOfLED; i++) {  
   pinMode(ledPins[i], OUTPUT);  
  }  
  pinMode(schranke1, INPUT);
  pinMode(schranke2, INPUT);  
}

void loop() {
  
licht = analogRead(lichtsensorPin);
schrankeState1 = digitalRead(schranke1);  
schrankeState2 = digitalRead(schranke2);
buttonState1 = digitalRead(button1);

Serial.println(licht);

if (licht < 250) {
  if (schrankeState1 == HIGH) {
    //taster1 = HIGH;
   for (int k = 0; k<1; k++) {
    for (int x = 0; x<numberOfLED; x++) {
      SoftPWMSetPercent(ledPins[x], 100);
      delay(fadeEin);
    }
   delay(Leuchtzeit);
   for (int z = 0; z<numberOfLED; z++) {
      SoftPWMSetPercent(ledPins[z], 0);
      delay(fadeAus); 
   }
  }
 }

 if (schrankeState2 == HIGH) {
  //taster2 = HIGH;
   for (int k = 0; k<1; k++) { 
    for (int y = 9; y>=0; y--) {
      SoftPWMSetPercent(ledPins[y], 100);
      delay(fadeEin);
    }
   delay(Leuchtzeit);
   for (int z = 9; z>= 0; z--) {
      SoftPWMSetPercent(ledPins[z], 0);
      delay(fadeAus); 
    }
   } 
  }
 }
 if (buttonState1 == HIGH) {
  for (int k = 0; k<1; k++) {
    for (int y = 9; y>=0; y--) {
      SoftPWMSetPercent(ledPins[y], 100);
      delay(fadeEin);
    }
   delay(LeuchtzeitButton);
   for (int z = 0; z<numberOfLED; z++) {
      SoftPWMSetPercent(ledPins[z], 0);
      delay(fadeAus);
   }
  }   
 }
}

Setze Deinen Code bitte direkt ins Forum. Benutze dazu Codetags (</>-Button oben links im Forumseditor oder [code] davor und [/code] dahinter ohne *).
Das kannst Du auch noch nachträglich ändern.

Gruß Tommy

Ein Schaltbild deines Projektes ist ebenso wichtig, um zu erkennen, ob da evtl. ein Fehler enthalten ist.

Welche LED hast Du und wie hast Du die LEDs angeschlossen?

Hallo,

Aus Deine Foto schliesse ich: Du hast insgesamt 10 LED drann die über je einen Digitalausgang und einen Vorwiderstand versorgt werden. Liegt es am Einbauort , z.B räumliche Nähe zu der Hausinstallation,

Hat der Feher was mit der Leitunglänge der Schalter , Sensoren zu tun. Abklemmen manuell mit Drahtbrücke testen.

Oder liegt es am Netzteil ? Wenn Du jetzt so wie es derzeit ist alles an einer 9V Batterie anschliesst klapp es dann. Dann kann es ja eigendlich nur das Netztteil sein. Grösse des Netzteils dü benötigtst etwa 500mA.

uwefed:
Welche LED hast Du und wie hast Du die LEDs angeschlossen?

Wie mein du welche? Normale LEDs mit einer Anode und Kathode. Angeschlossen sind die 10 LEDs an den verschiedenen Pins und GRND ist mit allen verbunden.

Ich sehe keine Vorwiderstände für die Leds.
Wo hast du die verbaut ?

Das Problem kann auch durch Störungen aus dem 230 Volt-Netz hervorgerufen werden.

Und nochmal die Bitte: Wo ist das Schaltbild ?

Und wenn man das

wie im Titel beschrieben wurde ein Sketch geschrieben aber nachdem anschließen an den Strom funktioniert es nicht mehr normal.

liest, muss man doch annehmen, dass es ohne Strom funktioniert hat.
Das muss uns der TO mal näher erklären, wenn er dann noch Lust hat.

Somit meine Empfehlungen:
Strom wegnehmen und alles ist gut. :wink:

HotSystems:
Und wenn man das liest, muss man doch annehmen, dass es ohne Strom funktioniert hat.
Das muss uns der TO mal näher erklären, wenn er dann noch Lust hat.

Somit meine Empfehlungen:
Strom wegnehmen und alles ist gut. :wink:

HAHA LOL :smiley: ich denke er meint es so... laut aussage:

"Der Sketch ist mit Sicherheit nicht perfekt, aber er hat am Pc und auch per 9 Volt Batterie funktioniert."

nur am Stromnetz diese Probleme...

Akropolis:
HAHA LOL :smiley: ich denke er meint es so... laut aussage:

"Der Sketch ist mit Sicherheit nicht perfekt, aber er hat am Pc und auch per 9 Volt Batterie funktioniert."

nur am Stromnetz diese Probleme...

Ach....dann liefert der PC über USB und eine 9Volt Batterie keinen Strom ?

Aber eh wurscht, da sich der TO nicht dazu äußert ist das wohl wieder nur SPAM.

HotSystems:
Ach....dann liefert der PC über USB und eine 9Volt Batterie keinen Strom ?

Aber eh wurscht, da sich der TO nicht dazu äußert ist das wohl wieder nur SPAM.

Wer lesen kann ist klar im Vorteil...
Als der Arduino über USB am PC war, hat alles funktioniert.
Als der Arduino mit 9V Batterie betrieben wurde,hat alles funktioniert.
Als der Arduino über ein Netzteil direkt an die Hausleitung geschaltet wurde, hat er nicht richtig funktioniert.
Es wurde der untere Bewegungsmelder immer "automatisch" ausgelöst obwohl keine Bewegung da war...

pinMode(schranke1, INPUT);
 pinMode(schranke2, INPUT);

Geben die Schranken ein sauberes HIGH LOW Signal ab dass nicht entprellt werden muss? Eventuell mal INPUT_PULLUP aktivieren.

  pinMode(button1, INPUT);

dieser müsste wohl sicher entprellt werden...

int schranke1 = 12; 
int schranke2 = A1 ;

gewollt? einmal Analog einmal Digital Input? sind sicher 2 gleiche Schranken..

schrankeState1 = digitalRead(schranke1);  
schrankeState2 = digitalRead(schranke2);

Da hast du aber einmal als Analog einmal als Digital deklariert aber machst 2x DigitalRead.. Läuft dass so ???
Bin ja auch noch kein Profi, aber sehe schon paar ansätze zum verbessern, Testen ob die Störung dann weg ist..

int lichtsensorPin = A0;
 int schrankeState1;
 int schrankeState2;
 int numberOfLED = 10;
 //int taster1 = LOW;
 //int taster2 = LOW;
 int buttonState1;

Fehlen da nicht die Zuweisungen ? :wink:
int schrankeState1;
int schrankeState2;
int buttonState1;

Syntax,

var - your int variable name
val - the value you assign to that variable

oder habe ich gerade einen denkfehler

tRIXelele:
Wer lesen kann ist klar im Vorteil...
Als der Arduino über USB am PC war, hat alles funktioniert.
Als der Arduino mit 9V Batterie betrieben wurde,hat alles funktioniert.
Als der Arduino über ein Netzteil direkt an die Hausleitung geschaltet wurde, hat er nicht richtig funktioniert.
Es wurde der untere Bewegungsmelder immer "automatisch" ausgelöst obwohl keine Bewegung da war...

Ich hatte dich schon verstanden :wink: wen die leute aber ein Schaltbild möchten reicht dein bildchen nicht aus :slight_smile: daraus sehen wir nicht die Led ansteuerungen.. wie betrieben? leitungslänge und vorwiederstände verbaut? Wen ja.. Was für welche wiviele und wo?

Nun gehen die Leds ständig an... weil der untere Lichtsensor immer die Leds kontinuierlich aktiviert? Richtig verstanden? wieviele Leds und was für welche hast du angeschlossen?

Sollte man nicht den Arduino via usb Betreiben. kannst auch auf VIN gehen der verträgt auch 12v :wink: Die Leds nicht direkt vom Arduino Strom nehmen, nur DIN und Stromversorgung seperat. ausser es sind nicht all zuviele Leds verbaut. ansonsten bekommst du schnell Stromversorgungsprobleme oder überlastest die Arduino Pins mit dem LED Strom..

Moin zusammen ,
die Led haben natürlich eine Vorwiderstand ! Die Led sind in der Treppe unweit des Arduino verbaut .
Das Schaltbild können wir Evtl nachreichen. Ich frage mich nur warum das so von Bedeutung ist? Die Beleuchtung samt Sketch hat Funktioniert als sie mit der 9v Batterie betrieben wurde. Erst nachdem ich das NT angeschlossen haben sowohl über USB als auch über Vin trat dieser Fehler auf .

Muss das NT Evtl aus dem Schaltkasten oder Abgeschirmt werden .

Ps : Foto reiche ich nach

Akropolis:
.....
wen die leute aber ein Schaltbild möchten reicht dein bildchen nicht aus :slight_smile:
.....

Da gebe ich dir Recht.

@To wenn man aber kein Schaltbild zeichnen kann, kommt ein verwurschteler Text raus, bei dem immer noch die Plus-Leitung fehlt. Somit kann es normal nicht funktionieren.
Immer noch sehe ich externe Störungen, die dein Projekt beeinflussen.

Welche Plusleitung ?

PeteTheBeat:
Welche Plusleitung ?

Die Plus-Leitung, die der TO nicht angeschlossen hat, zumindest in der unverständlichen Beschreibung.
Soweit "zum Lesen".

Kann etwas ohne Plusleitung Funktionieren??
Wenn ich schreibe die Beleuchtung hat funktioniert , kann das ja schlecht ohne Plusleitung geklappt haben .
Kann sein dass ich gerade auf dem Schlauch stehe was gemeint ist .

PeteTheBeat:
Kann etwas ohne Plusleitung Funktionieren??
Wenn ich schreibe die Beleuchtung hat funktioniert , kann das ja schlecht ohne Plusleitung geklappt haben .
Kann sein dass ich gerade auf dem Schlauch stehe was gemeint ist .

Ganz sicher, du lässt uns hier raten (bist du überhaupt der TO ?) und gibst uns keine richtigen Angaben.
Schaltbild wird da besser helfen.
Aber egal....du willst ja Hilfe und wir sollen nicht fragen, auch gut.

Könntest du mir das mit der Plusleitung erklären, anstatt dich in Wohlgefallen zu wälzen?

Es funktioniert doch mit 9V .
Nur nicht mit dem NT.
Erläutere doch mal deinen Gedankengang
Wir haben z.Z keinen Schaltplan zur Hand .
Grundlage war ein LED Lauflicht.
Ich hoffe ich bekomme beide Fotos rein