BWP-SS19-01/Grob Design: Unterschied zwischen den Versionen

Aus Verteilte Systeme - Wiki
Wechseln zu: Navigation, Suche
(Hardware)
(Energy Management System)
 
(2 dazwischenliegende Versionen desselben Benutzers werden nicht angezeigt)
Zeile 11: Zeile 11:
  
 
== Software ==
 
== Software ==
 +
 +
=== Allgemein ===
  
 
Als Software wird Zephyr OS mit folgenden Tasks verwendet.  
 
Als Software wird Zephyr OS mit folgenden Tasks verwendet.  
Zeile 49: Zeile 51:
 
|-}
 
|-}
 
</table>
 
</table>
 +
 +
=== 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 ====

Aktuelle Version vom 10. Juni 2019, 11:12 Uhr

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