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 

Array in seiner Größe begrenzen



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!

19.08.2013, 19:22 (Dieser Beitrag wurde zuletzt bearbeitet: 19.08.2013 19:23 von Hasenfuss.)
Beitrag #1

Hasenfuss Offline
LVF-Stammgast
***


Beiträge: 331
Registriert seit: Dec 2012

2012
2012
DE



Array in seiner Größe begrenzen
Guten Abend!

Beim Signalverlaufsdiagramm besteht die Möglichkeit, durch Festlegen einer Historienlänge die Größe des "Arrays" in dem Diagramm zu begrenzen. Neue Werte werden im Array hinten angefügt und die vorigen einfach vorne abgeschnitten.

Bei den anderen Diagrammtypen geht das nicht, je mehr Werte ich an die Anzeige übergebe, um so größer wird das Array mit den Datenwerten. Also muss ich das Array auf eine maximale Größe begrenzen.

Mein bisheriger Ansatz geht dahin, dass ich Vergleiche durchführe, darin sind:

max: Maximalgröße Array
ist: Anzahl aktueller Werte im Array
neu: Anzahl neuer Werte, die hinzukommen
leereArray(Anzahl): Die Elemente im Array werden von Null bis Anzahl im Array von vorn abgeschnitten

Im Pseudocode:

if neu <= max
if (max-ist) > neu
leereArray(neu-ist)
else
nichts
endif
else
leereArray(max)
kürze neu auf max-Länge
endif

Die drei Bilder von meinem LabVIEW-Programm zeigen das, wie ich es umgesetzt habe. Es scheint auch so soweit zu funktionieren, denn ich kann die Daten mir so in einem Signalverlauf anzeigen lassen (tut mir leid, dass ich nur die Bildausschnitte zusenden kann, aber dafür hab ich versucht, im Pseudocode kurz zu erklären, was ich dort konstruiert hab).

Meine Frage - gibt es vielleicht eine simplere Lösung für mein Problem? Ich habe dann noch versucht herauszufinden, wie man einen FiFo in LabVIEW realisieren kann, bis mir dann aber bewusst wurde, dass ich ja keinen FiFo brauche, sondern das Array in seiner größe begrenzen muss, denn bei jedem Aktualisierungsvorgang für die Anzeige wird ja das ganze Array neu geschrieben (da ich nicht mehr den Signalverlaufsgraph mit der Historienlänge verwende). Somit ist ein FiFo (der sich einfach mit einer Queue realisieren ließe) für meinen Anwendungsfall nicht zu gebrauchen.

Falls mir von Euch jemand einen Tipp hat, nach welchen anderen Stichworten ich suchen könnte, würde ich mich sehr freuen.


Angehängte Datei(en) Thumbnail(s)
           
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
30
Antwort schreiben 


Nachrichten in diesem Thema
Array in seiner Größe begrenzen - Hasenfuss - 19.08.2013 19:22

Möglicherweise verwandte Themen...
Themen Verfasser Antworten Views Letzter Beitrag
Question Große Zahlen in ein boolesches Array Konvertieren Baron 5 5.278 25.09.2018 10:36
Letzter Beitrag: Baron
  Numerisches Bedienelement maximale Signalsteigung begrenzen antwort 2 4.636 06.03.2017 13:46
Letzter Beitrag: antwort
  Signalverlaufslänge begrenzen Hasenfuss 4 4.480 26.04.2016 13:40
Letzter Beitrag: Lucki
  Einfachen Funktionsgenerator.vi generiertes Ausgangssignal begrenzen Moes 7 7.952 18.09.2015 11:38
Letzter Beitrag: Moes
  Arry statischer Größe mit Elementen dynamischer Größe Si0815 2 4.231 08.03.2015 18:09
Letzter Beitrag: Si0815
  Werte und Größe eines 2D-Array´s ändern xrzr 7 11.204 06.07.2014 18:09
Letzter Beitrag: GerdW

Gehe zu: