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 

Generieren von Impulsfolgen / Instantanes Aktualisieren



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!

28.08.2019, 16:42 (Dieser Beitrag wurde zuletzt bearbeitet: 28.08.2019 16:43 von Philipp841.)
Beitrag #1

Philipp841 Offline
LVF-Gelegenheitsschreiber
**


Beiträge: 69
Registriert seit: Mar 2018

LV 2015 SP1 32bit
2016
DE

28359
Deutschland
Generieren von Impulsfolgen / Instantanes Aktualisieren
Hallo zusammen.

Bei folgender Thematik komme ich gerade nicht weiter und hoffe auf eure Hilfe:
Für die Geschwindigkeitssteuerung eines Schrittmotors werden Impulsfolgen erzeugt (50% high / 50%low). Jede steigende Flanke führt zu einem Schritt am Schrittmotor. Über die stehts aktualisierte Frequenz stellt sich so am Motor eine Geschwindigkeit ein. Soweit so gut.

In meinem derzeitigen VI verhält es sich nun aber leider so, dass sobald die Geschwindigkeit sehr weit reduziert wird (z.B. ein Impuls alle 60sek) und dann mit einer neuen (schnelleren) Geschwindigkeit gefahren werden soll es ewig dauert (nämlich ca. 2 Impulse etwa) bis die neue vorgegebene (Frequenz) tatsächlich ausgegeben wird.

Da die Geschwindigkeitsvorgabe an anderer Stelle Teil einer Kraftregelung ist, gilt es dieses Verhalten unbedingt zu eliminieren. Neue Geschwindigkeiten müssen demnach direkt umgesetzt werden.

Ein Screenshot des VIs befindet sich im Anhang.

Für Lösungen oder auch nur Ideen im Voraus vielen Dank!!

Philipp


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

Philipp841 Offline
LVF-Gelegenheitsschreiber
**


Beiträge: 69
Registriert seit: Mar 2018

LV 2015 SP1 32bit
2016
DE

28359
Deutschland
RE: Generieren von Impulsfolgen / Instantanes Aktualisieren
Hat da wirklich keiner eine Idee für mich?

Güße,
Philipp
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
30.08.2019, 07:20
Beitrag #3

Sakis Offline
LVF-Grünschnabel
*


Beiträge: 39
Registriert seit: Sep 2018

2013, 2016
2018
DE

53xxx
Deutschland
RE: Generieren von Impulsfolgen / Instantanes Aktualisieren
Hallo Philipp,

(28.08.2019 16:42 )Philipp841 schrieb:  In meinem derzeitigen VI verhält es sich nun aber leider so, dass sobald die Geschwindigkeit sehr weit reduziert wird (z.B. ein Impuls alle 60sek) und dann mit einer neuen (schnelleren) Geschwindigkeit gefahren werden soll es ewig dauert (nämlich ca. 2 Impulse etwa) bis die neue vorgegebene (Frequenz) tatsächlich ausgegeben wird.

Dauert es "2 Impulse" der der vorherigen Geschwindigkeit (hier im Beispiel dann 2 Minuten) oder zwei Impulse der neu eingestellten Frequenz? Was meinst du mit der ausgegebenen Frequenz? Die Anzeige am Frontpanel oder die Schritte des Motors?

Gruß
Jens
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
30.08.2019, 09:14
Beitrag #4

Philipp841 Offline
LVF-Gelegenheitsschreiber
**


Beiträge: 69
Registriert seit: Mar 2018

LV 2015 SP1 32bit
2016
DE

28359
Deutschland
RE: Generieren von Impulsfolgen / Instantanes Aktualisieren
Hallo Jens,

danke für deine Antwort. Ich spreche davon, dass nach dem Vorgeben einer neuen Frequenz die ursprüngliche Frequenz über zwei volle Perioden beibehalten wird. Sprich es im o.g. Beispiel tatsächlich zwei Minuten dauert bis die neue (höhere) Frequenz am Output ausgegeben wird.


Mein Wunsch ist, dass bei Vorgabe einer neuen Frequenz, die sich erheblich von der vorherigen unterscheidet (z.B. doppelt so hoch ist), die aktuelle Ausgabe abgebrochen und mit der neuen Frequenz neu gestartet wird.


Momentan ist es so, dass bei der Vorgabe von sehr langsamen Geschwindigkeiten (niedrigen Frequenzen) neue Vorgaben ewig nicht berücksichtigt werden. Innerhalb einer Regelschleife (insbesondere mit I-Anteil) kommt es dann natürlich zu enormen Überschwingen etc.
Danke Dir schon mal vorab!
Philipp
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
30.08.2019, 09:20
Beitrag #5

GerdW Offline
______________
LVF-Team

Beiträge: 16.075
Registriert seit: May 2009

09SP1, 11SP1, 17 (selten 19)
1995
DE_EN

10×××
Deutschland
RE: Generieren von Impulsfolgen / Instantanes Aktualisieren
Hallo Philipp,

Zitat:Mein Wunsch ist, dass bei Vorgabe einer neuen Frequenz, die sich erheblich von der vorherigen unterscheidet (z.B. doppelt so hoch ist), die aktuelle Ausgabe abgebrochen und mit der neuen Frequenz neu gestartet wird.
Code:
IF aktuelle Frequenz < x AND neue Frequenz > y THEN
  stop DAQmx-Task
  set new frequency
  start DAQmx-Task
ENDIF
In etwa so?

Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
30.08.2019, 10:26
Beitrag #6

Sakis Offline
LVF-Grünschnabel
*


Beiträge: 39
Registriert seit: Sep 2018

2013, 2016
2018
DE

53xxx
Deutschland
RE: Generieren von Impulsfolgen / Instantanes Aktualisieren
Hallo,

würde es auch so ähnlich machen wie von Gerd vorgeschlagen. Nur die if-Abfrage würde ich ändern. Wenn man deine Anforderung eins zu eins übersetzt, sollte es so sein:

Code:
IF 2*aktuelle Frequenz < neue Frequenz THEN
  stop DAQmx-Task
  set new frequency
  start DAQmx-Task
ENDIF

Gruß
Jens
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
Anzeige
30.08.2019, 10:52 (Dieser Beitrag wurde zuletzt bearbeitet: 30.08.2019 11:11 von Philipp841.)
Beitrag #7

Philipp841 Offline
LVF-Gelegenheitsschreiber
**


Beiträge: 69
Registriert seit: Mar 2018

LV 2015 SP1 32bit
2016
DE

28359
Deutschland
RE: Generieren von Impulsfolgen / Instantanes Aktualisieren
Danke. Und wie bekomm ich das jetzt ins VI?

// Hab es jetzt erstmal so umgesetzt. Siehe Bild.

Funktioniert auch, habe aber noch zwei /drei Fragen dazu:

1) Wie würde eine Alternativlösung aussehenbzw. lässt sich das noch irgendwie vereinfachen? Bin damit irgendwie nicht so richtig glücklich.
2) Wie GENAU wirkt sich ein Delay innerhalb der While-schleife auf die ausgegebene Frequenz der Impulsfolge aus. Macht ein Delay Sinn?

Danke Euch.


Angehängte Datei(en) Thumbnail(s)
   
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
30.08.2019, 11:36
Beitrag #8

GerdW Offline
______________
LVF-Team

Beiträge: 16.075
Registriert seit: May 2009

09SP1, 11SP1, 17 (selten 19)
1995
DE_EN

10×××
Deutschland
RE: Generieren von Impulsfolgen / Instantanes Aktualisieren
Hallo Philipp,

Zitat:1) Wie würde eine Alternativlösung aussehenbzw. lässt sich das noch irgendwie vereinfachen? Bin damit irgendwie nicht so richtig glücklich.
Was stört dich denn?
Hinweis/Idee: statt den Task zu löschen und neu zu erstellen reicht es evtl. auch aus, ihn zu stoppen und mit neuen Parametern wieder zu starten. (Wie oben beschrieben.)

Zitat:2) Wie GENAU wirkt sich ein Delay innerhalb der While-schleife auf die ausgegebene Frequenz der Impulsfolge aus. Macht ein Delay Sinn?
Ob ein Delay sinnvoll ist, musst du selbst entscheiden…
Ein Delay bewirkt, dass die Iterationszeit der Schleife auf einen Minimalwert (eben den Delay) begrenzt wird.
(Eine Auswirkung auf die Frequenz sollte nicht bestehen, da diese ja über den DAQmx-Task definiert wird.)

Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
30.08.2019, 12:39 (Dieser Beitrag wurde zuletzt bearbeitet: 30.08.2019 12:40 von Philipp841.)
Beitrag #9

Philipp841 Offline
LVF-Gelegenheitsschreiber
**


Beiträge: 69
Registriert seit: Mar 2018

LV 2015 SP1 32bit
2016
DE

28359
Deutschland
RE: Generieren von Impulsfolgen / Instantanes Aktualisieren
Zitat:Hinweis/Idee: statt den Task zu löschen und neu zu erstellen reicht es evtl. auch aus, ihn zu stoppen und mit neuen Parametern wieder zu starten. (Wie oben beschrieben.)

Ich habe probiert nur den "DAQmx - Schreiben" neu zu beschreiben (natürlich mit Task-Stoppen und Task-Starten davor). Das hat aber leider nicht funktioniert. Die "alte" Frequenz wurde beibehalten. Aber es geht ja so..

Zitat:2) Wie GENAU wirkt sich ein Delay innerhalb der While-schleife auf die ausgegebene Frequenz der Impulsfolge aus. Macht ein Delay Sinn?
Ob ein Delay sinnvoll ist, musst du selbst entscheiden…
Ein Delay bewirkt, dass die Iterationszeit der Schleife auf einen Minimalwert (eben den Delay) begrenzt wird.
(Eine Auswirkung auf die Frequenz sollte nicht bestehen, da diese ja über den DAQmx-Task definiert wird.)

Hm.. wie verhält sich denn mit der Frequenz die ich am Anfang im Block "DAQmx - Virtuellen Kanal erzeugen" angebe (im Beispiel wurde 1000 gewählt). Wird dieser Wert in der While Schleife von "DAQmx-Schreiben" überschrieben? Wenn ja, kann ich diesen Wert dann weglassen?

Und zu guter letzt eine letzte Frage:
Wodurch wird die Frequenz in diesem VI nach unten hin begrenzt? Was ist die kleinste Frequenz?

Nochmal danke!!
Phil
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
30.08.2019, 12:52
Beitrag #10

GerdW Offline
______________
LVF-Team

Beiträge: 16.075
Registriert seit: May 2009

09SP1, 11SP1, 17 (selten 19)
1995
DE_EN

10×××
Deutschland
RE: Generieren von Impulsfolgen / Instantanes Aktualisieren
Hallo Philipp,

Zitat:Wird dieser Wert in der While Schleife von "DAQmx-Schreiben" überschrieben?
Ja, mit dem DAQmxWrite legst du eine neue Frequenz fest.

Zitat:Wenn ja, kann ich diesen Wert dann weglassen?
Warum willst du den weglassen? Du willst doch eine neue Frequenz festlegen!?
Die Frage wäre eher: warum legst du den Task überhaupt mit f=1000 an, wenn du hinterher sowieso eine andere Frequenz vorgibst? Warum nicht gleich mit der gewünschten Frequenz anlegen?

Zitat:Wodurch wird die Frequenz in diesem VI nach unten hin begrenzt? Was ist die kleinste Frequenz?
Da musst du wohl das Manual deines DAQ-Devices durchlesen…
(Irgendwas mit Grundfrequenz des internen Taktgebers und der verfügbaren Teilerstufen, um diesen Takt zu verringern…)

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
  Kalibrierung aktualisieren andreas_b 4 2.035 20.03.2017 15:41
Letzter Beitrag: HVo
  Signal generieren und anderes messen gleichzeitig Labview-Anfänger 5 3.126 02.07.2014 07:28
Letzter Beitrag: Lucki
  DAQmx-Treiber aktualisieren debmint 2 2.395 25.04.2013 12:42
Letzter Beitrag: debmint
  Gleichzeitig Messen und Generieren von Signalen mit EINEM DAQ-Assistenten? Kriz 5 4.075 05.07.2012 12:58
Letzter Beitrag: Kriz
  Einfachen, einzelnen Puls generieren Sandisk 8 5.925 03.02.2011 15:21
Letzter Beitrag: Sandisk
  White Noise Signal Generieren StudiFH 6 4.278 09.12.2010 17:50
Letzter Beitrag: Lucki

Who read this thread?
1 User(s) read this thread:
jg

Gehe zu: