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, 15:43
Beitrag #17

Andinger Offline
LVF-Gelegenheitsschreiber
**


Beiträge: 65
Registriert seit: Feb 2010

7.1
2010
de_en

95447
Deutschland
Gaspruefstand - Programm
Hehe, ich muss das hier kurz mal aufgreifen:
Rekapitulation:

Ein Loop, dass Analog-DAQ mit hoher Samplerate ausliest und mit moderater Rate (1-100 Hz) in eine Datei schreibt.
Ein anderes Loop, das CAN - Daten ausliest und diese in einen Notifier schreibt.

Das AnalogDAQ Loop liest den Notifier und schreibt dessen Werte mit in die selbe Datei wie die AI-Werte.

CAN Daten sind aber pro Schreibvorgang weniger/mehr (je nach eingestellen Sampleraten) vorhanden als AI Daten. Also die Loops laufen mit verschiedenen Geschwindigkeiten


Meine Idee war jetzt, die Anzahl der Werte die aus dem Puffer gelesen werden bei beiden Loops identisch zu machen. Dann sind die Daten Arrays wenigstens gleich lang.
Allerdings hat man damit gravierende Probleme:
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.

1. 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.

2. Das Schreiben-Loop schreibt solang bis der Notifier aktualisiert wurde 100 x das 100er-Paket CAN Daten in Folge in die Ausgabedatei. Man hat also ein Muster dass sich wiederholt und einfach nur falsch ist.

3. Die Zeitinformation passt ja sowieso dann ueberhaupt nicht mehr...
Insofern verwerfe ich meine Idee sofort wieder - war quatsch.

Gibts da irgendwie eine geschickte Moeglichkeit das hinzubiegen? Meine Notloesung ist, CAN nicht individuell in der Samplerate zu gestalten sondern an die Datei-Schreib-Rate zu koppeln.
Dann hat man keine Probleme, kann aber auch nur maximal CAN mit 100 Hz lesen
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: