LabVIEWForum.de
dll Import richtig verstanden? - Druckversion

+- LabVIEWForum.de (https://www.labviewforum.de)
+-- Forum: LabVIEW (/Forum-LabVIEW)
+--- Forum: LabVIEW Allgemein (/Forum-LabVIEW-Allgemein)
+---- Forum: DLL & externer Code (/Forum-DLL-externer-Code)
+---- Thema: dll Import richtig verstanden? (/Thread-dll-Import-richtig-verstanden)



dll Import richtig verstanden? - Gruenschnabel - 18.09.2014 10:40

Hallo,

ich habe eine Frage zum dll-Import, ob ich das richtig verstanden habe:

Beim Import gebe ich eine dll an und eine Header-Datei, in der die Funktionen der dll beschrieben sind?
Und dann kommen VIs oder "Bausteine" raus?


RE: dll Import richtig verstanden? - jg - 18.09.2014 11:00

Ja, wobei in der Regel manuelle Nacharbeit nötig ist.

Gruß, Jens


RE: dll Import richtig verstanden? - Gruenschnabel - 18.09.2014 11:35

Danke.

Ich versuche eine dll vom LibNoDave-Projekt einzubinden. Leider für mich deutlich schwerer als erwartet und dachte, dass der LabVIEW-Import es mir einfacher macht.
Aber anscheinend passt die Header-Datei nicht so ganz. Meine C-Kenntnisse sind leider schon viiieeele Jahre her...


RE: dll Import richtig verstanden? - rolfk - 18.09.2014 20:52

(18.09.2014 11:35 )Gruenschnabel schrieb:  Danke.

Ich versuche eine dll vom LibNoDave-Projekt einzubinden. Leider für mich deutlich schwerer als erwartet und dachte, dass der LabVIEW-Import es mir einfacher macht.
Aber anscheinend passt die Header-Datei nicht so ganz. Meine C-Kenntnisse sind leider schon viiieeele Jahre her...

Nun, diese DLL ist eigentlich ziemlich lästig in LabVIEW einzubauen, da sie komplizierte structs als Parameter verwendet. Das ist selbst in C nicht für einen Anfanger gedacht, aber in LabVIEW muss man zudem auch noch wissen wie C und LabVIEW funktioniert und das auch auf recht lowlevel Gebiet, etwa wie C und LabVIEW Daten im Speicher ablegen. Das ist sicher für Strings und Arrays ziemlich verschieden.

Ohne wesentliche C Kenntnisse ist diese libnodave Library in LabVIEW eigentlich nicht zuverlässig einzubinden. Denn auch wenn es irgendwann nach viel Schweiss und Haareausraufen zu funktionieren scheint, ist es immer noch möglich dass durch einen falsch konfigurierten Parameter oder Funktionsaufruf irgendwelcher Speicher zerschossen wird der Dir LabVIEW irgendwann zum Absturz bringt. Das kann manchmal unmittelbar nach dem verantwortlichen Aufruf passieren aber oft auch erst viel später und Deine Applikation hat dann schon lange mit ungültigen Daten rumgewütet. Solche Bugs zu finden ist ein Alptraum.


RE: dll Import richtig verstanden? - DATAAHEAD - 19.09.2014 07:57

(18.09.2014 11:35 )Gruenschnabel schrieb:  Danke.

Ich versuche eine dll vom LibNoDave-Projekt einzubinden. Leider für mich deutlich schwerer als erwartet und dachte, dass der LabVIEW-Import es mir einfacher macht.
Aber anscheinend passt die Header-Datei nicht so ganz. Meine C-Kenntnisse sind leider schon viiieeele Jahre her...

Hi Grünschnabel,
es gibt auch die Möglichkeit ohne die Bibliothek über Ethernet auf eine Siemens S7 zuzugreifen. Unser neues Tool "SP7" wird demnächst im LabVIEW Tools Network veröffentlicht und kann für die typischen Schreib-/Lese-Operationen verwendet werden. Download der 30-Tage-Testversion unter Downloadlink. Läuft z.B. auch auf einem CompactRIO. Über Feedback würden wir uns auch freuen!

Grüße

Peter


RE: dll Import richtig verstanden? - Gruenschnabel - 19.09.2014 10:20

(19.09.2014 07:57 )DATAAHEAD schrieb:  Hi Grünschnabel,
es gibt auch die Möglichkeit ohne die Bibliothek über Ethernet auf eine Siemens S7 zuzugreifen. Unser neues Tool "SP7" wird demnächst im LabVIEW Tools Network veröffentlicht und kann für die typischen Schreib-/Lese-Operationen verwendet werden. Download der 30-Tage-Testversion unter Downloadlink. Läuft z.B. auch auf einem CompactRIO. Über Feedback würden wir uns auch freuen!

Grüße

Peter

Danke Peter, aber über Ethernet bekomme ich es schon hin.
Ein Kollege hatte mal so nen sehr schicken Datenlogger als Diplomarbeit mit LabVIEW erstellt, mit dem wir gelegentlich Daten mitschreiben.
Leider wird der als Slave im Profibusnetz eingebunden und braucht Anpassungen im Projekt bei Hardware und den Bausteinen.

Ich dachte, ich schau mal, ob ich das ganze erweitern kann und ohne Eingriffe in die S7 was auslesen kann. Und da vor allem ältere Anlagen kein Ethernet haben, benötige ich Profibus.

MfG Nico


RE: dll Import richtig verstanden? - DATAAHEAD - 19.09.2014 10:25

Hi Nico,
danke für die Aufklärung und noch viel Erfolg dabei! Über Tests und Rückmeldungen bzgl. SP7 sind wir trotzdem dankbar Wink

Schönes Wochenende!

Peter


(19.09.2014 10:20 )Gruenschnabel schrieb:  Danke Peter, aber über Ethernet bekomme ich es schon hin.
Ein Kollege hatte mal so nen sehr schicken Datenlogger als Diplomarbeit mit LabVIEW erstellt, mit dem wir gelegentlich Daten mitschreiben.
Leider wird der als Slave im Profibusnetz eingebunden und braucht Anpassungen im Projekt bei Hardware und den Bausteinen.

Ich dachte, ich schau mal, ob ich das ganze erweitern kann und ohne Eingriffe in die S7 was auslesen kann. Und da vor allem ältere Anlagen kein Ethernet haben, benötige ich Profibus.

MfG Nico