LabVIEWForum.de
Kommunikation über CAN -> Schrittmotor - Druckversion

+- LabVIEWForum.de (https://www.labviewforum.de)
+-- Forum: LabVIEW (/Forum-LabVIEW)
+--- Forum: LabVIEW Allgemein (/Forum-LabVIEW-Allgemein)
+---- Forum: Datenkommunikation (/Forum-Datenkommunikation)
+---- Thema: Kommunikation über CAN -> Schrittmotor (/Thread-Kommunikation-ueber-CAN-Schrittmotor)

Seiten: 1 2


Kommunikation über CAN -> Schrittmotor - Max_LabVIEW - 23.02.2017 11:57

Hallo LVF-Gemeinde,

mein Anliegen bezieht sich auf eine Kommunikation über CAN. Ich würde gerne einen Schrittmotor über eine CAN Schnittstelle NI PXi-8512 ansteuern. Leider weis ich nicht genau wie ich Programmtechnisch vorgehen soll. Ziel ist es erstmal den Motor ins laufen zu bekommen.
Eine Hardware Anbindung habe ich schon mal über Ethernet erstellt. Treiber für CAN wurden auch schon installiert. Wird die Can Frame Bit für Bit aufgebaut?
Danke.

Gruß Max


RE: Kommunikation über CAN -> Schrittmotor - GerdW - 23.02.2017 12:49

Hallo Max,

schön, dass das Erstellen von Beiträgen nun funktioniert!

Zitat:Ich würde gerne einen Schrittmotor über eine CAN Schnittstelle NI PXi-8512 ansteuern.
Welche Schnittstelle verwendet der Motor genau? Einfache CAN-Botschaften oder CANopen nach DS301-Profil?
Was sagt das Motor-Manual zu dem Thema?
Hast du eine genaue Typangabe des Motors oder Motorreglers?

Zitat:Eine Hardware Anbindung habe ich schon mal über Ethernet erstellt. Treiber für CAN wurden auch schon installiert.
Was hat Ethernet mit dem Motor zu tun?
Welche CAN-Treiber hast du installiert? (CAN, CANopen, XNet?)

Zitat:Wird die Can Frame Bit für Bit aufgebaut?
Prinzipiell ja, muss man aber meist nicht selbst machen: dafür gibt es ja Treiber…


RE: Kommunikation über CAN -> Schrittmotor - Max_LabVIEW - 23.02.2017 13:14

(23.02.2017 12:49 )GerdW schrieb:  Hallo Max,

schön, dass das Erstellen von Beiträgen nun funktioniert!

Zitat:Ich würde gerne einen Schrittmotor über eine CAN Schnittstelle NI PXi-8512 ansteuern.
Welche Schnittstelle verwendet der Motor genau? Einfache CAN-Botschaften oder CANopen nach DS301-Profil?
Was sagt das Motor-Manual zu dem Thema?
Hast du eine genaue Typangabe des Motors oder Motorreglers?
Ich verwende einen Nanotec Plug & Drive PD6-N8918 Motor. CANopen.

Zitat:Eine Hardware Anbindung habe ich schon mal über Ethernet erstellt. Treiber für CAN wurden auch schon installiert.
Zitat:Was hat Ethernet mit dem Motor zu tun?
Welche CAN-Treiber hast du installiert? (CAN, CANopen, XNet?)
Ich habe nur die Anbindung zu dem NI PXi-8512 über Ethernet.
Treiber NI-CAN 16.0 (NICAN1610.exe)

Zitat:Wird die Can Frame Bit für Bit aufgebaut?
Zitat:Prinzipiell ja, muss man aber meist nicht selbst machen: dafür gibt es ja Treiber…
Wie fange ich im Programm an? Da habe ich 5 Bausteine.


RE: Kommunikation über CAN -> Schrittmotor - Max_LabVIEW - 23.02.2017 13:55

gibt es Beispiel VIs zu CAN. Konnte bis jetzt nirgendwo was finden


RE: Kommunikation über CAN -> Schrittmotor - GerdW - 23.02.2017 15:27

Hallo Max,

bitte keine alten Threads parallel zu deinem eigenen aufmachen, Doubleposts sind hier nicht so beliebt!

Zitat:gibt es Beispiel VIs zu CAN. Konnte bis jetzt nirgendwo was finden
BeispielVIs zu den LabVIEW-Funktionen findet man im Beispielfinder. Und den wiederum findet man im Hilfe-Menü…

Zitat:Wie fange ich im Programm an? Da habe ich 5 Bausteine.
Wo hast du Bausteine? Sind wir jetzt auf dem Bau???

Von welchen Funktionen/VIs redest du?

Zitat:Nanotec Plug & Drive PD6-N8918 Motor. CANopen.
Dann lies dir das UserManual zum Motor durch und versuche anhand des dort gezeigten zu verstehen, wie der Motor per CANopen kommandiert wird…
Hast du zum Motor ein Parametriertool und eine dazu passende Schnittstelle bekommen? (Ich kenne sowas von Dunkermotor mit kleinen miCAN-Sticks von miControl…)

Bisher hast du nur einen CAN-Treiber installiert, aber noch keinen CANopen-Treiber. Leider ist die Unterstützung für CANopen durch NI seit Jahren sehr gering (meiner Meinung nach), weshalb du hier folgende Optionen in Betracht ziehen musst:
- NI hat spezielle Karten, die direkt für CANopen-Kommunikation gedacht sind und einen speziellen Treiber mitbringen. (Einfach mal mit deinem lokalen NI-Vertreter reden! Ich habe bisher damit noch nicht gearbeitet.)
- Schauen, ob du mit der alten NI-CANopen-Library, die offiziell nur bis LV2010 supportet wird, auf deiner Hardware arbeiten kannst. (Einfach mal deinen NI-Vertreter fragen!). Diese Library ist kostenpflichtig…
- Schauen, ob du die CANopen-Protokolle mit einfachen CAN-Funktionen nachbildest. Das erfordert mehr als Grundverständnis von CAN und CANopen und auch Programmierzeit…
- Schauen, ob dein Motor evtl. so parametriert werden kann, dass er nur mit PDOs läuft. Dann kommst du mit zwei oder 4 einfachen CAN-Messages (und einem Heartbeat) aus…

Viel Spaß beim Lesen! Smile


RE: Kommunikation über CAN -> Schrittmotor - Max_LabVIEW - 03.03.2017 09:47

Zitat: Wo hast du Bausteine? Sind wir jetzt auf dem Bau???
Von welchen Funktionen/VIs redest du?
nachdem ich die Treiber installiert habe finde ich im Blockdiagramm/rechte Maustaste/ Mess I/O/ CAN, zwei Bibliotheken. (channel API und Frame API)

Zitat:Hast du zum Motor ein Parametriertool und eine dazu passende Schnittstelle bekommen? (Ich kenne sowas von Dunkermotor mit kleinen miCAN-Sticks von miControl…)
Ja habe dazu ein Programm mit dem ich den Motor über CAN und RS485 ansteuern kann.

Zitat:Bisher hast du nur einen CAN-Treiber installiert, aber noch keinen CANopen-Treiber. Leider ist die Unterstützung für CANopen durch NI seit Jahren sehr gering (meiner Meinung nach), weshalb du hier folgende Optionen in Betracht ziehen musst:
- NI hat spezielle Karten, die direkt für CANopen-Kommunikation gedacht sind und einen speziellen Treiber mitbringen. (Einfach mal mit deinem lokalen NI-Vertreter reden! Ich habe bisher damit noch nicht gearbeitet.)
Eine NI Karte (Hardware) habe ich.

Zitat:- Schauen, ob du die CANopen-Protokolle mit einfachen CAN-Funktionen nachbildest. Das erfordert mehr als Grundverständnis von CAN und CANopen und auch Programmierzeit…
Wie die CAN Frame aufgebaut ist, ist mir klar. nur verstehe ich anhand der Beispiele von NI nur Bahnhof. Habe nicht wirklich einen durchblick.

Gruß
Max


RE: Kommunikation über CAN -> Schrittmotor - jg - 03.03.2017 11:15

(03.03.2017 09:47 )Max_LabVIEW schrieb:  
Zitat: Wo hast du Bausteine? Sind wir jetzt auf dem Bau???
Von welchen Funktionen/VIs redest du?
nachdem ich die Treiber installiert habe finde ich im Blockdiagramm/rechte Maustaste/ Mess I/O/ CAN, zwei Bibliotheken. (channel API und Frame API)
EDIT:
Erstes Problem: Das ist die falsche API. Die 8512 verwendet als Treiber NI-XNET, nicht NI-CAN. Die VIs hierzu findest du unter Mess I/O -> XNET

(03.03.2017 09:47 )Max_LabVIEW schrieb:  
Zitat:Hast du zum Motor ein Parametriertool und eine dazu passende Schnittstelle bekommen? (Ich kenne sowas von Dunkermotor mit kleinen miCAN-Sticks von miControl…)
Ja habe dazu ein Programm mit dem ich den Motor über CAN und RS485 ansteuern kann.

Zitat:Bisher hast du nur einen CAN-Treiber installiert, aber noch keinen CANopen-Treiber. Leider ist die Unterstützung für CANopen durch NI seit Jahren sehr gering (meiner Meinung nach), weshalb du hier folgende Optionen in Betracht ziehen musst:
- NI hat spezielle Karten, die direkt für CANopen-Kommunikation gedacht sind und einen speziellen Treiber mitbringen. (Einfach mal mit deinem lokalen NI-Vertreter reden! Ich habe bisher damit noch nicht gearbeitet.)
Eine NI Karte (Hardware) habe ich.
Aber keine, die direkt CANopen kann. Wie Gerd schon geschrieben hat, der CANopen Support durch NI ist etwas dünn...

Gruß, Jens


RE: Kommunikation über CAN -> Schrittmotor - GerdW - 03.03.2017 11:32

Hallo Max,

Zitat:Erstes Problem: Das ist die falsche API. Die 8512 verwendet als Treiber NI-XNET, nicht NI-CAN. Die VIs hierzu findest du unter Mess I/O -> XNET
Wenn du den XNET-Treiber installierst, kannst du dort (in den zugehörigen Installationsoptionen) noch den Support für den alten NI-CAN-Treiber aktivieren. Dann kannst du je nach Bedarf sowohl entweder mit XNET als auch mit NI-CAN arbeiten.
Nur die Nummerierung der CAN-Ports unterscheidet sich dann je nach Treiber:
[attachment=57433]
Im Bild sieht man die selbe Karte, einmal für NI-CAN, einmal für XNET…


RE: Kommunikation über CAN -> Schrittmotor - jg - 03.03.2017 11:52

Offtopic2
(03.03.2017 11:32 )GerdW schrieb:  Hallo Max,

Zitat:Erstes Problem: Das ist die falsche API. Die 8512 verwendet als Treiber NI-XNET, nicht NI-CAN. Die VIs hierzu findest du unter Mess I/O -> XNET
Wenn du den XNET-Treiber installierst, kannst du dort (in den zugehörigen Installationsoptionen) noch den Support für den alten NI-CAN-Treiber aktivieren. Dann kannst du je nach Bedarf sowohl entweder mit XNET als auch mit NI-CAN arbeiten.
Nur die Nummerierung der CAN-Ports unterscheidet sich dann je nach Treiber:

Im Bild sieht man die selbe Karte, einmal für NI-CAN, einmal für XNET…
Man lernt doch nie aus, das hat NI schön tief versteckt untern den Produkt-Infos zur 8512...

Gruß, Jens


RE: Kommunikation über CAN -> Schrittmotor - Max_LabVIEW - 03.03.2017 12:21

Wie stelle ich die kommunikation zu dem PXI her?
Treiber sind alle installiert.