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 

Doppelpuls Signal über CSV in Digitaldaten Tabelle und als Output schalten



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!

16.02.2021, 14:05
Beitrag #21

Lucky. Offline
LVF-Grünschnabel
*


Beiträge: 33
Registriert seit: Jan 2021

20.0
2019
DE

24***
Deutschland
RE: Doppelpuls Signal über CSV in Digitaldaten Tabelle und als Output schalten
Hallo Gerd,

das das mit den Konstanten leuchtet mir ein. Das mit den Bedienelementen und Anzeigen leider nicht.
Das Pulsprogramm befindet sich in der Hauptschleife, das wird wohl schleif sein, da wir so nicht wieder in die Hauptschleife kommen richtig? Ich könnte also die Pulsprogrammschleife außerhalb der Hauptschleife anordnen um das Problem zu lösen.

Ich habe in den 8 Std vor allem versucht zu verstehen, was der PWM Ausgang den liefert. Und so wie ich es verstehe, kann ich anhand der On / Off Zeiten einen Wert berechnen. Aber ich habe mit einem solchen PWM Signal bisher nur von Motorensteuerung gehört, was mir auch einleuchtet. Jedoch wie ich ein PWM Signal in Labview einlese bzw. dies in ein Temperatur Signal konvertiere ich mir völligs suspekt... Da finde ich auch kaum Themen drüber die mir essentiell weiterhelfen.

Freue mich auf eine Antwort.
Lukas

Anniemacht_2Bahn


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

GerdW Offline
______________
LVF-Team

Beiträge: 17.471
Registriert seit: May 2009

LV2021
1995
DE_EN

10×××
Deutschland
RE: Doppelpuls Signal über CSV in Digitaldaten Tabelle und als Output schalten
Hallo Lucky.,

Zitat:Ich habe in den 8 Std vor allem versucht zu verstehen, was der PWM Ausgang den liefert. Und so wie ich es verstehe, kann ich anhand der On / Off Zeiten einen Wert berechnen. Aber ich habe mit einem solchen PWM Signal bisher nur von Motorensteuerung gehört, was mir auch einleuchtet. Jedoch wie ich ein PWM Signal in Labview einlese bzw. dies in ein Temperatur Signal konvertiere ich mir völligs suspekt...
Was hast du denn versucht?
Welche Messhardware willst du verwenden?
Hast du dir den PWM mal auf einem Oszilloskop angeschaut?

Lt. deinem Datenblatt läuft der PWM mit 400kHz Grundfrequenz, da benötigst du schon eine schnelle DI-Messkarte: welche Messhardware willst du verwenden? Unterstützt die Messkarte Counter-Messungen? Unterstützt die ScanEngine diese Messhardware?
Wenn du im FPGA die Pulse auszählen willst: einfach auf steigende und fallende Flanken im Digitalsignal warten und jeweils einen Timestamp/Zyklenzähler speichern. PWM ist dann Time_High/(Time_High+Time_Low)…

Und die Umrechnung von PWM-% nach Temperatur ist dann eine lineare Skalierung wie im Datenblatt beschrieben, das sollte eigentlich kein Problem darstellen. (Mathe-Unterricht 4.-7. Klasse!)

Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
16.02.2021, 14:29 (Dieser Beitrag wurde zuletzt bearbeitet: 16.02.2021 14:29 von Lucky..)
Beitrag #23

Lucky. Offline
LVF-Grünschnabel
*


Beiträge: 33
Registriert seit: Jan 2021

20.0
2019
DE

24***
Deutschland
RE: Doppelpuls Signal über CSV in Digitaldaten Tabelle und als Output schalten
Hardware ist ein C-Modul NI-9215 mit 4-Analogen-Diff-Eingängen +-10V, 100 kS/s pro Kanal simultan, 16 bit. Ich hab den mit der Schraubklemme. Auslesen tue ich die Eingänge über das FPGA.vi. Siehe Anhang.

Ein Oszilloskop habe ich nicht zur Verfügung.


Angehängte Datei(en) Thumbnail(s)
   

0.0 .pdf  373779a_02.pdf (Größe: 1,26 MB / Downloads: 383)
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
16.02.2021, 14:40 (Dieser Beitrag wurde zuletzt bearbeitet: 16.02.2021 14:41 von GerdW.)
Beitrag #24

GerdW Offline
______________
LVF-Team

Beiträge: 17.471
Registriert seit: May 2009

LV2021
1995
DE_EN

10×××
Deutschland
RE: Doppelpuls Signal über CSV in Digitaldaten Tabelle und als Output schalten
Hallo Lucky.,

Zitat:Hardware ist ein C-Modul NI-9215 mit 4-Analogen-Diff-Eingängen +-10V, 100 kS/s pro Kanal simultan
Wenn du den PWM mit dem AI einlesen wolltest, müsstest du die AI gleich im FPGA auslesen und auswerten - die ScanEngine ist dafür zu langsam!
Dummerweise ist das Modul selbst aber zu langsam für deinen 400kHz-PWM: du hast schon mal von den Herren Shannon und Nyquist gehört?

Dann also doch die im Datasheet erwähnte Methode mit dem RC-Filter: du bekommst direkt einen analogen Wert und musst den nur noch per linearer Skalierung umrechnen! (Da es sich jetzt um einen "langsamen" Messwert handelt, kannst du die Spannung auch wieder per ScanEngine auslesen und machst die Umrechnung dann im RT-VI.)

Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
16.02.2021, 15:27 (Dieser Beitrag wurde zuletzt bearbeitet: 16.02.2021 16:25 von Lucky..)
Beitrag #25

Lucky. Offline
LVF-Grünschnabel
*


Beiträge: 33
Registriert seit: Jan 2021

20.0
2019
DE

24***
Deutschland
RE: Doppelpuls Signal über CSV in Digitaldaten Tabelle und als Output schalten
Habe nochmal das Haupt VI aktualisiert. Ich verstehe wie gesagt nicht wie ich die ganzen Bedienelemente und Anzeigeelemente noch schöner mit dem Array verknüpfen kann.

Ich habe für das Haupt V nun 1ms als Takt vorgegeben. Ohne Taktvorgabe wäre es doch aber ebenfalls das gleiche gewesen oder nicht?

Die Auswertung im FPGA.vi für das Signal hatte ich auch vor. Das mit der RC Schaltung macht dann Sinn. Dies haben wir auf unserem Doppelpuls Board bereits auch vorgesehen. Anbei lege ich nochmal das vielversprechende Schaltbild wonach hier desöfteres gefragt wurde.


Angehängte Datei(en) Thumbnail(s)
   

0.0 .pdf  Treiber.pdf (Größe: 432,78 KB / Downloads: 237)
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
16.02.2021, 21:09 (Dieser Beitrag wurde zuletzt bearbeitet: 16.02.2021 21:28 von Lucky..)
Beitrag #26

Lucky. Offline
LVF-Grünschnabel
*


Beiträge: 33
Registriert seit: Jan 2021

20.0
2019
DE

24***
Deutschland
RE: Doppelpuls Signal über CSV in Digitaldaten Tabelle und als Output schalten
Aber der NTC APWM ist nicht linear. Wie bildest du den am besten in einer Funktion ab?

Folgende Module habe ich ebenfalls zur Verfügung, jedoch wie ich die Datenblätter lese, können die Digital Input Module ein Highsignal erst weit über 5V erkennen. Und das wäre ja falsch oder ist meine Denkweise hier falsch?

Verfügbare Module:
NI-9215
NI-9375
NI-9264
2x NI-9423


Angehängte Datei(en) Thumbnail(s)
   
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
Anzeige
16.02.2021, 21:59 (Dieser Beitrag wurde zuletzt bearbeitet: 16.02.2021 22:02 von GerdW.)
Beitrag #27

GerdW Offline
______________
LVF-Team

Beiträge: 17.471
Registriert seit: May 2009

LV2021
1995
DE_EN

10×××
Deutschland
RE: Doppelpuls Signal über CSV in Digitaldaten Tabelle und als Output schalten
Hallo Lucky.,

Nachtrag zu den ganzen Buttons/LEDs:
   

Zitat:Aber der NTC APWM ist nicht linear. Wie bildest du den am besten in einer Funktion ab?
Du erstellst dir ein Array of points (aka array of cluster of [x, y]) mit den Stützstellen der NTC-Kennlinie.
Dann nimmst du Interpolate1DArray, um aus einem X-Wert (Spannung) einen Y-Wert (Temperatur) zu interpolieren…

Zitat:Ich habe für das Haupt V nun 1ms als Takt vorgegeben. Ohne Taktvorgabe wäre es doch aber ebenfalls das gleiche gewesen oder nicht?
Ohne Wartezeit versucht LabVIEW, die Schleife so schnell wie nur möglich abzuarbeiten.
Mit 1ms Wartezeit denkst du, dass du mit 1000Hz iterieren kannst - das ist für die ScanEngine (wahrscheinlich) viel zu schnell. Mess doch einfach mal die Iterationszeit, die die Schleife erreicht.
Ich würde hier eher mit 20ms/50Hz arbeiten…

Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
16.02.2021, 23:49 (Dieser Beitrag wurde zuletzt bearbeitet: 16.02.2021 23:53 von Lucky..)
Beitrag #28

Lucky. Offline
LVF-Grünschnabel
*


Beiträge: 33
Registriert seit: Jan 2021

20.0
2019
DE

24***
Deutschland
RE: Doppelpuls Signal über CSV in Digitaldaten Tabelle und als Output schalten
(16.02.2021 21:59 )GerdW schrieb:  Hallo Gerd.,

[quote]
Nachtrag zu den ganzen Buttons/LEDs:

Aus dem Bild mit den Buttons werde ich nicht ganz schlau. Das ist ja quasi in Array ändern. Den Index kann man zwar auf der Bedienoberfläche weg machen, aber die booleschen Operationen "Latch beim Loslassen" z.Bsp. geht dann nicht mehr. attachment=61653]


Angehängte Datei(en) Thumbnail(s)
   
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
17.02.2021, 08:08
Beitrag #29

GerdW Offline
______________
LVF-Team

Beiträge: 17.471
Registriert seit: May 2009

LV2021
1995
DE_EN

10×××
Deutschland
RE: Doppelpuls Signal über CSV in Digitaldaten Tabelle und als Output schalten
Hallo Lucky.,

Zitat:Das ist ja quasi in Array ändern. Den Index kann man zwar auf der Bedienoberfläche weg machen, aber die booleschen Operationen "Latch beim Loslassen" z.Bsp. geht dann nicht mehr.
Ja, in Array ändern…
Wozu benötigst du "Latch when released"? Sollen deine Ausgänge für nur eine einzige Millisekunde angehen?

Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
18.02.2021, 15:53 (Dieser Beitrag wurde zuletzt bearbeitet: 18.02.2021 15:54 von Lucky..)
Beitrag #30

Lucky. Offline
LVF-Grünschnabel
*


Beiträge: 33
Registriert seit: Jan 2021

20.0
2019
DE

24***
Deutschland
RE: Doppelpuls Signal über CSV in Digitaldaten Tabelle und als Output schalten
Zitat:Ja, in Array ändern…
Wozu benötigst du "Latch when released"? Sollen deine Ausgänge für nur eine einzige Millisekunde angehen?

Das hatte er automatisch so eingestellt. Als Schalter geht es natürlich.
Eine weitere andere Frage Anniespam :

Wie kann ich durch das beenden des VI, alle Ausgänge der Module in einen sicheren Zustand übergehen lassen. Also alle Ausgänge bzw. die die ich als relevant betrachte auf 0V schalten?

Bisher sieht meine Lösung hierzu so aus.

Kommen wir auch zu meiner weiteren Frage, wieso kann ich die Stopp Bedingungen bei mehreren Schleifen nicht per Verbindung zwischen zwei Schleifen tunneln? Das funktioniert irgendwie nicht, stattdessen musste ich eine lokale Variable hierfür anlegen, damit ich mit den Button "Programm beende" alle relevanten Schleifen beenden kann und das VI stopp. Hast du hierzu noch andere möglichkeiten das Programm zu beenden, vieleicht ein bisschen edler :-D ?

Desweiteren Frage ich mich, wie man ebenfalls eleganter Analoge Werte nur alle 250ms auslesen kann, so wie ich es jetzt in der einer Schleifen getan habe. Hier hatte ich einige Schwierigkeiten, wenn die Analogauslese Schleife in der Hauptschleife drinne ist. Dann funktionierte garnichts mehr, da ja wahrscheinlich die Unterschleife nur alle 250ms wieder in die Hauptschleife springt, richtig?

Ich freue mich auf die ganz vielen tollen Antworten :-)

Mfg
Lukas


Angehängte Datei(en) Thumbnail(s)
       
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
Antwort schreiben 


Gehe zu: