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 

Probleme mit Shared Variables (+Engine)



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.12.2013, 18:03
Beitrag #1

Lucius2 Offline
LVF-Grünschnabel
*


Beiträge: 38
Registriert seit: May 2012

2013
-
DE


Deutschland
Probleme mit Shared Variables (+Engine)
Hallo,

und zwar geht es um diverse Messwerte, die von Messgeräten oder über einen OPC-Server von einer SPS kommen und dann mittles Umgebungsvariablen (shared variables) weiterverarbeitet werden.

Dabei hab ich momentan an 3 Stellen Probleme, wo ich nich weiterkomme.

1. Datentyp Double in die Variablen schreiben:

Im folgenden Bild sieht man oben im grünen Kasten das relevante Blockdiagramm. Hier habe ich einfach eine Variable "Test-Double1" erzeugt und dieser unter Eigenschaften auch den Datentyp Double zugewiesen. Wenn ich nun jedoch einen Double-Wert in die Variable schreiben lasse, so konvertiert der "Variable schreiben" Block jedoch den Datentyp automatisch in UInt32, sodass natürlich aus der 2,64 dann eine 3 wird. Und der Grund dafür warum er das macht ist mir nicht ersichtlich, da ich auch double und negative Messwerte habe und diese doch dann auch bitte genauso weiterverabeitet werden sollen, da ja sonst Informationen verloren gehen.
   


2. Sinn/Bearbeiten der Shared Variable Engine:
   
Man kann ja an einer shared variable auf dem Pfeil nach einer Variablen suchen. Hierbei werden auch alle Variablen, die direkt dem Projekt zugeordnet sind problemlos angezeigt und können ausgewählt werden. Oben kann man da ja auch den Reiter "Shared Variable Engine" aufrufen. Dort ist jedoch alles ausgegraut und eine Variable kann hierdrüber nicht angewählt werden. Hinzu würde mich interessieren wie ich dieses Engines dort bearbeiten/löschen kann. Ich hab dazu irgendwie keine Möglichkeit gefunden.
Wenn ich "localhost" nicht aufklappe, dann werden mir unten auch weitere PCs angezeigt, wo aber nichts angezeigt wird, wenn man darauf klickt, was mich dann auch zur 3. Frage führt.

3. Wie kann man mit shared variables mit anderen PCs kommunizieren?
Es sollen einfach shared variables bzw die Werte von denen zwischen Rechnern hin und her geschoben werden. Da ist mir nicht ganz klar wie das funktioniert, bzw. was genau man da beachten muss. Man kann zwar toll im Menüpunkt unter "Werkzeuge-> Umgebungsvariable -> Computer hinzufügen" PCs eintragen, aber ich weis nicht wo die dann landen, bzw ob überhaupt irgendwas passiert.

Schonmal danke im Vorraus.
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
Anzeige
02.12.2013, 18:15
Beitrag #2

jg Offline
CLA & CLED
LVF-Team

Beiträge: 15.864
Registriert seit: Jun 2005

20xx / 8.x
1999
EN

Franken...
Deutschland
RE: Probleme mit Shared Variables (+Engine)
Ad 1)
Read Variable hat einen Eingang "data type". Da z.B. eine Double Konstante anschließen, ansonsten bleibt es beim Standard-Datentyp U32.
   

Ad 3)
Auf mind. 1 der beiden Rechner muss der sogenannte "Shared Variable Engine" als Dienst laufen. Ist dort eine "Shared Variable" mal angelegt, dann kann sie sowohl von lokal als auch per Netzwerk gelesen und geschrieben werden.

Bei der Erstellung eine Verbindung ein hilfreicher Tipp: Es ist auch möglich, einen String an den Read/Write VIs anzuschließen:
   

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
02.12.2013, 19:44
Beitrag #3

Lucius2 Offline
LVF-Grünschnabel
*


Beiträge: 38
Registriert seit: May 2012

2013
-
DE


Deutschland
RE: Probleme mit Shared Variables (+Engine)
Danke schonmal für die Antwort,

wenn ich jedoch das Variable öffnen oder schreiben Teil vor das Lesen packe, dann verschwindet der Anschluss für den Datentyp beim Lesen. Weil eigentlich ja auch der Datentyp in der Variablen selber drinsteckt. Wenn ich z.b. den Datentyp der Variablen selber (also unter den Eigenschaften da) auf Boolean ändere kommt direkt ein Fehler, weil er natürlich nicht weis damit umzugehen, was ja auch Sinn macht. Irgendwie liegt mein Verdacht, dass schon beim Schreiben da eine Konvertierung stattfindet, was ja auch durch den kleinen roten Pfeil an dem Dateneingang des Schreibenblocks angezeigt wird, und wenn natürlich schon der falsche Datentyp hineingeschrieben wird, so kann natürlich auch nur der ausgelesen werden.

Zu der anderen Antwort, wie genau kann ich diese Engines bearbeiten, weil ich z.B. in der Liste welche drin habe, die ich nicht brauche und auch nicht genau weis, wie die da hineingekommen sind.

Das mit den Strings muss ich mal ausprobieren, weil wichtig ist, dass quasi der Datentyp der Variable selber mitgeschleppt wird, da ich eine lange Liste mit Variablen habe, wo viele unterschiedliche Datentypen vorhanden sind und die müssen dann jeweils sortiert werden nach Typ.

mfg
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
03.12.2013, 09:38
Beitrag #4

jg Offline
CLA & CLED
LVF-Team

Beiträge: 15.864
Registriert seit: Jun 2005

20xx / 8.x
1999
EN

Franken...
Deutschland
RE: Probleme mit Shared Variables (+Engine)
(02.12.2013 19:44 )Lucius2 schrieb:  wenn ich jedoch das Variable öffnen oder schreiben Teil vor das Lesen packe, dann verschwindet der Anschluss für den Datentyp beim Lesen. Weil eigentlich ja auch der Datentyp in der Variablen selber drinsteckt.
Stimmt, da hast du Recht, den Eingang mit dem Datentyp gibt es nur am ersten VI einer Kette, danach sollte die Refnum den Datentyp korrekt kennen.
Woher der Konversionspunkt an deinem ersten Schreib-VI kommt, ist mir unklar. Hast du die geänderte Liste der Shared-Variables auch veröffentlicht (Rechtsklick -> Deploy)?

(02.12.2013 19:44 )Lucius2 schrieb:  Zu der anderen Antwort, wie genau kann ich diese Engines bearbeiten, weil ich z.B. in der Liste welche drin habe, die ich nicht brauche und auch nicht genau weis, wie die da hineingekommen sind.
Programme -> National Instrument -> Distributed System Manager.

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
03.12.2013, 12:26 (Dieser Beitrag wurde zuletzt bearbeitet: 03.12.2013 12:29 von Lucius2.)
Beitrag #5

Lucius2 Offline
LVF-Grünschnabel
*


Beiträge: 38
Registriert seit: May 2012

2013
-
DE


Deutschland
RE: Probleme mit Shared Variables (+Engine)
zum 1. Punkt: Ja die Variablen sind alle deployed. Das komische ist auch, dass es bei anderen Datentypen quasi dasselbe in grün ist.
   
hier ist es anstatt double halt int32 und beim Schreiben wird auch direkt wieder in UInt32 konvertiert (auch hier ist wieder der kleine rote Pfeil), sodass natürlich negative Zahlen nicht funktionieren und ja die Variable "Test1" ist auch korrekt mit Datentyp Int32 eingestellt.
Das einzige wo er korrekt alles ändert ist beim Datentyp boolean, aber das kann doch nicht sein, dass das Schreibteil nur boolean und UInt32 kann, vor allem weil man ja alle möglichen Datentypen auswählen kann bei der Variable ansich.

zum 2. : Ok danke das hat mir etwas geholfen und ich kann jetzt auch auf dem Durchsuchen-Pfeil der Variablen auch unter Variablen Engines etwas anwählen, da vorher die zu benutzende Library am Ende des VIs wieder geschlossen wurde und man natürlich dann im Blockdiagramm keinen Zugriff mehr dadrauf hat, wenn das VI gestoppt wurde.
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
03.12.2013, 18:06
Beitrag #6

jg Offline
CLA & CLED
LVF-Team

Beiträge: 15.864
Registriert seit: Jun 2005

20xx / 8.x
1999
EN

Franken...
Deutschland
RE: Probleme mit Shared Variables (+Engine)
Auch ich lerne nicht aus, ich denke, ich habe dein Problem lokalisiert:
Mach mal einen Rechtsklick auf die "Shared Variable Refnum" und wähle "Properties" aus. Im folgenden Fenster kannst du schon bei der Refnum den Datentyp auswählen, und falls da zwecks mglw. Copy-Paste schon U32 drin steht, dann bleibt es so:
   
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
Anzeige
04.12.2013, 12:11
Beitrag #7

Lucius2 Offline
LVF-Grünschnabel
*


Beiträge: 38
Registriert seit: May 2012

2013
-
DE


Deutschland
RE: Probleme mit Shared Variables (+Engine)
(03.12.2013 18:06 )jg schrieb:  Auch ich lerne nicht aus, ich denke, ich habe dein Problem lokalisiert:
Mach mal einen Rechtsklick auf die "Shared Variable Refnum" und wähle "Properties" aus. Im folgenden Fenster kannst du schon bei der Refnum den Datentyp auswählen, und falls da zwecks mglw. Copy-Paste schon U32 drin steht, dann bleibt es so:

Gruß, Jens

Jo super, daran hat es gelegen. Ich wusste garnicht, dass man extra nochmal auf diesem Kasten den Datentyp eintstellen kann...


Dann bleibt noch die Frage, wie ich auf andere Rechner zugreifen kann. Also wenn ich die jeweilige Variablenengine auf PC1 gestartet hab, dann müsste doch der Variablenpfad auf PC2 dann wie folgt lauten, damit dieser auf PC1 zugreift:

ni.var.psp://PC1/Test_OPC/Test1

ich kann das leider erst frühenstens heut abend bzw. morgen testen, da ich noch den 2. PC einrichten muss.
Aber es gibt da bestimmte Sachen, die ich da noch beachten muss bezüglich Rechte usw, weil momentan seh ich da auch schon andere Rechner, wo eigentlich auch schon was angezeigt werden sollte, aber wenn ich da auf das "+" drücke, dann klappt nichts auf.
   
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
04.12.2013, 12:46
Beitrag #8

jg Offline
CLA & CLED
LVF-Team

Beiträge: 15.864
Registriert seit: Jun 2005

20xx / 8.x
1999
EN

Franken...
Deutschland
RE: Probleme mit Shared Variables (+Engine)
Da ist denn mein Hinweis mit "String" anstatt Refnum hilfreich.
Den String kannst du dynamisch zur Laufzeit zusammensetzen, anstatt /PC1/ könnte dort z.B. die IP-Adresse des Ziels stehen.
Wenn die Firewalls alles durchlassen, dann ist auch diese Frage gelöst.

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
06.12.2013, 13:27
Beitrag #9

Lucius2 Offline
LVF-Grünschnabel
*


Beiträge: 38
Registriert seit: May 2012

2013
-
DE


Deutschland
RE: Probleme mit Shared Variables (+Engine)
Ok, also ich habe es jetzt auch hinbekommen Werte zwischen PCs hin und herzuschieben. Danke für die Hilfe, vielleicht tauchen ja noch andere Fragen auf in dem Zusammenhang, die ich hier in dem Thread dann stellen kann.
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
  Queue Action Engine Roumaen 6 5.633 22.10.2018 13:26
Letzter Beitrag: Roumaen
  Network Shared Variables über DLL oder .NET ansprechen achim @ FZK 1 3.604 18.10.2017 05:48
Letzter Beitrag: Bender AC
  Network Shared Variables - gelöst - NoUse666 0 4.600 11.11.2016 14:29
Letzter Beitrag: NoUse666
  MODBUS I/O-Server Bound Variables (Bindungsvariablen) weigsi 10 11.021 21.02.2014 13:46
Letzter Beitrag: weigsi
  Eigenschaftsknoten bei shared variables auf entferntem PC Lucius2 0 3.222 06.02.2014 17:07
Letzter Beitrag: Lucius2
  shared variable engine mit cRIO und PC Mietzekatze 4 5.937 05.09.2013 16:18
Letzter Beitrag: Mietzekatze

Gehe zu: