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 

State Machine macht mit selben Funktionen jedesmal etwas anderes



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!

07.04.2012, 12:43
Beitrag #1

anuller Offline
LVF-Grünschnabel
*


Beiträge: 11
Registriert seit: Sep 2011

9.0
2010
EN



State Machine macht mit selben Funktionen jedesmal etwas anderes
Hallo!

Ich habe nur eine kleine Frage zur Funktionsfähigkeit von Statemachines.

Ich muss ein Programm schreiben um verschiedene Tests automatisch ablaufen zu lassen.
Das funktioniert soweit ganz gut. Ich habe es in einer gestapelten Frequenz realisiert die allerdings recht lang ist.
Es gibt verschiedene Arten von Funktionen die sich immer wiederholen. Das einzige was anders ist sind die Werte die ausgegeben werden.

Ich habe immer die gleichen Testschritte die sich allerdings mit anderen Werten wiederholen. Jetzt ist es so.

Prüfpunkt1 Begin:
Case1: Steuerbefehlausgabe 0010
Case2:Sinussignalausgabe 2V
Case3:Sinussignalmessung 1V
Case4:Auswertung 1V ok???
Case5:Speichern Excel Spalte1 PrüfPunkt1
Prüfpunkt1 Ende:

Prüfpunkt2 Begin:
Case6:Steuerbefehlausgabe 0100
Case7:Sinussignalausgabe 3V
Case8:Sinussignalmessung 4V
Case9:Auswertung 4V ok???
Case10:Speichern Excel Spalte2PrüfPunkt2
Prüfpunkt2 Ende:

Prüfpunkt3 Begin:
...

Meine Frage ist jetzt, ob ich die Werte für die Steuerbefehle, Signalausgabe, Signalmessung, Auswertung, Speichern irgendwo z.B. aus einer Tabelle oder einem eigenen Case herholen kann??? Dann ist das Programm kürzer und ich brauche jedes vi (z.B. Steuerbefehlausgabe) nur einmal programmieren.

Eine Statemachine kann ja immer vor und zurück springen... vielleicht kann die mein Problem auch lösen.

Bisher habe ich es geschafft mit `ner Case-Machine von Case1>Case2>Case3>Case4>Case5 zu springen und dann wieder zu case1... aber da stehen dann ja immer noch die Werte z.B. 0010 drin... beim zweiten Aufruf soll da aber 0100 drin stehen usw...

Vielleicht gehts ja so???

Case1: WertePrüfpunkt1
Case2: WertePrüfpunkt2
Case3: Werteprüfpunkt3
Case4:Steuerbefehlausgabe xxx
Case5:Sinussignalausgabe xxx
Case6:Sinussignalmessung xxx
Case7:Auswertung xxx ok???
Case8:Speichern Excel Prüfpunkte1-3

Ich bräuchte die Statemachine auch, um später die einzelnen Prüfpunkte auch mal nur einzeln aufräumen zu können.

Ich glaube Labview scheitert an meinen Wünschen... :-)

Danke!
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
07.04.2012, 13:44 (Dieser Beitrag wurde zuletzt bearbeitet: 07.04.2012 13:47 von Lucki.)
Beitrag #2

Lucki Offline
Tech.Exp.2.Klasse
LVF-Team

Beiträge: 7.699
Registriert seit: Mar 2006

LV 2016-18 prof.
1995
DE

01108
Deutschland
RE: State Machine macht mit selben Funktionen jedesmal etwas anderes
Wenn es "soweit ganz gut" funktioniert, dann bietet es sich doch an, das VI mal hochzuladen, dann lässt sich leichter etwas erklären.
Vorher würde ich noch empfehen, die Überschrift wahr werden zu lassen, und für die Testabläufe tatsächlich eine state-machine statt - wie im Text ausgeführt - eine "gestapelte Frequenz" (Sequenz ???) zu verwenden.
Richtig müßte es auch heißen "State machine soll mit selben Funktionen immer etwa anderes machen" - so wie Du es fomuliert hast sieht es aus als ob Labview nicht ordentlich funktioniert.
Und da wir gerade beim Meckern sind:
Zitat:Ich glaube Labview scheitert an meinen Wünschen... :-)
Da hast Du Glück, weil es scherzhaft gemeint ist. Manche Anfänger, die mit ihrem VI nicht gleich zurechtkommen, leiden aber echt unter "pathologischem Selbstbewußtsein" und starten ihren Einstieg im LVF mit der Behauptung, dass irgendetwas unter Labview prinzipiell nicht geht und dass Labview diesen oder jenen Mangel hat.
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
08.04.2012, 07:59 (Dieser Beitrag wurde zuletzt bearbeitet: 08.04.2012 08:00 von ahlers01.)
Beitrag #3

ahlers01 Offline
LVF-Gelegenheitsschreiber
**


Beiträge: 143
Registriert seit: Feb 2005

7.1-2011
1993
DE_EN

38116
Deutschland
RE: State Machine macht mit selben Funktionen jedesmal etwas anderes
Schreib eine subVI, die für jeden Prüfpunkt mit den entsprechenden Parametern aufgerufen wird:


Etwa so (und natürlich in LabVIEW geschrieben):


subVI pruefen(inputs: p1,p2,p3,n; outputs: OK-Flag)
{
Steuerbefehlausgabe p1;
Sinussignalausgabe p2;
Sinussignalmessung p3;
Auswertung p3 OK-flag;
Speichern Excel Spalte_n PrüfPunkt_n;
}

Hauptprogram:
For i = 1 to N
pruefen(p1[i],p2[i],p3[i],OK?)
End;
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
08.04.2012, 18:39 (Dieser Beitrag wurde zuletzt bearbeitet: 08.04.2012 18:41 von anuller.)
Beitrag #4

anuller Offline
LVF-Grünschnabel
*


Beiträge: 11
Registriert seit: Sep 2011

9.0
2010
EN



RE: State Machine macht mit selben Funktionen jedesmal etwas anderes
Oh danke. Das werde ich mal ausprobieren.

Anbei mein erster State-Machine-Entwurf zur Bereicherung in diesem Forum.
Jetzt weiß jeder weiß was ich meine.
Doch sie läuft noch nicht rund... wenn jemand sofort sieht warum bin ich darüber sehr dankbar.

Die Idee ist eben, nur einen Frame für Steuer, Mess und Auswertung zu haben, da die Abläufe immer dieselben sind, nur die Werte ändern sich eben pro Prüfung. Im Beispiel sind es drei Prüfungen. (Fast alle Werte sind allerdings erstmal auf 0 gesetzt sind, was ja nicht immer so sein wird.)

Danke für eure Hilfe.


Angehängte Datei(en)
11.0 .vi  S-Machine-test.vi (Größe: 825,16 KB / Downloads: 214)

11.0 .ctl  StateMachineStates 4.ctl (Größe: 4,28 KB / Downloads: 192)
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
09.04.2012, 17:31
Beitrag #5

Lucki Offline
Tech.Exp.2.Klasse
LVF-Team

Beiträge: 7.699
Registriert seit: Mar 2006

LV 2016-18 prof.
1995
DE

01108
Deutschland
RE: State Machine macht mit selben Funktionen jedesmal etwas anderes
Hier ein Vorschlag, aber nur das Gerüst für den Testablauf, keine Inhalte der Test-Cases. Es wird bei Start eine Warteschlange mit allen Cases erzeugt. In einer zweiten Schleife werden die Warteschlangen-Elemente - und damit die Tests - dann abgearbeitet.
Eine Redundanz fiel mir auf: Bei einer lokalen Variablen ist der Speicherplatz das entsprechende Bedien/Anzeigeelement selbst. Wenn man mit einer lokalen Variable lesen will, so liest man das direkt aus dem Element. Es ist nicht nötig, vorher mittels einer anderen lokalen V desselben Elements etwas reinzuschreiben. Bei der GB wäre das so, hier nicht.


Angehängte Datei(en)
11.0 .vi  S-Machine-testWA.vi (Größe: 29,89 KB / Downloads: 249)

11.0 .ctl  Steps.ctl (Größe: 4,08 KB / Downloads: 209)
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
10.04.2012, 09:37
Beitrag #6

chrissyPu Offline
LVF-Stammgast
***


Beiträge: 467
Registriert seit: Jun 2006

2014 PDS
2006
DE_EN

64283
Deutschland
RE: State Machine macht mit selben Funktionen jedesmal etwas anderes
Sehr schick, Lucki. Erinnert mich an meinen Core III - Kurs... Suche nur noch eine Anwendung, wo ich das mal in der Form schön anwenden kann...
Webseite des Benutzers besuchen Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
Anzeige
10.04.2012, 12:42
Beitrag #7

Lucki Offline
Tech.Exp.2.Klasse
LVF-Team

Beiträge: 7.699
Registriert seit: Mar 2006

LV 2016-18 prof.
1995
DE

01108
Deutschland
RE: State Machine macht mit selben Funktionen jedesmal etwas anderes
(10.04.2012 09:37 )chrissyPu schrieb:  Suche nur noch eine Anwendung, wo ich das mal in der Form schön anwenden kann...
Da geht es Dir genau so wie mir. Habe zwar nie einen Kurs besucht, habe aber in letzer Zeit ein paar Beispiele zur QSM (Queue Driven State Machine) studiert. Bin von dieser Struktur begeistert, jetzt muss mir nur noch die richtige Anwendung dafür über den Weg laufen. Oder so: Da die QSM außerordentlich universell ist, wird die nächst beste Anwendung, egal wie, als QSM geschrieben.
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
  mehrere LabVIEW-Versionen auf dem selben PC SirTom 1 2.063 18.04.2024 18:35
Letzter Beitrag: GerdW
  Machine learning Hubert R. 3 2.521 29.08.2023 10:10
Letzter Beitrag: Hubert R.
  Stream-Libary anderes Verzeichnes LV-New 5 3.815 23.04.2021 07:11
Letzter Beitrag: GerdW
  Programm beenden State Machine simcum 3 3.430 17.10.2020 20:57
Letzter Beitrag: BNT
  Was macht das Express VI Messung von Frequenzkomponenten bachatero18 9 4.905 17.09.2020 07:56
Letzter Beitrag: Martin.Henz
  Timer macht was er will :-) Natalie1984 6 4.036 04.07.2019 12:49
Letzter Beitrag: IchSelbst

Gehe zu: