Projekt Abstandsmessung HC SR04 Ultraschallsensor und ESP32 Wroom

Hallo zusammen,

im Rahmen der Informatik-Vorlesung muss ich ein Projekt machen mit einem Mikrokontroller + Aduino.
Zu meiner Idee: Ich will einen Abstandmesser bauen. Um dies umzusetzen, benutze ich einen ESP32(ESPRESSIF ESP32-Wroom-32D), einen Ultrasonic HC-SR04 Sensor, 4 LEDs(rot, gelb, grün blau), einen Piezo Buzzer sowie ein Nokia 5110 LCD-Display. Dabei sollen die LEDs je nach gemessener Distanz aufleuchten(zuerst blau, grün, usw...). Unterschreitet die gemessene Distanz einen kritischen Wert, so soll der Piezo-Buzzer einen Ton aussenden.

Versuchsaufbau: https://drive.google.com/file/d/1HYHpXiUwyAKizrTaX3zHkGqI-nNWJAVI/view?usp=sharing

Mein Problem dabei ist dass ich nicht wirklich weiß, wie ich in Arduino anfangen soll zu programmieren. Ich habe bereits die Bibliotheken für den Sensor und das Display eingebunden. Kann mir da jemand bisschen Starthilfe geben? Bin für jede Hilfe dankbar!

PS: Ich bin absoluter Anfänger, d.h wenn jemand der Meinung ist dass das Projekt als Anfänger nur schwer umsetzbar ist und ich lieber was anderes machen sollte, bitte sagen, da ich es nicht wirklich einschätzen kann.

Der ESP32 ist kein Anfängerprozessor. Ein UNO wäre besser, weil Du dafür mehr Informationen findest.

Ansonsten lerne die Grundlagen, schaue Dir die Beispiele in der IDE an und baue es Schrittweise gemäß Deinem Kenntnisfortschritt auf.

  1. LEDs ein- und ausschalten
  2. Buzzer ansteuern (ist der aktiv oder passiv?)
  3. HC-SR04 ansteuern und Entfernung messen
  4. alles verheiraten
  5. fertig

Gruß Tommy

jand61:
PS: Ich bin absoluter Anfänger, d.h wenn jemand der Meinung ist dass das Projekt als Anfänger nur schwer umsetzbar ist und ich lieber was anderes machen sollte, bitte sagen, da ich es nicht wirklich einschätzen kann.

Ich finde, dass Du Dir zu viel vorgenommen hast. Als totaler Neuling solltest Du zu einem Arduino Uno oder Nano greifen und mit sehr einfachen Sachen anfangen. Die Beispiele in der IDE sind für den Einstieg gut geeignet.

Gruß

Gregor

Hallo zusammen,

schonmal Danke für die Hilfe! Ich werde jetzt versuchen, wie es Tommy56 gesagt hat, schrittweise die einzelnen Bauteile zum laufen zu bringen und dann zum Schluss alles "zusammenbringen". Ich habe nun einen Code geschrieben um eine LED zum blinken zu bringen. Arduino zeigt mir auch an dass der Upload erfolgreich war, jedoch leuchtet die LED auf dem Board nicht.

Der Code ist wie folgt:

const int PIN_blue_LED = 16;                         


void setup()
{
 pinMode (PIN_blue_LED, OUTPUT);
}



void loop()
{
 digitalWrite (PIN_blue_LED, HIGH);
 delay(250);

 digitalWrite (PIN_blue_LED, LOW);
 delay(250);

}

In meinem ersten Post habe ich ein Bild von meiner Schaltung verlinkt(dabei soll jetzt NUR die blaue LED angesteuert werden). Kann da jemand einen Fehler erkennen?

Ja, zwei Fehler:
Du schaltest die Led sofort wieder aus. Das geht so schnell, dass du es nicht sehen kannst.
Setze zwischen die Schaltanweisungen ein delay(1000). Hier ist es erlaubt. :wink:

Evtl. hast du die Led auch falsch angeschlossen.
Hast du einen Vorwiderstand drin ?

Und du solltest deinen Sketch in Code-Tags setzen.

Verwende dazu die Schaltfläche </> oben links im Editorfenster.
Dazu den Sketch markieren und die Schaltfläche klicken.

Damit wird dieser für alle besser lesbar, auch für mobile Geräte.

Ja, Vorwiderstand ist 220 Ohm. Habe es gerade probiert und es funktioniert immer noch nicht. Kann es sein, dass sich der ESP32 noch im Flash Modus befindet und es deshalb nicht funktioniert? Ich benutze den ESP32 Wroom 32D von ESPRESSIF.

jand61:
Ich benutze den ESP32 Wroom 32D von ESPRESSIF.

Wie gesagt, ein ESP ist für Anfänger eher schlecht geeignet.

Hat das Ding, mit dem Du gerade arbeitest, eine Onboard-LED? Wenn ja, benutze zunächst diese LED, da kannst Du sicher sein, dass sie korrekt beschaltet ist. Vielleicht hast Du die LED aber auch einfach nur verpolt gesteckt.

Eine Onboard-LED ist außerdem einfacher zu referenzieren. Die schaltest Du einfach nur mit z. B.:

