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 

zwei Spannungen mit zwei Keithley Multimetern synchron einlesen



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!

29.03.2018, 09:47
Beitrag #1

Fabian93 Offline
LVF-Neueinsteiger


Beiträge: 4
Registriert seit: Mar 2018

LabVIEW 2016
-
kA



zwei Spannungen mit zwei Keithley Multimetern synchron einlesen
Hallo,

ich möchte zwei Gleichspannungen mit zwei Keithley 2701 Multimetern synchron einlesen. Die beiden Programme im Anhang funktionieren, allerdings werden die Werte nicht synchron eingelesen. Beim zweiten Programm bekommen beide "TCP send" gleichzeitig alle Werte, das obere VI wird aber immer zuerst ausgeführt.

Hat jemand eine Idee wie ich die Spannungen synchron einlesen kann? Vielen Dank

Mit freundlichen Grüßen
Fabian


Angehängte Datei(en) Thumbnail(s)
       
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
Anzeige
29.03.2018, 10:12 (Dieser Beitrag wurde zuletzt bearbeitet: 29.03.2018 10:13 von GerdW.)
Beitrag #2

GerdW Offline
______________
LVF-Team

Beiträge: 17.398
Registriert seit: May 2009

LV2021
1995
DE_EN

10×××
Deutschland
RE: zwei Spannungen mit zwei Keithley Multimetern synchron einlesen
Hallo Fabian,

herzlich willkommen im Forum!

Zitat:wie ich die Spannungen synchron einlesen kann?
Willst du die Daten synchron einlesen - oder synchron messen?

- Synchron einlesen ginge nur dann, wenn die beiden DMMs an unterschiedlichen LAN-Ports hängen würden: an einem LAN-Port kommen die Datenpakete eben nacheinander an…
- Synchron messen dagegen musst du auf DMM-Ebene konfigurieren: die DMMs bieten doch sicherlich einen Trigger-Input an, über den sie sich synchronisieren lassen!? (Das Übertragen der Messwerte vom DMM zum PC kann dann ruhig nacheinander erfolgen…)

Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
29.03.2018, 10:15
Beitrag #3

Freddy Offline
Oldtimer
****


Beiträge: 729
Registriert seit: Aug 2008

2019, 2020, 2021
1996
DE

76275
Deutschland
RE: zwei Spannungen mit zwei Keithley Multimetern synchron einlesen
Hallo Fabian,
die VI laufen als "Ablaufvariante Ausführung". Damit greift jeder auf das gleiche VI zu. Somit kann es nur hintereinander funktionieren.

Auszug aus der Hilfe:
Zitat:Ablaufinvarianz—Gibt an, ob mehrere Instanzen dieses VI gleichzeitig ausgeführt werden können. Standardmäßig sind VIs nicht ablaufinvariant. Das heißt, jeder VI-Aufruf muss warten, bis der vorherige Aufruf abgearbeitet ist. Um mehrere gleichzeitige Aufrufe eines VIs zu gestatten, müssen Sie eine der Optionen für die ablaufinvariante Ausführung auswählen.
(FPGA Module) SubVIs, die auf einem FPGA-Zielsystem erstellt werden, sind per Voreinstellung ablaufinvariant.

Ablaufvariante Ausführung—Führt simultane Aufrufe des VIs nacheinander aus, so dass nur wenig Arbeitsspeicher benötigt wird. Mit dieser Option werden außerdem alle Aufrufe des VIs in denselben Zustand versetzt, so dass die Werte von Elementen und nicht initialisierten Schieberegistern über die Aufrufe hinweg beibehalten werden. Bei VIs für Echtzeit-Betriebssysteme ist die Option Ablaufinvariante Ausführung mit vorbelegter Kopie auszuwählen.
Ablaufinvariante Ausführung mit gemeinsam genutzter Kopie—Gestattet mit relativ geringem Speicherbedarf die parallele Ausführung simultaner VI-Aufrufe. Der Speicherbedarf wird dadurch gering gehalten, dass VI-Aufrufe mit Kopien des VIs arbeiten. Wenn ein VI-Aufruf auftritt, während alle Kopien in Verwendung sind, wird dem VI-Aufruf eine neue Kopie zugewiesen. Da diese Zuweisung bedarfsweise vorgenommen wird, führt diese Art der Ausführung zu Jitter. Bei VIs für Echtzeit-Betriebssysteme ist die Option Ablaufinvariante Ausführung mit vorbelegter Kopie auszuwählen.
Ablaufinvariante Ausführung mit vorbelegter Kopie—Gestattet die parallele Ausführung simultaner Aufrufe des VIs bei gleichzeitiger Minimierung des Aufruf-Overheads und Jitters. Bei dieser Ausführungsart wird für jeden VI-Aufruf eine separate Kopie des VIs verwendet. Jeder VI-Aufruf behält daher seinen eigenen Zustand bei, so dass die Werte von Elementen und nicht initialisierten Schieberegistern ebenfalls beibehalten werden. Der Nachteil dieser Ausführungsart liegt gegenüber der Option Ablaufinvariante Ausführung mit gemeinsam genutzter Kopie in einem höheren Speicherbedarf.

Gruß
Freddy

Einführende Links zu LabVIEW, s. GerdWs Signatur.
Webseite des Benutzers besuchen Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
29.03.2018, 11:10
Beitrag #4

Fabian93 Offline
LVF-Neueinsteiger


Beiträge: 4
Registriert seit: Mar 2018

LabVIEW 2016
-
kA



RE: zwei Spannungen mit zwei Keithley Multimetern synchron einlesen
Hallo,

danke für die Antworten


(29.03.2018 10:12 )GerdW schrieb:  - Synchron messen dagegen musst du auf DMM-Ebene konfigurieren: die DMMs bieten doch sicherlich einen Trigger-Input an, über den sie sich synchronisieren lassen!? (Das Übertragen der Messwerte vom DMM zum PC kann dann ruhig nacheinander erfolgen…)

Ich habe mich vielleicht etwas ungenau ausgedrückt. Ich möchte zwei Spannungen synchron messen. Die Übertragung muss nicht synchron sein. Die Multimeter haben einen externen Trigger-Eingang. Vielleicht gibt es auch eine Möglichkeit einen Trigger-Befehl zu senden.


(29.03.2018 10:15 )Freddy schrieb:  die VI laufen als "Ablaufvariante Ausführung". Damit greift jeder auf das gleiche VI zu. Somit kann es nur hintereinander funktionieren.

Das ist mein Problem (oder eins meiner Probleme).

Ich habe die englische Version von LabVIEW 2016. Ich war unter:
File-->VI Properties-->Category Execution

Was sollte ich dort einstellen? Sind die Einstellungen dann für alle VI's? Werden die beiden "TCP send" VI's dann synchron aufgerufen oder arbeitet LabVIEW die VI's einfach von oben nach unten ab?


Mit freundlichen Grüßen
Fabian


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

Freddy Offline
Oldtimer
****


Beiträge: 729
Registriert seit: Aug 2008

2019, 2020, 2021
1996
DE

76275
Deutschland
RE: zwei Spannungen mit zwei Keithley Multimetern synchron einlesen
Mit der Einstellung auf Deinem Bild wird dieses VI für jeden Aufruf extra geladen. Damit wartet ein Aufruf nicht bis der vorherige Aufruf abgearbeitet wurde, sondert läuft sofort los.

Gruß
Freddy

Einführende Links zu LabVIEW, s. GerdWs Signatur.
Webseite des Benutzers besuchen Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
29.03.2018, 11:47
Beitrag #6

Fabian93 Offline
LVF-Neueinsteiger


Beiträge: 4
Registriert seit: Mar 2018

LabVIEW 2016
-
kA



RE: zwei Spannungen mit zwei Keithley Multimetern synchron einlesen
(29.03.2018 11:21 )Freddy schrieb:  Mit der Einstellung auf Deinem Bild wird dieses VI für jeden Aufruf extra geladen. Damit wartet ein Aufruf nicht bis der vorherige Aufruf abgearbeitet wurde, sondert läuft sofort los.

Irgendwie haben die Einstellungen keinen Einfluss. Das obere VI "TCP send" wird zuerst gestartet, dann wird das untere, dann liefert das obere VI einen Wert und dann das untere. Das bei alles drei Einstellungen. Vielleicht sind die unteren VI's bereits Kopien.

Vielleicht liegt es an der Netzwerk-Schnittstelle, da die Befehle und Daten nur nacheinander gesendet werden können?
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
Anzeige
31.03.2018, 08:05 (Dieser Beitrag wurde zuletzt bearbeitet: 31.03.2018 08:07 von jg.)
Beitrag #7

jg Offline
CLA & CLED
LVF-Team

Beiträge: 15.864
Registriert seit: Jun 2005

20xx / 8.x
1999
EN

Franken...
Deutschland
RE: zwei Spannungen mit zwei Keithley Multimetern synchron einlesen

Akzeptierte Lösung

Welches VI hast du auf reentrant umgestellt? Das erkennt man in deinem Screenshot nicht. Falls du dein "eine se" geändert hast, das wäre falsch. Diese Einstellung wirkt sich nicht auf SubVIs aus. Das muss man bei Bedarf für alle VIs in der Aufrufkette machen, in deinem Fall also für das TCP Read/Write VI und mglw. darin enthaltene SubVIs.

Trotzdem wird ein Problem übrig bleiben - TCP/IP: Über 1 Schnittstelle kannst du eben NICHT 2 Kommandos parallel rausschicken. Außerdem hängen da noch einige Schichten Treiber-API dazwischen, bei TCP/IP weißt du sowieso nie genau, wann wirklich ein Paket rausgeht.

Echte Synchronisation wirst du IMHO nur durch einen physikalischen vorhandenen Trigger-Impuls erreichen - nicht durch irgendwelche Software-Trigger.

Gruß, Jens

Wer die erhabene Weisheit der Mathematik tadelt, nährt sich von Verwirrung. (Leonardo da Vinci)

!! BITTE !! stellt mir keine Fragen über PM, dafür ist das Forum da - andere haben vielleicht auch Interesse an der Antwort!

Einführende Links zu LabVIEW, s. GerdWs Signatur.
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
01.04.2018, 09:58
Beitrag #8

Fabian93 Offline
LVF-Neueinsteiger


Beiträge: 4
Registriert seit: Mar 2018

LabVIEW 2016
-
kA



RE: zwei Spannungen mit zwei Keithley Multimetern synchron einlesen
(31.03.2018 08:05 )jg schrieb:  Welches VI hast du auf reentrant umgestellt? Das erkennt man in deinem Screenshot nicht. Falls du dein "eine se" geändert hast, das wäre falsch. Diese Einstellung wirkt sich nicht auf SubVIs aus. Das muss man bei Bedarf für alle VIs in der Aufrufkette machen, in deinem Fall also für das TCP Read/Write VI und mglw. darin enthaltene SubVIs.

Danke für die Antwort. Ich habe nur die Einstellungen des "eine se" VI's verändert. Das erklärt auch warum sich beim Ablauf des Programms nichts verändert hat. Ich werde die subVI's auf reentrant umstellen und es nochmal ausprobieren.


(31.03.2018 08:05 )jg schrieb:  Trotzdem wird ein Problem übrig bleiben - TCP/IP: Über 1 Schnittstelle kannst du eben NICHT 2 Kommandos parallel rausschicken. Außerdem hängen da noch einige Schichten Treiber-API dazwischen, bei TCP/IP weißt du sowieso nie genau, wann wirklich ein Paket rausgeht.

Echte Synchronisation wirst du IMHO nur durch einen physikalischen vorhandenen Trigger-Impuls erreichen - nicht durch irgendwelche Software-Trigger.

Das ist wahrscheinlich die einzige Möglichkeit wirklich synchron zu messen.
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
  Zwei Instrumente (Signalgeneratoren) gleichzeitig ansprechen (VISA ressource name) mriworld 4 2.304 23.06.2022 12:46
Letzter Beitrag: TpunktN
  Zwei Messungen mit zwei identischen Messgeräten über VISA hansi9990 7 4.502 21.10.2019 10:40
Letzter Beitrag: HVo
  Problem: Zwei Agilent 34410A gleichzeitig/parallel ansprechen trestann 2 3.812 04.03.2014 12:59
Letzter Beitrag: trestann
  Keithley 2700 JoW 9 16.058 03.02.2011 00:03
Letzter Beitrag: Cruzaderz
  Keithley Ansteuerung Tower 3 7.800 21.09.2010 08:15
Letzter Beitrag: Martin Heller
  GBIP - 3 Spannungen zu 3 Zeiten schreiben? wickedsick 5 4.459 15.09.2010 08:56
Letzter Beitrag: wickedsick

Gehe zu: