ESP 32 mit GPS und Ultraschall um See zu vermessen

Hey, für die Uni muss ich ein Projekt machen in einem Modul. Wir haben dieses Semester den ESP-WROOM-32 benutzt. Letztes Jahr wurde noch der Arduino UNO verwendet. Den gibts nicht mehr, damit wir C++ vermeiden und WLAN haben. Ich schreibe in diesem Forum, weil ich nicht weiß wo ich sonst Hilfe her bekomme und vermute, dass ESP und Arduino "das selbe" ist. Ich studiere übrigens NICHTS mit Programmieren / Ingen. / Elekotrotech... bin also absoluter Anfänger.

Aufgabe: (selbst ausgedacht)

  • Die Tiefe eines Sees vermessen von einem ferngesteuerten Motorboot aus (notfalls auch Schlauchboot :D). Dabei die GPS Position erfassen und anschließend eine Karte vom Seegrund erstellen mit den Tiefen (Python?).
  • Wir benutzen die Thonny als Programmierumgebung und Python als Programmiersprache.

Ich habe:

  • ESP-WROOM-32 (vom Dozenten)
  • Diverse Kabel, Dioden, Wiederstände und einige Sensoren sowie eine weiße Platte, auf die das alles rauf kommt (vom Dozenten)
  • GPS Empfänger: GY-GPS6MV2 / NEO 6M-0-001 - Da ist eine Antenne mit angebracht. Aber mit sehr kurzem Kabel. (vom Dozenten)

Fragen an Euch:

  • Ist der GPS Sender passend oder gibt es bessere? Ich habe auch welche ohne so eine Keramikantenne gefunden.
  • -- Funktioniert der GPS Sender auch aus dem Bauch eines Bootes heraus?
  • Welchen Ultraschallsensor kaufe ich am besten? (Ich habe ein paar raus gesucht und kopiere die Links unten rein). Je tiefer die Messung, je genauer und je günstiger um so besser.
  • -- Der Ultraschallsensor muss ja im Wasser sein. Die haben aber nur IPX7. Also wasserfest gegen zeitweiliges untertauchen. Sind die dann überhaupt dafür gedacht auch unter Wasser zu messen?
  • -- Der Sensor muss zum ESP 32 passen
  • -- Ich weiß nicht, ob die benötigte Spannung/Strom vom ESP32 geliefert wird
  • -- Die Bauteile müssen alle auf die weiße Platte rauf passen. Nicht, dass am Ende ausreichend Pins fehlen.
  • Kann ich die Stromversorgung einfach über eine PowerBank machen?
  • Wo finde ich die passenden Bibliotheken für die Programmcodes und um GPS und Tiefe zusammen zu bekommen in eine Tabelle?
  • Gibt es irgendwo Infos wie ich das am besten anschließen kann am ESP?
  • Gibt es irgendwelche krassen Stolpersteine, die mir begegnen können? Also etwas was ich dringend wissen sollte damit ich in den Fehler nicht rein laufe?

Joa, hoffe ihr könnt mir da helfen :smiley:
Hier die von mir bisher gefundenen Ultraschall-Abstandsmesser

Gefundene Ultraschall-Entfernungs-Sensoren:

Ultraschall-Abstandssensoren, die für den Betrieb in der Luft konzipiert sind, funktionieren unter Wasser nicht.

Suche nach Sonar-Entfernungssensoren, die für den Einsatz in Booten konzipiert sind.

Wie wollen Sie das Boot fernsteuern und Sensorwerte übermitteln?

Ist es nicht.
Wenn du einen ESP mit C++ so programmieren willst, als ob es ein Arduino wäre, geht das zwar, aber nicht mit Python

Die alles entscheidende Frage: Mit welchem Softwarepackage habt ihr den Controller programmiert?

ARDUINO ist zu unterscheiden in die Entwicklungsumgebung und die Hardware.
Du kannst mit der ARUDINO-IDE einen ESP programmieren.

Die Sprache ist dann C++.

wird also nix, wenn Du die IDE benutzt.

Dann hat das Ganze aber auch fast nichts mehr mit der Thematic ARDUINO zu tun.

--> Mir wurde gesagt, dass die auf dem ESP gespeichert werden können. Die Datei würde nicht all zu groß werden. Hinterher mit dem Laptop runter ziehen vom Gerät.
--> Die Steuerung würde ich einfach über eine Fernbedienung machen.... also ich kaufe mir halt ein günstiges Motorboot für Kinder, bastel das da rein und fahre mit dem Boot übers Wasser. Alternativ nehme ich mir ein Schlauchboot und paddel damit über den See.

--> Bisher haben wir "Thonny" benutzt und in Python programmiert. Das möchte ich auch gerne so weiter behalten. Denke ich.

Mit Python bist Du hier wohl falsch, da die Arduino-IDE und wir mit C++ arbeiten.
Evtl. findest Du hier etwas.

Gruß Tommy

Du muss aber dran denken für C++ und IDE gibt's e ohne Ende Bibliotheken ob das für Python zutrifft?

--> Hast du oder jemand anderes eine Idee, wo ich spezielle Unterwasser-Sonar-Geräte finde?
--> Oder kennt jemand eines?

Ich hätte jetzt gedacht, dass ich nur die Schallgeschwindigkeit in der Formel anpassen muss und ansonsten einfach wasserfeste brauche... dann sollte das egal sein, sofern die Freqzenz kein Problem macht.

Ich habe weder bei Arduino im Shop, noch bei Conrad oder Botland was gefunden.

Was für Websites gibt es noch?

Naja, ich kann auch notfalls auch bei C++ bleiben, wenn es das mit der Hilfe viel einfacher macht.

Ist es denn wichtig für die Sensoren, ob ich in C++ oder Python schreibe?
Was ist denn der Unterschied zwischen Arduino und ESP?
GIbt es für ESP auch Foren/Bastelcommunities wie diese hier?

Suche nach Fischfindern, z.B.

Amazon.de : fischfinder

ESP in C++ wird hier mit behandelt. Die ESP sind chinesische Entwicklungen und basieren auf anderen Prozessoren, als die Arduinos.

Aufpassen: Es gibt weder die ESP, noch die Arduino. Es gibt von beiden Herstellern unterschiedliche Prozessoren, deren Boards leider oft ähnlich heißen.
Ganz besonders viele verschiedene Untertypen gibt es beim ESP32.
Du musst also immer genau mit schreiben, welchen Typ Du genau meinst.

ESP-WROOM-32 ist eine klare Bezeichnung.

Gruß Tommy

Schau mall hier, wo möglich helfen die dir, nur das ist kein Arduino Spielzeug für 5€.
Anrufen anfragen.

https://www.nauticexpo.de/boot-hersteller/ultraschallsensor-21697.html?originalFilter=39374d3866572b79396a664f56764f4e55636177776c4e6e417177752f54694b4832783263345576724f636f6c7850584f38387646386f567976596930503133794d7a595642524e4638637346646f515347356e4f3065634879656b4b644d34464a676e4339535a4a5472772b4d68492b44697865503769304d5831445a6a754b67726c6f387132563165332f79666c6659474b795a725364756145684a71744b7773546c4863546f6f35762b4962337a337258772b5442494f7a547748504243624635584a39304c477554476d75424d62367870357744584b494872762b31536464764272664d5952336f554c31465379527559784b4d4770547a4e6b4e4a

Speichern kannst Du überall. Das ist nicht zwingend an/auf einen ESP gebunden.

Dann wirst Du hier nicht weiter als Hardwareempfehlungen kommen.

Naja, es ist ein Unterschied, ob Wasserfest.
Die sollten mindestens IP68 sein.
Und dann ggfls. auch druckfest bis wenigstens 1mtr. Tiefe.

Hackster.io, instructables.com, randomnerdtutorials.com
Oder fertige Projekte aus irgendeiner Suchmaschine
https://bluerobotics.com/learn/using-the-ping-sonar-with-an-arduino/

Und da siehst Du schon zwei Dinge.
Sensoren haben ihren Preis.
Und: während der Arduino mit 5V an den Pins läuft, ist der ESP mit 3,3V dabei....

Bitte schreibe uns genau

  • was du studierst,
  • was der Schwerpunkt deiner Arbeit sein soll und
  • wie viel Zeit du dafür hast.

Wenn du wenig Erfahrung mit Programmierung hast, wenig mit dem Ecosystem von Arduino anzufangen weist, nicht viel Erfahrung mit Sensoren oder GPS hast, dann sind das alles sehr schlechte Voraussetzungen für eine Hardware Nahe Entwicklung.

Echolot und Sonar sind prinzipiell das gleiche Ultraschall-Zeitmessverfahren. (Mit anderer Schallgeschwindigkeit im Wasser).
Wenn man sich solche Einbau-Anleitungen anguckt, funktionieren die sogar durch eine dünne (GFK) Bordwand hindurch, wenn nur keine Luftblase dazwischen ist. Bevor man 200 .. 1000 € für ein fertiges Echolot / Fischfinder - Gerät investiert, könnte man ja mal etwas rumexperimentieren, um zu lernen, was den Preisunterschied rechtfertigt?

Das bedeutet für einen Arduino brauche ich ein Sensor mit 5V Aufnahme und für ESP einen mit 3,3?
Von 5 V -> 3,3 V kann ich wahrscheinlich mit einem Widerstand runter gehen?
Gibt es Bauteile für ESP/Arduino mit denen ich die Spannung von 3,3 auf 5 V erhöhen kann?

Es gibt verschiedene Pegelwandler, die man nach Verwendungszweck/Schnittstelle auswählen muss. So sind z.B. Pegelwandler für I2C selten für andere Anwendungen geeignet.

Gruß Tommy

Es sollten schon 2 sein.
Dann hast Du noch immer die Hürde, dass am Sensor der hohe Pegel für seinen RX / Trigger-Pin anliegen muss. Soweit der TTL-kompatibel ist, können die 3,3V reichen. Dazu also das Datenblatt lesen.
Wie @Tommy56 schon schrub: Pegelwandler gibt es.
Anwendungszweck beachten, der entscheidet dann für die richtige Auswahl und nicht der Preis