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 

Probleme bei der Messdatenerfassung über eine serielle Schnittestelle



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!

12.04.2011, 22:14
Beitrag #1

dtk Offline
LVF-Neueinsteiger


Beiträge: 9
Registriert seit: Apr 2011

9 und 10
2011
DE


Deutschland
Probleme bei der Messdatenerfassung über eine serielle Schnittestelle
Hallo zusammen,

Ich bin ein relativ frischer LabView Nutzer und versuche Messdaten über eine serielle Schnittstelle auzulesen. Zur Problemstellung: Es sollen bis zu vier bürstenlose DC Motoren von Faulhaber des Typs 2232..BXCSD angesteuert werden. Dabei soll die Drehzahl vorgegeben werden, die Istströme und Istdrehzahlen ausgelesen werden.
Die Ansterung, d.h. die Drehzahlvorgabe, klappt sehr gut, das Auslesen von Iststrom und Istdrehzahl versuche ich mit VISA read and write Befehlen. Allerdings bekomme ich lediglich ein konstantes Signal mit dem Wert Null zurück.
Ich bin mittlerweile ziemlich ratlos, weil ich das Problem, das nur Nullwerte zurückgegeben werden, nicht verstehe. Meine Vermutungen sind, dass es entweder ein Problem der Taktung oder der Messdatenspeicherung ist.
Ich habe meine bisherige Lösung als VI angehängt und hoffe, dass sich vielleicht jemand die Mühe macht und mal drüberschaut. Für jeden Tipp, der hilft das VI zu verbessern und das Problem mit dem Auslesen der Daten zu lösen, bin ich sehr dankbar. Falls irgendwelche Informationen fehlen sollten, reiche ich die gerne nach.

Mit freundlichen Grüßen,

dtk
2009 .vi  Motorsteuerung.vi (Größe: 97,9 KB / Downloads: 272)
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
Anzeige
12.04.2011, 22:42 (Dieser Beitrag wurde zuletzt bearbeitet: 12.04.2011 23:01 von jg.)
Beitrag #2

jg Offline
CLA & CLED
LVF-Team

Beiträge: 15.864
Registriert seit: Jun 2005

20xx / 8.x
1999
EN

Franken...
Deutschland
RE: Probleme bei der Messdatenerfassung über eine serielle Schnittestelle
Problem dürfte eher sein, dass du deine RS232 falsch konfiguriert hast.

Die steht auf "Termination Char" enabled, das Trennzeichen ist ebenfalls auf Standardwert=Linefeed. Das bedeutet, dass dein VISA-Read auf ein Linefeed als Ende einer Nachricht wartet.

Jetzt eine Vermutung: Deine Befehle, die du sendest, beendest du mit einem "Carriage Return". Ist möglicherweise das Trennzeichen für den Empfang von Nachrichten auch ein "Carriage Return"? Das kannst aber nur du nach Blick ins Handbuch beantworten.

Weiteres Problem: Zu dem Fall "Visa Read" kommst du bei deinem Programm wahrscheinlich NIE, denn:
Direkt nach Absetzen einer Abfrage schaust du nach, wie viele Bytes im Empfangbuffer sind. So schnell ist keine RS232, dass da direkt danach der Zähler schon größer Null ist. Aber vielleicht brauchst du das gar nicht, denn wenn meine Vermutung mit CR als Trennzeichen zutrifft, dann kannst du dir die "Bytes at Port" Abfrage sparen.

Gruß, Jens

EDIT: Nachtrag: Ich habe inzwischen das Protokoll gefunden. Das Linefeed als Abschlusszeichen für den Empfang von Nachrichten kannst du doch verwenden. Trotzdem oder gerade deshalb solltest du auf die "Bytes at Port"-Abfrage verzichten. VISA-Read erledigt für dich das Warten, bis die Antwort vollständig empfangen wurde.

Wer die erhabene Weisheit der Mathematik tadelt, nährt sich von Verwirrung. (Leonardo da Vinci)

!! BITTE !! stellt mir keine Fragen über PM, dafür ist das Forum da - andere haben vielleicht auch Interesse an der Antwort!

Einführende Links zu LabVIEW, s. GerdWs Signatur.
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
12.04.2011, 23:12
Beitrag #3

dtk Offline
LVF-Neueinsteiger


Beiträge: 9
Registriert seit: Apr 2011

9 und 10
2011
DE


Deutschland
RE: Probleme bei der Messdatenerfassung über eine serielle Schnittestelle
Hallo Jens,

Vielen Dank für Deine ultraschnelle Antwort. An Probleme bei der Konfiguration hatte ich nicht gedacht und anscheinend auch nicht sorgfältig durchdacht. Werde ich morgen früh sofort überprüfen und Dir dann natürlich Feedback geben.

Viele Grüße,

dtk
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
13.04.2011, 15:18
Beitrag #4

dtk Offline
LVF-Neueinsteiger


Beiträge: 9
Registriert seit: Apr 2011

9 und 10
2011
DE


Deutschland
RE: Probleme bei der Messdatenerfassung über eine serielle Schnittestelle
Hallo zusammen,

ich habe den Vorschlag von Jens ausprobiert. Die Konfiguration habe ich nicht verändert, da es anscheinend so funktioniert. Die Bytes-at-port anfrage habe ich nun weggelassen. Stattdessen habe ich der Read funktion eine feste Bytezahl vorgegeben. Diese Bytezahl habe ich ermittelt, indem ich mir diese bei der Write Funktion anzeigen habe lassen. Zudem habe ich noch Visa-Clear Funktionen eingebaut.
Nun habe ich es einmal (!) geschafft Daten von 2 Motoren auszulesen. Als ich versuchte drei Motoren gleichzeitig anzusteuern ist mir der PC abgestürtzt. Seitdem bekomme ich nach einer gewissen Zeit immer einen Bluescreen und der Rechner startet neu, auch wenn ich lediglich 2 Motoren ansteuern möchte. Insgesamt würde ich gerne 4 Motoren parallel ansteuern.
Kann mir jemand erklären, an was dies liegen könnte und was man dagegen unternehmen muss? Ich habe das gegenwärtig benutzte VI angehängt und hoffe das sich jemand daran wagt Wink.

Gruß,

dtk
2009 .vi  3Motorensteuerung.vi (Größe: 139,58 KB / Downloads: 223)
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
13.04.2011, 18:40
Beitrag #5

GerdW Offline
______________
LVF-Team

Beiträge: 17.387
Registriert seit: May 2009

LV2021
1995
DE_EN

10×××
Deutschland
RE: Probleme bei der Messdatenerfassung über eine serielle Schnittestelle
Hallo dtk,

als erstes solltest du mal die Anzahl der lokalen Variablen auf ein Minimum reduzieren.
- Was soll es bringen, wenn du einen Wert gleichzeitig ins Terminal und in eine lokale Variable desselben Indicators schreibst? Reicht einmal schreiben nicht aus - oder willst du auf Nummer Sicher gehen?
- Wozu liest du Werte aus Controls aus und schreibst sie umgehend wieder in lokale Variablen der Controls? Um sicherzugehen, das sich der Wert nicht zufällig ändert?
- Warum haben diverse Controls/Indicators den selben Namen? Lernt man sowas bei text-basierter Programmierung?

Dann bitte alle mehrfach genutzten Konstrukte (diverse Cases etc.) in subVIs auslagern und damit dein HauptVI übersichtlicher gestalten. Dein BD umfasst momentan ca. 8 Screens meines Laptops - definitiv zu groß zum Fehlersuchen![/align]

Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
14.04.2011, 21:40
Beitrag #6

jg Offline
CLA & CLED
LVF-Team

Beiträge: 15.864
Registriert seit: Jun 2005

20xx / 8.x
1999
EN

Franken...
Deutschland
RE: Probleme bei der Messdatenerfassung über eine serielle Schnittestelle
Ich habe mir mal die Mühe gemacht, (fast) alle lokalen Variablen rauszuschmeissen, ebenso die meisten Sequenzen und das Ganze auf Arrays und For-Schleifen umzubauen:

2009 .vi  3Motorensteuerung.vi (Größe: 90,59 KB / Downloads: 271)


Netter Nebeneffekt: Viel kleineres BD.

Gruß, Jens

P.S.: Die ganzen VISA-Clear und VISA-Flush sind ziemlich sicher ebenfalls überflüssig.

Wer die erhabene Weisheit der Mathematik tadelt, nährt sich von Verwirrung. (Leonardo da Vinci)

!! BITTE !! stellt mir keine Fragen über PM, dafür ist das Forum da - andere haben vielleicht auch Interesse an der Antwort!

Einführende Links zu LabVIEW, s. GerdWs Signatur.
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
27.04.2011, 21:19
Beitrag #7

dtk Offline
LVF-Neueinsteiger


Beiträge: 9
Registriert seit: Apr 2011

9 und 10
2011
DE


Deutschland
RE: Probleme bei der Messdatenerfassung über eine serielle Schnittestelle
Hallo zusammen,

Ich wollte nur kurze Rückmeldung geben, dass nun alles ordnungsgemäß funktioniert. Für die erhaltenen Anregungen, konstruktiven Kritiken und erhaltene Hilfe möchte ich mich ganz herzlich bedanken!

Viele Grüße,

dtk
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
  Keithley2000 Messdatenerfassung Keithley2000 107 45.198 01.10.2020 15:55
Letzter Beitrag: GerdW
  Probleme bei Kommunikation mit Beschleunigungsmodul über AMBER 8350 Funkmodule BollerJan 24 12.122 10.03.2014 18:16
Letzter Beitrag: jg
  Anbindung eine serielle Übertragung boujad 10 10.259 20.08.2012 07:51
Letzter Beitrag: GerdW
  Über serielle Schnittstelle TTL Telegramm auslesen sommerdecke 5 9.021 28.02.2012 09:00
Letzter Beitrag: GerdW
  Visa schreiben über serielle und GPIB Schnittstelle Matthias22 14 12.211 22.11.2010 20:06
Letzter Beitrag: jg
  Kommunikation über eine RS232-Schnittstelle greglemond 3 5.398 11.06.2010 07:22
Letzter Beitrag: Lucki

Gehe zu: