BWP-SS19-01/Grob Design

Aus Verteilte Systeme - Wiki
Zur Navigation springen Zur Suche springen

Hardware

Im Folgenden wird der Aufbau der Hardware als Block-Definition Diagramm dargestellt.

SysML Diagramm
Sysml_diagramm

Software

Allgemein

Als Software wird Zephyr OS mit folgenden Tasks verwendet. Sequenz-Diagramme:

Sequenz-Diagramm Main Control
Sequenzdiagramm Main Control
Sequenz-Diagramm Coulomb Counter
Sequenzdiagramm Coulomb Counter
Sequenz-Diagramm IMU
Sequenzdiagramm IMU
Sequenz-Diagramm Laser-/Ultraschallsensoren
Sequenzdiagramm Laser/Ultraschall
Sequenz-Diagramm Engine
Sequenzdiagramm Engine

Einzelmodule

Im folgenden werden die Einzelmodule grob beschrieben.

Energy Management System

Das Energy Management System verwendet den Coulomb-Counter zur Messung der Energie und beinhaltet Mechanismen, die den Energie-Eintrag und den Energie-Verbrauch überwachen.

Dabei soll sowohl der Akku-Stand überwacht werden als auch der Energie-Verbrauch der einzelnen Roboter-Bewegungen und Einzel-Berechnungen der jeweils anderen Module aufgezeichnet werden.

Dieses Aufzeichnen der Berechnungen und Bewegungen soll im späteren Verlauf dazu verwendet werden können, um zu lernen wie viel Energie ein einzelner Ausführungs-Schritt benötigt, womit dann der Energieverbrauch von Ausführungs-Ketten im Voraus berechnet werden kann.

Diese Vorausberechnung soll wie folgt funktionieren:

  • Jede Bewegung und jede Berechnung wird einem State einer State-Maschine zugeordnet
  • Jedem State wird ein Mittelwert und eine Zähler-Variable gegeben
  • Bei der Ausführung eines States wird der Mittelwert mit folgender Formal aktualisiert und die Zähler-Variable wird hochgezählt
 MW_neu_ = (MW_alt_ * N + X) / (N+1)
  • Nun kann die Motorsteuerung eine Ausführungs-Kette bei dem Energie Management System anfragen und erhält die zusammenaddierten Mittelwerte zurückgeliefert
  • Zusammen mit dem Akku-Stand kann daraus errechnet werden, ob der Roboter noch genug Energie führt eine bestimmte Aufgabe hat.

Odometrie

BLE und Logging