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 

Erzeugung der Pulse mit NI USB 6002(DAQmx)



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.08.2015, 23:02 (Dieser Beitrag wurde zuletzt bearbeitet: 07.08.2015 23:10 von Felix777.)
Beitrag #1

Felix777 Offline
LVF-Gelegenheitsschreiber
**


Beiträge: 50
Registriert seit: Mar 2015

2012
2011
DE



Erzeugung der Pulse mit NI USB 6002(DAQmx)
Hallo zusammen,

wie könnte ich mit der NI USB 6002 Karte an den digitalen Ausgängen PWM-Pulse für einen Servo-Motor generieren? Eine Lösung für analoge Ausgänge habe ich gefunden:

http://www.ces.karlsruhe.de/culm/culm/cu.../servo.pdf

Bei der Lösung wird eine Basic Finction Generator.vi verwendet. Die Lösung passt mir aber nicht ganz, weil meine Karte nur 2 analoge Ausgänge hat und ich brauche 7 Servos anzusteuern. Deswegen möchte dafür digitale Ausgänge verwenden.

Ich dachte, dass man für digitale Ausgänge auch eine Signalform erzeugen und an DAQmx Write Digital Output .vi übergeben könnte. Bei digitalen Ausgängen funktioniert es aber so nicht. Sad(

Fast alle Beispiele im Netz verwenden für die Puls Erzeugung einen Clock oder Timebase.

Die Karte hat folgende Daten:

COUNTER

Number of counters 1
Resolution 32-bit
Counter measurements Edge counting, rising or falling
Counter direction: Count up
Counter source PFI 0 or PFI 1
Maximum input frequency 5 MHz
Minimum high pulse width 100 ns
Minimum low pulse width 100 ns

TIMEBASE
Timebase frequency 80 MHz
Timebase accuracy ±100 ppm
Timing resolution 12.5 ns

Was und wie kann ich für die Puls-Erzeugung verwenden? Würde dafür Timebase passen oder brauche ich einen externen Counter?
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
Anzeige
08.08.2015, 08:33
Beitrag #2

jg Offline
CLA & CLED
LVF-Team

Beiträge: 15.864
Registriert seit: Jun 2005

20xx / 8.x
1999
EN

Franken...
Deutschland
RE: Erzeugung der Pulse mit NI USB 6002(DAQmx)
Lies dir die Specs deiner Karte durch, z.B. hier und dann unter "Spezifikationen":

Deine DOs kannst du nur mit Softwaretakt schalten (also immer nur 1 Wert aus deinem Programm heraus), und der Counter dieser Karte kann auch keine Pulserzeugung.

Diese Karte ist zur Erzeugung von vielen PWM-Signalen einfach nicht geeignet.

Gruß, Jens

Wer die erhabene Weisheit der Mathematik tadelt, nährt sich von Verwirrung. (Leonardo da Vinci)

!! BITTE !! stellt mir keine Fragen über PM, dafür ist das Forum da - andere haben vielleicht auch Interesse an der Antwort!

Einführende Links zu LabVIEW, s. GerdWs Signatur.
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
08.08.2015, 09:42 (Dieser Beitrag wurde zuletzt bearbeitet: 08.08.2015 10:14 von Felix777.)
Beitrag #3

Felix777 Offline
LVF-Gelegenheitsschreiber
**


Beiträge: 50
Registriert seit: Mar 2015

2012
2011
DE



RE: Erzeugung der Pulse mit NI USB 6002(DAQmx)
(08.08.2015 08:33 )jg schrieb:  Diese Karte ist zur Erzeugung von vielen PWM-Signalen einfach nicht geeignet.

Das ist mir schon längst klar, nur leider momentan habe ich keine andere Wahl. Ich MUSS mit dieser Karte "tricksen". Sad

(08.08.2015 08:33 )jg schrieb:  Deine DOs kannst du nur mit Softwaretakt schalten (also immer nur 1 Wert aus deinem Programm heraus), und der Counter dieser Karte kann auch keine Pulserzeugung.

Wäre es möglich einen externen Counter anzuschließen und über diesen einen Counter alle digitale Outputs steuern?

Ich würde mich sehr freuen, wenn ihr mir bei zwei Punkten helfen könnt:

1) Wie kann man die Karte ergänzen(externer Counter oder so), damit die eigener Masen irgendwie funktioniert.

