- MultiPlus Wechselrichter Insel und Nulleinspeisung Conrad         
Seite 2 von 3 ErsteErste 123 LetzteLetzte
Ergebnis 11 bis 20 von 30

Thema: Motorstrom an L298 trotz PWM messen

  1. #11
    Erfahrener Benutzer Roboter Experte
    Registriert seit
    30.09.2006
    Beiträge
    734
    Anzeige

    Powerstation Test
    @recycle
    Ich weiß auch nicht wie der Komparator funktioniert :P
    Der Trick ist, dass er keine PWM ausfiltern muss oder Stromspitzen oder oder... Es ist unnötig, den Effektivwert zu bekommen, der Maximalwert ist für eine Überstromabschaltung interessant.

    Ein Beispiel: Mein Scheibenwischermotor hat ungefähr 4A Leerlaufstrom. Blockierstrom ist 85A. Das ist doch ein deutlicher Unterschied, die beiden Zustände sind also klar voneinander zu unterscheiden. Wenn man das Limit auf 20A legt, dann ist gut Luft nach oben und nach unten - sollte funktionieren.

    http://www.mikrocontroller.net/topic/22766

  2. #12
    Erfahrener Benutzer Robotik Einstein
    Registriert seit
    29.01.2004
    Beiträge
    2.441
    Ein Beispiel: Mein Scheibenwischermotor hat ungefähr 4A Leerlaufstrom. Blockierstrom ist 85A. Das ist doch ein deutlicher Unterschied, die beiden Zustände sind also klar voneinander zu unterscheiden. Wenn man das Limit auf 20A legt, dann ist gut Luft nach oben und nach unten - sollte funktionieren.
    "Sollte funktionieren" ist - zumindest in meinem Umfeld - die Umschreibung für "keine Ahnung ob's funktioniert"

    Funktioniert es denn auch?

    Wenn man das Limit auf 20A legt, dann ist gut Luft nach oben und nach unten
    Wenn Motortreiber und Motor leistungsmässig ein bischen aufeinander abgestimmt sind, wird man oft nicht ganz so viel Luft nach oben und unten haben.
    In kleineren Dimensionen verwendet man ja gerne mal den L298 für Motoren die im Normalbereich 1-2A bei starker Belastung aber auch mal mehr ziehen.
    Der L298 verträgt auch mal kurze Stromspitzen von 3A bei einem Dauerstrom von 2,5A wird er aber sich aber irgendwann verabschieden.

    In diesem Beispiel finde ich leider nicht so viel Luft nach oben und unten


    Es ist unnötig, den Effektivwert zu bekommen, der Maximalwert ist für eine Überstromabschaltung interessant.
    Sicher? Ich würde vermute eher, dass das frequenzabhängig ist.
    Miniaturansichten angehängter Grafiken Miniaturansichten angehängter Grafiken l298_117.jpg  

  3. #13
    Erfahrener Benutzer Robotik Einstein
    Registriert seit
    29.01.2004
    Beiträge
    2.441
    Ein Beispiel: Mein Scheibenwischermotor hat ungefähr 4A Leerlaufstrom. Blockierstrom ist 85A. Das ist doch ein deutlicher Unterschied, die beiden Zustände sind also klar voneinander zu unterscheiden. Wenn man das Limit auf 20A legt, dann ist gut Luft nach oben und nach unten - sollte funktionieren.
    Funktioniert es denn auch?
    "Sollte funktionieren" ist in meinem Umfeld die Umschreibung für "keine Ahnung ob's funktioniert"


    Wenn man das Limit auf 20A legt, dann ist gut Luft nach oben und nach unten
    Wenn Motortreiber und Motor leistungsmässig ein bischen aufeinander abgestimmt sind, wird man oft nicht ganz so viel Luft nach oben und unten haben.

    Wenn dein Motortreiber viel mehr als 20A könnte man ihn als überdimensioniert bezeichnen.
    Wenn er weniger als 20A verträgt, würde ich nicht allzuviel drauf setzen, dass er nicht doch irgendwann abraucht.

  4. #14
    Erfahrener Benutzer Begeisterter Techniker
    Registriert seit
    30.07.2007
    Alter
    40
    Beiträge
    214
    WIe wäre es, mittels des ADC Komparators die shunt+ Spannung mit einer Referenzspannung (Spannungsteiler?) zu vergleichen?
    Das ändert leider nichts an der PWM-Problematik.
    Ich vergleiche ja auch jetzt schon die Shunt-Spannung mit einer Referenz - nur halt ohne den hardware-Komparator.

    Wie lange braucht denn eigentlich der Mega8 mit 16MHz für eine ADC-Messung?
    Im Datenblatt steht nur was von "13 ADC-Zyklen".
    Wenn der ADC schnell genug ist, könnte man vielleicht auch am Ende des normalen Programmablaufs (der Hauptschleife) einen "Burst" von 100 oder 1000 Messungen laufen lassen, den Maximalwert raussuchen und den dann verwenden.
    Dann ist die Chance ja recht hoch das eine Messung dabei ist die den tatsächlichen Maximalwert abbildet.

    Wenn das aussichtslos ist, wäre ich froh wenn mir jemand ne "Hausnummer"nennen könnte für die Grenzfrequenz eines RC-Glieds. Die Wertebestimmung der beiden Bauteile bekomm ich dann selbst hin.
    Ich hab halt leider keine Infos über das PWM außer das ich folgenden BASCOM-Befehl verwende um es zu erzeugen:
    Code:
    Config Timer1 = Pwm , Pwm = 10 , Compare A Pwm = Clear Down , Compare B Pwm = Clear Down
    Tccr1b = Tccr1b Or &H02                                     'Prescaler = 8
    Das ist, wie gesagt, aus der RN-Control-Demo und ich habs einfach unverändert übernommen.
    Woher nehm ich jetzt da die verwendete PWM-Frequenz?

  5. #15
    Benutzer Stammmitglied
    Registriert seit
    25.09.2007
    Ort
    Oldenburg
    Alter
    50
    Beiträge
    80
    Willst Du den Mittelwert haben oder den Peakwert (z.B. als Überstromschutz) ? Hast Du ein Oszi zur Hand, um Dir später das gefilterte Signal anzusehen und vorher die PWM Frequenz festzustellen ? Ein Filter einfach so auszulegen passt meist nicht sehr gut, wobei Du natürlich auch schätzen kannst. Da Du den Motor aber mit PWM steuerst, findest Du die Frequenz sicher noch heraus.
    Generell empfehlenswert ist der Einsatz eines kleinen OP´s, damit Du den Maximalwert auf Deinen ADC anpassen mittels des Verstärkungsfaktors kannst, ich nehme da einfach einen OP284 oder so...

    Den Strom der PWM direkt messen kannst Du vergessen, das packt Dein ADC nie - da müsstest Du schon einen echt guten DSP haben, um das Signal korrekt auszuwerten.

    Versuch einfach mal einen Tiefpass mit 4,7kOhm und 100nF - also Widerstand von Shunt nach Eingang ADC und den Kondensator vom ADC Eingang nach Masse. Wenn der Wert immernoch zu stark schwankt, 1µF einsetzen. Wenn das auch nicht geht, kommst Du ohne Skop nicht weiter, glaube ich ...
    Alles wird gut... Gruß Alex

  6. #16
    Erfahrener Benutzer Begeisterter Techniker
    Registriert seit
    30.07.2007
    Alter
    40
    Beiträge
    214
    Es geht um die Maximalwerte für eine Überstrom-Abschaltung.
    Deine genannten Werte werd ich mal ausprobieren.

    Da ich noch an der FH bin, hab ich auch Zugriff auf die tollen Speicher-Oszis im Labor.
    Ist zwar schon 2 Jahre her das ich damit geabeitet hab, aber die sind ja nicht so kompliziert zu bedienen wie mein altes (aber hochwertiges) analoges Gerät zu Hause. (Ein haufen Dreh-, Drück- und Kippschalter und keine Bedienungsanleitung...)

    Wenn das mit den Schätzwerten nicht klappt, geh ich mit dem Oszi ran.

    EDIT:
    Hab gerade eine Seite gefunden auf der die Formel:
    "f(PWM) = Taktfrequenz / 510 (bei 8 Bit) / 1022 (bei 9 Bit) / 2046 (bei 10 Bit)" angegeben wird.
    Mein PWM läuft mit 10 Bit, also wären das, wenn die Formel stimmt, etwa 7,820 kHz.
    Allerdings berücksichtigt das nicht meinen eingestellten Prescaler von 8.
    Kann das richitg sein?
    Und wenn ja, wie kann ich dann das RC-Glied dimensionieren?

  7. #17
    Erfahrener Benutzer Roboter Experte
    Registriert seit
    30.09.2006
    Beiträge
    734
    Ich komme mir gerade etwas verarscht vor. Ich habe mir soviel Mühe mit meinen Beiträgen gegeben und du schaffst es nicht mal, die von dir erzeugte PWM-Frequenz herauszubekommen? Und die genaue Auslegung für den Tiefpass habe ich dir auch genannt! Skragan ebenfalls!

    @recycle
    "Sollte funktionieren" ist in meinem Umfeld die Umschreibung für "keine Ahnung ob's funktioniert" Zwinkern
    Ich habe in jedem Beitrag geschrieben, dass ich nicht weiß, wie es praktisch aussieht. Das war ein Diskussionsvorschlag und ein Versuch zu helfen.



    Wenn Motortreiber und Motor leistungsmässig ein bischen aufeinander abgestimmt sind, wird man oft nicht ganz so viel Luft nach oben und unten haben.

    Wenn dein Motortreiber viel mehr als 20A könnte man ihn als überdimensioniert bezeichnen.
    Wenn er weniger als 20A verträgt, würde ich nicht allzuviel drauf setzen, dass er nicht doch irgendwann abraucht.
    Bevor ich mich hier ausklinke: Der Motortreiber MUSS IMHO überdimensioniert sein!
    - Der Anlaufstrom entspricht dem Kurzschlussstrom.
    - Im Betrieb soll soviel Leistung wie möglich am Motor ankommen. Auch thermisch soll die Belastung so niedrig wie möglich sein.

    Die Pulsweite der PWM dürfte auch keinen ganz unerheblichen Einfluss auf den Motorstrom haben und die kann man am Anfang der PWM-Periode auch noch nicht erahnen.
    Daher kann es eigentlich nicht viel bringen eine einzelne Messung auf einen bestimmten Zeitpunkt während der PWM-Periode zu synchronisieren.
    Ich vermute ein erster Schritt zum Erfolg ist, die PWM-Frequenz abgestimmt auf den Motor so hoch zu wählen, dass sich die PWM-Funktion aufgrund der Trägheit des Motorstroms nicht mehr im Strom wiederfindet.
    Die Motorwicklung bildet zusamen mit dem Stator/Rotor eine Induktivität. Diese kann man meßen. Bis zum Sättingungsstrom ist diese sogar recht groß. Zum berechnen der optimalen PWM-Frequenz kann man die Motorwicklungen wie Spulen behandeln und die Formeln für einen step-down wandler im nicht-lückenden Betrieb verwenden. Der Strom (!) ist dann annähernd konstant. Es tritt dabei keine zusätzliche Verlustleistung durch die PWM auf!
    Siehe auch
    http://www.4qdtec.com/pwm-01.html
    https://www.roboternetz.de/phpBB2/vi...=18915&start=0
    https://www.roboternetz.de/phpBB2/ze...g.php?p=101756
    Mehr links habe ich in meinen bookmarks nicht gefunden. Ich habe meine Informationen von einer Seite, auf der die Entwicklung von Brushless Controllern genau erklärt wird. Der Stromfluss wird dabei mit schönen bunten Bildern erklärt. Vielleicht mal googlen.


    @Alle
    Das Problem des Anlaufstroms hat man immer, ob geglättete PWM oder nicht. Man kann es aber softwaretechnisch lösen Im Betrieb kann man zwei Zustände unterscheiden.
    1. DC = 100%. Dann ist keine Glättung notwendig.
    2. DC < 100%. Wenn man den Peakwert verwendet und als Effektivwert benutzt hat man immer noch genug Spielraum, weil der Motortreiber auf den DC=100% Fall ausgelegt sein muss. Es wird vielleicht etwas zu früh abgeschaltet. Dafür aber rechtzeitig, weil man keine Verzögerund durch das RC-Glied hat. Meine Lösung ist schnell, sicher, braucht keine zusätzlichen Bauteile und einfach zu lösen.

  8. #18
    Erfahrener Benutzer Begeisterter Techniker
    Registriert seit
    30.07.2007
    Alter
    40
    Beiträge
    214
    @avion23:
    Ich glaube wir haben uns nicht richtig verstanden:
    Ich zitier mich mal selbst:

    Ich hab halt leider keine Infos über das PWM außer das ich folgenden BASCOM-Befehl verwende um es zu erzeugen:

    Code:
    Config Timer1 = Pwm , Pwm = 10 , Compare A Pwm = Clear Down , Compare B Pwm = Clear Down 
    Tccr1b = Tccr1b Or &H02                                     'Prescaler = 8
    Das ist, wie gesagt, aus der RN-Control-Demo und ich habs einfach unverändert übernommen.
    Damit dürfte wohl klar sein, dass ich keine Ahnung habe welche Frequenz das so erzeugte PWM-Signal hat.
    Zu Beginn meines Projekts (also noch völlig ohne Vorkenntnisse über Mikrokontroller, BASCOM, ect.) hab ich das RN-Control-Board gekauft und das mitgelieferte Funktionstest-Programm, das in Bascom geschrieben wurde, als Grundlage für mein eigenes Steuerprogramm genommen.
    Sieh mir also bitte nach, wenn ich aus dem o.g. BASCOM-Befehl nicht die PWM-Frequenz herauslesen kann.

    @All:
    Ich hab im Datenblatt vom ATMega8 die Komparator-Geschichte mal angeschaut.
    Wenn er die Peak-Werte trotz PWM zuverlässig erfassen kann, wäre das wirklich eine clevere Lösung.
    Morgen ändere ich die Schaltung entsprechend und probier das aus.
    Bis hierher schonmal Danke an alle.

  9. #19
    Benutzer Stammmitglied
    Registriert seit
    25.09.2007
    Ort
    Oldenburg
    Alter
    50
    Beiträge
    80
    Hallo Cairol,

    wenn Du nur den Peak als Überstromschutz auswerten möchtest, dann mach das doch lieber mit angehängter Schaltung. Die funktioniert auch ohne µC ! Wenn wir Schaltungen entwickeln, sorgen wir immer dafür, das die Hardware auch bei Softwarefehlern "ganz" bleibt, das ist IMHO eine der wichtigsten Regeln. Der Controller DARF nicht in der Lage sein, die Hardware zu zerstören. Diese Schaltung ist in Grenzen (Tiefpass)unabhängig von der PWM Frequenz, geht auch bei 100% und benötigt nur wenige günstige Teile.

    Beschreibung:
    Der PWM Ausgang des µC wird über ein FlipFlop mit dem Ausgang eines Komparators, welcher den Überstrom misst, verknüpft. Solange kein Überstrom auftritt, kommt die PWM zum Treiber durch. Im Überstromfall wird die PWM sofort hardwareveriegelt, ohne das der Controller etwas dafür tun muss: Die Endstufe bleibt heil. Gleichzeitig bekommt der µC eine Rückkopplung über /Q, welche man auf einen Interrupt legen kann. Dann weiß der Controller auch, das die Endstufe leidet. Funktioniert einwandfrei, man muss lediglich den Komparator richtig einstellen durch korrekts Auswahl von R7, R12, R13.
    Anbei auch nochmal zur Erklärung die Wahrheitstabelle, dort ist nochmal erklärt, wie die Signale aussehen müssen. Mein wahrhaftig genialer Kollege hat übrigens diese Schaltung entworfen, ich möchte mich ja nicht mit fremden Federn schmücken.

    Noch etwas zur Dimensionierung: Ja, der Treiber (Endstufe) sollte ordentlich überdimensioniert sein. Bei meiner Schaltung (die steuert den Antrieb eines Unterwasserscooters) kann die Endstufe locker den 5fachen Nennstrom des Motors. Ebenso sollte die Freilaufdiode dimensioniert sein.
    Miniaturansichten angehängter Grafiken Miniaturansichten angehängter Grafiken _berstrom.jpg   _berstrom2.jpg  
    Alles wird gut... Gruß Alex

  10. #20
    Erfahrener Benutzer Begeisterter Techniker
    Registriert seit
    30.07.2007
    Alter
    40
    Beiträge
    214
    Große Güte!
    Also ich werd die Schaltung auf jeden fall speichern und bei Bedarf verwenden wenn genügend Platz vorhanden ist. (bzw. ich den Platz dafür eingeplant habe...)
    Für mein jetziges Projekt kann ich das aber vergessen, denn die Platine ist ja schon fertig gelötet.
    Mehrere OpAmps, RSFF, Dioden ect. bekomm ich da nicht mehr unter.

    Aber jetzt ist die Platine sowieso schon für die Verwendung des Komparators umgelötet, das wird jetzt auch so versucht.
    Als Referenzspannung vom Komparator sind ca. 500 mV angelegt. Das entspricht einem Strom von rund 1,8 A. Da soll dann abgeschaltet werden.
    Das ist dann auch deutlich unter den 2A bzw. 2,5 A die der L298 lang- bzw. kurzfristig mitmacht.
    Die Freilaufdioden sind auf 3A Dauerstrom ausgelegt.

    Ich muss aber noch im Software-Bereich vom Forum um Hilfe bei der Programmierung des AC's bitten, denn die BASCOM-Hilfe und Google geben da leider nicht viel brauchbares her.
    Wenn ich das Software-Problem gelöst habe, melde ich mich wieder.

    Gruß, Cairol.

Seite 2 von 3 ErsteErste 123 LetzteLetzte

Berechtigungen

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

MultiPlus Wechselrichter Insel und Nulleinspeisung Conrad