mikrocontroller.net

Forum: Mikrocontroller und Digitale Elektronik Mit PID und PWM einen dc Motor regeln


Autor: Michael S. (halber)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo,
ich als Informatiker habe ein großes Problem. Ich muss zu Testzwecken 
einen DC-Motor mittels einem PWM-Signal Regeln. An dem Motor ist ein 
Poti, das mir die Stellung verrät. Die ganze Sache ist dem Elektrischem 
Gaszug am Auto sehr ähnlich. Jetzt habe ich das Problem, das ich mit 
Regelungstechnik wenig anfangen kann. Ich habe hier im Forum auch schon 
mal nachgesehen. Komme da aber gerade nicht so wirklich weiter. Die 
ganze Regelgeschichte sollte auch nur mit Integeren arbeiten. Mein 
erster Versuch die Formel für die PID-Regelung naive per copy-paste und 
ein paar int Deklarationen umzusetzen, war nicht sehr erfolgreich. 
Verstehe aber auch nicht sehr viel davon. Gibt es eventuell 
Referenzimplementierungen? Kann mir einer den Algorithmus in einem c 
ähnlichen Sprache nennen? Und wie erzeuge ich eigentlich mit der 
Regelung am besten mein PWM-Signal?

Im vorraus vielen Dank und bitte habt Rücksicht, ich bin ein einfacher 
Informatiker und verstehe von diesen Dingen nicht allzu viel.

Autor: Profi (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo Michael,
ich würde mal alles der Reihe nach machen: zuerst mal nur die PWM, dann 
einen P-Regler, dann sehen wir weiter.

Ein guter Regler muss auch bremsen und rückwarts fahren können (um 
Überschwinger zu korrigieren).

Du bekommst ja einen Error-Wert, den gibst Du auf das PWM-Register.
Bzw. wenn Du eine Vollbrücke hast, musst Du das Vorzeichen des 
Error-Wertes testen und an der Brücke die Drehrichtung entsprechend 
einstellen.

Steht die Hardware schon? Vollbrücke?

Autor: Michael S. (halber)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo Profi,
danke für die schnelle Antwort. Das PWM-Signal ist ja kein Akt. Um den 
P-Regler werde ich mich dann gleich mal kümmern. Zu deinen Fragen, ja 
die Hardware steht schon und was die Vollbrücke angeht muss ich mal 
nachsehen. Kann ich jetzt nicht mit Gewissheit sagen. Aber könntest du 
mir schon verraten, wie es dann weiter geht, bzw. gehen sollte?

Autor: Gerhard (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo Michael,

das was du da bauen willst ist in jedem Modellbauservo drinnen.
Du willst es aber selbst programmieren, da kann ich dir folgende Seite
empfehlen.

http://elm-chan.org/works/smc/report_e.html

Positionsrückmeldung wird hier zwar über einen Drehgeber gemacht,
würde ich auch so lassen.

Gruss Gerhard

Autor: Profi (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
"Aber könntest du mir schon verraten, wie es dann weiter geht, bzw. 
gehen sollte?"

Vom P zum PI-Regler ist es nur noch eine Kleinigkeit (eine Zeile Code), 
und ob es wirklich ein PID-Regler werden muss, wird sich zeigen. Dort 
sind die Regel-Konstanten oft sehr schwer zu bestimmen.

Antwort schreiben

Die Angabe einer E-Mail-Adresse ist freiwillig. Wenn Sie automatisch per E-Mail über Antworten auf Ihren Beitrag informiert werden möchten, melden Sie sich bitte an.

Wichtige Regeln - erst lesen, dann posten!

  • Groß- und Kleinschreibung verwenden
  • Längeren Sourcecode nicht im Text einfügen, sondern als Dateianhang

Formatierung (mehr Informationen...)

  • [c]C-Code[/c]
  • [avrasm]AVR-Assembler-Code[/avrasm]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] - Link zu Artikel
  • Verweis auf anderen Beitrag einfügen: Rechtsklick auf Beitragstitel,
    "Adresse kopieren", und in den Text einfügen




Bild automatisch verkleinern, falls nötig
Bitte das JPG-Format nur für Fotos und Scans verwenden!
Zeichnungen und Screenshots im PNG- oder
GIF-Format hochladen. Siehe Bildformate.
Hinweis: der ursprüngliche Beitrag ist mehr als 6 Monate alt.
Bitte hier nur auf die ursprüngliche Frage antworten,
für neue Fragen einen neuen Beitrag erstellen.

Mit dem Abschicken bestätigst du, die Nutzungsbedingungen anzuerkennen.