Verschillende errors - wie helpt mij voor mijn school opdracht?

Beste allemaal,

ik moet voor mijn opleiding een simpele Arduino code inleveren waar het een en ander in moet zitten. Ik heb alle verplichten elementen er al in verwerkt. Voor mijn gevoel heb ik alles goed staan maar toch blijf ik maar verschillende errors krijgen. Zelf ben ik een beginner en heb ik 8 uurtje les gehad in Arduino. Zou iemand mijn kunnen helpen met het ontrafelen van mijn errors? Het zijn naar mijn verwachting helemaal geen moeilijke foutjes maar ik kan ze zelf helaas niet vinden.

#include <Adafruit_NeoPixel.h> //dit is de library voor de neopixel
#include <hcsr04.h> //dit is de liberty voor de afstand meter

#define trigPin 8 // pin hcrs04
#define echoPin 7 // pin hcrs04
#define led 3
#define led2 4
int sensorPin = A0; // pin potentiometer
int sensorValue = 0;

//// Dit deel code komt uit de librerie van Arduino - neopixel
#define PIN 5 // Which pin on the Arduino is connected to the NeoPixels?
#define NUMPIXELS 1 // How many NeoPixels are attached to the Arduino?
Adafruit_NeoPixel pixels = Adafruit_NeoPixel(NUMPIXELS, PIN, NEO_GRB + NEO_KHZ800);
// tot hier komt deze code komt uit de librerie van Arduino - neopixel

void setup() {
Serial.begin (9600);
pinMode(trigPin, OUTPUT);
pinMode(echoPin, INPUT);
pinMode(led, OUTPUT);
pinMode(led2, OUTPUT);
pixels.begin(); // Dit deel code komt uit de librerie van Arduino
pixels.setPixelColor(0, pixels.Color(val, val, val)); //hierdoor koppel je de draaiknop aan de neopixel
}

void loop() {
int val = analogRead(sensorPin); //Val 0 maar wordt later bepaald door sensorPin
val = map(val, 5, 1023, 5, 255); // Hier bepaal je de waarden van de draaiknop de max en de min
pixels.show(); // This sends the updated pixel color to the hardware.

// mooier/ korter opschrijven - if-else/map
if (distance < 10) { // vanaf 10 cm van de sensor gaat het rode ledje branden
digitalWrite(led, HIGH); // als led aan is, gaat led2 uit
digitalWrite(led2, LOW);
}
else {
digitalWrite(led, LOW);
digitalWrite(led2, HIGH);
}
if (distance >= 20 || distance <= 0) { // onder de 0 of boven de 20, presenteer out of range
Serial.println("Out of range"); //buiten de 20 centimeter, presentatie out of range
}
else {
Serial.print(distance);
Serial.println("cm");
}
delay(200);

}

Dan zou ik eens beginnen met het aangeven van welke errors je krijgt.....

Maar zo ff gauw... waar bereken jij distance? En hoe declareer je deze?

Dan gebruik je in de setup de variabele val (meerdere malen) die zomaar uit de lucht komen vallen

Dan heb je het over een HC-SR04 die wel geinclude wordt terwijl je een analoge pin zit te lezen.

Samenvattend:
a) riekt erg naar veel plak werk wat meestal misgaat
b) declaratie van variabelen is niet consistent (soms wel soms niet)
c) aanpak hoe een sensor te lezen klopt niet
d) Je gebruikt een ledstrip maar vult de functies niet goed of je gebruikt variabelen die nergens gedefinieerd zijn.