Forum: Mikrocontroller und Digitale Elektronik digitale spannungsregler


von gertro f (Gast)


Lesenswert?

moregen zusammen

ich suchen jemand, der schon ein digitale PID regler entwickelt hat. ich 
versucht auch so was für eine spannungregelung mit keil und c zu 
entwickelt , aber ich habe bis jetzt so viel schwiekeiten oder 
verständnissproblem.

muss das system unbeding echtzeit programmiert werden ? soll auch ein 
andere Betriebsystem benutzt werden?
ich suche nach einem gute konzept und programmstruktur.

was musst geachtet werden und wie

danke

von Lothar M. (Firma: Titel) (lkmiller) (Moderator) Benutzerseite


Lesenswert?

> eine spannungregelung mit keil und c zu entwickelt
Wie schnell ist das Stellglied, was genau soll denn geregelt werden?
Welche Zeitkonstanten hast du im System?

> muss das system unbeding echtzeit programmiert werden ?
Nur so wirst du die Regelung überhaupt in den Griff bekommen. Allerdings 
ist hier eine grundsätzliche Frage zu stellen: was ist "Echtzeit". Bei 
einer Motorlageregelung ist eine Zykluszeit von 10ms durchaus noch 
Echtzeit, ein Stromregler muß da schon wesentlich knackiger zur Sache 
gehen...

von Purzel H. (hacky)


Lesenswert?

Echtzeit ist eine Aussage ueber die Geschwindigkeit, ueber das 
Reaktionsverhalten. Die Sensoren melden einen Zustand, einen Messwert 
und auf diesen Messwert wird reagliert. Bei einem hinreichend Grossen 
und langsamen System, wird eine Sekunde Antwortzeit des Computers immer 
noch als genuegend empfunden. Echtzeit bedeutet immer innerhalb der 
spezifizierten Reaktionszeit reagieren zu koennen. Das kann durchaus 
eine sekunde sein, und muss keinesfalls mikrosekunden sein.
Standardmaessig verwendet man bei kleinen Systemen kein Betriebssystem.

von Selector (Gast)


Lesenswert?

Hi,
was genau möchtest du regeln?
Schaltnetzteil?
wenn ja,  welche Topologie... buck, boost, buck-boost, flyback, 
resonantzkonverter
oder hast du ne eigene Topologie?
PID is eigendlich recht einfach zu implementieren aber nich immer der 
Regler mit optimalem Ergebniss.

Ich persönlich verzichte auf Betriebssysteme so hab ich das Timing 100% 
selbst unter kontrolle und keinen unnötigen krimskrams drin.

Hmmm Konzept und Programmstruktur hängt von deinen genauen Anforderungen 
ab.
Transiente vorgaben? welche Spannungslevel?
Erzähl uns n bischen von deinem Prototypenaufbau
MFG
Selector

von gertro f (Gast)


Lesenswert?

ok erst danke für die antwort,

ich will den sekundäre regelkreis eines schaltnetzteils , digital 
implementieren. die ausgangsspannung  steht im Bereich zb 
20............30v. der regler soll auf  zb 25v regelt. mein µC verfügt 
über ADc und DAC. ich habe die konstantewerte aus der analogschaltung 
gerechnet aber die werte sind mir kömich  kp= 0,309 ki=1186, kd=15µs

Ki = Kp/Tn    Tn=kp/ki
Kd = Kp*Tv    Tu=kd/kp

am ausgang des netzteil ist ein analogfilte(LC-Filter: 2+5µH  und 
2+680µF)dadurch ergibt sich ein frequenz von f= 43,xx Hz.

 von der seite Roboternetz habe dies bekommen
e = w - x;          //Vergleich
esum = esum + e;        //Integration I-Anteil
y = Kp*e + Ki*Ta*esum + Kd/Ta*(e – ealt);  //Reglergleichung
ealt = e;

ich versucht nach verschieden einstellung (Ziegler/Nichols, 
Chien/Hrones/Reswick ) Ta zu rechnen. ich dachte , dass mit der 
einstellung stimemnt soll und und auch klein als 1/(2*f) ist das gut 
gedacht?  wie soll imprinzip Ta definier werden?

@ wie haben sir die timing kontrolle aufgbaut?

das ist im groß die aufgabe,

von gertro f (Gast)


Lesenswert?

haloo stimm schom was ich meine? für die Diemensionnierung des Regler?

von gertro f (Gast)


Lesenswert?

@ selectoc

  es ist ein eintakt durchflusswandler.

von gertro f (Gast)


Lesenswert?

hallo zusammen,

noch ein Frage zu Dimensionieung.  nach ein sprungabtwort am Ausgang 
könnte ich festellen, das es um ein PT2 Glied als Regelstrecke angeht. 
nach Berechnung habe D=0,1065.  von dem Ausgangsfilter  rechne ich mit
f= 1 / wurzel (LC) und bekomme 43,16 KHz  diese f habe ich als fo für 
die Berechnung von d benutzt.

0 < D < 1   d.h  erhält man komplex polen

                   S1= -WoD + jWo * Wurzel(1 - D*D)
                   S2= -WoD - jWo * Wurzel(1 - D*D)

die Zeitkonstant T= (Te * Wurzel(1 - D*D)) / (2*Pi)  = 53,19 µs

meine Fragen sind folgende:

sind meine Berechnungen Ok?

von diesen Berechnungen wie kann ich die Abtastzeit für mein PID regler 
auswählen?

Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.