- 12V Akku mit 280 Ah bauen         
Seite 1 von 3 123 LetzteLetzte
Ergebnis 1 bis 10 von 27

Thema: Strom über den Motor messen (RB40, L298, Shunt)

  1. #1
    Benutzer Stammmitglied
    Registriert seit
    16.10.2005
    Ort
    Adendorf
    Alter
    42
    Beiträge
    46

    Strom über den Motor messen (RB40, L298, Shunt)

    Anzeige

    Praxistest und DIY Projekte
    Hi

    Ich versuche seid einigen Tegen den Strom von einem Motor zu messen.

    Mein Problem ist dabei, dass das Rauschen des Motors zu stark ist, um eine richtige messung zu machen.

    Ich habe dazu mal zwei Messungen gemacht. Einmal (links) mit einer reinen ohmschen Last (20Ohm Widerstand) und beim zweiten mal (rechts) mit dem Motor. Jedesmal habe ich die PWM langsam wie eine Rampe hochgefahren. Alle 50ms habe ich die PWM (lila) inkrementiert und den A/D Wert (blau) über UART ausgegeben.

    Bei der ohmschen Last sieht es noch recht gut aus. Die nichtlinearität erkläre ich mir durch die starke Erwärmung der 1/4 Kohlewiderstände

    Der Motor steht recht lange still bis er sich zu drehen beginnt. Den Strom kann ich dann aber nicht mehr rcihtig messen, geschweigeden später Regeln.

    Der Strom wird an einem 0.22Ohm Shunt gemessen und über einen RC-Tiefpass(1KOhm 100nF -> 1.6kHz) mit einem OP 11fach verstärkt. Die Referenzspannung des ADC ist die interne 2.56V spannung. Der ADC läuft mit 172kHz und mittelt 8 Werte und die PWM hat eine Periodendauer von 21.6kHz.

    Wie habt ihr denn so eure Motorstöme gemessen und welchen rat könnt ihr mir geben an richtige werte zu kommen.

    Gruß Xaver[/img]
    Miniaturansichten angehängter Grafiken Miniaturansichten angehängter Grafiken image003_212.gif  
    http://wsgs.blogspot.com

    Wenn deine Freundin denkt,du bist bei deiner Frau,und deine Frau denkt,du bist bei deiner Freundin, dann hast du endlich Zeit ins Labor zu gehen

  2. #2
    Erfahrener Benutzer Fleißiges Mitglied
    Registriert seit
    13.04.2005
    Beiträge
    146
    Du solltest viel stärker integrieren, 1,6khz und 172kHz sampelrate sorgt für stark schwankende Werte. Der Strom eines Motors ist sogar abhängig von der momentanen Stellung des Rotors, schwankt also mehrmals extrem während einer einzigen Umdrehung.
    Gruß, Rene

  3. #3
    Benutzer Stammmitglied
    Registriert seit
    16.10.2005
    Ort
    Adendorf
    Alter
    42
    Beiträge
    46
    kann ich die Schwankungen denn mit einem großen ELko direkt am Motor etwas glätten, oder ergibt sich dann nicht ein Schwingkreis?

    Wenn ich von 128 ADC Werten den Mittelwert bilde, bekomme ich dann nicht auch schleppfehler?
    http://wsgs.blogspot.com

    Wenn deine Freundin denkt,du bist bei deiner Frau,und deine Frau denkt,du bist bei deiner Freundin, dann hast du endlich Zeit ins Labor zu gehen

  4. #4
    Erfahrener Benutzer Roboter Genie
    Registriert seit
    06.11.2006
    Beiträge
    1.078
    Hallo
    also ich würde sagen Deine Zeitkonstante von 100µs ist viel zu hoch gewählt. Ich denke 1µs würde ein besserer Wert sein.
    Die Abtastzeit des ADC sollte mit der PWM übereinstimmen oder Du müßtest hinterher die gültigen Werte auswählen.

    Der Elko nutzt natürlich überhaupt nichts, jedenfalls nicht im Zusammenhang mit der Strommessung.(Es sei denn Dein Netzteil ist nicht Impulsbelastbar).

    Mit freundlichen Grüßen
    Benno
    Den Elko nicht parallel zum Motor legen !

  5. #5
    Erfahrener Benutzer Fleißiges Mitglied
    Registriert seit
    13.04.2005
    Beiträge
    146
    Mit einem Elko glätten ist der falsche Weg, du musst dein Tiefpass anders bemessen! 1,6kHz Grenzfrequenz ist entschieden zu hoch, (Also die Zeitkonstante ist zu niedrig!) Es sei denn, du willst tatsächlich den Stromverlauf über eine einzelne Umdrehung des Motors aufzeichnen.
    Bedenke: Selbst ein hochdrehender Motor (30000U/min) macht in der sekunde 500U! mit einer TP-Frequenz von 1,6kHz kannst du während einer einzigen Umdrehung drei(!) Messungen auflösen!! Die allesamt stark unterschiedlich ausfallen! Bei einer Sampelrate von 172kHz sind es natürlich noch viel mehr.
    Also der Weg kann nur sein: das TP anders dimensionieren, statt 100nF min. den 10-20fachen Wert nehmen, also 1-2 mikroF.
    Eine Softwaremässige Mittelwertbildung kann dann evtl entfallen. Das wäre ja auch doppelt gemittelt, also unnötig.
    Übrigens: bei Bürstenmotoren beträgt die optimale PWM-Frequenz so um die 3kHz, das sorgt im Zusammenspiel mit der Eigeninduktivität des Motors im Zusammenhang mit einer (zwingend erforderlichen)Freilaufdiode für geglättete Ströme. Eine höhere Frequenz lässt die Verluste durch die Schaltzeiten wieder ansteigen.

    Gruß, Rene

    Noch ein Nachtrag: Die fehlende Freilaufdiode direkt am Motor sorgt für zusätzliche Mess-Störungen: immer wenn die PWM abschaltet wird im Motor ein Strom induziert, der entgegengesetzt fliesst. Hast du als Schaltelement ein FET mit intergrierter Diode, kann man, auch gefördert durch die höhe Abtastung, in diesem Moment negative Ströme messen. Also unbedingt Freilaufdiode (schneller Schottky-Typ) verwenden!

  6. #6
    Erfahrener Benutzer Roboter Genie
    Registriert seit
    06.11.2006
    Beiträge
    1.078
    Hallo
    es kommt darauf an was er regeln will.Für eine Stromregelung ist die Zeitkonstante jedenfalls zu hoch.
    Es kommt natürlich auch auf seinen Motor und seine Spannung an. Wenn dieser eine so hohe Induktivität hat oder jene so niedrig ist, daß der Strom erst nach mehreren Millisekunden seinen Sollwert erreicht, kann er seinen Tiefpass entsprechend auslegen.
    Mit freundlichen Grüßen
    Benno

  7. #7
    Erfahrener Benutzer Fleißiges Mitglied
    Registriert seit
    13.04.2005
    Beiträge
    146
    Der Strom eines Bürsten-Motors erreicht nicht nach einigen millisekunden seinen Sollwert, sondern verändert ihn innerhalb weniger millisekunden mehrmals! Einen einigermassen messbar-konstanten Stromfluss erreicht man erst durch integration mehrerer Umdrehungs-Zyklen.
    ein3-Pol-Motor schaltet pro Umdrehung seine Spulen 6mal komplett um. D.h., pro Umdrehung werden alle Erscheinungen von Spulen an Schaltern 6mal durchlaufen. Inkl. Stromverzögerungen, Selbstinduktion, Funken =Bürstenfeuer(!!!)etc.
    Es handelt sich bei einem Motor nicht nur um eine Induktivität,
    In der Tat ist aber entscheidend, was er regeln will. Soll es die Drehzahl sein, ist eine Abtastung der Drehzahl das beste, mit der Abtastung des Stromes allein kann man keine Drehzahlreglung aufbauen. Eine Drehmomentregelung könnte so klappen, aber nicht, wenn pro Umdrehung mehrere extrem verschiedene Stromwerte abgetastet werden. Starkes Schwingen der Regelung wäre die Folge.
    Aus dem Bauch heraus würde ich sagen, dass 2-3 Umdrehungen als Zeitkonstante minimum sein müssten. (Vermutlich eher mehr)
    Das bedeutet bei einem Motor mit 6000U/min, = 100U/s, eine Umdrehung 10ms. Also minimum 30ms Zeitkonstante.
    Aber das lässt sich ja einfach probieren. Einfach mal verschiedene Werte für C nehmen (auch kleiner!, wahrscheinlich aber sehr viel größer) Ich lasse mich auch gerne vom Gegenteil überzeugen, man lernt ja nicht aus.
    Aber Freilaufdiode nicht vergessen!! Direkt am Motor.

    Gruß, Rene

  8. #8
    Super-Moderator Lebende Robotik Legende Avatar von Manf
    Registriert seit
    30.01.2004
    Ort
    München
    Alter
    71
    Beiträge
    13.075
    Die erwartete Kurve wäre ja eine Erhöhung bei stehendem Motor bis zu dem Stromwert bei dem das Moment ausreicht die Haftung zu überwinden, inklusive der Abweichung der Motorkonstanten in der aktuellen Stellung, vom Mittelwert der Motorkonstanten.

    Dann folgt ein konstanter Strom mit dem Moment zur Überwindung der Reibung.

    Das läßt sich ja in etwa herauslesen.

    Abweichungen sind der Anlaufstrom zur Überwindung des Trägheitsmoments (kurzer Einschwingvorgang) und das angesprochene Rauschen bei drehenem Motor.
    Manfred

  9. #9
    Erfahrener Benutzer Roboter Genie
    Registriert seit
    06.11.2006
    Beiträge
    1.078
    Hallo
    ich bin(da eine so genaue Stromerfassung betrieben wird) von einer Drehmomentenregelung ausgegangen.
    Um einen gleichmäßigen Momentenverlauf zu erzielen , muß auch der Strom entsprechend genau geregelt werden.
    D.h. ich kann nicht drei Umdrehungen warten und dann den Strom einstellen.Die Stromregelung regelt eben diese auftretenden Unregelmäßigkeiten , die während des Laufes auftreten, aus.
    Für eine Drehzahlregelung dient die Strommessung eigentlich nur der Kontrolle bzw. man kann darüber eine Schwergängigkeit oder eine Blockade des Motors detektieren.
    Außerdem würde ich eine PWM über 20kHz bevorzugen , um die Geräusche über der Hörschwelle zu halten.

    Mit freundlichen Grüßen
    Benno

  10. #10
    Erfahrener Benutzer Roboter Experte
    Registriert seit
    25.07.2006
    Ort
    Berlin
    Beiträge
    439
    Hallo Yossarian,

    mit der PWM stellst du nicht den Strom ein, sondern die Spannung am Motor. Der Strom ergibt sich daraus. Aus deinem Diagramm ist ersichtlich, dass der Strom oberhalb einer Spannung nicht mehr steigt.
    Durch die Kommutierung ist der Stromverlauf über einer Umdrehung nicht konstant, daher brauchst du eine Zeitkonstante von mindestens einer Umdrehung.
    Lieber ein etwas trägeres Signal zu regeln, als so ein verrauschtes Signal, auf das deine Regelung kaum vernünftig reagieren kann.

    Wenn du den Verdacht hast, dass die PWM für das verrauschte Signal verantwortlich ist, kannst du den Versuch ja mal mit einem Labornetzgerät mit glatter Ausgangsspannung wiederholen. Oder du schaust dir das Signal mal auf dem Oszilloskop an

    Gruß
    Detlef

Seite 1 von 3 123 LetzteLetzte

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •  

Labornetzteil AliExpress