LabVIEWForum.de - Erzeugung eines stufenlos einstellbaren PWM-Signals

LabVIEWForum.de

Normale Version: Erzeugung eines stufenlos einstellbaren PWM-Signals
Du siehst gerade eine vereinfachte Darstellung unserer Inhalte. Normale Ansicht mit richtiger Formatierung.
Seiten: 1 2
Servus!
Ich hab mal ne kleine Frage. Ich habe unten dargestelltes Blockschaltbild erstellt.
Damit möchte ich ein PWM-Signal erzeugen! Im Prinzip funktioniert das auch. Leider aber nicht Stufenlos...
D.h. wenn ich den Schieberegler verstelle, ändert sich am PWM-Signal nur alle 10% schritte! Das Signal springt dann quasi von 20% auf 30% und so weiter...
Gibt es eine Möglichkeit das Stufenlos zu realisieren!?
Ich muss nämlich ne Regelung aufbauen und brauche da schon ne größere Genauigkeit...

Danke schonmal an die nette Runde!Cool
Viele Grüße,

Freddy
Hallo Freddy,

ja, die Möglichkeit gibt es!
Hihi!Big Grin
Merci! Und wie!?
Oder ist meine Frage so dumm!?
Hallo Freddy,

deine Frage ist nicht dumm, nur unglücklich formuliert. Jedenfalls hatte ich sie (wortwörtlich) beantwortet… Big Grin
Was du auch bedenken solltest: anhand eines Bildes eines BD, in dem nur ExpressVIs verwendet werden, kann hier niemand eine qualifizierte Aussage zu deinem VI machen!
Merke:
- Fragen sinnvoll formulieren… Big Grin
- Bilder sind zwar nett, echte VIs aber viel aussagekräftiger!

Beispiele suchen -> Signalerfassung/ausgabe -> DAQmx -> Erzeugung digitaler Impulse -> "Gen Dig Pulse Train-Continuous"…
Servus!

Vielen Dank schonmal für die guten Tips!
Ich hab mich mal durch die "Gen Dig Pulse Train-Continuous"-VIs geklickt... Leider funktioniert das bei mir irgendwie nicht...
Ich kann als Tastverhältniss nur 0,5 eingeben.. Das bedeutet wohl 50%!? Mit einem anderen Wert lässt sich das VI nicht starten...
Könnte mir da nochmal jemand nen guten Tip geben!?
Ich muss ein PWMSignal erzeugen welches eine Periodendauer von 50us hat! Daß heißt, die Frequenz müsste 20kHz betragen!
Ich hoffe das geht!
Danke schonmal!

Freddy
Hallo Freddy,

du verschweigst leider wichtige Informationen…
Zitat:Ich muss ein PWMSignal erzeugen welches eine Periodendauer von 50us hat! Daß heißt, die Frequenz müsste 20kHz betragen!
- Welche Hardware hast du überhaupt zur Verfügung?
- Du brauchst eine wesentlich höhere Frequenz als 20kHz, immerhin willst du ja dein PWM möglichst fein abstufen können. Mit 2%-Schritten bist du dann schon mal bei 1MHz Taktrate…

Zitat:Mit einem anderen Wert lässt sich das VI nicht starten...
- Welche Werte hast du eingestellt und ausprobiert?
- Welche Fehlermeldung hast du bekommen?

- Wieso hängst du kein VI an (falls du Änderungen am Beispiel-VI vorgenommen hast)?
- Wieso, weshalb, warum…
OK! Stimmt, Sorry!
Also Ich muss ein Propventil ansteuern.
Als Hardware steht mir dafür ein USB-6259 zur Verfügung.
Ich habe an dem VI noch nichts verändert (umgebaut). Wenn ich als Frequenz 20kHz eingebe, generiert mir das VI ein wunderschönes Signal! Leider tut sich nichts wenn ich an dem Duty Cycle-Regler stelle... Wenn ich vor dem Starten einen anderen Wert als 0,5 eingebe kommt der Fehler:

"Mögliche Ursachen:

Gewünschter Wert wird für diese Eigenschaft nicht unterstützt. Der Eigenschaftswert ist ggf. ungültig, da er mit einer anderen Eigenschaft in Konflikt steht.

Eigenschaft: CO.Impuls.Tastverhältnis
Angeforderter Wert: 600,0e-3
Mögliche Auswahl: 500,0e-3
Im Prinzip
"
Ich denke das Prblem, weshalb man den Duty Cycle nicht im laufendem Betrieb ändern kann ist, daß die Werte nicht innerhalb der While-Schleife liegen. Das müßte ich doch eigentlich nur ändern oder!?
Weshalb sich aber generell kein anderer Abtastratenwert einstellen lässt verstehe ich nicht...

Danke für die Hilfe!

Ich bin noch ein bischen Unfähig... :-\

Grüße,

Freddy
Hallo Freddy,

ein Ventil mit 20kHz ansteuern? Was ist das denn für ein Ventil?

Zitat:Wenn ich als Frequenz 20kHz eingebe, generiert mir das VI ein wunderschönes Signal! Leider tut sich nichts wenn ich an dem Duty Cycle-Regler stelle...
THINK DATAFLOW!
Im Beispiel wird ein fester PWM-Duty eingestellt, in der Schleife wird nur auf Abbruch gewartet…

Zitat:Weshalb sich aber generell kein anderer Abtastratenwert einstellen lässt verstehe ich nicht...
Welchen CTR benutzt du?
Welche BaseClock benutzt du?
Wie lautet die volle Fehlermeldung?
Wenn du DutyCycle und/oder Frequenz "on the fly" während des laufenden Counter-Task ändern willst, dann z.B. so:
http://www.labviewforum.de/Thread-Proble...7#pid66457

Gruß, Jens

P.S.: Habe kein Problem, einen anderen Wert als 0,5 einzugeben. Welchen Counter hast du denn ausgewählt? Mglw. DevX/freqout ? Nimm mal DevX/ctr0...
Zitat:P.S.: Habe kein Problem, einen anderen Wert als 0,5 einzugeben. Welchen Counter hast du denn ausgewählt? Mglw. DevX/freqout ? Nimm mal DevX/ctr0...

Man verdammt! Jetzt gehts bei mir auch...! das man sich aber ach immer den falschen Kanal aussucht... :-) Vielen vielen Dank!

Ich habs aber mittlerweile auch mit dem "Signal Simulieren"-Block hin bekommen...
Das sieht bei mir jetzt so aus (wie unten im Bild). Das Problem waren die Anzahl der Samples... Ich hab das aber nur durch Zufall, durch ein bischen Rumspielen entdeckt... Das Timing ist bei mir jetzt wie unten im Bild eingestellt. Damit ist mir jetzt eine Auflösung von 1%-Schritten möglich.
Verstehen tue ich das jetzt aber noch nicht so ganz... Was bedeuten die Einstellungsmglichkeiten denn unter Timing!? Sind die Sampels die Anzahl der zu schreibenden Werte auf den Ausgang oder was!? Und was ist dann die Sample-Anzahl!?Könnte mir das nochmal schnell erläutern!?
Und zuletzt, kann ich die Auflösung nochmal verdoppeln (oder wenigstens erhöhen)? 1%-Schritte sind noch zu gering für eine vernünftige Regelung meines "Problems"...

Merci schonmal und schönen Wochenstart!!

Freddy
Seiten: 1 2
Referenz-URLs