Liste der Anhänge anzeigen (Anzahl: 2)
Motorcontroller 230V
Hallo Leute,
ich habe hier eine kleine Tischbohrmaschine (Flott TB10 Plus) und versuche da den Regler zu entwerfen.
Wieso ich das mache? naja die Maschine habe ich ausm Schrott weil das Gehäuse und die Elektronik zerbrochen war.... Wieso auch immer.
Mitlerweile ist ein Arduino Nano mit I2C LCD sowie ein Phasenanschnittsdimmer mit ZCD im Gerät und ein neues Blechgehäuse geschweißt.
Zur Software: Timer 1 liest mir die Drehzahl aus und Timer 2 stellt den Dimmer usw. dar. Ich muss nun nur den gewünschten Wert in OCR2A werfen: 0 ist Vollgaß und 130 ist Aus.
Jetzt gehts an die Auslegung des Reglers... Das Studium liegt lange zurück und Regelungstechnik war nie mit viel Praxis gekrönt.
Bei euch im Wiki habe ich die tolle Reglerseite gefunden. Leider komme ich nicht so ganz vorran.
Ich habe verschiedene Methoden probiert und bin nun bei folgender Formel hängen geblieben:
out = (int)((0.35 * (float)e) + (0.010 * (float)esum));
Die Casts mache ich später noch weg, aber zuerst bin ich vorsichtig mit meinen Äpfeln und Birnen :)
ESum ist zwischen -2000 und 2000 begrenzt und Out zwischen 0 und 130.
Status quo: ab 250 RPM geht die obige Formel... Darunter ist es ein Geschwinge nach Noten weil der Regler auf out=0 geht und direkt darauf mit relativ hohen werten den Motor anwirft.
Sobald ich die Welle über 250RPM belaste fängt auch ein Ruckeln an.
Weiterhin belastet mich das Startverhalten... Auch das geht mit einem richtigen Ruck los.
Zu den "kontinuierlichen" Problemen hab ich mal 2 Bilder im Anhang.
Ich hoffe ihr könnt mir folgen und helfen :)
Viele Grüße
Liste der Anhänge anzeigen (Anzahl: 2)
So liebe Leute,
ich bin weiter :)
Ich habe mir die Nacht mal alles durch den Kopf gehen lassen (mit 16 war damit noch was anderes gemeint ;) ).
Ich habe ja eine absolut nichtlineare Kennlinie im Anfangsbereich. Bei out = 0 brummt der Motor nur und bei 5 dreht er los, bei 20 irgendwo ist er schon sehr schnell. Also habe ich geschaut und gesehen dass die minimal gewünschte Drehzahl bei 15 - 17 etwa erreicht wird. Danach wurde out bei 13 abgeriegelt - und siehe da: das Rucken war weg.
Weiterhin habe ich den I Anteil auch im "negativen" begrenzt: Der minimale Schlepp ist im Leerlauf und kann nicht weniger werden. Wird er "fälschlicherweise" weniger komm ich wieder ins Ruckeln da out wieder an 13 ran geht. Daher die Begrenzung von esum auf ca. 2000 - im Betrieb braucht er 2500 und mehr.
Im Anhang seht ihr ein Screenshot.
Nun muss ich nur noch das "aufschwingen" unter Last in den Griff bekommen - Siehe Anhang "belastet".
Da hab ich mit den Fingern leicht ans Bohrfutter gedrückt und wieder losgelassen. Gegen ende hab ich immer fester gedrückt bis zum Stillstand. Dann kolabiert das System - ich denke da muss ich einfach eine "Überlastabschaltung" einbauen. Aber bis dahin könnte es mehr "Schmackes" haben :)
Edit: achso nochwas: das "Schwingen" ist Drehzahlabhängig - der Regler läuft Netzsyncron. Somit denke ich ist es was vom Motor und nicht ein zu langsamer Regler.
VG