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 

Aufruf externer Bibliotheken / Keyence / Schnittstelle



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!

20.05.2019, 11:00
Beitrag #1

_Markus_ Offline
LVF-Grünschnabel
*


Beiträge: 34
Registriert seit: Sep 2018

2018
-
DE


Deutschland
Aufruf externer Bibliotheken / Keyence / Schnittstelle
Hallo zusammen,

ich habe von Keyence ein Messgerät, das ich über USB von Labview aus steuern und lesen will. Leider hat der von Keyence gelieferte LV-Treiber nur einen geringen Funktionsumfang, sodass ich einiges selbst implementieren muss. Da steige ich noch nicht wirklich durch, wie das mit der Übergabe von Parametern aus der Labview-API funktioniert.

Ich habe mal einige Bilder anbei, die mein Problem veranschaulichen sollen.

winapi.jpg: Schnittstellendefinition seitens Keyence-DLL
   

Der Prototyp der Funktion lautet ja RC WINAPI LKIF2_DataStorageGetData(IN int OutNo,IN int NumOutBuffer,OUT LKIF_FLOATVALUE *OutBuffer,OUT int *NumReceived);

Ich bin mir nicht sicher, ob das, was ich in Labview in der Maske eingestellt habe, passt:

ext_bib.png: Maske "Aufruf externer Bibliotheken" in LV
   

block_diagr.png: Teil meines Blockdiagramms, der nicht das macht, was ich mir wünschen würde.
   

Wenn ich den Code laufen lasse und im Blockdiagramm bei NumOutBuffer 100 einstelle, sollten ja 100 Samples gelesen werden. Es wird aber nur ein Wert gelesen und in OutBuffer geschrieben. In NumReceived steht 0 - verstehe ich nicht. Outbuffer habe ich als Cluster in LV definiert. Allerdings müsste es ja bei mehreren Samples ein Array aus Clustern sein. Die Größe des Arrays müsste aber je nach Sampleanzahl variieren. Ich bin komplett verwirrt. Jedenfalls wird zumindest ein Wert korrekt gelesen und kein Fehler geworfen.

Ich weiß nicht, ob es was helfen würde, wenn ich den Code hochlade? Funktionieren tut das ja nur zusammen mit der DLL und dem installierten LV-Treiber von Keyence.
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
20.05.2019, 12:23
Beitrag #2

_Markus_ Offline
LVF-Grünschnabel
*


Beiträge: 34
Registriert seit: Sep 2018

2018
-
DE


Deutschland
RE: Aufruf externer Bibliotheken / Keyence / Schnittstelle
Ich hab selbst eine Lösung per Trial & Error gefunden. Wenn es von Interesse ist, kann ich es morgen hier einstellen.
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
  LabView Wrapper - PostUserEvent aus externer DLL Stephan235 3 9.645 22.07.2015 13:28
Letzter Beitrag: rolfk
  Fehler 1097 bei Knoten zum Aufruf externer Bibliotheken in CLF-Knoten.vi KingLui 2 6.937 16.09.2014 13:47
Letzter Beitrag: KingLui
  Labview blockiert serielle Schnittstelle nach Aufruf der DLL Berdschi 5 7.091 24.04.2014 08:38
Letzter Beitrag: Berdschi
  Einbinden externer DLL St_Markus 1 6.081 28.05.2013 15:25
Letzter Beitrag: rolfk
  VI als externer Code finalr 1 4.326 23.11.2012 08:58
Letzter Beitrag: GerdW
  Array Elemnte von externer Funktion verbinden Heili 3 4.435 12.11.2010 13:54
Letzter Beitrag: Lucki

Gehe zu: