LabVIEWForum.de - Umstieg CAN-Box USB-8472 auf USB-8502

LabVIEWForum.de

Normale Version: Umstieg CAN-Box USB-8472 auf USB-8502
Du siehst gerade eine vereinfachte Darstellung unserer Inhalte. Normale Ansicht mit richtiger Formatierung.
Guten Tag liebe Forengemeinde.

Ich habe beide im Betreff genannten CAN-Boxen im Einsatz und wollte nun eine auf der älteren 8472 basierten Software mit der 8502 testen. Bisher leider ohne Erfolg.
Im NI-XNET-Busmonitor empfange ich alle Messages korrekt und fehlerfrei, doch sobald ich in mien eigentlichen Programm wechsle, bekommeich im VI ncReadNetMult die Fehlermeldung:

Fehler -1074388956 bei NI-CAN ReadMult
Network Interface Object
(ncReadNetMult.vi)

Mögliche Ursachen:

NI-CAN: (Hex 0xBFF62024) Das Objekt-Handle (ObjHandle) ist ungültig. Lösung: Vergewissern Sie sich, dass die Open-Funktion erfolgreich abgeschlossen und das Handle nicht von einem anderen Thread (z. B. mit ncReset) geschlossen wurde.



Die VIs ncConfigCANNet und ncOpen scheinen fehlerfrei zu funktionieren.
Natürlich habe ich die Geräteschnittstelle auf den im NI MAX auftauchenden NI-CAN Gerät gesetzt, udn nicht auf den NI-XNET Eintrag.

Verwendete Software:
LabView 2017 32-bit
NI-CAN 18.5
NI-XNET 19.1 für die Kompatibilitätslibrary

Vielleicht hatte ja jemand schon ähnliches vor und kann Erfahrungsberichte teilen.
Falscher Treiber und falsche CAN-API:

Die USB-8502 "versteht" nur die NI-XNET API.

Du musst deine Applikation umschreiben. Mit der NI-CAN API wirst du nicht weiterkommen.

Gruß, Jens
Danke für die Antwort Jens.

Dennoch habe ich es aber tatsächlich nach einigem herumexperimentieren gerade eben zum Laufen bekommen.

ncConfigCANNET.vi muss mit einer Read Queue Length initialisiert werden. Diese war vorher auf 0 gesetzt.
Außerdem habe ich nach dem ncOpen.vi ein ncAction.vi mit Opcode 'Start' angefügt.

Jetzt werden alle CAN Messages ausgewertet. Trotz Einsatz der 'neuen' CAN Box.
Könnte es sein, dass du die "NI-XNET Compatibility Library for NI-CAN Library" zusammen mit dem NI-XNET Treiber für deine 8502 Karte installiert hast?

Auf Dauer solltest du deine Applikation auf NI-XNET umschreiben!

Gruß, Jens
Referenz-URLs