Hallo zusammen bin mal wieder auf ein Problem gestoßen bei dem ich nicht so recht weiter komme.. Ich benötige einen PI Regler weiß aber nicht so recht wie ich ihn in VHDL Realisieren soll hab mir mal die Formel rausgesucht ist die überhaupt richtig..? esum = esum + e y = Kp * e + Ki Ta esum mein Problem liegt vorallem da, dass Ta eine float Zahl ist (0,01)und in VHDL lassen sich floats nicht berechnen.. habe auch schon überlegt Ta zu schieben und den Wert so zu vergrößern aber die anderen Werte sind schon 25 Bit groß und würden ja so nur noch größer werden.. hat einer vielleicht ein paar gute ideen?
was ich vielleicht noch vergessen habe zu posten ist.. der Wert der in den Regler ein geht ist der Fehler zwischen einer Soll Geschwindigkeit und einer Ist Geschwindigkeit.. Je Größer die differenz ist desto stärker muss der Motor bestromt werden damit die Ist Geschwindigkeit gleich der Soll Geschwindigkeit wird.. in den Regler geht also Fehler <= Vsoll - Vist; und rauskommen soll ein wert für den Strom..
Sieht nach der s-Form aus, du brauchst aber die z-Transformierte Erster Schritt: Lutz/Wendt aufschlagen und in die Zeitdiskrete Form bringen.
Lars schrieb: > Ich benötige einen PI Regler weiß aber nicht so recht wie ich ihn in > VHDL Realisieren soll Für die Synthese oder für die Simulation? > mein Problem liegt vorallem da, dass Ta eine float Zahl ist (0,01)und in > VHDL lassen sich floats nicht berechnen. Falsch. Für die Simulation kannst Du z.B. math.real verwenden und für die Synthese gibt es Festkommaarithmetik. Duke
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.