LabVIEWForum.de
Tabellen in LV - Druckversion

+- LabVIEWForum.de (https://www.labviewforum.de)
+-- Forum: LabVIEW (/Forum-LabVIEW)
+--- Forum: LabVIEW Allgemein (/Forum-LabVIEW-Allgemein)
+--- Thema: Tabellen in LV (/Thread-Tabellen-in-LV)



Tabellen in LV - q3stanky - 26.05.2007 01:41

Hallo, ich habe ein eigentlich recht simples problem und da ich erst seit einem tag mit LabVIEW hantiere habe ich keine ahnung. tuorials und foren habe ich schon durchgesucht, aber noch nix passendes gefunden.

folgendes problem. ich sende mit nem mikrocontroller sekündlich daten an die rs232 schnittstelle. diese lese ich mit LabVIEW ein und das ergibt den zb den folgenden string.

2 5 1234

ich habe den string bereits in einzelne zahlen unterteilt

2 , 5, 1234

jetzt kommt das eigentliche problem

ich möchte diese zahl 1234 in eine tabelle in spalte 2 in zeile 5 schreiben. eigentlich hatte ich ein vi erwartet, welches Tabelle heist und als eingang den string bzw. eine beliebige größe hat und zwei weitere eingänge für spalte und zeile wo der string reingeschrieben werden soll...


gibt es sowas doch irgendwo bzw kann mir jemand sagen wie ich das selbst zusammenbaue..


vielen dank


Tabellen in LV - Lucki - 26.05.2007 07:06

In den Foren und Tutorials wirst Du deshalb nichts finden, weil das was Du suchst zur Grundausstattung von LV gehört. Da brauchst Du nichts zusammenbauen.

Die Funktion heißt "Teilarray ersetzen"

Hier ein Bild wie es funktioniert. Natürlich mußt Du die Stringelemente für die weitere Verarbeitung gegebenenfalls noch in echte Zahlen konvertieren.

Für String-Arrays gibt es auch das Element "Tabelle", welches ich hier verwendet habe. Aber möglicherweise erst ab Version 7. Das wäre aber für Dich nicht wichtig, der Vorteil der Tabelle gegenüber einem normalen zweidimensionalen String-Array ist nur, dass man zusätzliche Möglichkeiten für manuelles Editieren hat.


[attachment=6856]


Tabellen in LV - q3stanky - 26.05.2007 11:40

danke super sowei..hab das ganz gut hinbekommen, hab aber jetzt das problem, dass zwar der übertragene wert an richtiger stelle in der tabelle steht aber wenn der nächste wert kommt ( der auch an richtiger stelle steht) wird der vorherige wieder aus der tabelle entfernt und mit der anfangsbedingung überschrieben..bsp

ich erstelle eine tabelle, in der alle felder mit 33 gefüllt sind (dargestellt ist immer nur die erste zeile)

1. messwert in tabelle-> 1234;33;33;33
2. messwert in tabelle-> 33;1234;33;33
3. messwert in tabelle-> 33;33;1234;33

eigentlich sollte es aber so aussehen

1. messwert in tabelle-> 1234;33;33;33
2. messwert in tabelle-> 1234;1234;33;33
3. messwert in tabelle-> 1234;1234;1234;33

gibts irgendwie ne bedingung die ich einstelle, damit der messwert an ort und stelle stehenbleibt?


Tabellen in LV - Achim - 26.05.2007 12:18

Hi,

wie du schon richtig sagst, überschreibst du den Inhalt der Tabelle. Wenn du willst, dass ein Wert irgendwo "stehen bleibt", musst du diesen beim Überschreibvorgang halt wieder an diese Stelle schreiben. Ne Funktion "erhalte ursprüngliche Werte und füge nur die neuen dazu" gibts nicht...eigentlich wird diese Funktion durch "Teilarray ersetzen" ausgeführt...schau dir doch mal genau an, wie das Array in dem du was ersetzen willst beim jeweiligen Durchlauf aussieht!

Du musst das schon mal beschriebene Array vorm nächsten Schreiben zuerst auslesen (z.B. über ne lokale Variable oder duch das Durchschleifen über ein Schieberegister)...dann ersetzen...dann neu schreiben...und von vorne...

Gruss
Achim

[attachment=6857]


Tabellen in LV - Lucki - 27.05.2007 09:48

Achim hat ja schon geantwortet, hier nur noch eine alternative Variante:
[attachment=6867]