Lichtschranken Zähler

onal13:
was sind Code-tags?

Das sind Steuercode, mit denen das Forum den Sketch gut formatiert darstellt.
Schaltfläche </> oben links im Editorfenster. Mach das bitte noch nachträglich, dann ist der Sketch auch lesbar.
Die genaue Funktion kannst du in "How to use this forum" nachlesen.

Das zählen im seriellen Monitor klappt schonmal
wie schaffe ich es das die LED nicht bei jeder Unterbrechung leuchtet sondern nur bei der 10. ?

mit freundlichen Grüßen

Hallo,

if (Zähler == 10)
{
LED an;
}
else
{
LED aus;
}

Gruß und Spaß
Andreas

Beispiel-Code:

if(zahl == 10) {
Led an
}
else
{
Led aus
}

2.ter :neutral_face:

Hallo,
"2.ter"
Das ist der ERSTE Verlierer. Ein wenig positiver.

Ich glaube nicht, das es das ist, was er will.
Gruß und Spaß
Andreas

SkobyMobil:
Hallo,
"2.ter"
Das ist der ERSTE Verlierer. Ein wenig positiver.

Ich glaube nicht, das es das ist, was er will.
Gruß und Spaß
Andreas

Auch ok...
Was will er denn ?
Dann soll er es besser beschreiben.
Anders gesagt, er sollte jetzt besser mal selbst programmieren.

SkobyMobil:
"2.ter"
Das ist der ERSTE Verlierer. Ein wenig positiver.

Noch positiver: TOP-LOSER

SCNR

Gregor

HotSystems:
Anders gesagt, er sollte jetzt besser mal selbst programmieren.

ich habs mal versucht aber er will irgendwie nicht.

 int LEDInaktiv=5;  
 int LEDAktiv=6; 
 int PD=A0; 
 int val=0; 
 



void setup() {
  
Serial.begin(9600);

 pinMode(LEDAktiv, OUTPUT); 
 pinMode(LEDInaktiv, OUTPUT);  
 pinMode(PD, INPUT);

 

}

void loop() {


{
 digitalWrite(LEDAktiv, LOW); 
 digitalWrite(LEDInaktiv, HIGH);

  }


 val=analogRead(PD);  
  if (val<60) 
  {
    i++;
  
   delay(500);
  }
  {
int i = 0;
 if (i<10);

{   digitalWrite(LEDAktiv, HIGH); 
 digitalWrite(LEDInaktiv, LOW);

}

Serial.print(i);

 
  }

Hallo,
jetzt haste es vermurkst. Der Sketch davor lief doch.
Das "delay(500)" muß raus.
Wenn eine RennSemmel Deine Lichtschranke passiert, dann erwischt Du diese nicht.

"ich habs mal versucht aber er will irgendwie nicht"

Wer will was nicht?
Gruß und Spaß
Andreas

SkobyMobil:
Wer will was nicht?

ja also wenn die Lichtschranke 10 mal etwas registriert soll die die led von Rot auf Grün umschalten
klappt aber nicht

mit freundlichen grüßen

Hallo,
mit dem Sketch aus #27 klappt nichts- Tonne!

Der Sketch aus #18 läuft doch.
Dann den Zähler aus #19 dazu.
In #21 läuft der Zähler doch.
In #22 leuchtet die LED nur bei "10" sonst ist sie aus.

Und was gefällt Dir bis hier her nicht?
Bring den Sketch erst einmal wieder bis #21 zum laufen.

Gruß und Spaß
Andreas

int LEDInaktiv=5; //Led wenn Lichtschranke nicht durchbrochen 
int LEDAktiv=6; //Led wenn Lichtschranke durchbrochen
int LEDIr=7; //IR Led
int PD=A0; //Analoger Eingang der Photodiode
int val=0; //Messdaten int do_debug=1;
int do_debug=1;
int Zähler;

void setup()
{
if (do_debug ==1) Serial.begin(9600); 
//benötigte Ports aktivieren 
pinMode(LEDAktiv, OUTPUT); 
pinMode(LEDInaktiv, OUTPUT); 
pinMode(LEDIr, OUTPUT); 
pinMode(PD, INPUT);
//IR Led einschalten
digitalWrite(LEDIr,HIGH); //einschalten der IR Diode 
}

void loop()
{
val=analogRead(PD); //Photodiode auslesen
if (val<60) //Wird der Lichtstrahl unterbrochen... 
{
digitalWrite(LEDAktiv, HIGH); 
digitalWrite(LEDInaktiv, LOW);
Zähler++;
}
else
{
digitalWrite(LEDAktiv, LOW); 
digitalWrite(LEDInaktiv, HIGH);
}
if (do_debug ==1)
{ Serial.println(val); //Werte zum Serial Monitor senden
delay(1);
Serial.println(Zähler);
}
}

so den zähler habe ich wieder hinzugefügt aber wie ich dass jetzt schaffe das die Grüne nach 10 mal angeht und die rote dann ausgeht dafür bin ich irgendwie zu blöd

Hallo,
wenn Du den Sketch startest, dann gibt es keinen ZählerWert im seriellen
Monitor?
Wenn Du jetzt einmal die Lichtschranke unterbrichst, was hast Du dann
für einen ZählerWert im seriellen Monitor angezeigt bekommen?
Gruß und Spaß
Andreas

da kommt beim Kompilieren eine Fehlermeldung
stray '\344' in program

was bedeutet das ?

mit freundlichen grüßen

Hallo,
Mist! Mache aus Zähler mal Zaehler.
Gruß und Spaß
Andreas

Hallo,

das Zählen klappt jetzt
danke erstmal für die Hilfe aber wie schaffe ich jetzt das nach 10 mal die grüne led angeht und die rote aus ?

mit freundlichen grüßen

Hallo,
Wenn Du jetzt einmal die Lichtschranke unterbrichst, was hast Du dann
für einen ZählerWert im seriellen Monitor angezeigt bekommen?
Gruß und Spaß
Andreas

SkobyMobil:
Hallo,
Wenn Du jetzt einmal die Lichtschranke unterbrichst, was hast Du dann
für einen ZählerWert im seriellen Monitor angezeigt bekommen?
Gruß und Spaß
Andreas

Er zählt hoch solange ich nicht mehr unterbreche.

mit freundlichen grüßen

Hallo,
wenn Du schnell unterbrichst, dann ist es ein kleiner ZählWert und wenn Du langsam unterbrichst ein großer
Zählwert.
Du solltest erst einmal so abfragen, das bei einer Unterbrechung (egal wie langsam/schnell) nur einmal
gezählt wird.

  1. Unterbrechung, Zählwert 1
  2. Unterbrechung, Zählwert 2
    u.s.w.
    Gruß und Spaß
    Andreas

SkobyMobil:
Du solltest erst einmal so abfragen, das bei einer Unterbrechung (egal wie langsam/schnell) nur einmal
gezählt wird.

also ich hab den Zähler den wert 0 gegeben aber das klappt nicht