INFO: Dieses Forum nutzt Cookies...
Cookies sind für den Betrieb des Forums unverzichtbar. Mit der Nutzung des Forums erklärst Du dich damit einverstanden, dass wir Cookies verwenden.

Es wird in jedem Fall ein Cookie gesetzt um diesen Hinweis nicht mehr zu erhalten. Desweiteren setzen wir Google Adsense und Google Analytics ein.

Antwort schreiben 
 
Themabewertung:
  • 0 Bewertungen - 0 im Durchschnitt
  • 1
  • 2
  • 3
  • 4
  • 5
Arduino 9V Block
31.08.2015, 22:27
Beitrag #9
RE: Arduino 9V Block
(31.08.2015 21:59)Schandor schrieb:  
(31.08.2015 19:14)fraju schrieb:  Du scheinst die LEDs auf 20mA berechnet zu haben.
Wenn alle Einschalten also Max 80mA.
Da könnte es schon zum Spannungseinbruch kommen!

Ja das habe ich aber das erklärt doch noch immer nicht wieso es mit der einen Batterie funktioniert. Wenn es daran liegt wie kann ich das Problem lösen ohne die RGB LED auszutauschen? Gibt es Unterschiede bei den Batterien was den Strom angeht?

Ich habe nun einer meiner Batterien für geringe zeit kurz geschlossen und die Leerlaufspannung zu reduzieren. Nach dem ich das gemacht habe funktioniert es für eine gewisse zeit. Wenn es wieder anfängt mit dem Flackern hat die Batterie auch wieder ihre 9V Spannung. Es scheint so wie ich finde das der Arduino micro nicht mit 9V klar kommt. Was dagegen spricht, ist das mit einer Betriebspannung von 7-12V angegeben wird.

Das liegt nicht am Arduino, sondern an der Toleranz der Innenwiderstände der Batterien. Versuche doch die Widerstände an den Leds zu vergrößern (ca. doppelter Wert). Dann wird da der Strom geringer, die Leds leuchten etwas dunkler aber es könnte klappen.

I2C = weniger ist mehr: weniger Kabel, mehr Probleme. Cool
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren
01.09.2015, 07:34 (Dieser Beitrag wurde zuletzt bearbeitet: 01.09.2015 07:50 von Schandor.)
Beitrag #10
RE: Arduino 9V Block
(31.08.2015 22:27)hotsystems schrieb:  
(31.08.2015 21:59)Schandor schrieb:  
(31.08.2015 19:14)fraju schrieb:  Du scheinst die LEDs auf 20mA berechnet zu haben.
Wenn alle Einschalten also Max 80mA.
Da könnte es schon zum Spannungseinbruch kommen!

Ja das habe ich aber das erklärt doch noch immer nicht wieso es mit der einen Batterie funktioniert. Wenn es daran liegt wie kann ich das Problem lösen ohne die RGB LED auszutauschen? Gibt es Unterschiede bei den Batterien was den Strom angeht?

Ich habe nun einer meiner Batterien für geringe zeit kurz geschlossen und die Leerlaufspannung zu reduzieren. Nach dem ich das gemacht habe funktioniert es für eine gewisse zeit. Wenn es wieder anfängt mit dem Flackern hat die Batterie auch wieder ihre 9V Spannung. Es scheint so wie ich finde das der Arduino micro nicht mit 9V klar kommt. Was dagegen spricht, ist das mit einer Betriebspannung von 7-12V angegeben wird.

Das liegt nicht am Arduino, sondern an der Toleranz der Innenwiderstände der Batterien. Versuche doch die Widerstände an den Leds zu vergrößern (ca. doppelter Wert). Dann wird da der Strom geringer, die Leds leuchten etwas dunkler aber es könnte klappen.

Also ich habe heute mal zwei der Widerstände erhöht. dann ist mir eingefallen wenn ich einer der LED ablöt dürfte es ja auch nicht anfangen zu flackern aber das tut es auch. Ich weiß einfach nicht mehr weiter.

Könnte es was bringen wenn ich bei der Reihenschaltung die Widerstände von 1K erhöhe?
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren
01.09.2015, 08:17
Beitrag #11
RE: Arduino 9V Block
(01.09.2015 07:34)Schandor schrieb:  Also ich habe heute mal zwei der Widerstände erhöht. dann ist mir eingefallen wenn ich einer der LED ablöt dürfte es ja auch nicht anfangen zu flackern aber das tut es auch. Ich weiß einfach nicht mehr weiter.

Was verstehst du unter "flackern"?

(01.09.2015 07:34)Schandor schrieb:  Könnte es was bringen wenn ich bei der Reihenschaltung die Widerstände von 1K erhöhe?

Meinst du die Reihenschaltung zu den Leds? Einen Versuch ist es wert.

Aber ich vermute, wenn du andere Batterien verwendest, dann wird das Problem eher gelöst. Du solltest es mal mit 6 x Mignon (AA) probieren. Die liefern einen höheren Strom und haben einen geringeren Innenwiderstand.

