Für diejenigen die es nicht kennen, esp-idf ist die offizielle Entwicklungs Gestellarbeit für die ESP32 Winzigkontrolleure und es ist doch echt ziemlich angenehm damit zu arbeiten, da es ziemlich gute Treiber und auch einen Haufen an Werkzeugen zum kompilieren, blitzen und entkäfern von Winzigkontrolleuren mitbringt. Es ist mir jetzt schon mehrfach passiert, dass ich Dinge implementiren wollte, nur um dann zu merken, dass es bereits Treiber gibt, die genau dass machen was ich implementieren wollte.

Wieso die IDF nicht so toll ist muss ich glaube nicht erklären.

  • da_cow (she/her)@feddit.orgOP
    link
    fedilink
    arrow-up
    3
    ·
    28 days ago

    Ist auf jeden Fall enorm kühl, vor allem weil das nochmal eine ganz andere Hausnummer ist als ein paar simple Programme mit dem ATmega328P (oder auch unter dem Namen [Arduino] Nano/UNO bekannt). Es ist zwar durchaus ein kleiner Kampf bis man soweit ist, dass man versteht wie man mit dem ESP32 und dem Betriebssystem arbeitet, aber dafür wird die Entwicklung langfristig deutlich angenehmer.

    Jonas Reh ist in der Tag ziemlich Proprietär, aber da sind andere Hersteller nicht groß besser.

        • HansGruber@sh.itjust.works
          link
          fedilink
          arrow-up
          1
          ·
          28 days ago

          Wild. Ich hab ja auch schon ein zwei Sachen mit denen gemacht aber auf die Idee wäre ich nicht gekommen. Auf der anderen Seite sind Fahrzeuge in aller Regel auch nicht sonderlich komplex

          • da_cow (she/her)@feddit.orgOP
            link
            fedilink
            arrow-up
            3
            ·
            edit-2
            27 days ago

            Auf der anderen Seite sind Fahrzeuge in aller Regel auch nicht sonderlich komplex

            Wie komplex ein Fahrzeug ist (aus IT Sicht), hängt primär von der Größe und dem Grad an Autonomie ab. Je mehr Dinge wir im Betrieb überwachen bzw. automatisch ausführen wollen, umso komplizierter wirds. Moderne Maschinen (vom Auto bis zum Feldhäcksler) stecken wirklich von oben bis unten voll mit Mikrocontrollern und Sensoren.

            Wir hingegen haben so nen kleines Fahrzeug, dass der ESP32 lediglich einige wenige Dinge Kontrolliert. So lange man auch nicht groß graphische Anwendungen oder Maschinelles Lernen in dem Gerät nutzt, kommt man mit einem ESP32 schon echt ziemlich weit, weil die schon echt einiges an Leistung mitbringen.

            Da ich noch ein bisschen über das Projekt abnerden will, hier die Komponemtenliste die vom ESP32 kontrolliert wird:

            • 4x Motoren (Antrieb)
            • 1x Radarsystem (Geschwindigkeitsmessung)
            • 1x Drehwinkelgeber (Bestimmung der Position des Lenkrades)
            • 1x Gaspedal
            • 1x Joystick

            Bis auf die Motoren ist das wirklich komplett einfach. Der Drehwinkelgeber gibt seine Position konstant als Analogsignal aus, welches wir mit dem “ADC contious mode driver” entspannt auslesen können. Der Radarlaser gibt ein Frequenzsignal aus, welches wiederum sehr einfach mit einem eigens dafür entwickelten Treiber ausgelesen werden kann. Joystick und Gaspedal werden vermutlich ähnlich funktionieren oder eventuell I2C mitzen, was aber auch kein Problem ist, weil es entsprechende Treiber dafür gibt

            Da wir es hier mit Motoren aus dem Industriebereich haben ist entsprechend auch klar, dass ich die nicht einfach über PWM kontrollieren kann. Stattdessen werden die Motoren per CAN Bus angesteuert, was halt ein für mich neues Protokoll ist, welches aber relativ einfach funktionieren sollte, da das halt Industriestandard ist.