Hallo, um einen Elektromagneten zu regeln, benutze ich den angefügten, einstellbaren PID-Regler. Der Regler erhält von einem Funktionsgenerator ein Sollsignal und von einer Hallsonde einen Ist-Wert. Der Ausgang des Reglers geht an einen Verstärker. Versorgungsspannung des Reglers ist +/- 15V. Der P, I und D Anteil kann jeweils über ein Poti eingestellt werden. Über ein weiteres Poti kann der Hub des ganzen Reglers verändert werden. Über einen Schalter kann das Sollsignal direkt auf den Ausgang gegeben werden und über ein Relais kann der Regler vom Ausgang getrennt werden. Die Widerstände des Differenzverstärkers sind 0,1% Typen. Nun zum Problem: Im folgenden ist der D-Anteil nicht aktiv, d.h. das D-Poti auf GND! Der Regler regelt die Regelabweichung nicht vollständig aus. Es bleibt ein bleibender Regelfehler, der mit steigender Amplitude des Sollsignals zunimmt, wobei das Istsignal immer größer, als das Sollsignal ist! Das Einschwingen des Reglers bei Sollsignaländerung sieht bei passender Einstellung sehr gut aus, kein Überschwingen und schnelles Ausregeln, aber eben mit besagtem bleibenden Fehler. Dabei gibt der Differenzverstärker die Regelabweichung noch aus, der Fehler muss also in einem nachfolgenden Schaltungsteil stecken. Ich vermute, dass der I-Regler irgendwie nicht recht arbeitet. Im Anschlag ist er nicht, das Sollsignal liegt beispielsweise bei etwa 1 V, das Istsignal etwa bei 1,2 V. Bei Sollsignal=0 V ist das Istsignal etwa 0,1 V. Was kann die Ursache dieses Fehler sein? Schonmal vielen Dank für eure Hilfe!
Was misst Du direkt am Ausgang von IC2A, also direkt am Pin 1 des I-Reglers?
Ich würde auch auf den I-Anteil tippen. Beobachte mal die Veränderung der Abweichung beim Ändern des I-Reglers. gk
Ein I-Regler hat IMMER eine kleine bleibende Regelabweichung, anders kann der ja nicht funktionieren.
Emtec schrieb: > Ein I-Regler hat IMMER eine kleine bleibende Regelabweichung, anders > kann der ja nicht funktionieren. Hast Du I mit P velwechsert? Kann ja mal vorkommen. Ein I-Regler wird eine noch so kleine Regelabweichung solange aufsummieren, bis sie weg ist.
Gerade kann ich die Werte leider nur aus dem Kopf heraus wiedergeben: Der I-Anteil gibt etwa 1,2 V bei 1 V Sollsignal aus, ist also fast alleine für das Ausgangssignal verantwortlich. Die Werte für den I-Regler habe ich vorhin leider vergessen: R11 ist 270k, C2 10n und C4 ist leer. Ich habe auch den I-Regler im Visier, aber ich verstehe nicht, wieso er sich so verhält. Die Abweichung ändert sich kaum merklich beim Verändern des I-Potis, nur das Einschwingen wird unschöner. An Pin 2 des I-Teils kann ich noch etwa 40mV messen. Warum regelt er die nicht aus? Beim Kurzschließen von C2 verschwindet die Abweichung des Istsignals über das Sollsignal hinaus. Bleibt dann nur noch die Abweichung des P-Teils übrig. Ich habe auch schon einen anderen OpAmp (LT1112) getestet, der ist zwar viel langsamer, hat aber einen sehr geringen Offset. Das Ergebnis blieb gleich. Am Layout kann es eigentlich auch nicht liegen. Ist alles sauber auf einer geätzten Platine untergebracht. Grüße, Benito
Eine Feldregelung ? Ein konstantes DC Feld ? Das Eisen hat eine Hysterese. Sollt aber trotzdem gehen.
Ja, es wird ein Magnetfeld geregelt. Die Tests habe ich alle mit einem Rechtecksignal bei 1 Hz gemacht. Beim Sinussignal und anderen Frequenzen (auch DC) ist der Fehler aber genauso feststellbar. Gruß, Benito
Wie schon gesagt, das Eisen hat ein nichtlineares Verhalten. Was fuer ein Eisen wird denn verwendet, bei welchem Feld ? Die Beziehung Strom zu H-Feld ist durch die Geometie vorgegeben, die Beziehung H zu B ist nichtlinear. Eigentlich sogar ein Tensor.
Das Eisen eine Hysterese aufweist ist mir bekannt. Deshalb wird ja auch ein Regler zum regeln der Feldstärke eingesetzt ;) Ein Regler soll die Abweichung zwischen Sollwert und Istwert (=Hallsonde!) auf Null regeln und wenn kein Element in Sättigung gerät, was hier nicht der Fall ist, schafft er das auch. Mein Regler leider nicht, da ist noch irgendwo ein Fehler ;) Gruß, Benito
Der integrator sollt eigentlich immer laufen, solange ein Fehler anliegt. Irgendwie scheint er das nicht zu tun. Miss mal mit einem scope.
>Am Layout kann es eigentlich auch nicht liegen. Ist alles sauber auf >einer geätzten Platine untergebracht. Layout OK, Aufbau OK, keine Brücken und/oder Unterbrechungen?
Wie gross ist den die Regelabweichung in % ? Ich meine damit die Abweichung vom "Sollwert " zum "Istwert".
Hi! Auch wenn dein D-Regler über das Poti an GND ist, so hängt der Eingang wegen der C's in der Luft. Versuch doch bitte mal 1M gegen GND oder nimm R16 raus. Viel Erfolg, Uwe
Danke für eure Hilfe! Der D-Teil der Schaltung gibt an Pin 7 von IC2B 0 V aus, daran kann es also nicht liegen. Der P-Verstärker ist in der Tat etwas unüblich. Den habe ich aber in Spice simuliert und da hat er funktioniert. Die Messwerte haben auch mit der Simulation übereingestimmt. Sieht keiner irgendwelche groben Fehler in der Schaltung? Falls nicht, muss ich mir wohl den I-Teil mal ganz genau ansehen. R11 ist ein 1206 SMD Widerstand, unter welchem eine GND Leiterbahn durchgeführt ist. Eventuell haben Flussmittelreste hier einen Spannungsteiler aufgebaut. Allerdings habe ich schon in vielen Schaltungen Leiterbahnen unter 1206 Bauteilen durchlaufen lassen und hatte noch nie Probleme damit. Grüße, Benito
Miss mit dem Scope am Ausgang des Integrators. laeuft der davon oder nicht ? Das ist dann auch schon die antwort. Falls der zu integrierende Strom gleich dem Eingangsstrom des OpAmps ist, bleibt der Integrator auch stehen. Sowas waere aber auch unueblich. Ah. Ja. Falls der Kondensator des Integrators ein Elko ist geht's auch nicht. Ein Elko hat einen Lechstom in der Hoehe des Integrationsstromes.
Der Integrator bleibt bei 1,2 V stehen, bei Sollwert = 1 V. Er läuft also zu weit und läuft nicht rückwärts. Erklären kann ich mir das nicht, denn es liegt noch ein Fehlersignal an. Der Kondensator ist ein Folienkondensator. Versorgungsspanungen sind in Ordnung. Wenn ich den Regler ohne weitere Beschaltung laufen lasse, läuft der Integrator nach einigen Sekunden in die Sättigung, was er ja auch tun soll. Seltsam das Ganze... Grüße, Benito
Ich würde jetzt mal die Spannung an Pin 2 IC2A messen(Oszi), müsste ja null sein. gk
Hi! >Der Integrator bleibt bei 1,2 V stehen, Das kann/darf garnicht sein. Ein Integr. läuft abhängig von R*C bis an die Aussteuergrenzen(ca.+/-13V). Überprüfe bitte deine Schaltung, sie kann nicht so sein wie gezeichnet oder der OV ist def. >Wenn ich den Regler ohne weitere Beschaltung laufen lasse, läuft der >Integrator nach einigen Sekunden in die Sättigung, Ähmmm welche weitere Beschaltung? und warum "nach einigen Sekunden "? Welche Werte haben denn R11,C2,C4,R17(möglichst nachmessen) Das klingt furchtbar hochohmig. Gerade gefunden: >R11 ist 270k, C2 10n und C4 ist leer Da sollten ca.2,7ms rauskommen, Sekunden??? nö nö! Mach mal 270K über C2, dann sollte das Eingangssignal inv. am Ausgang erscheinen. Wenn nicht ist eventuell R11 def. Einfach richtig und mit Überlegung suchen. Viel Erfolg, Uwe
Die Auflösung der Geschichte: Es lag nicht am Regler. In dem SMB Kabel, welches zum Ist-Eingang führte, war ein Widerstand versteckt. Damit habe ich einen Spannungsteiler aufgebaut. Aufgefallen ist es mir nicht, da ich das Istsignal am anderen Ende des Kabels abgegriffen hatte. Es liegen nun an Pin 2 des IC2A immernoch einige 10mV an. Das erstaunt mich etwas. Naja, aber das Gesamtergebnis ist nun akzeptabel. Blöde Geschichte. Ich danke allen, die mir zu helfen versucht haben!
Hi! >In dem SMB Kabel, welches zum Ist-Eingang führte, war ein Widerstand >versteckt. Das erklärt höchstens die Reaktionszeit, mehr nicht. >Es liegen nun an Pin 2 des IC2A immernoch einige 10mV an. Entweder dein TL072 hat einen abnormal hohen Offset, oder du misst Mist. Welchen Wert hat denn Pin 3? Sollte ja eigentlich 0 sein. Und was kommt hinten raus? Ein I-Regler muss bei statischer Diffspannung zwischen den Eingängen(2/3) in die Begrenzung laufen, sonst ist was def. Viel Erfolg, Uwe
Die obige Schaltung müssten doch im Prinzip für alle PID-Regelstrecken funktionieren, sofern man die Widerstände und Kondensatoren entsprechend anpasst. Gibt es ein einfaches Verfahren, wie man deren Werte aus den P, I und D-Werten einer digitalen Schaltung, z.B. Arduino ermitteln/errechnen kann? Könnte mir vorstellen, dass die analoge Schaltung wesentlich schneller arbeitet, als die Arduino-Umsetzung.
Man könnte ja mit Null anfangen. Aber wie ich das der analogen Schaltung sage, weiß ich auch nicht. Wie machen es denn die anderen analogen Schaltungen?
Ich würde an deiner Stelle noch Offset Kompensationswiderstände einfügen. Also an jeden (+) Eingang der OPVs. Viele Grüße RS
Karl-alfred R. schrieb: > Wie machen es denn die anderen analogen Schaltungen? Zum Beispiel einen großen Widerstand über das I Glied, um den Anfangswert 0 zu setzen (wird es dann ein IT1 ? ist lange her). Wenn es schneller sein muss, den mit einen Schalter. Ansonsten den C mit den Anfangswert laden.
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
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.