LabVIEWForum.de - Datenerfassung Counter PWM

LabVIEWForum.de

Normale Version: Datenerfassung Counter PWM
Du siehst gerade eine vereinfachte Darstellung unserer Inhalte. Normale Ansicht mit richtiger Formatierung.
Seiten: 1 2
Hi Leute,

ich habe ein kleines Problem mit dem einlesen von drei PWM Signalen. Diese PWM-Signale sind die Ansteuerung für einen Umrichter, das heisst also die Aussteuerung ist um 120° Phasenverschoben.

Nun wollte ich diese gerne mit LabVIEW darstellen und den DutyCycle aller drei PWM-Signale in einem Verlauf darstellen. Die Graphen sollten dann jeweils annäherend einen Sinusverlauf darstellen.
Das Ganze mache ich mit einem PXIe-System und einer NI-PXIe-6341 Karte, welche mit insgesamt 4 Zähler zur Verfügung stellt. Über drei dieser Zähler lese ich die Impulsbreite der PWMs ein und möchte diese Anzeigen. Es kommt auch wirklich ein Sinusverlauf bei allen drei Zählern heraus, das problem dabei ist nur, dass diese Signale nicht um 120° verschoben sind und je nachdem wann ich das VI starte sich immer unterschiedliche phasenverschiebungen ergeben. Zudem kommt noch, dass sich die Phasenverschiebung bei länger Programmlaufzeit verändert, was eigentlich nicht sein kann.
Ich bin da leider gerade etwas ratlos was ich da machen kann bzw. woran das liegen könnte. Vielleicht könnt ihr mir da weiterhelfen. Ich wäre euch sehr dankbar.

Noch zur Info: Die realen PWM-Signale sind um 120° phasenverschoben. Soviel ist 100% sicher. Also muss es irgendwo an der synchronisation im System liegen.

Edit:
Es kommt auch schon mal vor, dass ich, wenn ich zum richtigen Zeitpunkt die Messung starte, die Signale um 120° phasenverschoben sind und dies auch über einen längeren Zeitraum (einige Minuten)


Ich hab auch nochmal zwei screenshots der Signalverläufe mit unterschiedlicher phasenverschiebung gemacht (nicht wundern, das stellt keinen reinen Sinus dar. Die dritte harmonische ist auch enthalten und das muss auch so)

Lv10
Du hast hier keinerlei Garnatie, daß die 3 Tasks synchron gestartet werden.
Abhilfe: Alle 3 Kanäle in einem Task zusammenfassen. Also 2 der drei Tasks löschen und an die verbleibende Task das hier anschließen:
[attachment=31687]
wie fasse ich denn 3 tasks in einem zusammen ? Also im MAX kann ich ja keine 3 Zählerkanäle in einem Task starten. Geht das in LV selber irgendwie?
Dieses Element sollte reichen: ctr0:2 sind deine 3 Kanäle (Kanal 0 - Kanal 2)
Außerdem: Man kann Tasks zwar auch im MAX einrichten - aber das wurde hier doch gar nicht gemacht. Die Tasks wurden bereits in "LV selber" konfiguriert. Was soll der Einwand?
ok vielen dank erstmal für die Hilfe. Werde es am Montag erst ausprobieren können.

Der Einwand mit MAX war deswegen, da ich davon ausgegangen bin, dass wenn MAX das nicht einrichten kann LabVIEW das auch nicht kann aber ich werde es Montag probieren und dann berichten wie der Erfolg war.

Gruß und eine schönes Wochenende
' schrieb:Du hast hier keinerlei Garnatie, daß die 3 Tasks synchron gestartet werden.
Abhilfe: Alle 3 Kanäle in einem Task zusammenfassen. Also 2 der drei Tasks löschen und an die verbleibende Task das hier anschließen:
[attachment=60845:1.png]


Guten Morgen,

ich habe das nun gerade probiert mit den Tasks zusammenfassen und leider keinen Erfolg gehabt. Nun wird kein einziger zähler mehr gestartet geschweige denn irgendwas einglesen.
Ist das so überhaupt machbar, wie du es oben beschrieben hast ?

Gruß
Tut mir Leid, ich kann Dir da nicht mehr weiterhelfen. Ich habe keine direkte Erfahrung mit dieser Art Aufgabe und müßte jetzt mit externem Veruchsaufbau usw. testen was machbar ist und was nicht. Das würde Stunden dauern, die Zeit habe ich nicht.
Könntest Du nicht auch die drei Kanäle digital (oder analog) mit genügend hoher Rate einlesen und die Daten in bezug auf die Tastverhältnisse auswerten? Dann hätte man die Synchronisationsprobleme nicht.
' schrieb:Tut mir Leid, ich kann Dir da nicht mehr weiterhelfen. Ich habe keine direkte Erfahrung mit dieser Art Aufgabe und müßte jetzt mit externem Veruchsaufbau usw. testen was machbar ist und was nicht. Das würde Stunden dauern, die Zeit habe ich nicht.
Könntest Du nicht auch die drei Kanäle digital (oder analog) mit genügend hoher Rate einlesen und die Daten in bezug auf die Tastverhältnisse auswerten? Dann hätte man die Synchronisationsprobleme nicht.


Ich glaube nicht, dass ich mit dem digitalen einlesen und weiterverarbeiten weiter komme. Die Signale haben eine Frequenz von 4kHz und ich glaube nicht, dass ich das mit den Eingängen vernünftig genau hinbekomme. Ein Analoges einlesen ist auch etwas blöd, da ich die Daten dann im nachhinein noch auswerten müsste und das ebenfalls zu lange dauern würde.

Hat noch jemand einen anderen Vorschlag?
' schrieb:Ich glaube nicht, dass ich mit dem digitalen einlesen und weiterverarbeiten weiter komme. Die Signale haben eine Frequenz von 4kHz und ich glaube nicht, dass ich das mit den Eingängen vernünftig genau hinbekomme. Ein Analoges einlesen ist auch etwas blöd, da ich die Daten dann im nachhinein noch auswerten müsste und das ebenfalls zu lange dauern würde.
Das kann ich nicht verstehen. Z.B. Datenrate kontinuierlich 400kHz = 100 Samples pro Impuls. Immer 100 Samples auf einmal lesen. Auswertung nach jedem Lesen: Tastverhältnis in % = Anzahl der true Werte.
Wenn Du immer noch einen IBM-XT von 1985 verwendest, kann es mit dieser "Auswertung" Probleme geben, aber normalerweise schafft man so etwas zwischen zwei Einlesungen ohne sichbare Prozessorauslastung. Von Auswertung, die diesen Namen verdient, kann eigentlich gar keine Rede sein.
Seiten: 1 2
Referenz-URLs