2) Welche andere minimale Lösung bzw. Karte würde passen, damit es wirklich gute PWM-Pulse erzeugen kann. Also, die Gesamtpulsbreite(high und low) ist 20 ms , die high Pulse sind: 0,5 ms (rückwärts Fahren), 2,4 ms (vorwärts Fahren), 1,5 ms (stehen bleiben).

So wie ich verstehe, ich bräuchte eine Karte mit einem schnellen Counter auf dem Board.

Ich möchte mich entschuldigen, ich weiß, dass manche meine fragen zu doof sind Wink Ich habe aber leider nicht so viele Erfahrungen mit NI Hardware.

Danke im Voraus für eure Hilfe.
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
10.08.2015, 08:31 (Dieser Beitrag wurde zuletzt bearbeitet: 10.08.2015 09:14 von GerdW.)
Beitrag #4

GerdW Offline
______________
LVF-Team

Beiträge: 17.469
Registriert seit: May 2009

LV2021
1995
DE_EN

10×××
Deutschland
RE: Erzeugung der Pulse mit NI USB 6002(DAQmx)
Hallo Felix,

Zitat:Ich MUSS mit dieser Karte "tricksen".
Deine Arbeitszeit scheint sehr preiswert zu sein: Was du an Aufwand reinsteckst, wäre in einer "normalen" Firma kaum möglich/sinnvoll…

Zitat:1) Wie kann man die Karte ergänzen(externer Counter oder so), damit die eigener Masen irgendwie funktioniert.
Man kann ein externes Gerät verwenden, welches vernünftig PWM-Signale ausgeben kann. Ich verwende gern die Boxen der Firma MicroControl! (Die verlangen aber eine CAN(open)-Anbindung…)
Wahrscheinlich gibt es aber auch Geräte, die sich per RS232 oder LAN ansteuern lassen!
Alternative: 3 weitere USB6002 mit zusammen 6 AOs… Big Grin

Zitat:Also, die Gesamtpulsbreite(high und low) ist 20 ms , die high Pulse sind: 0,5 ms (rückwärts Fahren), 2,4 ms (vorwärts Fahren), 1,5 ms (stehen bleiben).
Du brauchst also 50Hz Grundfrequenz mit einer Einstellgenauigkeit von 0.1ms=10kHz oder 0.5% der Grundfrequenz. Die MicroControl-Boxen können das, deine USB6002 nicht!

Zitat:Ich habe aber leider nicht so viele Erfahrungen mit NI Hardware.
Dann ruft man in München an und lässt sich beraten…

Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
10.08.2015, 09:04
Beitrag #5

jg Offline
CLA & CLED
LVF-Team

Beiträge: 15.864
Registriert seit: Jun 2005

20xx / 8.x
1999
EN

Franken...
Deutschland
RE: Erzeugung der Pulse mit NI USB 6002(DAQmx)
(10.08.2015 08:31 )GerdW schrieb:  
Zitat:Also, die Gesamtpulsbreite(high und low) ist 20 ms , die high Pulse sind: 0,5 ms (rückwärts Fahren), 2,4 ms (vorwärts Fahren), 1,5 ms (stehen bleiben).
Du brauchst also 50Hz Grundfrequenz mit einer Einstellgenauigkeit von 0.1ms=10kHz oder 0.5% der Grundfrequenz. Die MicroControl-Boxen können das, deine USB6002 nicht!
Das wären nur 19 Schritte - so ein Servo kann doch mehr. Smile

Gruß, Jens

Wer die erhabene Weisheit der Mathematik tadelt, nährt sich von Verwirrung. (Leonardo da Vinci)

!! BITTE !! stellt mir keine Fragen über PM, dafür ist das Forum da - andere haben vielleicht auch Interesse an der Antwort!

Einführende Links zu LabVIEW, s. GerdWs Signatur.
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
10.08.2015, 09:12
Beitrag #6

GerdW Offline
______________
LVF-Team

Beiträge: 17.469
Registriert seit: May 2009

LV2021
1995
DE_EN

10×××
Deutschland
RE: Erzeugung der Pulse mit NI USB 6002(DAQmx)
Hallo Jens,

wo sind da "nur 19 Schritte"?

Der OP will ein 50Hz-PWM-Signal mit einem Duty von entweder 2.5%=rückwärts, 7.5%=stehen oder 12.0%=vorwärts ausgeben. Also muss er das Duty in 0.5%-Schritten einstellen können: das entspricht einer zeitlichen Auflösung von 0.1ms.
So interpretiere ich jedenfalls die doch sehr exakt wirkende Anforderung…

Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
Anzeige
10.08.2015, 09:46
Beitrag #7

