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 

Instrumentensteuerung per .DLL



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!

03.04.2006, 13:25
Beitrag #1

cwolz Offline
LVF-Neueinsteiger


Beiträge: 9
Registriert seit: Apr 2006


-
de


Deutschland
Instrumentensteuerung per .DLL
Hallo zusammen,

ich bin dabei einen Kalibrator (SIKA microcal2000+) in LabVIEW 7.1 einzubinden der per RS232 am Rechner hängt. Zur Instrumentensteuerung habe ich eine .DLL die mit VBasic 6.0 sp5 generiert wurde. Man muss dafür wohl objektorientiert Instanzen der Klassen generieren und schliesslich Methoden aufrufen. Kann mir jemand sagen ob und wie das in LabVIEW gehen kann?

Besten Dank und Grüße,
Christoph Wolz.


Hier die Programmbeispiele des Herstellers:

Example of use in VBasic 6.0:
Set objdrv = CreateObject("eurodrv_mcal200.clsdriver")

In order to manage the protocol there is a set of the publics methods {you see CAP 4.3.0} that list all the possible
actions available for the instrument.

Important: note that the DLL always mast be registered with the command : regsvr32 pathname.dll

· Example of use in VB .Net 2003:
Dim objdrv As Object objdrv = New eurodrv_mcal200.clsdriver
objdrv.AppPathDebug = Application.StartupPath & "Debug"
If objdrv.opencomm(("Serialport"), ("combbaudrate")) Then
Message (objdrv.IsDriver) ‘ {you see CAP 4.1.0}
End if

In order to manage the protocol there is a set of the publics methods {you see CAP 4.3.0} that list all the possible actions available
for the instrument.

4.3.0 Driver function structure
Methods Parameters Results Description
Getdirection 1 or 2 Boolean If Ch1 or Ch2 -> In or Out
Getscaleinfo String String setting chanel
Serialport Boolean Return true if OK opencomm
baudrate
closecomm
idchn Boolean {you see CAP. 5.1.2}
muxchn
direction
.. (others parameters for set)
Setchn
idchn Boolean
muxchn
direction
measure()
Getmeas_output
errornum()
idchn Boolean Compeer sernum with mcal200 GetSN
sernum
bDebug Path file Boolean Your Path file + DebugMcal200.txt
IsDriver String
DestinationDir+Filename SendFile
OrigineDir+FileName
OrigineDir+FileName
DestinationDir+Filename
ReceiveFile
Overwrite
FilesName NomeDirectory InstrumentFile ()
{you see CAP. 5}
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
Anzeige
04.04.2006, 18:37
Beitrag #2

Lucki Offline
Tech.Exp.2.Klasse
LVF-Team

Beiträge: 7.699
Registriert seit: Mar 2006

LV 2016-18 prof.
1995
DE

01108
Deutschland
Instrumentensteuerung per .DLL
Also mir sind die höheren Weihen der Programmiertechnik verschlossen, bin eine reiner Hardwaremensch. Deshalb verstehe fast nichts von dem was Du schreibst. Aber gerade deshalb will ich Dir sagen, daß ich das Problem auch hatte und daß sich alles als überraschend einfach herausstellte, und zwar ohne Methodenknoten und andere Exotik. Bei mir ging es darum, einen Laserscanner anzusteueren. Die Ansteuerung erfolgte üher eine PCI-Karte des Scanner-Herstellers. Die Software des Scannerherstellers griff auf die Karte über eine DLL-Funktionsbibiothk zu. Warum sollte das nicht auch von LabVIEW aus nöglich sein? Es funktionierte, und zwar ganz einfach.
Alles was Du brauchst ist das VI Fortgeschritten/Aufruf exterener Bibliotheken.
Wenn Du darauf doppelklickst (auf "WP" in Bild DLL1), siehst Du DLL2.png. Dort muß Du für jede Funktion alles peinlich genau ausfüllen, sonst stürzt Dein Programm ab. Ich würde empfehlen, für jede benötigte Funktion ein eigenes kleines VI zu erstellen, gewissermassen einen LabVIEW-Treiber. Siehe das Beispiel DLL1.png Wenn Du diese Treiberbibliothek geschaffen hast, hast Du dann bei der weiteren Programmierung nur noch mit LabVIEW selbst zu tun.
Ludwig


Angehängte Datei(en) Thumbnail(s)
       
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
05.04.2006, 14:39
Beitrag #3

cwolz Offline
LVF-Neueinsteiger


Beiträge: 9
Registriert seit: Apr 2006


-
de


Deutschland
Instrumentensteuerung per .DLL
Hallo Lucki,

vielen Dank für deine Hilfestellung.
Mein Grundproblem ist momentan allerdings, dass ich auf die in der Doku beschriebenen Funktionen beim "Aufruf externer Bibliotheken" nicht zugreifen kann. Es werden in der Dialogbox nur Funktionen aufgeführt um Instanzen der Klassen zu erzeugen ... damit muss ich dann irgendwie in die Methoden der .DLL rein. Hmmpf. Weiss jemand ob .DLLs unter LabVIEW 7.1.1 oder LabVIEW 8 anders bzw. besser eingebunden werden können?

Danke Euch,
Gruß, Christoph.
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
30
Antwort schreiben 


Gehe zu: