LabVIEWForum.de - RS232 / VISA - Alternativer Ansatz für Kommunikation ?

LabVIEWForum.de

Normale Version: RS232 / VISA - Alternativer Ansatz für Kommunikation ?
Du siehst gerade eine vereinfachte Darstellung unserer Inhalte. Normale Ansicht mit richtiger Formatierung.
Seiten: 1 2 3
' schrieb:Problematisch kann es dann doch werden, wenn das Programm ausserplanmässig beendet wird und somit die Quit-Routinen nicht mehr durchlaufen.
Außerplanmäßiges Beenden über das X rechts oben (bzw. ALT-F4?) kann man unterbinden, indem man einstellt "Anwender kann programm nicht beenden" oder indem man einen Event-Case benutzt "Applikation beenden".
' schrieb:Außerplanmäßiges Beenden über das X rechts oben (bzw. ALT-F4?) kann man unterbinden, indem man einstellt "Anwender kann programm nicht beenden" oder indem man einen Event-Case benutzt "Applikation beenden".

hehe, das gleiche ist mir auch gerade eingefallen.

sind damit ausser der Möglichkeit mittels Task-Manager in Windows die Applikation zu beenden,
alle Möglichkeiten abgedeckt, oder übersehe ich noch etwas ?



gruss
fidel
' schrieb:sind damit ausser der Möglichkeit mittels Task-Manager in Windows die Applikation zu beenden, alle Möglichkeiten abgedeckt, oder übersehe ich noch etwas ?
Wenn du den Task-Manager als Möglichkeit zum Beenden siehst, dann gibt es auch die Möglichkeit, dass das Programm abstürzt oder mit einer Runtime-Errormessages stehenbleibt und danach geschlossen wird. Ich glaube mal gelesen zu haben, dass gerade die VISA-Handles beim Programmende automatisch geschlossen werden oder dass es die Möglichkeit gibt, dieses so einzustellen.
Was mit gerade zu der Performance Gesichte noch auffällt.


es macht wohl definitiv Unterschiede (Vorraussetzung: Gebrauch von USB Konverter) ob ich:
--
a) Mein Programm einfach innerhalb LabVIEW ausführe (hier laggt es leicht im Vergleich zu realer RS232)
oder
b) eine EXE daraus mache, die dann DEUTLICH schlechter performt, was die Kommunikation angeht.

Dies ist nun aber wirklich verwunderlich.


Fällt dazu jmd. was ein ?

MfG
fidel
Eine kleine Bemerkung. Im Screenshot habe ich gesehen dass du 10 Stoppbits configurierst. Ist es OK???
Ich hätte dazu mal eine ähnliche Frage: ich habe bisher auch brav in meinem Sub-VI in den Port (RS232-VISA) reingeschrieben, ihn ausgelesen und dann geschlossen. Initialisiert wird die Schnittstelle in einem vorgelagerten Einstellframe. Das "Close VISA" habe ich dann an den Stop-Schalter meines Schleifenframes gekoppelt, d.h. beim Stoppen des VI wird dann auch der Port geschlossen.

Das klappt nur leider nicht ganz - das VI läuft zwar, gibt den Port aber nicht wieder frei. D.h., solange das VI noch offen ist, ist der Port gesperrt. Wenn man es schließt, den Port dann manuell (über ein kleines Portschließ-VI) ebenfalls schließt, dann erst ist der Port wieder frei.

Wie kriege ich das denn hin, daß das Beenden des VI (bzw. des Hauptschleifenframes via eines Stop-Buttons) den Port korrekt schließt?
[offtopic]

' schrieb:Eine kleine Bemerkung. Im Screenshot habe ich gesehen dass du 10 Stoppbits configurierst. Ist es OK???
Wo steht da was von 10 Stoppbits? Tongue

Ich hab auch erst gadacht: 10? Aber hast du den Konvertierungspunkt am VI gesehen? Für was gibt es wohl die Funktion "Konstante erzeugen"? Genauso wie dir und mir wird es ihm nach 10 Tagen ergehen - 10 Stoppbits?

10 ist der Wert für die Einstellung 1.0 Stoppbits (es gibt noch 1,5 und 2 Stoppbits). Genauso Parity: Wieso schreibt man da Null hin - anstelle einer erzeugten Konstante mit "None".

[/offtopic]
' schrieb:[offtopic]

Wo steht da was von 10 Stoppbits? Tongue

Ich hab auch erst gadacht: 10? Aber hast du den Konvertierungspunkt am VI gesehen? Für was gibt es wohl die Funktion "Konstante erzeugen"? Genauso wie dir und mir wird es ihm nach 10 Tagen ergehen - 10 Stoppbits?

10 ist der Wert für die Einstellung 1.0 Stoppbits (es gibt noch 1,5 und 2 Stoppbits). Genauso Parity: Wieso schreibt man da Null hin - anstelle einer erzeugten Konstante mit "None".

[/offtopic]

Ja, sorry, habe nicht dran gedacht.
Ok,

zur Ergänzung:
--
Ich habe nun einen massiven Umbau betrieben, sodass die RS232 nur zu Applikationsbeginn geöffnet wird
bzw.
zu Applikations-Ende geschlossen wird.

War in meinme wirren Programm relativ viel zu ändern, hatte aber dne positiven Nebeneffekt das ich meine VI's mal säubenr konnte.

FOLGE:
--
Die Performance ist bedeutent besser geworden, gerade unter Einsatz von diversen RS232 auf USB Adaptern.





Ich hoffe dieser Hinweis dient dem einen oder anderen anfänger, der über ähnliche Probleme stolpert.




edit:
bzgl den Stopbits: Ich habe das Programm geerbt, und war anfangs auch irritiert.....aber wenn man mal bedenkt dass hier 10 = 1.0 ist, ist doch alles wieder im grünen bereich.



gruss und danke für die flächendeckende Hilfe.
fidel
' schrieb:Ich habe nun einen massiven Umbau betrieben, sodass die RS232 nur zu Applikationsbeginn geöffnet wird
bzw. zu Applikations-Ende geschlossen wird.
Ist das bei Dir auch wirklich der Fall, d.h., wird der Port auch sauber geschlossen? Vielleicht könntest Du das mal testen, indem Du einmal eine compilierte Variante Deines VI startest und beendest (aber das Fenster nicht schließt) und dann mal guckst, ob das "normale" VI auf die Schnittstelle zugreifen kann.
Seiten: 1 2 3
Referenz-URLs