Abend Ihr lieben! :) Ich sitze im Moment an einer ADPLL (All Digital Phase Locked Loop). Diese soll später auf einem FPGA laufen, um mir Arbeit zu sparen habe ich diese jedoch in Simulink so entworfen, dass ich sie später über den HDL-Coder von MatLab/Simulink compilieren kann. Dies - so dachte ich - erspart mir wenigstens Zeit zum parametrieren und Simulieren. Das war vor 2 Tagen.. Es funktionieren eigentlich alle Blöcke einwandfrei, bis auf der PI Regler. Ein einfacher Proportional-Regler (im Simulink Modell "ADPLL_HDL" zu Simulationszwecken noch mit einem Manuellen Schalter angeschlossen) funktioniert wie es sich gehört, ist nur wenig stationär genau. So wollte ich mal meine Frage hier im Formum teilen, nachdem ich im offiziellen MatLab-Forum (https://de.mathworks.com/matlabcentral/answers/359731-setting-the-right-control-parameter-for-an-all-digital-pll) noch auf keien Hilfe gestoßen bin. Das angehängte param.m Skript berechnet und initialisiert die Parameter, auch die für die Filterkoeffizienten und öffnet das Modell. Habe ich eventuell einen Fehler in der Berechnung, sodass meine berechneten Koeffizienten für dene PI-Regler schwachsinnig sind? Bis dahin und einen guten Start ins Wochenende.
Okay, also nachdem ich nun einmal die Filter miteinander verglichen habe scheint es wohl wie so oft an der diskretisierung der Koeffizienten zu liegen. Kennt jemand sich mit dem fixed point tool in Matlab, im Speziellen dem vom Filter designer aus??
Ja, bedingt. Was wäre denn die Frage? Hast Du Dein Matlabmodell am Laufen? Wir bauen das in Simulink bitgenua nach und prüfen dann Quer, also die Differenz zwischen Real und Int-Rechnung. Gfs kannst du den Filter auch genau dahingehend isoliert simulieren. Kann auch noch sein, dass dann das eine oder andere Delay nicht passt.
Naja, ich habe die Matlab Filter-design-toolbox verwendet und in dieser kann man den Filter gleich diskretisieren. Da wird einem das Verhalten des diskreten Filters ja schon im Vergleich zum idealen Filter dargestellt. Wenn ich nun den diskretisierten Filter im modell vergleiche verhält dieser sich so garnicht merh gleich.
Dann sollten es aber keine Rundungen sein, oder aber die schematisierte Darstellung ist nicht gleich. Hast du den Filter mal durchgefahren? Es müsste sich eigentlich zeigen, ob da was ist.
Gute Idee! Wollte ich grade machen, hab mir zuvor jedoch mal den Filter aus Basisblöcken erstellen lassen um die internen Signale verfolgen zu können.. es hat sich raus gestellt, dass Filterinternen Wortlängen für die einzelnen Zustände zu klein für den darstellbaren Wertebereich waren. Angepasst... und er arbeitet. :) Nun funktioniert meine ADPLL leider immer noch nicht, arbeite mich jedoch weiter in die Literatur ein. Kann ja kein Hexenwerk sein, nen geeignetes Schleifenfilter für den Phasen Frequenz Detektor zu berechnen..^^ Verstehe wohl nicht, wieso das nicht nach Anleitung funktioniert.. hatte alles so umgesetzt wie zuvor recherchiert und gelesen. Danke für das Feedback Thomas! ;)
:
Bearbeitet durch User
Du musst die Parameter eh zur Laufzeit aendern koennen ...
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.