LabVIEWForum.de
SPC(Short PWM Code) auslesen. - Druckversion

+- LabVIEWForum.de (https://www.labviewforum.de)
+-- Forum: LabVIEW (/Forum-LabVIEW)
+--- Forum: LabVIEW Allgemein (/Forum-LabVIEW-Allgemein)
+---- Forum: Datenerfassung (DAQ) (/Forum-Datenerfassung-DAQ)
+---- Thema: SPC(Short PWM Code) auslesen. (/Thread-SPC-Short-PWM-Code-auslesen)

Seiten: 1 2 3


SPC(Short PWM Code) auslesen. - Keywan - 02.11.2015 13:37

Hallo zusammen,

Ich würde gerne von 2 Winkelsensoren die Winkelwerte auslesen.

Die Sensoren arbeiten mit dem SPC-Protokoll(erweiterung von SENT).
Die Dateninhalte der SENT-Nachricht werden über die Zeit, die zwischen zwei negativen Pulsflanken verstreicht, kodiert.

[attachment=54458]

Das Signal lese ich über den Analogkanal ein, leider "wandert" das Signal und flackert, sodass die Messung immer nur zu einer bestimmten Zeit anfängt und dann wieder aufhört und die Messergebnisse hin und her schwanken.
Ich würde gerne die Signale kontinuierlich und parallel Auslesen.


Ich hoffe ich bin mit meinen Ansätzen richtig. Für jeden Tipp bin ich dankbar.

Freundliche Grüße Keywan

Ich arbeite mit der NI 6218

VI
[attachment=54459]
SubVI
[attachment=54460]

[attachment=54457]

EDIT jg: Externe Bildlinks gelöscht.


RE: SPC(Short PWM Code) auslesen. - jg - 02.11.2015 13:47

Offtopic2
Bitte in Zukunft die LVF-Regeln beachten und auch Screenshots hier im Forum hochladen.

Danke, Jens


RE: SPC(Short PWM Code) auslesen. - GerdW - 02.11.2015 14:14

Hallo Keywan,

Zitat:Die Sensoren arbeiten mit dem SPC-Protokoll(erweiterung von SENT). Die Dateninhalte der SENT-Nachricht werden über die Zeit, die zwischen zwei negativen Pulsflanken verstreicht, kodiert.
Warum arbeitest du bei einem digitalen Signal mit Analogeingängen? Warum nicht mit Digitaleingängen, die mit genügend hoher Abtastrate eingelesen werden?


RE: SPC(Short PWM Code) auslesen. - Keywan - 02.11.2015 14:16

Danke Jens,

Dachte das mit den Screenshots wie ich das gemacht habe würde passen. Das nächste mal weis ich es besser.
Den Beitrag von mir hast du ja jetzt verbessertSmile Passt jetzt soweit alles?

Gruß
Keywan
Zitat:Warum arbeitest du bei einem digitalen Signal mit Analogeingängen? Warum nicht mit Digitaleingängen, die mit genügend hoher Abtastrate eingelesen werden?

Das Liegt daran, dass die "Box" die mir zu Verfügung steht nur mit BNC Anschlüssen an den analogen Kanälen versehen ist und ich an die andere Kanäle bzw Pins nicht rankomme.

Ich dachte ich könnte eine reine Software Lösung erstellen.

Wenn es wesentlich einfacher ist an mein Ziel zu kommen die Digitaleingänge zu benutzen. Dann werde ich wohl oder übel die Box aufmachen müssen und mir die Pins selbst rauslegen.

PS: ich habe nur die NI6218 Karte ohne das gehäuse von NI. Das Gehäuse ist von jemand anderem erstellt worden.


RE: SPC(Short PWM Code) auslesen. - jg - 02.11.2015 14:51

Da du eine USB-6218 hast, wirst du keine schnelle Erfassung per DIO hinbekommen. Diese Karte kann bei den DIOs nur Software-Takt.

Gruß, Jens


RE: SPC(Short PWM Code) auslesen. - GerdW - 02.11.2015 15:07

Ok, wie Jens schon sagte, erlaubt deine Hardware kein schnelles DI.
Du könntest aber trotzdem
- vor dem Eingang einen Schmitttrigger setzen, der dein Signal "stabilisiert" (Stichwort TTL 7414).
- deine gemessenen AI-Daten mit einem einfachen Vergleich zu einem Digitalsignal machen

Dann kannst du nämlich sehr einfach Flankenwechsel bestimmen und die Abstände dazwischen…


RE: SPC(Short PWM Code) auslesen. - Keywan - 03.11.2015 08:30

Danke GerdW,

das mit dem Schmitt-Trigger werde ich probieren und schauen was dabei rauskommt


RE: SPC(Short PWM Code) auslesen. - Keywan - 03.11.2015 09:49

Zitat:- vor dem Eingang einen Schmitttrigger setzen, der dein Signal "stabilisiert" (Stichwort TTL 7414).
- deine gemessenen AI-Daten mit einem einfachen Vergleich zu einem Digitalsignal machen

In wiefern würde das Signal "stabilisiert" sein? Ich habe ja ein verwendbares Signal, nur wandert es von rechts nach links laut dem Graphen und auch meiner Messung.
Ich würde am liebsten das Signal wie an einem Oszi triggern, dass das Signal "steht" und trotzdem wenn ich am Sensor drehe möchte ich die Winkelveränderung sofort sehen.

Ich hab mal 2 Screenshots gemacht mit ~10sec Zeitdifferenz

[attachment=54471]
[attachment=54472]


RE: SPC(Short PWM Code) auslesen. - GerdW - 03.11.2015 09:57

Hallo Keywan,

Zitat:In wiefern würde das Signal "stabilisiert" sein?
Der Schmitttrigger sorgt für steile(re) Flanken und damit eine vereinfachte Flankenerkennung in deiner Software.

Zitat:Ich habe ja ein verwendbares Signal, nur wandert es von rechts nach links laut dem Graphen und auch meiner Messung.
Weil du dein VI so programmiert hast: neue Messwerte werden im Plot dargestellt und "schieben" die älteren nach links aus dem Bild…

Zitat:Ich würde am liebsten das Signal wie an einem Oszi triggern, dass das Signal "steht"
Dann musst du die Anzeige so programmieren, dass du den gleichen Trigger wie dein Oszi erkennst und nur die darauf folgenden Daten graphisch darstellst…

Zitat:und trotzdem wenn ich am Sensor drehe möchte ich die Winkelveränderung sofort sehen.
Hmm
Einerseits willst du erstmal einen Trigger suchen und trotzdem "sofort" die auf den Trigger folgenden Daten darstellen?
Also die Reihenfolge sollte eigentlich sein:
- Trigger im Signalverlauf suchen
- die auf den Trigger folgenden Daten suchen/auswerten
- dann das Ergebnis dieser Auswertung darstellen…


RE: SPC(Short PWM Code) auslesen. - IchSelbst - 03.11.2015 10:40

(03.11.2015 08:30 )Keywan schrieb:  das mit dem Schmitt-Trigger werde ich probieren und schauen was dabei rauskommt
Ich würde kein externes IC verwenden. Nimm die Softwarelösung ("Schwellwertvergleicher"), die ist ganz einfach: Irgendwo hat du ja ein DAQmx-Lesen. Dessen Ausgangsdaten tust du vor jeder weiteren Verarbeitung bereits digitalisieren.