Aussetzer DSP TMS320F2809

OP #1806477
Lesenswert?

Hallo zusammen,

ich wollte mal fragen ob jemanden bekannt ist, das beim genannten 
Controller, beim ausgeben einer sinusfunktion über die IQMath bibliothek 
ab und zu diese Funktion aussetzer hat und irgendetwas ausgibt.
Hat da jemand erfahrung damit und kann mir unter Umständen Tipps oder 
Maßnahmen posten?
Wäre für jede Hilfe dankbar! Ist nämlich bei meinem System, in welchem 
ich durch den Sinus eine entsprechende PWM erzeuge und dann nen motor 
ansteuere ziemlich schlecht wenn der dann urplötzlich und ohne 
vorwarnung mal kurz aussetzen würde
Vielen dank schonmal!

grüße
tom
Gast #1806609
Lesenswert?

Hallo Tom,

keine Aussetzer bekannt in ähnlicher Anwendung - wäre auch schlecht für 
uns. Hast du da Probleme oder ist das eine Vorabüberlegung? Falls es 
Probleme gäbe - würde ich eher auf andere Probleme tippen, falsch 
normiert, Quantisierungseffekte, Reglerprobleme oder sowas...

Grüße Karl
OP #1807586
Lesenswert?

Hallo zusammen,

@Karl: Jep ich hab damit zur Zeit Probleme, das System läuft derzeit 
noch mit einem kleinem Modellsynchronmotor, wird aber in den nächsten 
Tagen auf einen großen Servolenkungsmotor umgebaut. Beim kleinen ist das 
jetzt noch nicht schlimm, aber beim großen denk ich würde mein 
Wechselrichter ziemlich darunter leiden. Hmm die Fehler die du schreibst 
sind ein guter Anhaltspunkt, aber bei mir ist direkt das Problem:

sollstrom1 = _IQ9sinPU(funktionswert);

Hierbei gebe ich zum testen meines Stromregler direkt einen Sinus vor, 
und der dürfte ja nicht urplötzlich aussetzen, oder? Also den Sinus lass 
ich mir über nen DA-Wandler ausgeben, da hängt kein Regler oder sowas 
dazwischen. Normal direkt von der Look-up-table aufs oszi.

@André: Das Problem hatte ich auch schon^^. Weiß zwar nicht 100%ig obs 
daran lag, aber hab nen Tipp bekommen die JTag Verbindung zum Rechner 
mit Alufolie einzuwickeln. Das Problem ist seitdem verschwunden.
Jedoch ist leider das mit den Sinusaussetzern geblieben -> Das tritt 
aber auch nicht oft auf, wenns hoch kommt pro Woche einmal, obwohl ich 
den ganzen Tag daran arbeite... also total unregelmäßig.
Kann mir das nicht erklären.
Vielen Danke für euere Zeit!

grüße
tom
Gast #1807749
Lesenswert?

Tja, das schränkt die möglichen Ursachen eher ein. Spontan würde ich auf 
ein evtl. Speicherproblem tippen, vielleicht mal die Variablen im Ram 
anders legen, static deklarieren oder global, evtl. volatile. Sicher, 
dass der Funktionswert nicht auch einen Aussetzer hat?

Prinzipiell sehe ich da eigentlich nur zwei Möglichkeiten: Entweder die 
Funktion hat einen Fehler, dann ist das eher deterministisch und immer 
der gleiche Wert (oder mehrere). Das glaube ich aber nicht, da hat TI 
doch etwas in seiner Doku gehabt meine ich. Die andere Möglichkeit ist, 
dass da sonst etwas schief geht. EMV lässt Speicher kippen (naja), oder 
eben der Klassiker, Pointerprobleme oder Stack Overflow usw. Vielleicht 
ist es auch ein Problem mit den Interrupts, dass da welche überlappen 
und daher der richtige Wert einer falschen Zeit ausgegeben wird.

Das ist natürlich schwer zu sagen, und auch schwer zu finden. Vielleicht 
hilft dir ja das eine oder andere Stichwort, den Fehler zu finden.

Viel Erfolg!
Gast #1807791
Lesenswert?

Wie hast du denn festgestellt, dass die Funktion einen aussetzer hat?

Wenn du dass z.B. über den Strom im Umrichter bemerkt hast, könnten auch 
Fehler bei der Leistungselektronik die Ursache sein (z.B. Überhitzung).

Antwort schreiben

Bitte melde dich an, um einen Beitrag zu schreiben.

oder

Mit Google-Account einloggen

Die Registrierung ist kostenlos und dauert nur eine Minute.

Jetzt registrieren