jg Offline
CLA & CLED
LVF-Team

Beiträge: 15.864
Registriert seit: Jun 2005

20xx / 8.x
1999
EN

Franken...
Deutschland
RE: Erzeugung der Pulse mit NI USB 6002(DAQmx)
Offtopic2
Beim PDF-Link geht es doch um Modellbau-Servos. Die Länge des HIGH-Signals entspricht dann einer Position des Servos. Bei 0,1 ms Auflösung und Signallängen von 0,5-2,4 ms entspricht das (ok, Denkfehler) 20 Positionen. Falls wirklich nur exakt die angesprochenen 3 Werte angesteuert werden müssen, dann hast du Recht, aber die Erfahrung besagt etwas anderes. Wink Darauf wollte ich nur hinweisen.

Gruß, Jens

Wer die erhabene Weisheit der Mathematik tadelt, nährt sich von Verwirrung. (Leonardo da Vinci)

!! BITTE !! stellt mir keine Fragen über PM, dafür ist das Forum da - andere haben vielleicht auch Interesse an der Antwort!

Einführende Links zu LabVIEW, s. GerdWs Signatur.
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
10.08.2015, 20:15
Beitrag #8

Felix777 Offline
LVF-Gelegenheitsschreiber
**


Beiträge: 50
Registriert seit: Mar 2015

2012
2011
DE



RE: Erzeugung der Pulse mit NI USB 6002(DAQmx)
(10.08.2015 09:04 )jg schrieb:  Das wären nur 19 Schritte - so ein Servo kann doch mehr. Smile

Das sind noch weniger Schritte. Heute habe genau getestet. Abgelehnt

..also, ich brauche definitiv eine viel viel bessere Alternative.
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
10.08.2015, 20:31
Beitrag #9

jg Offline
CLA & CLED
LVF-Team

Beiträge: 15.864
Registriert seit: Jun 2005

20xx / 8.x
1999
EN

Franken...
Deutschland
RE: Erzeugung der Pulse mit NI USB 6002(DAQmx)
Was hast du (vor allem) wie getestet?

Gruß, Jens

Wer die erhabene Weisheit der Mathematik tadelt, nährt sich von Verwirrung. (Leonardo da Vinci)

!! BITTE !! stellt mir keine Fragen über PM, dafür ist das Forum da - andere haben vielleicht auch Interesse an der Antwort!

Einführende Links zu LabVIEW, s. GerdWs Signatur.
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
10.08.2015, 20:59
Beitrag #10

Felix777 Offline
LVF-Gelegenheitsschreiber
**


Beiträge: 50
Registriert seit: Mar 2015

2012
2011
DE



RE: Erzeugung der Pulse mit NI USB 6002(DAQmx)
(10.08.2015 09:46 )jg schrieb:  Offtopic2
Beim PDF-Link geht es doch um Modellbau-Servos. Die Länge des HIGH-Signals entspricht dann einer Position des Servos. Bei 0,1 ms Auflösung und Signallängen von 0,5-2,4 ms entspricht das (ok, Denkfehler) 20 Positionen.

Bei 2,4 ms bleibt der Servo stehen, bei 1,5 ms (stehen bleiben, laut Definition), bei 0,6 ms hat der Servo Problemen und knistert.
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
  NI USB 6001 und 6002 Current Input Begrenzung Kiesch 4 6.307 23.06.2022 13:10
Letzter Beitrag: Kiesch
  USB 6002 max Output mmk1988 4 5.053 16.09.2017 14:45
Letzter Beitrag: jg
  Pulse zählen Durchflussensor mit Hilfe einer Waveform Aisser 10 9.566 19.06.2017 19:15
Letzter Beitrag: GerdW
  Durchflusssensor - Pulse zählen/Frequenz messen zig 46 33.276 07.10.2014 09:56
Letzter Beitrag: zig
  Erzeugung eines stufenlos einstellbaren PWM-Signals Fredy Dilker 14 21.842 24.03.2014 11:01
Letzter Beitrag: GerdW
  Erzeugung einer PWM aus TTL Werten paddsen 19 14.956 10.09.2013 10:06
Letzter Beitrag: paddsen

Gehe zu: