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 

Signalerzeugung aus 1D Array



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!

02.08.2016, 08:19
Beitrag #1

maxxillian Offline
LVF-Grünschnabel
*


Beiträge: 46
Registriert seit: Jul 2016

2015 Vision
2015
DE_EN



Signalerzeugung aus 1D Array
Hallo zusammen!

Da das Thema an ein anderes anschließt hier erst einmal der Link:
http://www.labviewforum.de/Thread-Profil...#pid184464

Mittlerweise funktioniert die Darstellung des Toleranzfensters so wie ich es möchte (Bild1).
Da ich noch kein Sensor anschließen kann möchte ich gerne ein Testsignal (signal in) simulieren.

Im Forum habe ich schon gefunden wie Man ein Exel Dokument auslesen kann.
In dem Dokument befindet sich ein Testprofil mit 5000 Messwerten (Bild2).

Ich möchte das die Werte nacheinander ausgegeben werden und nicht alle als 1DArray aufeinmal.
Mit aktiven Indexing am Eingang der For-Schleife sollte das doch eigentlich funktionieren oder nicht?
Ich bekomme allerdings die Meldung das immer noch ein 1D(sub)Array in die Schleife übergeben wird.

Danke für eure Antworten!
Grüße Max


Angehängte Datei(en) Thumbnail(s)
       
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
02.08.2016, 08:34
Beitrag #2

wladimir s Offline
LVF-Gelegenheitsschreiber
**


Beiträge: 79
Registriert seit: Mar 2015

2011, 2015
2010
DE


Deutschland
RE: Signalerzeugung aus 1D Array
Du liest ein 2D-Array ein, durch die Autoindexierung werden daraus dann 1D-Arrays.
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
02.08.2016, 08:35
Beitrag #3

GerdW Offline
______________
LVF-Team

Beiträge: 17.480
Registriert seit: May 2009

LV2021
1995
DE_EN

10×××
Deutschland
RE: Signalerzeugung aus 1D Array
Hallo Max,

öffne doch einfach mal die Kontexthilfe (Ctrl-H) und fahre dann mit der Maus auf den Draht, der zu deiner FOR-Loop führt: es wird dir angezeigt, dass das ein 2D-Array ist. (Was man übrigens auch am Draht selbst sieht/sehen sollte!) Durch die Autoindizierung wird daraus ein 1D-Array, was dir durch die Fehlermeldung bestätigt wird…

Lösung: Nach dem Einlesen der CSV-Datei einfach die gewünschte Zeile/Spalte indizieren!

Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
03.08.2016, 14:02 (Dieser Beitrag wurde zuletzt bearbeitet: 03.08.2016 14:04 von maxxillian.)
Beitrag #4

maxxillian Offline
LVF-Grünschnabel
*


Beiträge: 46
Registriert seit: Jul 2016

2015 Vision
2015
DE_EN



RE: Signalerzeugung aus 1D Array
Ok dankeschön (:
Nächstes mal weiß ich das!

Ich habe es auch noch mal mit einer While-Schleife gemacht falls jemand sich in Zukunft nochmal dafür interessiert.

Also die Werte werden jetzt nacheinander ausgegeben.
Um daraus ein Signal zu erzeugen (roter Kasten) habe ich das "Formula Waveform VI" benutzt und als Formel einfach den Amplitudenwert "a" eingegeben.
Um das Vi starten zu können muss Man natürlich noch die obere und untere Grenze definieren.

Ein Problem habe ich aber noch.
Wie kann ich "dt" für das Signal bestimmen?
Verstehe nicht ganz den Unterschied zwischen der Frequenz und (frequenzy) und der Messrate (sampling rate Fs).


Angehängte Datei(en) Thumbnail(s)
       
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
04.08.2016, 09:06
Beitrag #5

MaddinMaddinsen Offline
LVF-Neueinsteiger


Beiträge: 6
Registriert seit: Aug 2016

2014
2012
DE



RE: Signalerzeugung aus 1D Array
Moin maxxilian,

das dt bezeichnet die Zeit zwischen zwei Werten. Da du deiner Schleife eine minimale Schleifendauer von 1 ms hat kann man fast davon ausgehen, dass dein PC das auch in 1 ms schafft. Somit ist dein dt = 1 ms. Falls du dir nicht sicher bist, kannst du deine Schleifendauer auch immer wie in Abbildung 1 gezeigt abfragen.
Die Frequenz (frequenzy ) ist 2*Pi*f deines Signals, also das Reziproke der Periodendauer T des zu erzeugenden Signals.
Die Messrate gibt die bereitgestellten Werte pro Sekunde wieder. Im Default zustand (1000) gibt dein "Signal Generator" jede ms ein Signal frei.

hoffe das hilft dir weiter.

Grüße

Maddin


Angehängte Datei(en) Thumbnail(s)
   
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
04.08.2016, 10:44 (Dieser Beitrag wurde zuletzt bearbeitet: 04.08.2016 10:45 von GerdW.)
Beitrag #6

GerdW Offline
______________
LVF-Team

Beiträge: 17.480
Registriert seit: May 2009

LV2021
1995
DE_EN

10×××
Deutschland
RE: Signalerzeugung aus 1D Array
Hallo Max,

Waveforms erstellt man mit BuildWaveform:
   
dt ist der zeitliche Abstand zwischen zwei Samples und damit das Reziproke der Abtastrate(=Frequenz)…

Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
Anzeige
05.08.2016, 07:58 (Dieser Beitrag wurde zuletzt bearbeitet: 05.08.2016 08:00 von Lucki.)
Beitrag #7

Lucki Offline
Tech.Exp.2.Klasse
LVF-Team

Beiträge: 7.699
Registriert seit: Mar 2006

LV 2016-18 prof.
1995
DE

01108
Deutschland
RE: Signalerzeugung aus 1D Array
Zitat:Verstehe nicht ganz den Unterschied zwischen der Frequenz und (frequenzy) und der Messrate (sampling rate Fs).
Der Unterschied ist im Sprachgbrauch. "Frequenz" ist gleichbedeutend mit "Schwingungsperioden pro Sekunde" und wird bei periodischen analogen Signalen benutzt - beispielsweise bei Rundfunksendern. Bei periodischen Messungen wird hingegen von der "Rate" oder "Samplingrate" gesprochen. Wenn man beides durcheinander wirft, so ist das zwar sprachlich nicht korrekt, führt aber kaum zu Missverständnissen, so daß es letzlich egal ist was man sagt.
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
05.08.2016, 10:37
Beitrag #8

maxxillian Offline
LVF-Grünschnabel
*


Beiträge: 46
Registriert seit: Jul 2016

2015 Vision
2015
DE_EN



RE: Signalerzeugung aus 1D Array
Danke erst mal dafür!

Allerdings habe ich jetzt ein neues Problem.
Ich hab jetzt einmal versucht alles zusammen zu packen(Bild).
Wie kann ich das Signal "laufen" lassen?
Im Moment lasse ich es auf einem Craph anzeigen weil mir ein Chart immer nur den letzten Wert liefert. Ich möchte aber dass mir ein Wert nach dem anderen geliefert wird (wie bei einer INLINE Messung) und das Signal immer wieder von neu beginnt.
Ich habe schon versucht nur die Siganlerzeugung in verscheidene Schleifen zu packen aber das bringt nichts weil die daraufolgende Schleife natürlich erst beginnt wenn die erste Schleife durchgelaufen ist.

Ist es überhaupt möglich später beides (Toleranzfenster und durchlaufendes Sígnal) in einem Chart darzustellen?


Angehängte Datei(en) Thumbnail(s)
   
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
05.08.2016, 10:52
Beitrag #9

GerdW Offline
______________
LVF-Team

Beiträge: 17.480
Registriert seit: May 2009

LV2021
1995
DE_EN

10×××
Deutschland
RE: Signalerzeugung aus 1D Array
Hallo Max,

Zitat:Wie kann ich das Signal "laufen" lassen? … Ich möchte aber dass mir ein Wert nach dem anderen geliefert wird (wie bei einer INLINE Messung) und das Signal immer wieder von neu beginnt.
Du willst also die Samples einzeln ausgeben/anzeigen? Dann musst du sie eben einzeln nacheinander ausgeben/anzeigen - und nicht die komplette Waveform mit einmal…

Zitat:Im Moment lasse ich es auf einem Craph anzeigen weil mir ein Chart immer nur den letzten Wert liefert.
Ein Chart zeigt die Historie an, ein Graph nur die gerade bereitgestellten Daten…

Zitat:Ich habe schon versucht nur die Siganlerzeugung in verscheidene Schleifen zu packen aber das bringt nichts weil die daraufolgende Schleife natürlich erst beginnt wenn die erste Schleife durchgelaufen ist.
THINK DATAFLOW: wenn du es so programmierst…

Zitat:Ist es überhaupt möglich später beides (Toleranzfenster und durchlaufendes Sígnal) in einem Chart darzustellen?
Ja. Einfach 3 Plots in deinem Chart darstellen. (Die Kontexthilfe zeigt, wie man das macht.)
Du musst dann eben zum jeweiligen Signal-Sample die passenden Toleranzwerte plotten…

Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
05.08.2016, 11:36
Beitrag #10

GerdW Offline
______________
LVF-Team

Beiträge: 17.480
Registriert seit: May 2009

LV2021
1995
DE_EN

10×××
Deutschland
RE: Signalerzeugung aus 1D Array
Nachtrag, andere Möglichkeit:
Du verwendest keinen Chart, sondern einen Graph.
Deine beiden Toleranzkurven werden als feste/statische Plots dargestellt, nur dein Messsignal wird nach und nach aufgebaut…

Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
Antwort schreiben 


Möglicherweise verwandte Themen...
Themen Verfasser Antworten Views Letzter Beitrag
  SignalErzeugung und Gleichzeitiges Messen ? Andy4u 1 3.716 07.04.2011 10:25
Letzter Beitrag: Lucki
  Digitale Signalerzeugung zulangsam Movie 4 4.895 20.11.2008 09:58
Letzter Beitrag: Movie

Gehe zu: