INFO: Dieses Forum nutzt Cookies...
Cookies sind für den Betrieb des Forums unverzichtbar. Mit der Nutzung des Forums erklärst Du dich damit einverstanden, dass wir Cookies verwenden.

Es wird in jedem Fall ein Cookie gesetzt um diesen Hinweis nicht mehr zu erhalten. Desweiteren setzen wir Google Adsense und Google Analytics ein.


Antwort schreiben 

Aktive Schwinungsunterdrückung mit cRIO 9074



Wenn dein Problem oder deine Frage geklärt worden ist, markiere den Beitrag als "Lösung",
indem du auf den "Lösung" Button rechts unter dem entsprechenden Beitrag klickst. Vielen Dank!

03.12.2012, 10:34 (Dieser Beitrag wurde zuletzt bearbeitet: 03.12.2012 10:49 von Schü.)
Beitrag #1

Schü Offline
LVF-Gelegenheitsschreiber
**


Beiträge: 68
Registriert seit: Sep 2010

2010 Student, 2010, 2012 SP1
2010
DE_EN

08427
Deutschland
Aktive Schwinungsunterdrückung mit cRIO 9074
Hallo liege LabViewForum-Mitglieder,

ich möchte einen Demonstrator für die aktive Schwingungsunterdrückung bauen. Dafür habe ich schon einiges an Literatur gewälzt und auch mit LabView verschiedene Möglichkeiten ausprobiert.

Ich habe mir auch die unterschiedlichen LabView-Beispiele angeschaut, unter anderem das Projekt "Active Noise Control with Feedback Neutralization (cRIO).lvproj" und das Beispiel-VI "Active Noise Control (Simulated)". Mir ging es dabei hauptsächlich darum den Umgang mit dem FXLMS- und Filter-Funktionen zu lernen.

Um nun die aktive Geräuschunterdrückung zu realisieren habe ich mich dem oben genannten Beispiel-VI bedient und es so angepasst, dass es auf ein Feedbacksystem anwendbar ist. Dies stellt das RT-VI dar, als FPGA-VI habe ich jediglich zwei Schleifen jeweils zum Einlesen und Ausgeben der Daten. Die beiden VIs sind im Anhang enthalten. Ein Problem besteht darin, dass der RT-Controller so langsam wird, dass bei einem Sinus als Referenzsignal nur ein stufiger Sinus ausgeben wird. Ich denke deshalb, dass die Systemlaufzeit zu groß ist.

Beim oben genannten Beispiel-Projekt wird die eigentliche Geräuschunterdrückung ja mit Hilfe von FIFOs und Speichern auf dem FPGA realisiert. Dem RT-Controller kommt nur noch die Bestimmung von Sekundär- und Primastrecke zu.

Meine erste Frage ist nun, welche Realisierung richtig/besser ist. Ist es besser die Daten auf den RT-Controller zu schieben und da die Eingangsdaten filtern zulassen, oder ist es schneller, wenn die Lösung wie im Beispiel-Projekt umgesetzt wird?

Meine zweite Frage ist, ob es einen Unterschied macht, ob ich das Timen der Leseschleife im FPGA-VI mit Hilfe des Loop-Timers realisiere oder mit dem Eigenschaftsknoten (Mod1-Data Rate)?

Edit:
Ich glaube ich habe die Antworts schon selbst gefunden. Mit dem Methodenknoten stelle ich die nativen Abtastraten für das Modul ein, während die Loop-Timer-Funktion einfach die vorgegebene Zeit wartet. Deshalb ist es sicherlich sinnvoller bzw. richtig den Methodenknoten zu nutzen, um die Abtastfrequenz einzustellen.
In meinem Testprojekt habe ich das auch mit dem Methodenknoten realisiert.


Für weitere Anmerkungen und Kritik bin ich jederzeit dankbar.

Verschneite Grüße vom Schü

P.S.: Die dritte Schleife im FPGA-VI war ein Versuch eine MLS-Folge zu erstellen und auszugeben.


12.0 .vi  FPGA.vi (Größe: 78,77 KB / Downloads: 250)


12.0 .vi  RTcontroller.vi (Größe: 188,77 KB / Downloads: 241)
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
Anzeige
30
Antwort schreiben 


Möglicherweise verwandte Themen...
Themen Verfasser Antworten Views Letzter Beitrag
  cRIO 9074 - FPGA, RT, Host Kommunikation Troy.mc.Lure 3 6.724 11.03.2013 19:05
Letzter Beitrag: jg

Gehe zu: