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 

Regelung bei Analog I/O



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!

22.03.2005, 11:01
Beitrag #1

pho_no Offline
LVF-Grünschnabel
*


Beiträge: 13
Registriert seit: Feb 2005



kA



Regelung bei Analog I/O
Hallo,

Ich habe folgendes Problem:

Ich habe eine Datei mit z.B. 30 000 Werten und gebe Sie über "AO Write" mit der Update Rate 1000 aus, sodass ich am Ausgang ein 30 Sekunden langes Signal (z.B. einen Sinus mit steigender Frequenz oder Amplitude) bekomme.

Gleichzeitig messe ich das Signal am Eingang und will einen Regelkreis aufbauen. Mein Problem ist nun, das ich nicht weiß, wie ich auf die Daten in meinem Ausgabepuffer zugreifen kann - bzw. Sie verändern kann um Störungen auszuregeln. Ist das überhaupt möglich bei "AO Write" oder ist der Puffer - einmal geschrieben unantastbar?
Gibt es noch andere Möglichkeiten so einen Regler aufzubauen?

Bin für jeden Tipp dankbar.
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
23.03.2005, 02:24
Beitrag #2

Martin.Henz Offline
LVF-Team
LVF-Team

Beiträge: 429
Registriert seit: Jan 2005

2.5.1 bis 20
1992
kA

74363
Deutschland
Regelung bei Analog I/O
Mir ist nicht so ganz klar, was du da eigentlich machen willst. Kannst du einmal versuchen das Problem etwas anders zu beschreiben?

Ich versuche mal zu beschreiben, wie ich das im Moment verstehe:
Du gibst eine 30 Sekunden lange Sequenz mit AO Write aus. Dazu schreibst du die komplette Sequenz in den Puffer (den Rest erledigt der DAQ-Treiber). Sind die 30 Sekunden um, dann beginnt die Sequenz von vorne.

Das so erzeugte analoge Signal gibst du auf ein, wie auch immer geartetes, System. Dieses System liefert dir am Ausgang ein analoges Signal, welches du über deine Datenerfassungskarte einliest. Je nachdem, wie hoch das eingelesene Signal ist, möchtest du dein Ausgangssignal anpassen.

Nun zu deiner Frage: Ohne das wirklich 100% sicher beantworten zu können, würde ich vermuten, dass man in dem Puffer nahezu beliegig herumschreiben kann. Die Parameter von "AO Buffer Write.vi" lassen das jedenfalls vermuten.

Martin Henz
Webseite des Benutzers besuchen Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
23.03.2005, 14:52
Beitrag #3

pho_no Offline
LVF-Grünschnabel
*


Beiträge: 13
Registriert seit: Feb 2005



kA



Regelung bei Analog I/O
Ja du hast das Problem verstanden.
Die Frage ist, ob ich noch Zugriff auf mein Pufferarray habe, sobald es einmal gestartet wurde...

Ich starte mein Output aus der Datei und lese dann in einer Whileschleife die Werte wieder ein. Leider weiß ich nicht, was alles in die Schleife mitreinmuß um Zugriff auf das Pufferarray zu bekommen.
Ich habe es auch mit "In Puffer schreiben" probiert, komme aber zu keiner Lösung

Zum Verständniss habe ich das VI angehängt.
Die Daten in der ausgelesenen Datei sind untereinandergeschriebene Floatwerte z.B.
0,1
0,2
0,3
0,1 etc...


Angehängte Datei(en)
Sonstige .vi  output_from_file1.vi (Größe: 156,26 KB / Downloads: 354)
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
23.03.2005, 15:57
Beitrag #4

Martin.Henz Offline
LVF-Team
LVF-Team

Beiträge: 429
Registriert seit: Jan 2005

2.5.1 bis 20
1992
kA

74363
Deutschland
Regelung bei Analog I/O
Worauf ich meine Aussage stütze, dass beliebig in dem Puffer geschrieben werden kann, ist folgendes:

Wenn du das Diagramm von "AO Write (scaled array).vi" öffnest, dann siehst du dass dort nur das "AO Buffer Write.vi" aufgerufen wird. Wenn du dieses VI genauer betrachtest, dann hat dieses einen Eingang mit dem Namen "alternate data and mode set" (in der deutschen version des NI-DAQ Treibers steht da u.U. etwas deutsches). Wenn man in dem Cluster den Eingang "write mode" auf "relative to start of buffer" stellt und "write offset" auf Null, dann sollte es möglich sei, zu jedem belibigen Zeitpunkt die Daten zu ändern. Ob das tatsächlich geht, das kannst du nur duch lesen der Handbücher oder durch ausprobieren ermitteln. Du müsstest also nur das "AO Buffer Write.vi" in die While-Schleife setzen und damit dann die auszugebenden Daten aktualisieren.

Sollte es keine Rolle spielen, wenn bei der Ausgabe der Daten eine Pause entsteht, dann kannst du alternativ dazu auch einfach die Ausgabe kurz anhalten und mit den neuen Daten neu starten.

Martin Henz
Webseite des Benutzers besuchen Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
30
Antwort schreiben 


Möglicherweise verwandte Themen...
Themen Verfasser Antworten Views Letzter Beitrag
  Regelung mit LabVIEW Schwand 6 8.773 14.01.2008 10:37
Letzter Beitrag: jeffrey

Gehe zu: