Forum: Digitale Signalverarbeitung / DSP / Machine Learning Stromregelung mit TMS320F28335


von Max0804 (Gast)


Lesenswert?

Hallöchen!
Bin gerade dabei mit dem o.g. Teilchen eine Stromregelung zu 
Programmieren.
Ich ecke an einigen Punkten an, doch die beschreibe ich kurz.
Es soll mit Hilfe einer Hystereseregelung (2-Punkt-Regelung) ein Strom 
eines Umrichters "geregelt" werden.
Hierzu soll in der DSP ein Sinus (Sollwert) mit 50 Hz vorgegeben werden. 
Mit dem ADC soll dann der Ist-Wert gemessen werden und die 
entsprechenden Ventile (4 Stück) geschalten werden. Später sollen die 4 
Ventile auch noch mit Totzeiten versehen werden können.
Die Schaltfrequenz soll am Ende ca. 60 kHz erreichen. Nun ist die Frage 
wie so etwas realisiert wird.
1. Sollen die Ventile durch schalten von GPIOs angesteuert werden, oder 
sollen 4 PWMs genutz werden?

2. Soll der interne Sollwert/Sinus mit Hilfe einer Sinus-Tabelle 
realisiert werden, oder mit Hilfe der IQMath-Bibliothek?

3. Soll der ADC mit oder ohne DMA arbeiten?

4. Soll ein ein RTOS/Bios verwendet werden, oder genügt es durch 
(Timer)Interrups die Routinen nacheinander auszuführen?

Wäre schön wenn mir jemand helfen würde, um da ein wenig Licht ins 
Dunkel zu bringen. Möchte nicht anfangen zu programmieren, um nach einer 
Woche feststellen zu müssen, das es so nicht funktioniert.

Viele Grüße
Max

von Peter D. (pdiener) Benutzerseite


Lesenswert?

Ein Zweipunktregler braucht keine PWM, die Ansteuerung wird über GPIOs 
gemacht.

Vermutlich ist es schneller, die Werte in einer Tabelle zu halten, wenn 
sich der Sinus aber dynamisch verändern soll, kommt man wohl um eine 
Berechnung in Echtzeit nicht herum.

Wozu sollte man ein DMA brauchen? Die Strommesswerte sollen ja nicht 
gespeichert werden. Ein Zeipunktregler beachtet ja immer nur den 
aktuellen Messwert. Also nimmt man einen Timer, der regelmäßig den ADC 
triggert und im ADC_ready_interrupt wertet man den Messwert aus. Ist 
dieser größer als der Wert in der Tabelle, dann den GPIO ausschalten, 
sonst einschalten.

Ein Betriebssystem halte ich persönlich nicht für angemessen, was 
natürlich nicht bedeuten soll, dass es damit nicht möglich ist.

Grüße,

Peter

von Max0804 (Gast)


Lesenswert?

Dankeschön Peter!
Klare Antwort! ;)


Viele Grüße
Max

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.