25.09.2011, 18:34
Hallo allerseits,
ich steuere über einen CAN USB Adapter einen Wasserstoffelektrolyseur an, habe aber mit der Messdatenerfassung ein Problem.
Die maximale Übertragung beträgt 250kbit/s. Jetzt sendet der CAN aber immer nur mit einer bestimmten Frequenz die Werte und dann nicht, es werden also Nullen übertragen. Die Nullen eignen sich selbstverständlich nicht für die Auswertung.
Ich lese in einer While Schleife den CAN ein, behandele die Daten und lasse eine Ereignisstruktur mit einem Timeout folgen. Sobald ich über 250ms timeout gehe, habe ich zwar das Problem mit den Nullen überwunden, dann wird die Übertragung aber zu langsam. Das sieht man daran, dass die Statusanzeige dann nicht mehr mit dem tatsächlichen Gerätezustand überienstimmt und nur verzögert herüber kommt
(Gerät ist aus, es wird aber "herunterfahren" noch angezeigt).
Habe ich da eventuell grundsätzlich etwas falsch verstanden?
Besten Dank,
Jonas
Gerade habe ich diesen Thread entdeckt:
http://www.labviewforum.de/Thread-CAN-Traffic-loggen
Kann ich nicht einfach vor dem Erfassen prüfen lassen, ob die Länge der Mitteilung >0 ist und falls es nicht zutrifft, nichts unternehmen?
Dann würden die Werte von davor nicht mit Nullen überschrieben?
ich steuere über einen CAN USB Adapter einen Wasserstoffelektrolyseur an, habe aber mit der Messdatenerfassung ein Problem.
Die maximale Übertragung beträgt 250kbit/s. Jetzt sendet der CAN aber immer nur mit einer bestimmten Frequenz die Werte und dann nicht, es werden also Nullen übertragen. Die Nullen eignen sich selbstverständlich nicht für die Auswertung.
Ich lese in einer While Schleife den CAN ein, behandele die Daten und lasse eine Ereignisstruktur mit einem Timeout folgen. Sobald ich über 250ms timeout gehe, habe ich zwar das Problem mit den Nullen überwunden, dann wird die Übertragung aber zu langsam. Das sieht man daran, dass die Statusanzeige dann nicht mehr mit dem tatsächlichen Gerätezustand überienstimmt und nur verzögert herüber kommt
(Gerät ist aus, es wird aber "herunterfahren" noch angezeigt).
Habe ich da eventuell grundsätzlich etwas falsch verstanden?
Besten Dank,
Jonas
Gerade habe ich diesen Thread entdeckt:
http://www.labviewforum.de/Thread-CAN-Traffic-loggen
Kann ich nicht einfach vor dem Erfassen prüfen lassen, ob die Länge der Mitteilung >0 ist und falls es nicht zutrifft, nichts unternehmen?
Dann würden die Werte von davor nicht mit Nullen überschrieben?