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 

Dieses Thema hat akzeptierte Lösungen:

Compass



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.12.2016, 09:31
Beitrag #11

GerdW Offline
______________
LVF-Team

Beiträge: 17.399
Registriert seit: May 2009

LV2021
1995
DE_EN

10×××
Deutschland
RE: Compass
Hallo Jenni,

deine letzten Beiträge enthalten leider nicht mehr den aktuellen Stand deines VIs…

Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
Anzeige
12.12.2016, 09:38
Beitrag #12

Jenni Offline
LVF-Grünschnabel
*


Beiträge: 45
Registriert seit: Aug 2016

2012
-
EN



RE: Compass
Hallo Gerd,

danke für die Antwort.
Ich hänge mein derzeitiges VI mal an diese Nachricht an Smile


Angehängte Datei(en)
12.0 .vi  Vorwärts-Rückwärts.vi (Größe: 73,69 KB / Downloads: 185)
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
12.12.2016, 09:49
Beitrag #13

GerdW Offline
______________
LVF-Team

Beiträge: 17.399
Registriert seit: May 2009

LV2021
1995
DE_EN

10×××
Deutschland
RE: Compass
Hallo Jenni,

spendiere deiner Statemachine einfach mehr States:
- "Messung starten" gehört in einen eigenen State, wo einfach nur auf den entsprechenden Button gewartet wird
- "Positionsbewegung": nimm die Whileloop dort raus und ersetze das "i" der Schleife durch ein Schieberegister der Statemachine, welches du selbst hochzählst

Mit den zwei kleinen Änderungen kann deine Statemachine jeden Arbeitspunkt sauber abarbeiten und du hast immer die Möglichkeit, deine Graphen/Anzeigen zu aktualisieren…

Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
12.12.2016, 10:17
Beitrag #14

Jenni Offline
LVF-Grünschnabel
*


Beiträge: 45
Registriert seit: Aug 2016

2012
-
EN



RE: Compass
Wieder einmal Danke für deine hilfreiche Antwort Gerd! Smile
Ich werde deine Vorschläge direkt mal umsetzen.

Ganz liebe Grüße,
Jenni
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
12.12.2016, 11:17
Beitrag #15

Jenni Offline
LVF-Grünschnabel
*


Beiträge: 45
Registriert seit: Aug 2016

2012
-
EN



RE: Compass
Hallo Gerd,

deine erste Verbesserung habe ich erfolgreich eingebaut Smile

Ich habe aber noch eine kurze Frage zu deiner zweiten Anmerkung.

Zitat:"Positionsbewegung": nimm die Whileloop dort raus und ersetze das "i" der Schleife durch ein Schieberegister der Statemachine, welches du selbst hochzählst

Wenn ich das "i" durch ein Schieberegister der Statemachine ersetze, dann ist damit doch gemeint, dass ich den Zustand selber bestimmen kann, oder?
Allerdings will ich ja eine kontinuierliche Positionsbewegung erreichen.
Also nicht der State soll "hochgezählt" werden, sondern der Befehl der abosluten Positionierung.
Ich weiß gerade nicht genau, wie ich das umsetzen kann.

Liebe Grüße,
Jenni
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
12.12.2016, 11:22 (Dieser Beitrag wurde zuletzt bearbeitet: 12.12.2016 11:29 von GerdW.)
Beitrag #16

GerdW Offline
______________
LVF-Team

Beiträge: 17.399
Registriert seit: May 2009

LV2021
1995
DE_EN

10×××
Deutschland
RE: Compass
Hallo Jenni,

Zitat:Also nicht der State soll "hochgezählt" werden, sondern der Befehl der abosluten Positionierung.
Die einzige "Variable" innerhalb dieser WhileLoop ist der Schleifenzähler "i".
Wenn du also den Inhalt dieser Loop als eigenen State definierst, musst du nur "von außen" diesen Zähler als Parameter hineingeben.
Deshalb: das "i" durch ein (zusätzliches) Schieberegister der Statemachine ersetzen und selbst hochzählen.
   

Dein STOP-Button entscheidet dann, ab dieser State erneut aufgerufen wird (mit einem um 1 erhöhten "i"-Zähler) oder ob ein den State "Postionsabfrage" gewechselt wird…

Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
Anzeige
12.12.2016, 13:06
Beitrag #17

Jenni Offline
LVF-Grünschnabel
*


Beiträge: 45
Registriert seit: Aug 2016

2012
-
EN



RE: Compass
Hallo Gerd,

ich habe da noch eine Frage:
Zitat:Dein STOP-Button entscheidet dann, ab dieser State erneut aufgerufen wird (mit einem um 1 erhöhten "i"-Zähler) oder ob ein den State "Postionsabfrage" gewechselt wird…

Im Moment werden allerdings alle States wiederholt, wenn mein Stop Button auf "erneute Bewegung" steht.
Wie kann ich jetzt verhindern, dass auch wieder eine Referenzfahrt durchgeführt wird? Diese setzt den Motor nämlich wieder auf 0°.
Oder es liegt an etwas anderem. Aber der Zähler bleibt immer nach einem Schritt stehen..
Ich hänge mein neues VI noch einmal an.

Liebe Grüße,
Jenni


Angehängte Datei(en)
12.0 .vi  Vorwärts-Rückwärts.vi (Größe: 63,15 KB / Downloads: 180)
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
12.12.2016, 13:32 (Dieser Beitrag wurde zuletzt bearbeitet: 12.12.2016 13:34 von GerdW.)
Beitrag #18

GerdW Offline
______________
LVF-Team

Beiträge: 17.399
Registriert seit: May 2009

LV2021
1995
DE_EN

10×××
Deutschland
RE: Compass

Akzeptierte Lösung

Hallo Jenni,

Zitat:Im Moment werden allerdings alle States wiederholt, wenn mein Stop Button auf "erneute Bewegung" steht.
Bestimmt hast du das so programmiert…

Zitat:Wie kann ich jetzt verhindern, dass auch wieder eine Referenzfahrt durchgeführt wird? Diese setzt den Motor nämlich wieder auf 0°.
Indem du einfach den richtigen State für die nächste Iteration vorgibst…

Zitat:Aber der Zähler bleibt immer nach einem Schritt stehen..
Böser Fehler: du hast da einen Tunnel an der Case-Struktur auf "default if unwired" gesetzt!
Schieberegister-Werte sollte (nach Möglichkeit) immer durchverdrahtet werden! (Es gibt da diese Rechtsklick-Option der "verbundenen Tunnel"…)

Bei Statemachine hat es sich bewährt, wenn man sich deren Aufbau mal auf einem Blatt Papier aufmalt - inkl. der Übergangsbedingungen! (Man kann sowas auch mit MS-Visio o.a. Programmen malen.)

Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
12.12.2016, 14:21
Beitrag #19

Jenni Offline
LVF-Grünschnabel
*


Beiträge: 45
Registriert seit: Aug 2016

2012
-
EN



RE: Compass
Vielen, vielen Dank Gerd!!!

Es funktioniert nun alles so, wie ich es mir gewünscht habe!

Liebe Grüße,
Jenni
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
13.12.2016, 13:05
Beitrag #20

Jenni Offline
LVF-Grünschnabel
*


Beiträge: 45
Registriert seit: Aug 2016

2012
-
EN



RE: Compass
Hallo ihr Lieben,

da ist gerade mal ein Tag vergangen und schon wieder habe ich ein Problem..
Ich hänge es hier an, da es sich eigentlich immer noch um das Zeigerdiagramm handelt.
Und zwar hat alles soweit funktioniert.
Allerdings musste ich noch meine Größen von Schritten in Grad umrechnen (der Schrittmotor macht 8000 Schritte für eine volle Umdrehung, also 360°).
Ich dachte das ginge ganz einfach. Aber das Zeigerdiagramm macht nicht das, was es soll..
Ich habe dann mal einen Indikator dazwischen gelegt, der mir auch die richtigen Winkel anzeigt. Das Diagramm gibt diese aber nicht aus.
Als Beispiel:
Ich gebe als Schrittgröße 90° ein. Der Motor macht also eine 90° Drehung, dann wieder (also 180°), dann wieder ...
Der Plot Helper bekommt auch genau diese 90° raus (bzw. 180, 270, ...) gibt aber etwas anderes an. Bzw zeigt er ganz kurz auf 90°, und dann etwas anderes.
Woran liegt das? Habt ihr eine Idee?


Viele Grüße,
Jenni


Angehängte Datei(en)
12.0 .vi  RückundVorwärts.vi (Größe: 79,11 KB / Downloads: 194)
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
30
Antwort schreiben 


Gehe zu: