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 

Motorsteuerung (VCP) Erfassung Geschwindigkeit und Position



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!

10.06.2021, 14:51
Beitrag #1

JanM Offline
LVF-Neueinsteiger


Beiträge: 1
Registriert seit: Jun 2021

15,17
-
DE



Motorsteuerung (VCP) Erfassung Geschwindigkeit und Position
Hallo!

Ich bin echt noch ein Neuling in LabView und probiere mich an einer Motorsteuerung über ein DS301 CanOpen-Standard.
Ich nutze momentan einen PD6-C8..E09 der Firma NanoTec. Angeschlossen ist er per USB und als VirtualComport konfiguriert. Soweit so gut funktioniert die Steuerung der Weges. Also ich kann einen bestimmten Weg fahren mit einer vergebenen Geschwindigkeit, die der interne Controller selber beschleunigt / abbremst.
Nun möchte ich per Read.Vi von NanoTec und OpenCan die Daten auslesen, leider klappt das nicht so wie gewollt.

Vielleicht habt Ihr ja eine Hilfestellung für mich!

Grüße
Jan


Angehängte Datei(en)
17.0 .vi  MotorSteuerung.vi (Größe: 12,72 KB / Downloads: 170)

0.0 .rar  Read,write, Position.rar (Größe: 41,03 KB / Downloads: 144)

17.0 .vi  stop_motor.vi (Größe: 12,36 KB / Downloads: 147)

17.0 .vi  shear_displacement.vi (Größe: 22,26 KB / Downloads: 152)
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
15.06.2021, 06:27
Beitrag #2

MScz Offline
LVF-Gelegenheitsschreiber
**


Beiträge: 75
Registriert seit: May 2020

2019,2020
2014
DE_EN



RE: Motorsteuerung (VCP) Erfassung Geschwindigkeit und Position
Hallo Jan,

6064.00 ist eine Int32 Zahl und damit 4 Byte lang, du fragst/ließt aber nur 1 Byte. Da dürftest du eig. direkt nen Fehler erhalten.

Kurz zu deinem VI: Es ist besser die Zugriffe auf die Serielle-Schnittstelle hinter einander (serielle) auszuführen, mit deinem aktuellen Aufbau wird aber gleichzeitig (parallel) darauf zu gegeriffen wird. Schau dir dazu einfach mal Beispiele von Messgerätetreibern oder den DAQmx Sachen an, da siehst du den richtigen Umgang mit HW. Allgemein solltest du dir auch nochmal die Grundlagen anschauen, Datenfluss sollte nicht von Links nach Rechts laufen.

Gruß Max
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
15.06.2021, 07:48 (Dieser Beitrag wurde zuletzt bearbeitet: 15.06.2021 07:51 von GerdW.)
Beitrag #3

GerdW Offline
______________
LVF-Team

Beiträge: 17.465
Registriert seit: May 2009

LV2021
1995
DE_EN

10×××
Deutschland
RE: Motorsteuerung (VCP) Erfassung Geschwindigkeit und Position
Hallo Jan,

neben den Tipps von Max:
- Es ist extrem störend, wenn simple VIs ihr Frontpanel und Blockdiagramm bildschirmfüllend öffnen - obwohl kaum etwas zu sehen ist. Bitte vernünftige Fenstergrößen verwenden.
- Dein MainVI ruft 3 subVIs auf, die alle das exakt gleiche Icon haben. Wie soll man sich da zurechtfinden? Bitte auch hübsche Icons erstellen…
- Dein Read-VI öffnet und schließt den COM-Port bei jedem Aufruf. Ist das nötig oder überhaupt sinnvoll? Was sagen die anderen subVIs dazu, wenn der verwendete COM-Port geschlossen wird? Dein ShearDisplacement-VI macht das auch: sowas ist nicht sinnvoll!
- Der Cluster für das Write.vi sollte unbedingt typdefiniert werden! Dann könntest du auch mit (Un)BundleByName arbeiten: viel besser selbst-dokumentierend!
- String-Konstanten, die nicht den Standard-Anzeigemodus verwenden, sollten immer den Anzeigemodus sichtbar haben! (Dies gilt auch für numerische Konstanten/Controls/Indicators.)
- Ich weiß ja nicht, wer diese Read/Write-VIs erstellt hat, aber Index/Subindex bei einem CANopen-SDO sollten numerische Werte anstatt Strings sein…
- Es gibt auch eine ReverseString-Funktion, da muss man einen String nicht erst in ein U8-Array umwandeln (und zurück), um ihn umzudrehen…
- Im ShearDisplacement-VI solltest du statt dieser riesigen Sequenz eine FOR-Loop verwenden, die ein Array of Clusters abarbeitet…

Zu deiner Message allgemein:
- Wenn du schon ein Archiv mit VIs anhängst, dann pack doch bitte ALLE VIs in dieses Archiv. Warum müssen wir 4 Downloads (für 7 VIs) durchführen, wenn auch ein Download ausreichen würde?
- Und bitte immer ZIP verwenden, damit kann jeder (halbwegs) moderne Rechner von Haus aus umgehen. RAR ist proprietäre Software, gern auch kostenpflichtig!

P.S.: Trotz allem herzlich willkommen im LabVIEW-Forum! Big Grin

Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
Antwort schreiben 


Möglicherweise verwandte Themen...
Themen Verfasser Antworten Views Letzter Beitrag
  SMCI 33 -1 Motorsteuerung Jugien83 4 3.750 26.08.2019 10:53
Letzter Beitrag: Jugien83
  Motorsteuerung Nanotec mittels VCP HansHenning 12 11.250 18.05.2018 16:50
Letzter Beitrag: GerdW
  RPM Messung über Drehgeber Position RobinDR 3 3.791 19.11.2016 16:13
Letzter Beitrag: GerdW
  Polling von Curser-Position in Waveform Graph vermeiden UFPhC 11 8.908 16.10.2014 12:00
Letzter Beitrag: Trinitatis
  Signalerzeugung/Erfassung el_barto 9 5.861 03.07.2014 10:05
Letzter Beitrag: jg
  Kontinuierliches Positionssignal zu Geschwindigkeit naja_ich_halt 2 3.966 07.05.2014 12:00
Letzter Beitrag: naja_ich_halt

Gehe zu: