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!
12.04.2007, 13:09 (Dieser Beitrag wurde zuletzt bearbeitet: 12.04.2007 13:10 von maze.)
ich glaube ja eigentlich mitlerweile mit LabVIEW ganz gut zurechtzukommen, aber beim speichern verlässt es mich immer wieder.
ich habe folgendes problem: (siehe anhang)
hier geht es darum, daten aus der steuereinheit von automobilen auszulesen. man sendet der hardware für jedes PID, welches man messen möchte einen String befehl, welches die gewünschte antwort hervorruft.
mein wunsch is es jetzt alle ausgewählten pids in tabellenform oder anders, falls besser, zu speichern. dies zu realisieren fehlt mir allerdings bis jetzt die zündende idee.
würde mich über anregungen oder vorschläge wie immer freuen.
gruß maze
Anzeige
12.04.2007, 13:17 (Dieser Beitrag wurde zuletzt bearbeitet: 12.04.2007 13:19 von Achim.)
1. deine PID's sind ja in nem Array angeordnet (2. Spalte der Listbox). Das kannst du mit "Array to Spreadsheet-String" + "Write Spreadsheet" abspeichern
2. mach doch mal aus dem gesamten Inhalt im jeweiligen Case deines VIs ein SubVI und mach die jeweilige Numric-Ausgabe bzw. die Adress-Konstante als Indicator bzw. Control dieses SubVIs...dann musst du bei Änderungen nur 1x was machen und nicht in jedem Case...außerdem schrumpft dein VI. Also nur 1x das SubVI erstellen und dann in den anderen Cases einfach den Code rausschmeißen und mit dem SubVI ersetzen...und natürlich dann die Adresse anschließen und die jeweilige Ausgabe!
3. Warum nimmst du als innere Schleife eine While-Schleife? Nimm doch ne FOR, das Auto-Indexing hast du ja auch hier...und du musst keine Abbruchbedingung definieren...
Gruss
Achim
"Is there some mightier sage, of whom we have yet to learn?"
"Opportunity is missed by most people because it is dressed in overalls and looks like work." (Thomas Edison)
12.04.2007, 13:32 (Dieser Beitrag wurde zuletzt bearbeitet: 12.04.2007 13:35 von maze.)
ich bin mir nicht sicher, ob ich dich richtig verstehe.
zu 1)
die pids sind in einem array, das ist richtig. sie sollen aber nur die überschrift für die spalten sein, und zwar nur die markierten.
des weiteren sollen die dazgehörigen werte gespeichert werd, die werte stehen in den numeric indicatoren. auch hier nur die, die in der listbox markiert wurden.
2)
das mit dem subvi macht sinn, wobei ich die adress konstanten als konstanten lasse würde, da ich nicht auch noch 32 weiter controls haben möchte. die befehle
bleiben ja so.
3)
ich hatte mich für eine while schleife entschieden, da die strings die aus read rauskommen unterschiedliche länge haben. sie sehen zum beispiel so aus:
41 0C 1F F8
oder
41 0D 34 wobei die ersten 2 bytes(ohne das leerzeichen) nur anzeigen worauf geantwortet wird.
zu 1):
Sammel die PIDs mit "Edit Position" (nach dem Klicken, mit Eventstruktur) in ein Array, pack die Indicator in ein Array of Cluster (Stringelement + Numeric für Name + Wert) (siehe VI).
Aus diesem Cluster-Array holst du über ne FOR-Schleife mit Hilfe der Elemente (Indizes) aus deinem gesammelten Array die entsprechenden Werte raus
moin achim, also mit edit position komme ich nicht zurecht. ich lade hier mal meinen ansatz hoch. vllt kannste mal schreiben, ob das so gemeint war, oder ich dich völlig falsch verstanden habe?
dankeschön