2016-08-15 4 views
1

Wenn die BACnet Proxy und MasterDriver Agenten ausgeführt wird, erhalte ich folgende Fehlermeldung:VOLTTRON: Gerätekommunikation abgebrochen: segmentationNotSupported

master_driver.driver ERROR: Failed to scrape Device Name: RuntimeError('Device communication aborted: segmentationNotSupported')

Kann mir jemand helfen, diesen Fehler zu beheben?

+0

können Sie einen Code bereitstellen? –

Antwort

1

BACnet hat eine Größenbeschränkung für die Größe einer Nachricht. Die Nachrichtengröße hat verschiedene gültige Werte basierend auf der BACnet-Spezifikation. Wenn ein Gerät eine Nachricht senden möchte, die die unterstützte Größe beider Geräte überschreitet, kann es die Nachricht in kleinere Teile segmentieren. Beide Geräte müssen die Segmentierung unterstützen, damit dies funktioniert. Andernfalls erhalten Sie den Fehler, den Sie sehen.

Die Ursache für diesen Fehler ist, dass das geraspelte Gerät die Segmentierung nicht unterstützt und die Anzahl der Punkte, die vom Treiber gleichzeitig abgekratzt werden (standardmäßig alle), zu groß ist, um Segmentierung oder Empfang zu vermeiden .

Der BACnet-Treiber unterstützt derzeit manuelle Segmentierung, um diese Gerätebeschränkung zu überwinden, ohne die Anzahl der im Treiber konfigurierten Punkte zu reduzieren. Sie können die Einstellung max_per_request im Abschnitt driver_config einer BACnet-Gerätekonfiguration festlegen. Die Einstellung ist pro Gerät, also müssen Sie max_per_request in jedes betroffene Gerät einbeziehen. Ein typischer Wert ist 20. Wenn der Fehler weiterhin besteht, versuchen Sie niedrigere Werte.

Eine geplante zukünftige Verbesserung für den BACnet-Treiber besteht darin, diesen Fall automatisch zu erkennen und automatisch einen idealen max_per_request-Wert festzulegen.

EDIT

ich auch, dass das max_per_request Argument wurde erwähnen sollte 3,0 nach VOLTTRON hinzugefügt. Sie müssen entweder 3.5RC1 oder den Entwicklungszweig ausführen.

+0

Hey Kyle. Vielen Dank für Ihre Erklärung. Ich habe den max_per_request Wert auf 1 reduziert, aber der Fehler wurde nicht beseitigt. – Sen

+0

Wie viele BACnet-Treiber laufen Sie? Es muss für jedes betroffene Gerät in jede Konfiguration gehen. Ich werde meine Antwort bearbeiten, um das klarzustellen. Könnten Sie eine Ihrer Konfigurationsdateien zu Ihrer Frage hinzufügen, damit wir sicherstellen können, dass Sie es richtig machen? –

+0

Welche Version von VOLTTRON verwenden Sie auch? Ich denke nicht, dass diese Funktion in der 3.0 stable Version ist. –