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 

Conrad USB-Relais-Karte ansteuern



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!

04.02.2015, 19:50
Beitrag #1

Kryobuero Offline
LVF-Neueinsteiger


Beiträge: 2
Registriert seit: Feb 2015

2010
-
kA



Conrad USB-Relais-Karte ansteuern
Hallo liebe Labview Community.

Dies ist mein erster Beitrag in diesem Forum und ich versuche mein Problem best möglich zu beschreiben, damit mir hoffentlich effizient geholfen werden kann.

Ich benutze Labview 2010 und möchte die 4xRelais-USB-Karte von Conrad (vgl. Anhang) ansteuern.

Ich würde mich selbst als fortgeschrittenen Anfänger bezeichnen und habe allerhand Dinge ausprobiert. Zu dieser Karte/ diesem Treiber habe ich vom Hersteller "Silicon labs" leider kein fertiges VI finden können.

Also habe ich versucht die Relais mit einem auf Visa-basierenden Labview-Programm anzusteuern. Dabei habe ich mich an den vielen Threads aus diesem Forum und den diversen Beispielen aus Labview selbst (und das tolle Visa-Einführungsvideo von YT) orientiert.
Die einzelnen Paramater wie Baudrate usw. habe ich aus der Dokumentation (393905-up-01-ml-Development_Examples_and_Documentation), die man von Conrad herunterladen kann. Allerdings bezieht sich die Dokumentation ausschließlich auf die herunterladbare dll-Datei und die einzelnen auf C++ basierenden Programmfetzen (Dazu später mehr).

Wenn ich jetzt mit Visa-Write einen Test-String losschicke bekomme ich von Visa-Read keine Antwort und die ausgelesenen Bytes sind Null. Ich habe "Byte at Port" für den Bytecount verwendet. Weil ich Timeout-fehler bekomme, wenn ich eine feste Konstante dafür vorgebe (egal wie groß).

Um zumindest oberflächlich auszuschließen, dass es an meinen rudimentären Visa-Kenntnissen liegt, habe ich mit dem selben Programm einen A/D-Wandler mit serieller USB-Schnittstelle angesteuert.

Hier scheint alles zu funktionieren. Ich kann Strings einlesen und bekomme Strings heraus.

Außerdem habe ich bei der USB-Relais-Karte vor die einzelnen Komponenten auch diverse Delays eingebaut, die aber auch nichts verändert haben. Im MAX wird die Karte zumindest erkannt, allerdings funktioniert das read dort auch nicht.

Jetzt habe ich hier im Forum herausgefunden, dass manche Schnittstellen nicht ohne weiteres mit Visa kooperieren. Also dachte ich mir "auf zur beiliegenden dll-Datei" und in die Materie einlesen. Kleine C++ Kenntnisse besitze ich nämlich, aber als ich die dll-Datei mit zugehörigen Header in Labview eingelesen habe, habe ich 6 VIs erhalten mit denen ich so nichts anfangen kann, da die einzelnen Funktionswerte/Formate usw. noch nicht richtig eingestellt sind.
2 der VIs sind fürs Lesen und Schreiben und brauchen jeweils drei Funktionswerte. (cy handle, mask und latch). Soweit ich das verstanden habe, muss über "cy handle" irgendwie die Verbindung mit der seriellen Schnittstelle erstellt werden, aber in der Dokumentation gibt es nur folgenden C++-Code dafür:

HANDLE hMasterCOM = CreateFile("\\\\.\\COM3",
GENERIC_READ | GENERIC_WRITE,
0,
0,
OPEN_EXISTING,
FILE_ATTRIBUTE_NORMAL | FILE_FLAG_OVERLAPPED,
0);

Jetzt weiß ich nicht wie man dies in Labview implementiert und jetzt kommt meine Hauptfrage:

Hat irgendjemand hier schonmal DIESE USB-Relais-Karte von Conrad mit Labview zum laufen gebracht (fertiges VI). Bzw habt ihr ein paar Tipps, wie ich mich jetzt Stück für Stück zur einer Verbindung mit der USB-Karte heranarbeiten kann? (ggf über die dll)

Die diversen Tutorials für das einlesen und verwenden von dll habe ich mir bereits durchgelesen und gesichtet. Die einfachen Beispiele, wie "den Namen des Computers ausgeben lassen", verstehe ich auch ganz gut.
Aber das HANDLE zeug aus der Dokumentation übersteigt bisjetzt mein Wissen.

Mir ist klar, dass ich mit dieser Beschreibung mehrere Baustellen aufmache und entschuldige mich hiermit dafür, dass ich zwei verschiedene Kategorien in einem Thread anspreche.
Ich möchte allerdings beschreiben, welche Wege ich bis wohin versucht habe, um einen besseren Überblick zu erzeugen. Wenn weitere Informationen fehlen oder ich mich an manchen Stellen etwas ungenau ausgedrückt habe lasst es mich wissen.

Schöne Grüße
K.B.


Angehängte Datei(en) Thumbnail(s)
   

10.0 .vi  Treiber.vi (Größe: 11,19 KB / Downloads: 695)
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
Anzeige
Antwort schreiben 


Nachrichten in diesem Thema
Conrad USB-Relais-Karte ansteuern - Kryobuero - 04.02.2015 19:50

Möglicherweise verwandte Themen...
Themen Verfasser Antworten Views Letzter Beitrag
  Com Port benutzen, um Relais zu schalten holographics 11 21.274 06.01.2013 11:09
Letzter Beitrag: Pitt
  Conrad Voltcraft DSO 8064 Oszi Kommunikation freitag 5 8.039 08.12.2008 11:00
Letzter Beitrag: freitag
  Ansteuerung einer Relaiskarte (CONRAD- 8fach Relaiskarte) über den RS232 martin204 1 13.705 05.10.2006 13:53
Letzter Beitrag: martin204
  Beim Start sind alle Relais an... diplNisse 0 3.724 17.05.2006 14:27
Letzter Beitrag: diplNisse
  Relais an serieller Schnittstelle feuerwehringenieur 4 9.757 28.06.2005 18:19
Letzter Beitrag: FranzDA
  Multimeter Conrad VC820 an serieller Schnittstelle Volker 4 16.991 17.11.2004 12:02
Letzter Beitrag: malef

Gehe zu: