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 

Gaspruefstand - Programm



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!

03.03.2010, 16:44
Beitrag #18

IchSelbst Offline
LVF-Guru
*****


Beiträge: 3.708
Registriert seit: Feb 2005

11, 14, 15, 17, 18
-
DE

97437
Deutschland
Gaspruefstand - Programm
' schrieb:CAN Daten sind aber pro Schreibvorgang weniger/mehr (je nach eingestellen Sampleraten) vorhanden als AI Daten. Also die Loops laufen mit verschiedenen Geschwindigkeiten
Das Problem, das hier auftritt, ist also die Synchronität der Daten. Die Daten selbst werden tatsächlich synchron produziert. Allerdings in unterschiedlichen Datenstreams. Beim Zusammenführen dieser beiden Streams zu einem treten genau die Probleme auf, die du beschrieben hast.

Setze dich mal mit Signalverläufen auseinander. Ein Signalverlauf enthält immer auch den Samplezeitpunkt (wenn auch nur indirekt aus Start und Offset etc.). LV sollte also in der Lage sein, beim Zusammenführen zweier Siganlverläufe diese so zusammenzuführen, dass ein synchroner Datenstream entsteht. Ich selbst war noch nie in der Verlegenheit, derartiges machen zu müssen.


Zitat:Allerdings hat man damit gravierende Probleme:
Stimmt.
Zitat:Z. B. wenn CAN nur mit 1 Hz laueft, aber das AI/DAQ Loop mit 100 Hz schreibt: Dann dauert es jedesmal 100 Sekunden bis ein neues CAN Paket fertig ist.
Wenn ein derart großer Unterschied zwischen den Abtastraten besteht, kann man (bin ich) wie folgt vorgehen: Der langsame Prozess schreibt seine Daten in einen Melder. Der wird dann halt alle Sekunden refresht. Der schnellere Prozess fügt zu jedem seiner Datenpakete einfach den Wert aus dem Melder hinzu. Bei diesem Verfahren gehe ich davon aus, dass der eine Wert für den gesamten Zeitraum gültig ist. Ist der Unterschied der Abtastraten groß genug und die Samplepakete der schnellen Task klein genug, so minimiert sich der "Gleichzeitigkeits"-Fehler, den dieses Verfahren automatisch beinhaltet.

Zitat:Wenn der Anwender zwischenzeitlich abbricht, muss er a)100 Sekunden warten und b) ist das Schreiben-Loop schon laengst vom Stop-Befehl beendet worden, die letzen Daten gehen also verloren.
Solchen Effekten kann man programmatisch vorbeugen: indem man die 100 Sekunden nicht am Stück wartet, sondern 1000x100ms. Dann kann man auch 100 Sekunden schlenn abbrechen.

Zitat:Meine Notloesung ist, CAN nicht individuell in der Samplerate zu gestalten sondern an die Datei-Schreib-Rate zu koppeln.
Wenn das für die Applikation kein Nachteil ist, würde ich das so machen.

Jeder, der zur wahren Erkenntnis hindurchdringen will, muss den Berg Schwierigkeit alleine erklimmen (Helen Keller).
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
Antwort schreiben 


Nachrichten in diesem Thema
Gaspruefstand - Programm - Andinger - 22.02.2010, 19:36
Gaspruefstand - Programm - IchSelbst - 22.02.2010, 22:37
Gaspruefstand - Programm - Andinger - 22.02.2010, 23:34
Gaspruefstand - Programm - IchSelbst - 23.02.2010, 09:42
Gaspruefstand - Programm - Andinger - 23.02.2010, 15:02
Gaspruefstand - Programm - IchSelbst - 23.02.2010, 15:41
Gaspruefstand - Programm - Andinger - 23.02.2010, 23:01
Gaspruefstand - Programm - IchSelbst - 23.02.2010, 23:46
Gaspruefstand - Programm - Andinger - 24.02.2010, 14:51
Gaspruefstand - Programm - Andinger - 24.02.2010, 15:04
Gaspruefstand - Programm - IchSelbst - 24.02.2010, 16:38
Gaspruefstand - Programm - Andinger - 24.02.2010, 17:09
Gaspruefstand - Programm - Andinger - 24.02.2010, 18:40
Gaspruefstand - Programm - IchSelbst - 24.02.2010, 18:54
Gaspruefstand - Programm - IchSelbst - 24.02.2010, 19:06
Gaspruefstand - Programm - Andinger - 24.02.2010, 20:08
Gaspruefstand - Programm - Andinger - 03.03.2010, 15:43
Gaspruefstand - Programm - IchSelbst - 03.03.2010 16:44

Gehe zu: