LabVIEWForum.de - Doppelpuls Signal über CSV in Digitaldaten Tabelle und als Output schalten

LabVIEWForum.de

Normale Version: Doppelpuls Signal über CSV in Digitaldaten Tabelle und als Output schalten
Du siehst gerade eine vereinfachte Darstellung unserer Inhalte. Normale Ansicht mit richtiger Formatierung.
Seiten: 1 2 3 4 5 6
(21.04.2021 17:41 )GerdW schrieb: [ -> ]Hallo Lucky,

du hast einen der Gründe entdeckt, warum ich "fremde" Gerätetreiber eben nicht unter vi.ib/instr.lib installiere, sondern immer in meiner user.lib!

Diese user.lib ist nämlich in meinen SVN-Repositories eingecheckt: damit wird das Verteilen auf andere (Entwicklungs-)Computer zum Kinderspiel…
Benutzt du auch schon ein SCC-Tool?

Die gezeigte Fehlermeldung hat übrigens nichts mit dem Speicherort zu tun: "private" VIs dürfen nur von VIs aufgerufen werden, die in der lvlib enthalten sind. Meist gibt es auch einen guten Grund dafür…

Nein ich benutze kein SCC Tool. Was ist das? Und was kann das?
Und wie funktioniert das mit den SVN-… ?

Würde mich über eine kleine Anleitung hierzu freuen.
Hallo Lucky,

SCC=Source Code Control (allgemeine Bezeichnung für diese Art Software)
SVN=Subversion (ein freies SCC-Tool, du kannst aber auch gern andere nutzen)

Anleitungen findest du im Manual zum jeweiligen SCC-Tool…
Hallo Gerd,

vielen Dank für die Antwort. Habe mir beide Lösungen angeschaut. Werde leider daraus nicht schlau, wie ich nun die *.lvlib der drei Geräte einfach in einen Cloudordner meines Projektes direkt in mein Projekt laden kann ohne das es diese Fehlermeldung gibt, dass ein anderer Pfad erwartet wurde.

SVN lese ich das es ausschließlich ein Versionsverwaltungsprogramm für Labview ist. Dies hilft mir hier denke ich nicht weiter.

SSC verstehe ich einen Servertool drunter. Ich hab jedoch kein Server auf den ich das installieren kann. Wie soll diese Software mir denn hilfen, dass die Pfade geändert werden können?

Ich verzweifel langsam. Kann doch nicht so schwer sein das man die Pfade einfach neu zuweist. Ich finde eine solche Option nicht.
Hallo Lucky,

Zitat:SVN lese ich das es ausschließlich ein Versionsverwaltungsprogramm für Labview ist.
SVN kann für alles mögliche verwendet werden, nicht nur für LabVIEW.

Zitat:SSC verstehe ich einen Servertool drunter. Ich hab jedoch kein Server auf den ich das installieren kann.
Man kann sowas auch lokal installieren und nutzen. Ein Server mit eigenem Backup ist natürlich sinnvoller…

Zitat:Wie soll diese Software mir denn hilfen, dass die Pfade geändert werden können? …
Nur möchte ich das Projekt mit den Haupt-VIs ja auch mitnehmen und wo anders speichern und verteilen können.
Das nicht, aber die Verwaltung deines Sourcecodes, insbesondere beim Verteilen auf andere Rechner, wird deutlich vereinfacht…

Zitat:Ich verzweifel langsam. Kann doch nicht so schwer sein das man die Pfade einfach neu zuweist. …
Gibt es eine Möglichkeit, dass sich diese lvlib Dateien auch im lokalen Projektordner abgelegt werden können?
1. Nochmal der Tipp: ich verwalte solche lvlibs alle in meiner user.lib - und die wiederum ist in SVN eingebunden! Da muss man nichts in irgendwelche Projektordner kopieren…
2. Kompletten lvlib-Ordner (lvlib-Datei und alle darin referenzierten Dateien) an einen neuen Ort kopieren. lvlib mit LabVIEW öffnen, dann die vermissten Dateien darin wieder zuordnen. Dann diese lvlib-Kopie in deinem eigentlichen Projekt hinzufügen…
(22.04.2021 10:06 )Lucky. schrieb: [ -> ]SVN lese ich das es ausschließlich ein Versionsverwaltungsprogramm für Labview ist. Dies hilft mir hier denke ich nicht weiter.
Sehr verbreitet und beliebt ist auch git !

(22.04.2021 10:06 )Lucky. schrieb: [ -> ]Ich verzweifel langsam. Kann doch nicht so schwer sein das man die Pfade einfach neu zuweist. Ich finde eine solche Option nicht.

Darum wirst du beim ersten Öffnen nicht herumkommen (also um das manuelle Zuordnen). Ich kann dir auch nicht sagen, wo genau da überall Abhängigkeiten und Pfade gespeichert sind, deshalb musst du da wohl oder übel beim ersten Öffnen in den sauren Apfel beißen.

Du könntest noch mit den Suchpfaden rumspielen, so dass die Suche vielleicht schneller geht, einzustellen unter LabVIEW -> Tools -> Options... -> Paths
[attachment=61785]

EDIT:
Außerdem solltest du deine Instrument-Driver nach Möglichkeit nicht doppelt auf deinem System haben, also in der instr.lib und parallel in deinem Verzeichnis, das macht das Leben ebenfalls einfacher.

Gruß, Jens
Hallo Ihr beiden.

Ich werde eure Tipps mal versuchen direkt in die Tat umzusetzen.

Und weil heute so ein schöner Tag ist kommt auch direkt die nächste Frage.
Ich hatte ja bereits erwähnt das ich ein Doppelpuls generieren möchte. Bisher realisiere ich das über so ein Express Baustein. Das Problem dabei ist, ich verstehe den zusammenhang zwischen meinem eingegeben Signal und der Samples / Timing Rate nicht. Das Signal wird ja in den Funktionsgenerator geschrieben. Über ein Oszilloskop habe ich das Signal dann analysiert. Leider stimmt das mit meinem erwartungen so garnicht über ein.
Mein Signal soll insgesamt 250ys lang sein. Wie gebe ich das in dieses Express VI und mit Angabe der Sample Rate für den Funktionsgenerator richtig ein, dass das Signal auch demenstprechend nur 250ys lang ist?

Wir sitzen hier bereits zu zweit dran und wissen nicht warum das Signal nicht so lang ist wie wir es da eingeben.

Wir freuen uns auf eine Antwort.
Hallo Lucky,

Zitat:Wir sitzen hier bereits zu zweit dran und wissen nicht warum das Signal nicht so lang ist wie wir es da eingeben.
Wie lang ist denn das Signal? Was habt ihr beobachtet? Wie groß ist die Abweichung zum Erwartungswert?

Warum habt ihr euer VI immer noch nicht aufgeräumt, sodass es für den unbedarften Betrachter besser verständlich wird?
Was soll der Rube-Goldberg mit den zwei kleineren Case-Strukturen oben im Bild, die sich nur um den Wert der boolschen Konstanten unterscheiden???

Zitat:Mein Signal soll insgesamt 250ys lang sein.
Ihr wollt ein Signal im Yoctosekunden-Bereich ausgeben???
Wie wollt ihr das mit einer Samplerate von 251MHz schaffen?
Euer Signal enthält mehrere Samplepaare, die auf der exakt gleichen X-Koordinate liegen. Ist das technisch möglich und kann euer AWG damit umgehen?
Euer Signal enthält laut Bild gerade mal 10 Samples: ist euer reales Signal ca. 10 Samples / 251MS/s = 39.8ns lang?
(23.04.2021 10:06 )GerdW schrieb: [ -> ]Hallo Lucky,

Zitat:Wir sitzen hier bereits zu zweit dran und wissen nicht warum das Signal nicht so lang ist wie wir es da eingeben.
Wie lang ist denn das Signal? Was habt ihr beobachtet? Wie groß ist die Abweichung zum Erwartungswert?

Warum habt ihr euer VI immer noch nicht aufgeräumt, sodass es für den unbedarften Betrachter besser verständlich wird?
Was soll der Rube-Goldberg mit den zwei kleineren Case-Strukturen oben im Bild, die sich nur um den Wert der boolschen Konstanten unterscheiden???

Die sollen einfach nur einen Schalter, wenn dieser geschaltet wird, dass Signal direkt immer nur einmal an den Funktionsgenerator senden. Ich hatte nur diese Möglichkeit gefunden, dass sobald man einmal den Schalter auf Enable schaltet, das Komando für den Funktionsgenerator einmal übertragen wird. Falls du eine bessere Lösung hast, würde ich Sie gerne sehen wollen.

Was haben wir gesehen:

Also wenn wir 215000 Samples/s einstellen sowie 251 Samples bei dx im Abitären Signal einstellen. Dann ist unser Signal genau 1kHz lang. Also 1ms. Wir benötigen jedoch 250ys Gesamtlänge des Signal. Wir würden in die Tabelle gerne einfach das direkt Signal mit Vpp und Signallänge eingeben.

Freuen uns auf deinen Tipp!

Aufräumen tuen wir demnächst keine Sorge :-D
Hallo Lucky,

Zitat:Die sollen einfach nur einen Schalter, wenn dieser geschaltet wird, dass Signal direkt immer nur einmal an den Funktionsgenerator senden. Ich hatte nur diese Möglichkeit gefunden, dass sobald man einmal den Schalter auf Enable schaltet, das Komando für den Funktionsgenerator einmal übertragen wird. Falls du eine bessere Lösung hast, würde ich Sie gerne sehen wollen.
Sowas hier:
[attachment=61793]
Ihr müsst nur noch das FormatIntoString hinzufügen, mit dem ihr den Channel in den Befehl einbaut.
Und dann natürlich nur noch eine Case-Struktur statt derer zwei…
(23.04.2021 10:16 )Lucky. schrieb: [ -> ]
(23.04.2021 10:06 )GerdW schrieb: [ -> ]Hallo Lucky,

Zitat:Wir sitzen hier bereits zu zweit dran und wissen nicht warum das Signal nicht so lang ist wie wir es da eingeben.
Wie lang ist denn das Signal? Was habt ihr beobachtet? Wie groß ist die Abweichung zum Erwartungswert?

Warum habt ihr euer VI immer noch nicht aufgeräumt, sodass es für den unbedarften Betrachter besser verständlich wird?
Was soll der Rube-Goldberg mit den zwei kleineren Case-Strukturen oben im Bild, die sich nur um den Wert der boolschen Konstanten unterscheiden???

Die sollen einfach nur einen Schalter, wenn dieser geschaltet wird, dass Signal direkt immer nur einmal an den Funktionsgenerator senden. Ich hatte nur diese Möglichkeit gefunden, dass sobald man einmal den Schalter auf Enable schaltet, das Komando für den Funktionsgenerator einmal übertragen wird. Falls du eine bessere Lösung hast, würde ich Sie gerne sehen wollen.

Was haben wir gesehen:

Also wenn wir 215000 Samples/s einstellen sowie 251 Samples bei dx im Abitären Signal einstellen. Dann ist unser Signal genau 1kHz lang. Also 1ms. Wir benötigen jedoch 250ys Gesamtlänge des Signal. Wir würden in die Tabelle gerne einfach das direkt Signal mit Vpp und Signallänge eingeben.

Freuen uns auf deinen Tipp!

Aufräumen tuen wir demnächst keine Sorge :-D

Ich denke wir haben hier die Lösung gefunden.

Wir haben die Samples auf 250 eingestellt. Mit folgender Formel haben wir dann 1MSa/s eingestellt und unsere erwartete Gesamtlänge im Oszilloskop erhalten.

Sample Rate berechnen:
Bsp. 250 Samples; 250ys Gesamtlänge
Sample Rate=Samples/Gesamtlänge=1.000.000 Sa/s

Folgendes Problem besteht weiterhin. Die Steilheit der Flanken ist noch nicht steil genug. Können wir das durch unsere Eingabe im Express Baustein irgendwie beeinflussen?
Seiten: 1 2 3 4 5 6
Referenz-URLs