LabVIEWForum.de
Korrekter Aufbau der VI - Druckversion

+- LabVIEWForum.de (https://www.labviewforum.de)
+-- Forum: LabVIEW (/Forum-LabVIEW)
+--- Forum: LabVIEW Allgemein (/Forum-LabVIEW-Allgemein)
+--- Thema: Korrekter Aufbau der VI (/Thread-Korrekter-Aufbau-der-VI)

Seiten: 1 2 3 4


RE: Korrekter Aufbau der VI - Heber - 19.07.2017 13:49

(19.07.2017 13:37 )GerdW schrieb:  Hallo Heber,

Zitat:was nutzt mir dann die Regelschleife in der ich die ganzen tollen Blöcke habe, wenn ich diese aber nicht auf dem FPGA benutzen kann?
Überlegt man sich so etwas nicht schon, bevor man es programmiert? Hmm
Was sind denn überhaupt die Anforderungen an die Regelung? Welche Taktraten musst du hier erreichen?

Du kannst auch auf dem FPGA eine Regelschleife implementieren: Nur eben nicht mit der Sim-Schleife, sondern mit den Funktionen in der FPGA-Palette…

Ja ich dachte da ich nur einen FPGA-Modus wählen kann (kein Scan Engine) lief alles automatisch auf dem FPGA ab...
In Echtzeit. Das heißt die Taktrate sollte optimaler Weise so bei 1µs liegen, was mit einem FPGA auch möglich ist.

Ich benötige in der Regel kompliziertere Blöcke wie Sättigungen oder Totzeiten, etc. um eine Regelung zu entwerfen. Das dürfte ohne Control Design and Simulation schwer werden...


RE: Korrekter Aufbau der VI - GerdW - 19.07.2017 14:01

Hallo Heber,

Zitat:Das dürfte ohne Control Design and Simulation schwer werden
Ich würde sagen "schwerer"! Big Grin

Du musst auch noch bedenken, dass der FPGA (neben INT) nur FXP oder SGL unterstützt. Von SGL würde ich aber abraten, da dann massig Platz auf dem FPGA verbraucht wird. Und bei FXP musst du dir Gedanken um Rechengenauigkeit machen - oder gleich auf Integer mit passenden Skalierungen umsteigen…

Zitat:Das heißt die Taktrate sollte optimaler Weise so bei 1µs liegen, was mit einem FPGA auch möglich ist.
1µs sind immerhin 40 Takte der Standardclock - da geht in einer SCTL schon so einiges… Smile
Unterstützen deine IOs diese Taktrate?


RE: Korrekter Aufbau der VI - Heber - 19.07.2017 14:17

Auch ein EKF kann ich nicht im FPGA VI nutzen Sad Und in LabVIEW kann ich ohne weiteres auch keine eigenen Skripte schreiben. Ich sehe so langsam schwarz. LabVIEW und Regelungstechnik passt nicht mMn.

"1µs sind immerhin 40 Takte der Standardclock - da geht in einer SCTL schon so einiges… Smile
Unterstützen deine IOs diese Taktrate? "

Was heißt SCTL und wo kann ich nachsehen welche Taktrate die IOs haben? Mein Datenblatt gibt wenig Auskunft


RE: Korrekter Aufbau der VI - GerdW - 19.07.2017 14:24

Hallo Heber,

Zitat:Was heißt SCTL
Singe Cycle Timed Loop - LabVIEW-Hilfe
(Oder eines der Beginner Tutorials für LabVIEW-FPGA lesen!)

Zitat:wo kann ich nachsehen welche Taktrate die IOs haben? Mein Datenblatt gibt wenig Auskunft
Sowas steht bei NI immer in den Datenblättern der Hardware.
Welche genau verwendest du?

Zitat:LabVIEW und Regelungstechnik passt nicht mMn.
Das passt schon. Man sollte nur vor dem Programmieren überlegen…
Und ich möchte dich mal sehen, wenn du PID, EKF und sonstiges "von Hand" in VHDL programmierst! Big Grin


RE: Korrekter Aufbau der VI - Heber - 19.07.2017 14:34

(19.07.2017 14:24 )GerdW schrieb:  Hallo Heber,

Zitat:Was heißt SCTL
Singe Cycle Timed Loop - LabVIEW-Hilfe
(Oder eines der Beginner Tutorials für LabVIEW-FPGA lesen!)

Zitat:wo kann ich nachsehen welche Taktrate die IOs haben? Mein Datenblatt gibt wenig Auskunft
Sowas steht bei NI immer in den Datenblättern der Hardware.
Welche genau verwendest du?

Zitat:LabVIEW und Regelungstechnik passt nicht mMn.
Das passt schon. Man sollte nur vor dem Programmieren überlegen…
Und ich möchte dich mal sehen, wenn du PID, EKF und sonstiges "von Hand" in VHDL programmierst! Big Grin


Es ist ein sbRio 9637 verbaut.
Soll ich dir meinen EKF Code aus Matlab zeigen? Funktioniert einwandfrei Tongue Den Code für VHDL generiert Matlab dann auch ganz automatisch Wink


RE: Korrekter Aufbau der VI - GerdW - 19.07.2017 14:50

Hallo heber,

und warum willst du dann funktionierenden MATLAB-Code auf LabVIEW übertragen?
Wäre es nicht einfacher, ein MATLAB-kompatibles Hardwaretarget zu verwenden?

NI hat auch ein SpecSheet für dein sbRIO9637!
Deine AIs schaffen nur 200kS/s aggregate (!) und deine AOs 336kS/s - steht da alles drin!
Damit brauchst du deine Regelschleife nur auf 66kHz/15µs (da 3 AIs!) trimmen… Big Grin


RE: Korrekter Aufbau der VI - Heber - 19.07.2017 15:02

(19.07.2017 14:50 )GerdW schrieb:  Hallo heber,

und warum willst du dann funktionierenden MATLAB-Code auf LabVIEW übertragen?
Wäre es nicht einfacher, ein MATLAB-kompatibles Hardwaretarget zu verwenden?

NI hat auch ein SpecSheet für dein sbRIO9637!
Deine AIs schaffen nur 200kS/s aggregate (!) und deine AOs 336kS/s - steht da alles drin!
Damit brauchst du deine Regelschleife nur auf 66kHz/15µs (da 3 AIs!) trimmen… Big Grin


Weil ein Matlab kompatibles Hardwaregerät (dSPACE) noch teurer ist als eines von NI. Ich würde gern, aber mir kauft es keiner.
Zumal es in den Evaluierungsboards ne Menge zusätzlich gibt.


Was meinst du mit trimmen? wie kommst auf 66kHz/15µs?
Bei dem Eva Board ist noch ein zweites Board angebracht, weshalb nur 6 AI's und 2 AO's zur verfügung stehen...


RE: Korrekter Aufbau der VI - GerdW - 19.07.2017 15:19

Hallo Heber,

Zitat:wie kommst auf 66kHz/15µs?
Die AIs auf dem sbRIO9637 schaffen zusammen (="aggregate"!) maximal 200kS/s, d.h. alle 5µs ein neues Sample.
Da du 3 AI-Signale liest, brauchst du mindestens 15µs pro Schleifendurchlauf…

Zitat:Was meinst du mit trimmen?
"Trimmen" = etwas in einen bestimmten Zustand bringen…

Zitat:Weil ein Matlab kompatibles Hardwaregerät (dSPACE) noch teurer ist als eines von NI. Ich würde gern, aber mir kauft es keiner.
Genau. Und da du nichts kostest, darfst du massig Arbeitszeit in die Umsetzung versenken…

Zitat:Zumal es in den Evaluierungsboards ne Menge zusätzlich gibt.
In deinem sbRIO aber auch…


RE: Korrekter Aufbau der VI - Heber - 19.07.2017 15:24

(19.07.2017 15:19 )GerdW schrieb:  Hallo Heber,

Zitat:wie kommst auf 66kHz/15µs?
Die AIs auf dem sbRIO9637 schaffen zusammen (="aggregate"!) maximal 200kS/s, d.h. alle 5µs ein neues Sample.
Da du 3 AI-Signale liest, brauchst du mindestens 15µs pro Schleifendurchlauf…

Zitat:Was meinst du mit trimmen?
"Trimmen" = etwas in einen bestimmten Zustand bringen…

Zitat:Weil ein Matlab kompatibles Hardwaregerät (dSPACE) noch teurer ist als eines von NI. Ich würde gern, aber mir kauft es keiner.
Genau. Und da du nichts kostest, darfst du massig Arbeitszeit in die Umsetzung versenken…

Zitat:Zumal es in den Evaluierungsboards ne Menge zusätzlich gibt.
In deinem sbRIO aber auch…

Ich bin tatsächlich kostenlos Big Grin


RE: Korrekter Aufbau der VI - Heber - 20.07.2017 10:37

Hallo Gerd,

ich habe die Funktionalität des Vi's aus der Schleife mal in eine gewöhnliche while-Schleife gepackt und mich daran versucht eine Sättigung mit den Standardfunktionen zu realisieren.
Wie würdest du eine Sättigung implementieren?

Gruß, Heber