digitalWrite(LED_BUILTIN, HIGH);

Gruß

Gregor

Zwei Dinge die noch Probleme bereiten können.
Ist die Led richtig rum eingesetzt ?
Verwende mal als Pin-Nummer die GPIO-Nummer.
Überprüfe die Nummer im Pinout.

Und gerne nochmal.
Setze den Sketch in Code-Tags.

Ich würde gerne den Arduino benutzen, wir müssen aber leider den ESP32 benutzen. Ich habe hier mal noch ein Bild von meiner Schaltung...kann da jemand einen Fehler erkennen? Ich habe de Widerstand schon zwischen Diode und +, als auch zwischen Diode und Masse gesteckt, funktioniert beides nicht.

https://drive.google.com/open?id=1Hd9Z8qeNOUZP6tlpv-cgV-7mzVHjXFDW

Poste dein Bild direkt im Forum, dann können das alle sehen und es wird nicht gelöscht.

Hast du das mit dem Pin getestet und die Led mal gedreht ?
Warum gehst du nicht auf unsere Fragen ein ?

Und auf dem Bild ist nichts zu erkennen.
Wenn dann muss es von oben fotografiert werden.
Siehst du dir das Bild nicht mal vorher an ?

Wenn du das so nicht hin bekommst, dann nimm doch erstmal nur die Le und den Widerstand und stecke die zwischen +5V und GND.
wenn das nicht geht, die Led umdrehen. Wenn es so funktioniert, weißt du wie rum die Led muss.
Grundsätzlich ist der lange Anschlussdraht die Anode, da muss +Spannung ran.

Eine eingebaute LED hat das Board anscheinend nicht, zumindest habe ich nichts dazu gefunden.

Ich dachte wenn man leicht von der Seite fotografiert kann man besser erkennen, wo genau die Drähte eingesteckt sind…hier das neue Bild nur mit LED und Widerstand.

https://drive.google.com/open?id=1HfRXk0p_ZcJ0yD4IF3ik0oezCFMxcQvR

Ich habe jetzt nochmal die LED in beide Richtungen eingesteckt, aber es tut sich immer noch nix…kann es sein, dass ich beim Hochladen etwas falsch mache?

jand61:
Eine eingebaute LED hat das Board anscheinend nicht, zumindest habe ich nichts dazu gefunden.

Ich dachte wenn man leicht von der Seite fotografiert kann man besser erkennen, wo genau die Drähte eingesteckt sind...hier das neue Bild nur mit LED und Widerstand.

https://drive.google.com/open?id=1HfRXk0p_ZcJ0yD4IF3ik0oezCFMxcQvR

Ich habe jetzt nochmal die LED in beide Richtungen eingesteckt, aber es tut sich immer noch nix...kann es sein, dass ich beim Hochladen etwas falsch mache?

Du scheinst dich total unserer Angaben und Beiträgen zu verweigern.

Ich hatte dir geschrieben, du sollst die Bilder hier im Forum posten und nicht irgendwo im Netz wo die Bilder morgen weg sind.

Und es tut sich immer noch nix ist ne super aussage.
Due solltest mal das lesen und machen, was man dir schreibt oder es komplett sein lassen.
So macht das keinen Sinn und keinen Spass.

Und ein letztes mal, siehst du dir die Bilder an, die du machst ?
Ich kann da nichts richtiges erkennen.

Habe auch keine Lust mehr.

Wenn du es nicht kannst,dann lass es lieber.....jemand machen, der es kann.

Ach, was die eingebaute Led betrifft, dann lies mal die Beschreibung durch.
Da gibt es sicher eine.
Oder blinkt da nix beim einschalten ?

Wenn ich das richtig sehe sind Anode und Kathode kurzgeschlossen. Schaue dir den Aufbau eines Breadbord mal an.

Gruß Thorsten

Thorsten4171:
Wenn ich das richtig sehe sind Anode und Kathode kurzgeschlossen. Schaue dir den Aufbau eines Breadbord mal an.

Gruß Thorsten

Ja, da wo die LED steckt ist immer ein Streifen über f-g-h-i-j durchkontaktiert. Daher wird jetzt nur der Widerstand mit 5 Volt versorgt und aufgeheizt.

Danke für eure Unterstützung.
Habe mir das Bild jetzt mal auf dem PC angesehen, Smartphone reichte da nicht.

Ich sehe mal so, der TO sollte das Projekt abgeben.
So wie es aussieht, sind selbst die Steckleisten nicht verlötet. So wird das nie was.
Ein richtiges Bild hätte schneller geholfen.

Mehr Ignoranz geht wirklich nicht.

HotSystems:
So wie es aussieht, sind selbst die Steckleisten nicht verlötet.

Jetzt wo Du es sagst, ja die sind nur rein gesteckt.

Gruß Tommy

Kaum erkennt man die Fehler, die der TO macht und diese im beschreibt, macht er sich aus dem Staub. :wink:
Ok, er macht sicher eine Schaffenspause.

Tatsächlich, die stecken nur drin. :o Darauf habe ich gar nicht geachtet, wer denkt den an sowas :slight_smile:

Gute Nacht
Franz