23.01.2013, 12:55
Beitrag #1
|
blubblub
LVF-Grünschnabel
Beiträge: 26
Registriert seit: Nov 2012
2010
-
kA
|
Synchrone Anzeige
Ich habe in meinem VI einige Diagramme und Bedien- sowie Anzeigeelemente.
Eins der Anzeigeelemente ist eine Lampe, die beim Auftreten bestimmter Störungen, die ich definiert habe, aufleuchten soll.
In der NI Dokumentation steht zur Option Synchrone Anzeige:
"Aktiviert bei TRUE die synchrone Anzeige, das heißt Sie sehen jede Aktualisierung eines Werts in einem Bedien- oder Anzeigeelement."
Was heißt Aktualsierung genau? Angenommen die Lampe ist in einer Schleife und wird vier mal hintereinander den Wert false erhalten und beim fünften mal den Wert true. Ist nur der Sprung von true auf false eine Aktualsierung oder ist der Sprung von false auf false ebenfalls eine Aktualisierung nur ebend
mit demselben Wert?
Bei der Synchronen Anzeige leuchtet das Lämpchen nämlich deutlich häufiger bei mir auf, als bei einer asynchronen Anzeigen.
Mit deutlich meine ich, dass das Lämpchen fast im Sekunden Takt aufleuchtet, während in der asynchronen vielleicht einmal in 20 Sekunden.
Die Störung wird hervorgerufen wenn meine Schleife eine bestimmte Zeit für die Berechnung einiger Operationen überschritten hat.
Kann es sein, dass die Synchrone Anzeige also den Sprung von false auf false ebenfalls als Aktualsierung ansieht und aus diesem Grund ein
neu Zeichnen der Bedienoberfläche veranlasst, was wiederum meine Schleifenausführung verzögert und damit mein Lämpchen auflackern lässt?
|
|
|
23.01.2013, 13:11
Beitrag #2
|
Y-P
☻ᴥᴥᴥ☻ᴥᴥᴥ☻
Beiträge: 12.612
Registriert seit: Feb 2006
Developer Suite Core -> LabVIEW 2015 Prof.
2006
EN
71083
Deutschland
|
RE: Synchrone Anzeige
Lad' mal Dein Bsp. hoch. An der Anzeige habe ich noch nie irgendwas verstellt. Was willst Du damit bezwecken?
Gruß Markus
--------------------------------------------------------------------------
Bitte stellt mir keine Fragen über PM, dafür ist das Forum da - andere haben vielleicht auch Interesse an der Antwort !!
--------------------------------------------------------------------------
|
|
|
23.01.2013, 13:16
Beitrag #3
|
GerdW
______________
Beiträge: 17.469
Registriert seit: May 2009
LV2021
1995
DE_EN
10×××
Deutschland
|
RE: Synchrone Anzeige
Hallo blubblub,
Zitat:Was heißt Aktualsierung genau? Angenommen die Lampe ist in einer Schleife und wird vier mal hintereinander den Wert false erhalten und beim fünften mal den Wert true. Ist nur der Sprung von true auf false eine Aktualsierung oder ist der Sprung von false auf false ebenfalls eine Aktualisierung nur ebend mit demselben Wert?
Aktualisierung bedeutet: Wert in den Indicator schreiben.
Zitat:Bei der Synchronen Anzeige leuchtet das Lämpchen nämlich deutlich häufiger bei mir auf, als bei einer asynchronen Anzeigen.
Mit deutlich meine ich, dass das Lämpchen fast im Sekunden Takt aufleuchtet, während in der asynchronen vielleicht einmal in 20 Sekunden.
Dies hängt mehr davon ab, wie schnell hintereinander du in den Indicator schreibst...
Asynchrone Anzeige bedeutet: du schreibst Werte in Anzeigen und LabVIEW puffert diese Schreibvorgänge intern. Die Anzeige wird irgendwann erneuert, wenn gerade CPU-Zeit vorhanden ist oder andere Prozesse dies erzwingen.
Synchrone Anzeige heißt: Jedesmal, wenn ein Wert in eine Anzeige geschrieben wird, wird auch das Frontpanel erneuert. Dies führt bei häufigen Schreibvorgängen zu deutlich langsamer ablaufenden VIs, da viel Zeit mit dem Zeichnen des FP verbraten wird...
|
|
|
23.01.2013, 13:27
(Dieser Beitrag wurde zuletzt bearbeitet: 23.01.2013 13:27 von jg.)
Beitrag #4
|
jg
CLA & CLED
Beiträge: 15.864
Registriert seit: Jun 2005
20xx / 8.x
1999
EN
Franken...
Deutschland
|
RE: Synchrone Anzeige
Ich hoffe, du willst das nicht für deine Charts verwenden.
Gruß, Jens
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.
|
|
|
23.01.2013, 13:28
(Dieser Beitrag wurde zuletzt bearbeitet: 23.01.2013 13:29 von Lucki.)
Beitrag #5
|
Lucki
Tech.Exp.2.Klasse
Beiträge: 7.699
Registriert seit: Mar 2006
LV 2016-18 prof.
1995
DE
01108
Deutschland
|
RE: Synchrone Anzeige
Kannst ja mal einen kleinen Test machen: In einer ungebremsten For-Schleife eine LED 1 Million mal an und ausschalten. Asynchron dauert das nur einen Augenblick, synchron wirst Du es vielleicht gar nlcht mehr erleben, bis das Programm beendet ist.
|
|
|
23.01.2013, 13:30
(Dieser Beitrag wurde zuletzt bearbeitet: 23.01.2013 13:31 von GerdW.)
Beitrag #6
|
GerdW
______________
Beiträge: 17.469
Registriert seit: May 2009
LV2021
1995
DE_EN
10×××
Deutschland
|
RE: Synchrone Anzeige
Hallo blubblub,
Nachtrag: wenn du schon die LV-Hilfe anführst, dann solltest du diese aber auch "besser" lesen, in dem du mal den Links folgst: hier!
Es steht alles in der Hilfe !
|
|
|
23.01.2013, 13:32
Beitrag #7
|
blubblub
LVF-Grünschnabel
Beiträge: 26
Registriert seit: Nov 2012
2010
-
kA
|
RE: Synchrone Anzeige
(Synchrone Anzeige)
Das heißt wenn ich in einer Schleife vier mal den Wert False in das Boolsche Anzeigeelement (Lämpchen) schreibe,
wird das Frontpanel vier mal hintereinander akutalisiert und zwar sofort nachdem ein False Wert angekommen ist.
(Asynchrone Anzeige)
Der Wert False wird nicht jedes mal sofort aktualisiert, sondern erst gepuffert.
Nach irgendeiner bestimmten Zeitspanne wird das Anzeigeelemte in unregelmäßigen Abständen aber auch viermal
aktualisiert.
Erkennt Labview nicht, dass der Wert viermal False ist und damit eigentlich ein einmaliges Zeichnen ausreichnen würde,
bei der Asynchronen Anzeige?
Ich hätte es intelligenter gefunden, wenn bei der synchronen und asynchronen Anzeige das Frontpanel nur dann neu gezeichnet wird,
wenn der neue und der alte Wert des Anzeigeelementes voneinander abweichen.
Mit dem was ich grad geschrieben habe, habe ich das in etwa richtig wiedergegeben, was du mir grad gesagt hast, oder
hab ich da was missverstanden?
|
|
|
23.01.2013, 13:36
(Dieser Beitrag wurde zuletzt bearbeitet: 23.01.2013 13:39 von GerdW.)
Beitrag #8
|
GerdW
______________
Beiträge: 17.469
Registriert seit: May 2009
LV2021
1995
DE_EN
10×××
Deutschland
|
RE: Synchrone Anzeige
Hallo blubblub,
bei der asynchronen Anzeige wird nur einmal aktualisiert, egal wie oft du zwischendrin Werte in die Anzeigen geschrieben hast - es wird der gerade aktuelle Zustand gezeichnet!
Zitat:Ich hätte es intelligenter gefunden, wenn bei der synchronen und asynchronen Anzeige das Frontpanel nur dann neu gezeichnet wird, wenn der neue und der alte Wert des Anzeigeelementes voneinander abweichen.
Was du "findest" ist irrelevant
- Die "synchrone Anzeige" erzwingt ein Neuzeichnen des FP, wenn ein Wert (egal welcher) geschrieben wird. Der Programmierer hat dies ja explizit eingestellt...
- Die "asynchrone Anzeige" zeichnet in unregelmäßigen Abständen das FP neu, unabhängig davon ob nur ein FP-Element sich ändert oder viele...
|
|
|
23.01.2013, 13:42
(Dieser Beitrag wurde zuletzt bearbeitet: 23.01.2013 13:48 von Lucki.)
Beitrag #9
|
Lucki
Tech.Exp.2.Klasse
Beiträge: 7.699
Registriert seit: Mar 2006
LV 2016-18 prof.
1995
DE
01108
Deutschland
|
RE: Synchrone Anzeige
Beim Signalverlaufsdiagramm ist es auf alle Fälle so, das bei asynchroner Anzeige (default), wenn dann mal ein Zeitschlitz dafür bereitgestellt ist, nicht ein Wert aktualisiert wird, sondern alle Werte auf einmal die neu im Puffer sind.
Bei einer LED gehe ich davon aus, dass bei eine fälligen Aktualisierung nur der neueste Wert in die Graphik kommt. Wäre es anders, dann wäre die asynchrone Anzeige weitgehend sinnlos, da sonst bei einem kontinuierlich laufendem Programm letztlich keinerlei Zeit gespart würde, es also nicht schneller laufen könnte als asynchron.
Das hat keinerlei prinzipielle Nachteile: Denn Leute, die das so nicht mögen, können ja jederzeit auf den Modus "synchron" schalten.
|
|
|
23.01.2013, 19:11
|
blubblub
LVF-Grünschnabel
Beiträge: 26
Registriert seit: Nov 2012
2010
-
kA
|
RE: Synchrone Anzeige
Okay, danke für die Hinweise
|
|
|
| |