Go Down

Topic: Sonnen Verfolgung 2 Achsen (Read 786 times) previous topic - next topic

newpv

Sep 09, 2020, 07:59 pm Last Edit: Sep 09, 2020, 08:01 pm by newpv
Hallo,
ich bin neu beim Programmieren und möchte gerne ein Programm erstellen mit 2 Beweglichen Achsen für die Sonne verfolgung. Habe nach Vorlage gearbeitet! Das Problem ist jetzt ich muss ja 2x die Differenz ausrechnen. 1x zwischen dem LDR links-rechts und 1x zwischen dem LDR oben-unten. bekomme aktuell eine Fehlermeldung, da ich nich weiß wie ich diese unterschiedlich diffieren/bennen kann.
Hier das Programm:
Code: [Select]
// Servo-Library einbinden
#include <Servo.h>

// Servo-Objekt horizontal erzeugen, Motor rechts-links
Servo horizontal;

// Startwinkel für den Servo horizontal (Bereich 0-179 Grad)
int servoh = 90;

// Servo-Objekt vertikal erzeugen, Motor oben-unten
Servo vertikal;

// Startwinkel für den Servo vertikal (Bereich 0-90 Grad)
int servov = 45;


void setup() {
 // Serielle Schnittstelle initialisieren
 Serial.begin(9600);
 // Pin 5 PWM als Ausgabe-Pin
 pinMode(5, OUTPUT);
 // Pin 5 PWM ist Steuerpin für den Servo horizontal, Motor rechts-links
 horizontal.attach(5);
 horizontal.write(servoh);
 delay(20);
 // Pin 6 PWM als Ausgabe-Pin
 pinMode(6, OUTPUT);
 // Pin 6 PWM ist Steuerpin für den Servo vertikal, Motor oben-unten, Startwinkel setzen und warte Zeit
 vertikal.attach(6);
 vertikal.write(servov);
 delay(20);
}

void loop() {

 // Helligkeit der 2 lichtempfindlichen Widerstände für horizontal auslesen (Rechts)
 int rightEye = analogRead(0);
 // Faktor 1.0 anpassen, wenn die Widerstände sehr unterschiedlich sind (Links)
 int leftEye = analogRead(1) * 1.0;

 // Differenz horizontal ausrechnen
 int diff = (rightEye - leftEye);

 // Wenn rechts deutlich heller als links -> 2 Grad nach rechts drehen
 if (diff > 20) {
   servoh = servoh + 2;
 }

 // Wenn links deutlich heller als rechts -> 2 Grad nach links drehen
 if (diff < -20) {
   servoh = servoh - 2;
 }

 // Servo horizontal max. bis 179 Grad drehen
 if (servoh > 179) {
   servoh = 179;
 }

 // Servo horizontal min. bis 0 Grad drehen
 if (servoh < 0) {
   servoh = 0;
 }

 // Grad an den Servo horizontal schicken
 horizontal.write(servoh);

 // Warte Zeit bis der Servo horizontal gefahren ist
 delay(100);

 // Helligkeit der 2 lichtempfindlichen Widerstände für vertikal auslesen (Oben)
 int aboveEye = analogRead(2);
 // Faktor 1.0 anpassen, wenn die Widerstände sehr unterschiedlich sind (Unten)
 int belowEye = analogRead(3) * 1.0;

 // Differenz vertikal ausrechnen
 int diff = (aboveEye - belowEye);

 // Wenn oben deutlich heller als unten -> 2 Grad nach oben drehen
 if (diff > 20) {
   servov = servov + 2;
 }

 // Wenn unten deutlich heller als oben -> 2 Grad nach unten drehen
 if (diff < -20) {
   servov = servov - 2;
 }

 // Servo vertikal max. bis 90 Grad drehen
 if (servov > 90) {
   servov = 90;
 }

 // Servo vertikal min. bis 0 Grad drehen
 if (servov < 0) {
   servov = 0;
 }

 // Grad an den Servo horizontal schicken
 vertikal.write(servov);

 // Die beiden Helligkeitswerte zu Testzwecken an den PC übertragen
 Serial.println(String(rightEye) + "-" + String(leftEye));
 Serial.println(String(aboveEye) + "-" + String(belowEye));

 // Kurze Wartezeit, dann nächste Messung.
 // Sollte es beim Testen der Einstellungen zu chaotisch werden,
 // diesen Wert einfach auf 50 oder 100 erhöhen und damit den Vorgang verlangsamen
 delay(20);
}

PS.: Die Zeiten werden natürlich noch angepasst, ist erstmal zum testen!

Tommy56

Und wo ist die Fehlermeldung? (Bitte die auch in Codetags)

Gruß Tommy
"Wer den schnellen Erfolg sucht, sollte nicht programmieren, sondern Holz hacken." (Quelle unbekannt)

Peter-CAD-HST

#2
Sep 09, 2020, 08:16 pm Last Edit: Sep 10, 2020, 05:18 am by Peter-CAD-HST
Moin newpv

Mal ne schnelle Frage:
Warum nimmst du keine lokale Uhr um den Sonnenstand zu verfolgen?

Gruss Peter
und gesund bleiben
KISS Q&D - keep calm and carry on - mind the gap - beware of sharks! -

uwefed

Code: [Select]
Serial.println(String(rightEye) + "-" + String(leftEye));
 Serial.println(String(aboveEye) + "-" + String(belowEye));

Was soll der Sch... mit Strings um 2 Zahlen mit einem Strich in der Mitte auszugeben?

Code: [Select]
Serial.print(rightEye);
Serial.print(" - ");
Serial.println(leftEye);

macht das viel besser.

Die Servo-Bibliothek kann auf jeden Pin den Servo ansteuern. Es müssen keine PWM Pins sein.
Außerdem müssen diese Pins auch nicht mit pinMode initialisiert werden. Das macht die Bibliothek.
Also lösche pinMode();

Die Fehlermeldung möchte ich auch gerne sehen. Ich kann sie nämlich nicht erraten.

Grüße Uwe
 

michael_x

Quote
int diff = ...
Vermutlich meckert der Compiler beim zweiten Mal, dass diff schon definiert ist.

Entweder du definierst eine zweite Variable, mit anderem Namen,
oder du verwendest die bereits definierte nochmal.
Code: [Select]

   ...
  // Differenz vertikal ausrechnen
  diff = (aboveEye - belowEye);
  ...

newpv

#5
Sep 10, 2020, 04:07 pm Last Edit: Sep 10, 2020, 04:32 pm by newpv
Danke für eure Antworten!

Vermutlich meckert der Compiler beim zweiten Mal, dass diff schon definiert ist.
Genau das ist es!

Quote
exit status 1
redeclaration of 'int diff'
Wäre dieser Code besser geeignet?
Code: [Select]
#include <Servo.h> // Servo-Library einbinden

Servo horizontal; // Horizontale Servo
int servoh = 90; // Horizontale Servo stehen

Servo vertikal; // Vertikale Servo
int servov = 90; // Vertikale Servo stehen

// LDR Stiftverbindungen
// Name = analogpin;
int ldrlt = 0; // LDR oben links
int ldrrt = 1; // LDR ober rechts
int ldrld = 2; // LDR unten links
int ldrrd = 3; // LDR unten recht

Leere setup ()
{
  Serial.begin (9600);
  // Servoanschlüsse
  // Name.attacht (Pin);
  horizontal.attach (9);
  vertical.attach (10);
}

Leere Schleife ()
{
  int lt = analogRead (ldrlt); // oben links
  int rt = analogRead (ldrrt); // oben rechts
  int ld = analogRead (ldrld); // unten links
  int rd = analogRead (ldrrd); // unten rigt

  int dtime = analogRead (4) / 20; // Lesen Potentiometer
  int tol = analogRead (5) / 4;

  int avt = (LT + RT) / 2; // Mittelwert top
  int avd = (ld + rd) / 2; // Mittelwert nach unten
  int avl = (lt + ld) / 2; // Mittelwert links
  int avr = (RT + rd) / 2; // Mittelwert rechts

  int DVERT = avt - avd; // Überprüfen Sie die diffirence zwischen oben und unten
  int dhoriz = avl - avr; // überprüfen Sie die diffirence zwischen links und rechts

  if (-1 * tol > DVERT || DVERT > tol) // überprüfen, ob die diffirence im Toleranz anderes ändern vertikalen Winkel
  {
    if (avt > avd)
    {
      servov = ++ servov;
      if (servov > 180)
      {
        servov = 180;
      }
    }
    else if (avt < avd)
    {
      servov = --servov;
      if (servov < 0)
      {
        servov = 0;
      }
    }
    vertical.write (servov);
  }

  if (-1 * tol > dhoriz || dhoriz > tol) // überprüfen, ob die diffirence im Toleranz anderes ändern horizontalen Winkel
  {
    if (avl > avr)
    {
      servoh = --servoh;
      if (servoh < 0)
      {
        servoh = 0;
      }
    }
    else if (avl < avr)
    {
      servoh = ++ servoh;
      if (servoh > 180)
      {
        servoh = 180;
      }
    }
    else if (avl == avr)
    {
      // gar nichts
    }
    horizontal.write (servoh);
  }
  Verzögerung (DTIME);
}

// Die 4 Helligkeitswerte zu Testzwecken an den PC übertragen
Serial.print(ldrlt); // LDR oben links
Serial.print(" - ");
Serial.println(ldrrt); // LDR oben rechts
Serial.print(" - ");
Serial.println(ldrld); // LDR unten links
Serial.print(" - ");
Serial.println(ldrrd); // LDR unten rechts

Quelle:
https://www.clickoslo.com/arduino-solar-tracker.html

Bin kein Programmierer, lese mich ein und möchte es mit eurer Hilfe verwenden!

Tommy56

Da hast Du Dir bei C&P ein böses Zeichen eingefangen.
Öffne den Text mal in einem Editor, bei dem Du zwischen UTF8 und ASCII/ANSI umschalten kannst (z.B. Notepad++). Dann müsstest Du beim Umschalten ein komisches Zeichen sehen, dass Du löschen solltest.

Gruß Tommy
"Wer den schnellen Erfolg sucht, sollte nicht programmieren, sondern Holz hacken." (Quelle unbekannt)

newpv

#7
Sep 10, 2020, 04:47 pm Last Edit: Sep 10, 2020, 04:56 pm by newpv
Habe es versucht, aber leider ist dort kein komisches Zeichen...

Code: [Select]
#include <Servo.h> // Servo-Library einbinden

Servo horizontal; // Horizontale Servo
int servoh = 90; // Horizontale Servo stehen

Servo vertikal; // Vertikale Servo
int servov = 90; // Vertikale Servo stehen

// LDR Stiftverbindungen
// Name = analogpin;
int ldrlt = 0; // LDR oben links
int ldrrt = 1; // LDR oben rechts
int ldrld = 2; // LDR unten links
int ldrrd = 3; // LDR unten rechts

Leere setup ()
{
  Serial.begin (9600);
  // Servoanschlüsse
  // Name.attacht (Pin);
  horizontal.attach (9);
  vertical.attach (10);
}

Leere Schleife ()
{
  int lt = analogRead (ldrlt); // oben links
  int rt = analogRead (ldrrt); // oben rechts
  int ld = analogRead (ldrld); // unten links
  int rd = analogRead (ldrrd); // unten rechts

  int dtime = analogRead (4) / 20; // Lesen Potentiometer
  int tol = analogRead (5) / 4;

  int avt = (LT + RT) / 2; // Mittelwert top
  int avd = (ld + rd) / 2; // Mittelwert nach unten
  int avl = (lt + ld) / 2; // Mittelwert links
  int avr = (RT + rd) / 2; // Mittelwert rechts

  int dvert = avt - avd; // Überprüfen der diffirence zwischen oben und unten
  int dhoriz = avl - avr; // Überprüfen der diffirence zwischen links und rechts

  if (-1 * tol > dvert || dvert > tol) // Überprüfen, ob die diffirence im Toleranz, wenn nicht vertikalen Winkel verändern
  {
    if (avt > avd)
    {
      servov = ++ servov;
      if (servov > 180)
      {
        servov = 180;
      }
    }
    else if (avt < avd)
    {
      servov = --servov;
      if (servov < 0)
      {
        servov = 0;
      }
    }
    vertical.write (servov);
  }

  if (-1 * tol > dhoriz || dhoriz > tol) // Überprüfen, ob die diffirence im Toleranz, wenn nicht horizontalen Winkel verändern
  {
    if (avl > avr)
    {
      servoh = --servoh;
      if (servoh < 0)
      {
        servoh = 0;
      }
    }
    else if (avl < avr)
    {
      servoh = ++ servoh;
      if (servoh > 180)
      {
        servoh = 180;
      }
    }
    else if (avl == avr)
    {
      // gar nichts
    }
    horizontal.write (servoh);
  }
  Verzögerung (DTIME);
}

// Die 4 Helligkeitswerte zu Testzwecken an den PC übertragen
Serial.print(ldrlt); // LDR oben links
Serial.print(" - ");
Serial.println(ldrrt); // LDR oben rechts
Serial.print(" - ");
Serial.println(ldrld); // LDR unten links
Serial.print(" - ");
Serial.println(ldrrd); // LDR unten rechts


Und wenn ich die Zeile "  Verzögerung (DTIME);" ändere in "Verzoegerung (DTIME);" kommt diese Fehlermeldung:
Code: [Select]
exit status 1
'Leere' does not name a type


Das ist auch das einzige Symbol, was komisch ist, das "ü" bei Verzögerung!

newpv

#8
Sep 10, 2020, 04:58 pm Last Edit: Sep 10, 2020, 05:12 pm by newpv
Habe noch einen Fehler gesehen:
Code: [Select]
#include <Servo.h> // Servo-Library einbinden

Servo horizontal; // Horizontale Servo
int servoh = 90; // Horizontale Servo stehen

Servo vertikal; // Vertikale Servo
int servov = 90; // Vertikale Servo stehen

// LDR Stiftverbindungen
// Name = analogpin;
int ldrlt = 0; // LDR oben links
int ldrrt = 1; // LDR oben rechts
int ldrld = 2; // LDR unten links
int ldrrd = 3; // LDR unten rechts

Leere setup ()
{
  Serial.begin (9600);
  // Servoanschlüsse
  // Name.attacht (Pin);
  horizontal.attach (9);
  vertical.attach (10);
}

Leere Schleife ()
{
  int lt = analogRead (ldrlt); // oben links
  int rt = analogRead (ldrrt); // oben rechts
  int ld = analogRead (ldrld); // unten links
  int rd = analogRead (ldrrd); // unten rechts

  int dtime = analogRead (4) / 20; // Lesen Potentiometer
  int tol = analogRead (5) / 4;

  int avt = (LT + RT) / 2; // Mittelwert top
  int avd = (ld + rd) / 2; // Mittelwert nach unten
  int avl = (lt + ld) / 2; // Mittelwert links
  int avr = (RT + rd) / 2; // Mittelwert rechts

  int dvert = avt - avd; // Überprüfen der diffirence zwischen oben und unten
  int dhoriz = avl - avr; // Überprüfen der diffirence zwischen links und rechts

  if (-1 * tol > dvert || dvert > tol) // Überprüfen, ob die diffirence im Toleranz, wenn nicht vertikalen Winkel verändern
  {
    if (avt > avd)
    {
      servov = ++ servov;
      if (servov > 180)
      {
        servov = 180;
      }
    }
    else if (avt < avd)
    {
      servov = --servov;
      if (servov < 0)
      {
        servov = 0;
      }
    }
    vertical.write (servov);
  }

  if (-1 * tol > dhoriz || dhoriz > tol) // Überprüfen, ob die diffirence im Toleranz, wenn nicht horizontalen Winkel verändern
  {
    if (avl > avr)
    {
      servoh = --servoh;
      if (servoh < 0)
      {
        servoh = 0;
      }
    }
    else if (avl < avr)
    {
      servoh = ++ servoh;
      if (servoh > 180)
      {
        servoh = 180;
      }
    }
    else if (avl == avr)
    {
      // gar nichts
    }
    horizontal.write (servoh);
  }
  Verzögerung (DTIME);
}

// Die 4 Helligkeitswerte zu Testzwecken an den PC übertragen
Serial.println(String(ldrlt)); // LDR oben links
Serial.println(String(" - "));
Serial.println(String(ldrrt)); // LDR oben rechts
Serial.println(String)(" - ");
Serial.println(String)(ldrld); // LDR unten links
Serial.println(String)(" - ");
Serial.println(String)(ldrrd); // LDR unten rechts


Hier die Komplette Fehlermeldung:
Code: [Select]
Arduino: 1.8.10 (Windows 10), Board: "Arduino/Genuino Uno"

Sonnen_Verfolgung:88:7: error: stray '\303' in program

   Verzögerung (DTIME);

       ^

Sonnen_Verfolgung:88:8: error: stray '\266' in program

   Verzögerung (DTIME);

        ^

Sonnen_Verfolgung:16:1: error: 'Leere' does not name a type

 Leere setup ()

 ^~~~~

Sonnen_Verfolgung:25:1: error: 'Leere' does not name a type

 Leere Schleife ()

 ^~~~~

Sonnen_Verfolgung:16:1: error: 'Leere' does not name a type

 Leere setup ()

 ^~~~~

Sonnen_Verfolgung:25:1: error: 'Leere' does not name a type

 Leere Schleife ()

 ^~~~~

Sonnen_Verfolgung:92:1: error: 'Serial' does not name a type

 Serial.println(String(ldrlt)); // LDR oben links

 ^~~~~~

Sonnen_Verfolgung:93:1: error: 'Serial' does not name a type

 Serial.println(String(" - "));

 ^~~~~~

Sonnen_Verfolgung:94:1: error: 'Serial' does not name a type

 Serial.println(String(ldrrt)); // LDR oben rechts

 ^~~~~~

Sonnen_Verfolgung:95:1: error: 'Serial' does not name a type

 Serial.println(String)(" - ");

 ^~~~~~

Sonnen_Verfolgung:96:1: error: 'Serial' does not name a type

 Serial.println(String)(ldrld); // LDR unten links

 ^~~~~~

Sonnen_Verfolgung:97:1: error: 'Serial' does not name a type

 Serial.println(String)(" - ");

 ^~~~~~

Sonnen_Verfolgung:98:1: error: 'Serial' does not name a type

 Serial.println(String)(ldrrd); // LDR unten rechts

 ^~~~~~

Mehrere Bibliotheken wurden für "Servo.h" gefunden
 Benutzt: C:\Users\...\Documents\Arduino\libraries\Servo
 Nicht benutzt: C:\Users\...\Documents\Arduino\libraries\Servo-1.1.6
 Nicht benutzt: C:\Program
exit status 1
stray '\303' in program

Dieser Bericht wäre detaillierter, wenn die Option
"Ausführliche Ausgabe während der Kompilierung"
in Datei -> Voreinstellungen aktiviert wäre.

Moko

Habe es versucht, aber leider ist dort kein komisches Zeichen...

Code: [Select]


Leere setup ()

Leere Schleife ()


