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 

Hex-Strings zusammen fassen und an VISA Port weiterleiten!



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!

31.03.2011, 13:18
Beitrag #1

Herr Müller Offline
LVF-Grünschnabel
*


Beiträge: 10
Registriert seit: Mar 2011

2010
2011
DE


Deutschland
Hex-Strings zusammen fassen und an VISA Port weiterleiten!
Hallo liebe LabView Gemeinde!

Bei der Programmierung eines Schrittmotors stehe ich vor folgendem Problem:

Wie man auf dem Bild sehen kann, möchte ich z.B. über eine Sequenz verschiedene Parameter in Form von Hex-Strings an den Visa-Port übergeben. Nun habe ich noch keine Lösung dafür gefunden, die Strings zu einem Signal zusammen zu fassen, denn es sollten die von der Sequenz ausgegebenen Strings DIREKT an den Port weitergeleitet werden und nicht erst gesammelt werden.

Im Klartext:

Hex-String 1( Microstep resolution) an Visa, dann Hex String 2( Maximum acceleration) an Visa usw. des Weiteren sollte der String vom SUB-VI TMCL auch noch direkt auf den Visa Port kommen.

Bin über jeden kleinen Tipp, der mich nur ein kleines Stück weiter bringt dankbar!!!

Habe Lab View 10.0.1


Greetz


Herr Müller


Angehängte Datei(en) Thumbnail(s)
   
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
Anzeige
31.03.2011, 13:29 (Dieser Beitrag wurde zuletzt bearbeitet: 31.03.2011 13:37 von Lucki.)
Beitrag #2

Lucki Offline
Tech.Exp.2.Klasse
LVF-Team

Beiträge: 7.699
Registriert seit: Mar 2006

LV 2016-18 prof.
1995
DE

01108
Deutschland
RE: Hex-Strings zusammen fassen und an VISA Port weiterleiten!
Der Zauberstab ist die Funktion "Strings verknüpfen".
Wichtig ist auch: Soll daraus
a) ein mehrzeiliger String
b) ein einzeiliger Spring mit Abschlußzeichen
c) ein einzeiliger String ohne Abschlußzeichen
werden?
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
31.03.2011, 13:42 (Dieser Beitrag wurde zuletzt bearbeitet: 31.03.2011 13:45 von Herr Müller.)
Beitrag #3

Herr Müller Offline
LVF-Grünschnabel
*


Beiträge: 10
Registriert seit: Mar 2011

2010
2011
DE


Deutschland
RE: Hex-Strings zusammen fassen und an VISA Port weiterleiten!
Das Problem beim Strings verknüpfen ist, dass der Verknüpfer wartet, bis alle Signale angekommen sind und dann einen String weiterleitet.
Der Verknüpfer sollte jeden einzelnen String direkt weiterleiten. Geht das überhaupt?

Es sollen genau die Strings bleiben, die in den Sequenzen stehen. Also einzeilig und ohne Endung.

Gruß
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
31.03.2011, 16:44 (Dieser Beitrag wurde zuletzt bearbeitet: 31.03.2011 16:44 von Lucki.)
Beitrag #4

Lucki Offline
Tech.Exp.2.Klasse
LVF-Team

Beiträge: 7.699
Registriert seit: Mar 2006

LV 2016-18 prof.
1995
DE

01108
Deutschland
RE: Hex-Strings zusammen fassen und an VISA Port weiterleiten!
Der Herr hat 2 Möglichkeiten
a) Die Strings zu einem Gesamtstring zusammenzufassen und den an VISA Write zu schicken. Daß der Verknüpfer wartet, ist doch OK: bevor der String nicht vollständig ist, kannst Du ihn sowieso nicht senden.
b) Visa Write wird 5 Mal hintereiner aufgerufen (man hat 5 Visa-Write-Ikons). Da wird jeder Teilstring, wenn er entsprechend der Reihenfolge der über den Fehlerstring verketteten Ikons dran ist, sofort gesendet. Das ist wahrscheinlich das was dem Herrn vorschwebt - und es spricht nichts dagegen.
Und die überflüssigen Sequenzstrukturen weglassen. Der Datenablauf wird durch die Verkettung über den Fehlerstring gewährleistet.
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
01.04.2011, 07:52
Beitrag #5

Herr Müller Offline
LVF-Grünschnabel
*


Beiträge: 10
Registriert seit: Mar 2011

2010
2011
DE


Deutschland
RE: Hex-Strings zusammen fassen und an VISA Port weiterleiten!
Vielen Dank Lucki!!

Ich werde mein Glück versuchen und Rückmeldung geben.

Grüße
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
04.04.2011, 08:32 (Dieser Beitrag wurde zuletzt bearbeitet: 04.04.2011 08:43 von Herr Müller.)
Beitrag #6

Herr Müller Offline
LVF-Grünschnabel
*


Beiträge: 10
Registriert seit: Mar 2011

2010
2011
DE


Deutschland
RE: Hex-Strings zusammen fassen und an VISA Port weiterleiten!
Servus,

@Lucki, hab versucht das mit dem Fehlereingang zu machen, scheint aber nicht zu gehen, da der Fehlereingang des Visaports ja schon belegt ist, oder habe ich da etwas falsch verstanden?

Habe nun versuch das Ganze über eine Queue laufen zu lassen, was eigentlich auch ganz gut funktioniert, aber eben nur eigentlich. Wie man oben im Bild sieht möchte ich die fünf Parameter (SAP 140, etc.) nacheinander an den Visaport schicken, dazu habe ich eine Lokale Variable erstellt. Wenn ich nun mit der Highlight-Funktion das Programm ablaufen lasse, nimmt die Lokale-Variable auch die Werte der Parameter an, jedoch scheint der Visa Port nicht alle Strings an den Motor weiter zu leiten.

Beim Check des Motors, also welche Parameter ankamen, sind es manchmal drei oder vier oftmals aber auch nur einer.

Wo liegt denn hier der Fehler begraben?

Grüße

EDIT: HABE NUN EINFACH FÜNF WEITERE VISA ICONS EINGEFÜGT!! UND ES FUNKTIONIERT!!

MERCI, HABE DEINEN TIP FALSCH VERSTANDEN LUCKI


Angehängte Datei(en) Thumbnail(s)
   
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
Anzeige
04.04.2011, 08:38 (Dieser Beitrag wurde zuletzt bearbeitet: 04.04.2011 08:43 von GerdW.)
Beitrag #7

GerdW Offline
______________
LVF-Team

Beiträge: 17.469
Registriert seit: May 2009

LV2021
1995
DE_EN

10×××
Deutschland
RE: Hex-Strings zusammen fassen und an VISA Port weiterleiten!
Hallo Herr,

Zitat:Wo liegt denn hier der Fehler begraben?
Vielleicht in der Verquickung von sehr "kreativer" Queuenutzung und einem Unverständnis des Datenflussprinzips in Verbindung mit RaceConditions durch Nutzung lokaler Variablen?

Wieso schreibst du 5 Werte in die Queue, um sie direkt danach wieder auszulesen und in einer lokalen Variable zu überschreiben (RaceCondition!)?
Hast du dir mal die Beispiele zu Queues angeschaut und überlegt, wie die funktionieren? Tu das bitte!

Mal eine bildliche Erläuterung von Queues:
Eine Queue ist wie ein Wasserschlauch. An einer Stelle wird Wasser reingepumpt, an der anderen Stelle wieder rausgelassen. Wasser, das schon gezapft wurde, kann nicht ein zweites Mal gezapft werden! Wenn ich einen Eimer Wasser zapfe, ihn auskippe und neues Wasser in den Eimer lasse, ist das erste Wasser weg (und verschwendet) (= deine RaceCondtion mit den locals!).

Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
04.04.2011, 08:59
Beitrag #8

Herr Müller Offline
LVF-Grünschnabel
*


Beiträge: 10
Registriert seit: Mar 2011

2010
2011
DE


Deutschland
RE: Hex-Strings zusammen fassen und an VISA Port weiterleiten!
Vielen Dank für die anschauliche Beschreibung der Queue, habe mir nun auch die Beispiele dazu angeschaut und dank deiner Beschreibung nun gecheckt! Bin noch ein absoluter Anfänger in LabView und muss wohl deshalb erstmal ein paar Fehler machen um zu verstehen wo es lang geht.

Bitte entschuldigt, wenn der Herr Müller mal wieder einen totalen Quark zusammen bautCool
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
20.04.2011, 10:36
Beitrag #9

Herr Müller Offline
LVF-Grünschnabel
*


Beiträge: 10
Registriert seit: Mar 2011

2010
2011
DE


Deutschland
RE: Hex-Strings zusammen fassen und an VISA Port weiterleiten!
Um den Thread zu vervollständigen hier der Nachtrag zu den verschiedenen Lösungen, welche in meinem Fall super funktionieren:

1. Für jeden String der übergeben werden soll ein neues VISA-Read einfügen.

2. Die Übergabe mittels einer lokalen- (im gleichen VI) oder einer globalen- Variablen (VI übergreifend) realisieren.


Vielen Dank für die schnelle Hilfe!! Top1


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


Möglicherweise verwandte Themen...
Themen Verfasser Antworten Views Letzter Beitrag
  VISA Read und Bytes at Port tanka 9 13.896 28.08.2019 08:10
Letzter Beitrag: Lucki
  VISA Read liest nicht alle Bytes von Bytes at Port numumba 2 7.049 21.01.2014 20:24
Letzter Beitrag: numumba
  VISA: (Hex 0xBFFF0015) bei VISA read und im VISA Test Panel rick 3 14.249 10.11.2013 12:16
Letzter Beitrag: Y-P
  Virtueller com port visa Felidae_TWC 6 7.046 03.04.2012 08:34
Letzter Beitrag: Lucki
  VISA Configure Serial Port Digger80 2 11.773 03.12.2011 18:29
Letzter Beitrag: Digger80
  Zugriff auf Ethernet-Port via TCP oder VISA Funktionen Fidel90 2 7.066 16.06.2011 08:07
Letzter Beitrag: Fidel90

Gehe zu: