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 

Messwerte in Tabelle schreiben aus Statemachine



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!

06.04.2013, 20:03
Beitrag #1

labnutzer Offline
LVF-Grünschnabel
*


Beiträge: 13
Registriert seit: Apr 2013

12
-
DE



Messwerte in Tabelle schreiben aus Statemachine
Hallo,

ich versuche oder möchte, das ich die Daten, die ich vom DAQ-Assistent bekomme, in eine Datei zu schreiben. Das ist in diesem Case nur ein einzelner
Spannungswert (1 Sample). In dem Case "User state 1" könnte ich ja einfach ein entsprechendes VI integrieren. (Messwerte in Datei schreiben).

Aber es gibt weitere Cases, die so ähnlich aufgebaut sind. Und dort wird wieder
je ein Spannungswert erzeugt, der mit in die Datei geschrieben werden soll.

Wie kann ich denn das anstellen, das der Datenstrom über die Cases hinaus geführt werden
kann und dann evtl. am Ende zusammengefasst und auf einmal (gleich mehrere Werte als Datensatz) in die Datei geschrieben werden könnten?

Wäre für jede Hilfe dankbar, da ich noch Anfänger bin (erstes Projekt nach Einlesen in diese Thematik)

Grüße


Angehängte Datei(en) Thumbnail(s)
   
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
Anzeige
06.04.2013, 22:43
Beitrag #2

Trinitatis Offline
LVF-Guru
*****


Beiträge: 1.694
Registriert seit: May 2008

7.1 / 8.0 /2014-1, 18
2002
DE

18055
Deutschland
RE: Messwerte in Tabelle schreiben aus Statemachine
Hallo Labnutzer,

du könntest dir ein neues Shiftregister bauen und dort ein Array akkumulieren. An dieses Array hängst du in allen Mess-States Daten an und übergibst das Shiftregister einfach in allen NICHT-Mess-States. Im State SCHREIBEN schreibst du dann dein Array in die Datei und übergibst an das Shiftregister ein leeres Array, das dann in den Mess-States wieder gefüllt werden kann.
Alternativ geht es natürlich auch über Queues oder lok. Variablen - letzteres wäre aber unelegant und zudem unnötig.

Gruß, Marko
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
07.04.2013, 14:00
Beitrag #3

labnutzer Offline
LVF-Grünschnabel
*


Beiträge: 13
Registriert seit: Apr 2013

12
-
DE



RE: Messwerte in Tabelle schreiben aus Statemachine
Hallo,

also das mit dem Schieberegister packe ich einfach nicht. In einem Case funktioniert das ganz gut, mit der Funktion "Teilstring ersetzen" kann
ich bei meinem 1D-Array ganz gut das jeweilige Element auswählen und es wird auch im Array dann angezeigt. . Aber ich weiß einfach nicht,
wie ich das mit den anderen Cases verbinden muss bzw. sollte.???

Also ein Anschubbeispiel wäre super. Wer kann helfen??

Grüße
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
07.04.2013, 17:29
Beitrag #4

Trinitatis Offline
LVF-Guru
*****


Beiträge: 1.694
Registriert seit: May 2008

7.1 / 8.0 /2014-1, 18
2002
DE

18055
Deutschland
RE: Messwerte in Tabelle schreiben aus Statemachine
. . .dann häng´ du mal erst ein Beispiel hinten an, das erspart dem Helfenden, den ganzen Kollateralkram zu programmieren, den du ja schon erstellt hast (haben solltest).

Gruß, Marko
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
07.04.2013, 18:09
Beitrag #5

labnutzer Offline
LVF-Grünschnabel
*


Beiträge: 13
Registriert seit: Apr 2013

12
-
DE



RE: Messwerte in Tabelle schreiben aus Statemachine
Hallo Marko,

schön, dass du Dir das mal ansiehst.

Vi ist angehängt. Hoffe, das geht so.

Also, die Messwerterfassung soll nacheinander ablaufen, zuerst Messwert 1, Darstellung des Messwertes am Frontpanel
und eine Beurteilung, ob innerhalb der Toleranz. Wenn nicht in der Toleranz, dann gibt es eine Meldung am Bildschirm, mit der
Entscheidung weiter oder Abbruch. Danach Messwert 2, gleiche Prozedur und dann die Messwerte 3 bis 15.

Die Meßwerte sollen dann in eine Datei geschrieben werden. Ich habe das über ein Array gemacht und über lokale Variable. Denn
irgenwie muß ja der Meßwert aus dem einem Case heraus zur Weiterverarbeitung. Ich habe es eben nur mit diesen lokalen Variablen geschafft.
Aber evtl. ist der Aufbau auch völlig falsch. Ausgangspunkt war eine State-Machine mit einer Ereignisstruktur.

Das Problem, was ich noch sehe, ist, dass es bei ca. 15 Messwerterfassungen nacheinander (teilweise mit einer Verzögerung von ca.
1 bis 2 sec. in der Abfolge) der Bediener keine Chance auf einen Abbruch hat, da der Abbruchbutton ja nicht in der Case-Struktur abgefragt wird.

Zwar stoppt der Ablauf mittels der Fehlermeldung, wenn ein Wert außerhalb der Toleranz ist, aber ich denke,das reicht nicht aus.

Grüße


Angehängte Datei(en)
12.0 .vi  Main_1_test.vi (Größe: 177,05 KB / Downloads: 121)
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
07.04.2013, 18:24
Beitrag #6

Trinitatis Offline
LVF-Guru
*****


Beiträge: 1.694
Registriert seit: May 2008

7.1 / 8.0 /2014-1, 18
2002
DE

18055
Deutschland
RE: Messwerte in Tabelle schreiben aus Statemachine
Hallo labnutzer,

speicher das VI mal bitte auf <=2011 runter - sorry, hätte ich auch gleich schreiben können, aber die meisten hier im Forum können mit 2012 noch nichts anfangen, bei mir hört´s bei 2011 auch auf.

Gruß, Marko
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
Anzeige
07.04.2013, 19:13
Beitrag #7

labnutzer Offline
LVF-Grünschnabel
*


Beiträge: 13
Registriert seit: Apr 2013

12
-
DE



RE: Messwerte in Tabelle schreiben aus Statemachine
Hallo Marko,

kein Problem, hoffe, nun gehts.

Grüße


Angehängte Datei(en)
11.0 .vi  Main_1_test.vi (Größe: 158,19 KB / Downloads: 140)

11.0 .ctl  State.ctl (Größe: 11,23 KB / Downloads: 117)

11.0 .ctl  Data.ctl (Größe: 11,63 KB / Downloads: 126)
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
07.04.2013, 19:35
Beitrag #8

Trinitatis Offline
LVF-Guru
*****


Beiträge: 1.694
Registriert seit: May 2008

7.1 / 8.0 /2014-1, 18
2002
DE

18055
Deutschland
RE: Messwerte in Tabelle schreiben aus Statemachine
Hi,

ich hab mich jetzt mal nur um das Shiftregister in den Cases gekümmert, in denen du die Variable verwendet hattest.
Für die Stop-Prüfung habe ich das Schaltverhalten geändert und den aktuellen Schalterzustand an der Schleifenbedingung mit verodert.

Gruß, Marko


Angehängte Datei(en)
11.0 .vi  Main_1_test.vi (Größe: 177,85 KB / Downloads: 133)
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
07.04.2013, 20:56
Beitrag #9

labnutzer Offline
LVF-Grünschnabel
*


Beiträge: 13
Registriert seit: Apr 2013

12
-
DE



RE: Messwerte in Tabelle schreiben aus Statemachine
Hallo Marko,

vielen Dank. Die lokalen Variablen wäre ich los.

Allerdings wird nun, da sich das Anzeigearray (nat. für Testzwecke, die Werte sollen ja als Datensatz pro Durchlauf an eine Datei angehängt werden)
außerhalb der Casestruktur befindet, nicht mit rückgesetzt, wenn man den Rücksetzbutton betätigt. Ich glaube aber, dass dann neue Werte im nächsten Durchlauf
die Felder vom Array überschreiben und somit aktualisieren (sieht man im Mom nicht, da immer die gleichen Werte). Rückgesetzt wird an sich, wenn man
den Start-button drückt.

Warum dies beim Rücksetz-Button nicht ist, k. A.?

Beim Stopp-Button ist es nun so, wenn man startet und anschließend gleich den Stopp-Button drückt, wird er nicht zurückgesetzt. Ist das so normal?

Viele Grüße
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
07.04.2013, 21:04
Beitrag #10

Trinitatis Offline
LVF-Guru
*****


Beiträge: 1.694
Registriert seit: May 2008

7.1 / 8.0 /2014-1, 18
2002
DE

18055
Deutschland
RE: Messwerte in Tabelle schreiben aus Statemachine
Hallo labnutzer,

in dem case, in dem deine Eventstruktur liegt, habe ich das Array per shiftregister ja einfach nur übergeben. Du müsstest jetzt also das Array noch durch die Events führen und in den events ein leeres Array übergeben, in denen es gewünsch ist, z.B. beim Reset, in allen anderen wieder nur durchschleifen.

Der Stop-Knopf, dessen Schaltverhalten ich geändert habe muss nun explizit zurückgesetzt werden - dies geschieht z.Zt, exemplarisch in dem entsprechenden Event.

Gruß, Marko
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
Antwort schreiben 


Möglicherweise verwandte Themen...
Themen Verfasser Antworten Views Letzter Beitrag
  Frage zur Architektur: Statemachine und Wait for Events tuhpon 6 1.602 18.03.2024 16:14
Letzter Beitrag: tuhpon
  Statemachine-Projekt… riu14 18 8.980 15.06.2022 13:44
Letzter Beitrag: jg
  Messwerte aus UM232H (USB) jede ms in TDMS Datei schreiben BenBaeumker 19 7.087 23.07.2021 10:55
Letzter Beitrag: GerdW
  Tabelle in Schleife schreiben steve_94 3 3.060 14.12.2018 08:48
Letzter Beitrag: Ralfk84
  Statemachine mit Notifier hulk 5 3.872 14.12.2017 20:02
Letzter Beitrag: Pronet
  Nur bestimmte Messwerte in Datei schreiben Olli169 6 4.087 16.08.2017 11:22
Letzter Beitrag: Olli169

Gehe zu: