- MultiPlus Wechselrichter Insel und Nulleinspeisung Conrad         
Ergebnis 1 bis 10 von 25

Thema: Motor PWM 19KHz?

Baum-Darstellung

Vorheriger Beitrag Vorheriger Beitrag   Nächster Beitrag Nächster Beitrag
  1. #12
    Erfahrener Benutzer Roboter Genie Avatar von SlyD
    Registriert seit
    27.11.2003
    Ort
    Paderborn
    Alter
    40
    Beiträge
    1.516
    > ist doch alles fein




    > naked isr's

    ah ja das stimmt natürlich, nicht dran gedacht.

    > aber da hängen bei RP6Lib ja nicht nur die Stopwatches dran... leider.

    Du kannst das auch so drehen, dass Du die anderen Sachen in den Timer1 Overflow Interrupt reinbaust um den Timer0 komplett frei zu bekommen.
    Der RC5 Kram wird wegen des Timings nicht einfach so zu portieren sein (geht aber sicher auch irgendwie), aber die sanfte Änderung der PWM Werte und die paar anderen Softwaretimer sind z.B. kein großes Problem, einfach die Zeiten grob anpassen, das ist alles unkritisch.
    Das die LED ab und zu blinkt wenn keine andere an ist, kannst Du ja komplett rausnehmen und als Thread realisieren.

    Die Geschwindigkeitsmessung ist das einzige was wirklich kritisch ist. Da musst Du SPEED_TIMER_BASE anpassen.


    MfG,
    SlyD

    PS:
    aber auch vom hochfrequenten Aufruf von task_motionControl,
    Naja 5x pro Sekunde, die wichtigen Dinge wie Geschwindigkeit messen sind alle in ISRs drin


    sowie von der TIMER0_COMP_vect mit Ausgabe der PWM Werte ab.
    Das ist nur damit sich die PWM Werte nicht zu abrupt ändern.

    Das heisst aber, das die Regelwerte quasi zeitungebunden bzw. CPU-Lastabhängig verarbeitet werden? Das würde vielelicht das besagte Schwingen erklären? Die CT'bot Lösung verwendet dagegen z.B. einen zeitsyncronisierten PID Regler mit Änderung der PWM Rate im Anschluß an den Regelkreis ohne weitere Laufzeitabhängigkeiten. Quasi so als wäre die task_motionControl ein Teil der TIMER0_COMP_vect.
    Dort wird die Regelung komplett deaktiviert wenn Du die PWM so drastisch runterdrehst
    Warum die überhaupt die 120Hz da drin haben ist mir schleierhaft, man verwendet bei so kleinen Motoren so niedrige PWM Frequenzen aus oben schon geanannten Gründen normalerweise nicht. Das hat fast nur Nachteile (egal ob mit Regelung oder ohne).


    PPS:
    Die Ketten des RP6 sind übrigens träger als die kleinen Räder des c't Bot.
    Daher macht dort eine schnellere Regelung auch mehr Sinn.
    Zudem ist die Auflösung beim c't Bot nur 60 Flanken / Umdrehung, die Software muss daher die Zeit zwischen zwei Encoderflanken messen und führt die Regelung bei jedem neuen Puls aus. Das erhöht die CPU Last natürlich enorm.
    Der RP6 hat eine 10x höhere Encoderauflösung und verzichtet daher auf sowas.
    Geändert von SlyD (27.08.2012 um 11:46 Uhr)

Ähnliche Themen

  1. RN-Motor I2C Kommunikation klappt, am Motor tut sich nichts
    Von hspecht74 im Forum Bauanleitungen, Schaltungen & Software nach RoboterNetz-Standard
    Antworten: 1
    Letzter Beitrag: 24.11.2008, 13:04
  2. Antworten: 0
    Letzter Beitrag: 15.03.2008, 17:28
  3. 19khz-einstellung für motortreiber l293d auf dem rp6
    Von roboterheld im Forum Robby RP6
    Antworten: 0
    Letzter Beitrag: 05.10.2007, 17:50

Berechtigungen

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

Solar Speicher und Akkus Tests