![]() |
Programmstruktur für eine Messaufgabe mit zeitlich nicht konstanten "Blöcken" - Druckversion +- LabVIEWForum.de (https://www.labviewforum.de) +-- Forum: LabVIEW (/Forum-LabVIEW) +--- Forum: LabVIEW Allgemein (/Forum-LabVIEW-Allgemein) +---- Forum: Datenerfassung (DAQ) (/Forum-Datenerfassung-DAQ) +---- Thema: Programmstruktur für eine Messaufgabe mit zeitlich nicht konstanten "Blöcken" (/Thread-Programmstruktur-fuer-eine-Messaufgabe-mit-zeitlich-nicht-konstanten-Bloecken) |
Programmstruktur für eine Messaufgabe mit zeitlich nicht konstanten "Blöcken" - BodenseeBike - 02.02.2017 13:54 Hallo zusammen, für meine Abschlussarbeit möchte ich ein LabVIEW-Programm für eine PXI-System mit Real-Time-Modul erstellen. Leider bin ich noch kein LV-Experte, deshalb würde ich mich freuen wenn der Eine oder Andere hier einen Tipp hat... Die Frage dreht sich darum, wie die Programmstruktur grundsätzlich für die Messaufgabe (die im Anhang skizziert ist) aussehen könnte? Im Wesentlichen geht es darum, aus einer Messgröße_X eine Ausgangsgröße_Y zu berechnen. Aus- und Eingang sind über eine Datenerfassungskarte angebunden. Nun soll das Programm aber „blockweise“ getaktet sein, wobei dieser Blocklänge nicht konstant ist. Die Blocklänge wird dabei vom vorhergehenden Block festgelegt. Die Skizze zeigt exemplarisch für Block_2, wie der Datenfluss aussehen soll, wobei dies natürlich für jeden Block gilt. Die gestrichelten Pfeile sollen zeigen, dass diese Daten vom vorhergehenden oder darauffolgenden Block bearbeitet werden. Meine Fragen sind:
Herzlichen Dank für Antworten! RE: Programmstruktur für eine Messaufgabe mit zeitlich nicht konstanten "Blöcken" - GerdW - 02.02.2017 14:16 Hallo Bike, Zitat:eine PXI-System mit Real-Time-ModulIst RealTime Pflicht? Bei DAQmx wäre das relativ einfach: 1. Einfach eine Schleife, die so viele Samples vom hardwaregetakteten DAQmxKanal abholt, wie gerade benötigt werden. 2. Schieberegister in dieser Schleife… (Ersetze den Begriff "Block" durch "Iteration"!) RE: Programmstruktur für eine Messaufgabe mit zeitlich nicht konstanten "Blöcken" - BodenseeBike - 02.02.2017 14:54 (02.02.2017 14:16 )GerdW schrieb: Ist RealTime Pflicht? Ja, also das ist eben das System auf dem das Ganze später laufen soll. Vorerst experimentiere ich noch mit der myDAQ-Karte. (02.02.2017 14:16 )GerdW schrieb: 1. Einfach eine Schleife, die so viele Samples vom hardwaregetakteten DAQmxKanal abholt, wie gerade benötigt werden.Ok das mit der Hardware-Taktung muss ich mir mal genauer Anschauen. Die Messwerterfassung muss eben so sein, dass keine Samples ausgelassen werden, wenn eine neue Iteration beginnt und die Messwerte "abgeholt" werden. (02.02.2017 14:16 )GerdW schrieb: 2. Schieberegister in dieser Schleife… (Ersetze den Begriff "Block" durch "Iteration"!)Super, das habe ich gerade ausprobiert. Wusste ich nicht, dass man per Schieberegister auch komplette Arrays für die nächste Iteration bereitstellen kann... ![]() RE: Programmstruktur für eine Messaufgabe mit zeitlich nicht konstanten "Blöcken" - GerdW - 02.02.2017 14:59 Hallo Bike, Zitat:Wusste ich nicht, dass man per Schieberegister auch komplette Arrays für die nächste Iteration bereitstellen kann...Ich habe gehört, dass auch Cluster und Strings funktionieren sollen! ![]() Im Ernst: In 4 Jahren LabVIEW-Nutzung hast du immer nur skalare Werte durch Schieberegister geschoben? RE: Programmstruktur für eine Messaufgabe mit zeitlich nicht konstanten "Blöcken" - jg - 02.02.2017 15:57 (02.02.2017 14:16 )GerdW schrieb: Hallo Bike,Das schließt sich jetzt nicht aus. Eine DAQmx-fähige Karte in einem PXI-System mit RT-Controller kannst du genauso mit DAQmx unter RealTime programmieren. Gruß, Jens |