I2C = weniger ist mehr: weniger Kabel, mehr Probleme. Cool
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren
01.09.2015, 09:37
Beitrag #12
RE: Arduino 9V Block
(01.09.2015 08:17)hotsystems schrieb:  
(01.09.2015 07:34)Schandor schrieb:  Also ich habe heute mal zwei der Widerstände erhöht. dann ist mir eingefallen wenn ich einer der LED ablöt dürfte es ja auch nicht anfangen zu flackern aber das tut es auch. Ich weiß einfach nicht mehr weiter.

Was verstehst du unter "flackern"?

(01.09.2015 07:34)Schandor schrieb:  Könnte es was bringen wenn ich bei der Reihenschaltung die Widerstände von 1K erhöhe?

Meinst du die Reihenschaltung zu den Leds? Einen Versuch ist es wert.

Aber ich vermute, wenn du andere Batterien verwendest, dann wird das Problem eher gelöst. Du solltest es mal mit 6 x Mignon (AA) probieren. Die liefern einen höheren Strom und haben einen geringeren Innenwiderstand.

Die Schaltung ist in ein Gehäuse in dem ich kein Platz für 6 AA Battenerin habe.

Hier erst mal ein teil des Programms:

while (poti == 6)
{
digitalWrite(rot, HIGH);
digitalWrite(blau, HIGH);
digitalWrite(gruen, HIGH);
delay(1);
digitalWrite(rot, LOW);
digitalWrite(blau, LOW);
digitalWrite(gruen, LOW);
delay(9);
poti = map(analogRead(aa), 0, 1023, 0, 7);
}
digitalWrite(rot, LOW);
digitalWrite(blau, LOW);
digitalWrite(gruen, LOW);
delay(5);
//____________________________________________________

ich habe es nun schon so weit das wenn ich den befehl poti = map(analogRead(aa), 0, 1023, 0, 7); heraus nehme tritt der Fehler nicht mehr auf. was darauf schließen lässt das er immer die Schleife verlässt. Das Problem dabei ist die wenn ich es mit einer einzelnen LED mache tritt der Fehler nicht auf.
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren
01.09.2015, 09:45
Beitrag #13
RE: Arduino 9V Block
Ups, so wie ich es sehe, liegt es tatsächlich am Code. Dein Flackern ist wohl der Normalzustand.
Was möchtest du denn mit den "kurzen" delays (1, 9, 5) erreichen?

Wenn wir weiter helfen sollen, dann bitte den kompletten Sketch in Code-Tags liefern.

I2C = weniger ist mehr: weniger Kabel, mehr Probleme. Cool
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren
01.09.2015, 09:54 (Dieser Beitrag wurde zuletzt bearbeitet: 01.09.2015 10:06 von Schandor.)
Beitrag #14
RE: Arduino 9V Block
(01.09.2015 09:45)hotsystems schrieb:  Ups, so wie ich es sehe, liegt es tatsächlich am Code. Dein Flackern ist wohl der Normalzustand.
Was möchtest du denn mit den "kurzen" delays (1, 9, 5) erreichen?

Wenn wir weiter helfen sollen, dann bitte den kompletten Sketch in Code-Tags liefern.

Code:
int aa = A1;
float poti;
int rot = 6;
int blau = 4;
int gruen = 3;
int roteinzelnt = 9;

void setup() {
  pinMode(rot, OUTPUT);
  pinMode(blau, OUTPUT);
  pinMode(gruen, OUTPUT);
  pinMode(roteinzelnt, OUTPUT);
  pinMode(aa, INPUT);
  //Serial.begin(9600);
}

void loop()
{
  poti = map(analogRead(aa), 0, 1023, 0, 7);
  //Serial.println(poti);

  //___________________________________________________________________-
  while (poti == 0)
  {
    //25HZ-50%
    digitalWrite(roteinzelnt, HIGH);
    delay(20);
    digitalWrite(roteinzelnt, LOW);
    delay(20);
   poti = map(analogRead(aa), 0, 1023, 0, 7);
  }
  digitalWrite(roteinzelnt, LOW);
  delay(5);

  //________________________________________________________________

  //100Hz-10%

  while (poti == 1)
  {
    digitalWrite(roteinzelnt, HIGH);

    delay(1);
    digitalWrite(roteinzelnt, LOW);

    delay(9);
    poti = map(analogRead(aa), 0, 1023, 0, 7);
  }
  digitalWrite(roteinzelnt, LOW);
  delay(5);
  //_________________________________________________________________________


  //100Hz 50%
  while (poti == 2)
  {
    digitalWrite(roteinzelnt, HIGH);

    delay(5);
    digitalWrite(roteinzelnt, LOW);

    delay(5);
    poti = map(analogRead(aa), 0, 1023, 0, 7);
  }
  digitalWrite(roteinzelnt, LOW);
  delay(5);
  //____________________________________________________


  //100Hz-90%
  while (poti == 3)
  {
    digitalWrite(roteinzelnt, HIGH);
    delay(9);
    digitalWrite(roteinzelnt, LOW);
    delay(1);
    poti = map(analogRead(aa), 0, 1023, 0, 7);
  }
  digitalWrite(roteinzelnt, LOW);
  delay(5);
  //________________________________________________

  //400-10%
  while (poti == 4)
  {
    digitalWrite(roteinzelnt, HIGH);
    delayMicroseconds(250);
    digitalWrite(roteinzelnt, LOW);
    //delay(2);
    delayMicroseconds(2025); //bestimmt  vorher 2250
    poti = map(analogRead(aa), 0, 1023, 0, 7);
  }
  digitalWrite(roteinzelnt, LOW);
  delay(5);

  //________________________________________________________________

  //400Hz-50%

  while (poti == 5)
  {
    digitalWrite(roteinzelnt, HIGH);
    delayMicroseconds(1250); //
    digitalWrite(roteinzelnt, LOW);
    delayMicroseconds(1025);
    poti = map(analogRead(aa), 0, 1023, 0, 7);
  }
  digitalWrite(roteinzelnt, LOW);
  delay(5);
  //_________________________________________________________________________


  //100Hz- 10%
  while (poti == 6)
  {
    digitalWrite(rot, HIGH);
    digitalWrite(blau, HIGH);
    digitalWrite(gruen, HIGH);
    delay(1);
    digitalWrite(rot, LOW);
    digitalWrite(blau, LOW);
    digitalWrite(gruen, LOW);
    delay(9);
    poti = map(analogRead(aa), 0, 1023, 0, 7);
  }
  digitalWrite(rot, LOW);
  digitalWrite(blau, LOW);
  digitalWrite(gruen, LOW);
  delay(5);
  //____________________________________________________


  //400Hz-10%
  while (poti == 7)
  {
    digitalWrite(rot, HIGH);
    digitalWrite(blau, HIGH);
    digitalWrite(gruen, HIGH);
    delayMicroseconds(250); //250
    digitalWrite(rot, LOW);
    digitalWrite(blau, LOW);
    digitalWrite(gruen, LOW);
    delayMicroseconds(2025);//2250
    poti = map(analogRead(aa), 0, 1023, 0, 7);
  }
  digitalWrite(rot, LOW);
  digitalWrite(blau, LOW);
  digitalWrite(gruen, LOW);
  delay(5);
  //________________________________________________



}

Also ich möchte mit diesen Programm verschiedene PWM Frequenzen erzeugen.
Bei der Roteinzelt funktioniert auch alles super. Nur bei der RGB LED läuft was nicht richtig. Der Fehler äußert sich so, das die LED Flackert und manchmal auch die rot led aufleuchtet. obwohl ich den schalter auf rgb gestellt habe. Also ich vermut so langsam, das er immer die schleife kurz verlässt.

Also es liegt eindeutig an der Reihenschaltung.

Ich habe nun mal die positionen geändert. Also ich habe die schleife mit der RGB an der Position 0 und 1 gelegt und dafür an Position 6 und 7 die einzelne Rote LED. Wenn ich das Programm so umschreibe funktioniert die RGB aber die rote LED nicht mehr.
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren
01.09.2015, 10:31
Beitrag #15
RE: Arduino 9V Block
Ich kann aktuell auch keinen richtigen Fehler erkennen.

Hast du es mal mit einer If/Else-Anweisung versucht.

I2C = weniger ist mehr: weniger Kabel, mehr Probleme. Cool
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren
01.09.2015, 10:35
Beitrag #16
RE: Arduino 9V Block
Hi,
Ich habe mir nicht alles angeschaut, aber mir ist diese Zeile aufgefallen:
Zitat:
Code:
poti = map(analogRead(aa), 0, 1023, 0, 7);
map ist soweit ich mich erinnere keine Funktion, sondern ein Makro. D.h. analogRead(aa) wird u.U. mehrfach ausgeführt. Spätestens das Quantisierungsrauschen führt dann zu seltsamen Effekten. Versuch das mal durch etwas wie das hier zu ersetzen:
Code:
int rawValue = analogRead(aa);
poti = map(rawValue, 0, 1023, 0, 7);
Gruß,
Thorsten

Falls ich mit einer Antwort helfen konnte, wuerde ich mich freuen, ein paar Fotos oder auch ein kleines Filmchen des zugehoerigen Projekts zu sehen.
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren
Antwort schreiben 


Möglicherweise verwandte Themen...
Thema: Verfasser Antworten: Ansichten: Letzter Beitrag
  Uno LED 9V-Block rseehaus 14 1.299 24.12.2015 10:45
Letzter Beitrag: hotsystems
  LCD Anzeige für Arduino Mega2560 an Arduino Due? DaniDD 1 813 03.06.2015 12:16
Letzter Beitrag: DaniDD
  Arduino Pin mit anderem Arduino auslesen - geht das? Gelegenheitsbastler 8 3.231 08.05.2015 20:49
Letzter Beitrag: Bitklopfer
Question Arduino Mega ADK oder Arduino Due? Baja-Junky 1 4.172 14.08.2013 21:16
Letzter Beitrag: Bitklopfer

Gehe zu:


Benutzer, die gerade dieses Thema anschauen: 1 Gast/Gäste