hast Du versucht den Sketch per Google translator zu übersetzen? *g*

Tommy56

"Wer den schnellen Erfolg sucht, sollte nicht programmieren, sondern Holz hacken." (Quelle unbekannt)

Moko

#11
Sep 10, 2020, 05:17 pm Last Edit: Sep 10, 2020, 05:18 pm by Moko
Doch das ö.

Gruß Tommy
hieß vor google translate bestimmt noch "delay" statt Verzögerung ;)

newpv

#12
Sep 10, 2020, 05:18 pm Last Edit: Sep 10, 2020, 05:24 pm by newpv
Danke das war Fehler nr.1, habe jetzt delay drin

Dann ist also noch zusätzlich der Fehler bei Leere setup () & Leere Schleife () habe es jetzt geändert in viod setup & void loop...wir kommen weiter :)

Jetzt sieht es so aus:
Code: [Select]
#include <Servo.h> // Servo-Library einbinden

Servo horizontal; // Horizontale Servo
int servoh = 90; // Horizontale Servo stehen

Servo vertikal; // Vertikale Servo
int servov = 90; // Vertikale Servo stehen

// LDR Stiftverbindungen
// Name = analogpin;
int ldrlt = 0; // LDR oben links
int ldrrt = 1; // LDR oben rechts
int ldrld = 2; // LDR unten links
int ldrrd = 3; // LDR unten rechts

void setup ()
{
  Serial.begin (9600);
  // Servoanschlüsse
  // Name.attacht (Pin);
  horizontal.attach (9);
  vertical.attach (10);
}

void loop ()
{
  int lt = analogRead (ldrlt); // oben links
  int rt = analogRead (ldrrt); // oben rechts
  int ld = analogRead (ldrld); // unten links
  int rd = analogRead (ldrrd); // unten rechts

  int dtime = analogRead (4) / 20; // Lesen Potentiometer
  int tol = analogRead (5) / 4;

  int avt = (LT + RT) / 2; // Mittelwert top
  int avd = (ld + rd) / 2; // Mittelwert nach unten
  int avl = (lt + ld) / 2; // Mittelwert links
  int avr = (RT + rd) / 2; // Mittelwert rechts

  int dvert = avt - avd; // Überprüfen der diffirence zwischen oben und unten
  int dhoriz = avl - avr; // Überprüfen der diffirence zwischen links und rechts

  if (-1 * tol > dvert || dvert > tol) // Überprüfen, ob die diffirence im Toleranz, wenn nicht vertikalen Winkel verändern
  {
    if (avt > avd)
    {
      servov = ++ servov;
      if (servov > 180)
      {
        servov = 180;
      }
    }
    else if (avt < avd)
    {
      servov = --servov;
      if (servov < 0)
      {
        servov = 0;
      }
    }
    vertical.write (servov);
  }

  if (-1 * tol > dhoriz || dhoriz > tol) // Überprüfen, ob die diffirence im Toleranz, wenn nicht horizontalen Winkel verändern
  {
    if (avl > avr)
    {
      servoh = --servoh;
      if (servoh < 0)
      {
        servoh = 0;
      }
    }
    else if (avl < avr)
    {
      servoh = ++ servoh;
      if (servoh > 180)
      {
        servoh = 180;
      }
    }
    else if (avl == avr)
    {
      // gar nichts
    }
    horizontal.write (servoh);
  }
  delay (DTIME);
}

// Die 4 Helligkeitswerte zu Testzwecken an den PC übertragen
Serial.println(String(ldrlt)); // LDR oben links
Serial.println(String(" - "));
Serial.println(String(ldrrt)); // LDR oben rechts
Serial.println(String)(" - ");
Serial.println(String)(ldrld); // LDR unten links
Serial.println(String)(" - ");
Serial.println(String)(ldrrd); // LDR unten rechts


Jetzt sind noch Fehler in der Bennenung
Neue Fehlerausgabe:
Code: [Select]
Arduino: 1.8.10 (Windows 10), Board: "Arduino/Genuino Uno"

E:\Arduino Projekt Solar\Sonnen_Verfolgung\Sonnen_Verfolgung.ino: In function 'void setup()':

Sonnen_Verfolgung:22:3: error: 'vertical' was not declared in this scope

   vertical.attach (10);

   ^~~~~~~~

E:\Arduino Projekt Solar\Sonnen_Verfolgung\Sonnen_Verfolgung.ino:22:3: note: suggested alternative: 'vertikal'

   vertical.attach (10);

   ^~~~~~~~

   vertikal

E:\Arduino Projekt Solar\Sonnen_Verfolgung\Sonnen_Verfolgung.ino: In function 'void loop()':

Sonnen_Verfolgung:35:14: error: 'LT' was not declared in this scope

   int avt = (LT + RT) / 2; // Mittelwert top

              ^~

Sonnen_Verfolgung:35:19: error: 'RT' was not declared in this scope

   int avt = (LT + RT) / 2; // Mittelwert top

                   ^~

Sonnen_Verfolgung:61:5: error: 'vertical' was not declared in this scope

     vertical.write (servov);

     ^~~~~~~~

E:\Arduino Projekt Solar\Sonnen_Verfolgung\Sonnen_Verfolgung.ino:61:5: note: suggested alternative: 'vertikal'

     vertical.write (servov);

     ^~~~~~~~

     vertikal

Sonnen_Verfolgung:88:10: error: 'DTIME' was not declared in this scope

   delay (DTIME);

          ^~~~~

E:\Arduino Projekt Solar\Sonnen_Verfolgung\Sonnen_Verfolgung.ino: At global scope:

Sonnen_Verfolgung:92:1: error: 'Serial' does not name a type

 Serial.println(String(ldrlt)); // LDR oben links

 ^~~~~~

Sonnen_Verfolgung:93:1: error: 'Serial' does not name a type

 Serial.println(String(" - "));

 ^~~~~~

Sonnen_Verfolgung:94:1: error: 'Serial' does not name a type

 Serial.println(String(ldrrt)); // LDR oben rechts

 ^~~~~~

Sonnen_Verfolgung:95:1: error: 'Serial' does not name a type

 Serial.println(String)(" - ");

 ^~~~~~

Sonnen_Verfolgung:96:1: error: 'Serial' does not name a type

 Serial.println(String)(ldrld); // LDR unten links

 ^~~~~~

Sonnen_Verfolgung:97:1: error: 'Serial' does not name a type

 Serial.println(String)(" - ");

 ^~~~~~

Sonnen_Verfolgung:98:1: error: 'Serial' does not name a type

 Serial.println(String)(ldrrd); // LDR unten rechts

 ^~~~~~

Mehrere Bibliotheken wurden für "Servo.h" gefunden
 Benutzt: C:\Users\...\Documents\Arduino\libraries\Servo
 Nicht benutzt: C:\Users\...\Documents\Arduino\libraries\Servo-1.1.6
 Nicht benutzt: C:\Program
exit status 1
'vertical' was not declared in this scope

Dieser Bericht wäre detaillierter, wenn die Option
"Ausführliche Ausgabe während der Kompilierung"
in Datei -> Voreinstellungen aktiviert wäre.

Moko

was soll Verzögerung sein?
wenn, dann delay (auch wenn es nicht schön ist)
und

void setup()
void loop()

Tommy56

Wenn ich das ö andere in oe geht es auch noch nicht...

Dann ist also noch zusätlich der Fehler bei Leere setup () & Leere Schleife ()
Das ö musst Du aber ändern. Das "Leere setup()" habe ich für einen Witz gehalten. Ich wäre nie auf den Gedanken gekommen, dass jemand sowas wirklich macht.

Gruß Tommy

"Wer den schnellen Erfolg sucht, sollte nicht programmieren, sondern Holz hacken." (Quelle unbekannt)

Go Up