kramann.info
© Guido Kramann

Login: Passwort:










12 Hardwareoptimierung - Anleitung zu Projektteil 3

Wie geht es weiter?

  • Im dritten Teil der Projektarbeit fließen die beiden ersten Teile zusammen.
  • Die Simulation soll den Optimierungsprozeß der Hardware unterstützen.
  • Das Ziel ist folgendes:
Schreiben Sie ein Programm das auf alle COACH-Vehikel übertragen wird, bei dem die Vehikel aus beliebigen Anfangspositionen möglichst bald im Konvoi gegen Uhrzeigersinn entlang der Wand eines Flures fahren.
  • Die Arbeiten in den einzelnen Gruppen können sich in folgendem Spannungsfeld bewegen:
Bandbreite bei der Bearbeitung des dritten Projektteils.

Bild 12-1: Bandbreite bei der Bearbeitung des dritten Projektteils.

Welcher gemeinsame Stand sollte bei der Hardware angestrebt werden?

  • Die Vehikel lassen sich über Funk gemeinsam starten.
  • Die Vehikel zeigen PWM und Sensordaten am LCD-Display an und geben Auskunft über den logischen Zustand ("Hindernis erkannt in 20cm Entfernung" u.ä.).
  • Ob eine Drehzahlerfassung mit vorgesehen wird, soll gemeinsam wegen der notwendigen Hardwareänderungen diskutiert werden.

Welcher gemeinsame Stand sollte bei der Simulations- und Optimierungssoftware angestrebt werden und wie sollte dabei vorgegangen werden?

  • Als Vorbereitung für dieses Kapitel wird zunächst Kapitel 13 "Genalgorithmus" aus der Vorlesung Simulationstechnik in kramann.info behandelt.
  • Nachfolgendes Bild zeigt die zu erstrebende Ablauf des Gesamtprogrammes:
Sequenzielle Betrachtung des Gesamtprogramms.

Bild 12-2: Sequenzielle Betrachtung des Gesamtprogramms.

  • Im nun folgenden Bild ist die hierarchische Struktur des Programms dargestellt.
  • Die Arrays aller Objekte (DNAs, Modelle, Integratoren) sollten zu Beginn des Hauptprogramms erzeugt und dann deren Zeiger und deren Anzahl an die Unterfunktionen zur Optimierung und Simulation übergeben werden.
  • Während die DNAs sich einmal pro Optimierungsschritt ändern, ändert sich der Modellzustand mit jedem Integrationsschritt.
  • ACHTUNG: Für den ganzen Vehikelschwarm wird immer nur eine DNA verwendet.
  • In jeder Optimierungsgeneration liegen z.B. 100 DNAs vor und jede DNA wird verwendet um 9 Modelle zu parametrisieren. Diese werden dann gemeinsam simuliert und aufgrund der Zusammenstöße die Fitness der DNA bestimmt.
  • Dies geschieht dann innerhalb einer Generation für alle 100 DNAs, wonach dann die 10 fittesten ausgewählt und durch Rekombination wieder auf einen neue Generation mit 100 DNAs für die nächste Generation gebracht werden.
  • Die Servogeschwindigkeit wird für jedes Fahrzeug aufgrund einer Gesamtbetrachtung der aktuellen Fahrzeugpositionen und der daraus folgenden Sensordaten berechnet.
Strukturelle Betrachtung des Gesamtprogramms.

Bild 12-3: Strukturelle Betrachtung des Gesamtprogramms.

Wie ist das Vehikelmodell strukturiert?

  • Es sollte entweder untersucht werden, bis zu welchem Lenkeinschlag noch sinnvolle Seitenkräfte auftreten und der Lenkeinschlag in der Simulation dann darauf beschränkt bleiben.
  • Alternativ sollte auf das Modell mit empirisch bestimmten Querkräften übergegangen werden.
  • In jedem Fall muß zwischen einem Modell bei Geradeausfahrt und einem bei eingeschlagener Deichsel automatisch während der Simulation umgeschaltet werden.
  • Die Servogeschwindigkeit ist ein Parameter, der aber während der Simulation von Zeitschritt zu Zeitschritt durch Eingriff von außen verändert wird.
  • Mit "Eingriff von außen" ist nicht "von Hand" gemeint, sondern die Simulationsfunktion, die die Zeitschrittmethoden für jedes einzelne Modell aufruft. Sie berechnet auch aufgrund der Position jedes Fahrzeugs, das was dieses Fahrzeug am Sensor als Spannungspegel empfangen sollte und die daraus und aus der aktuellen Servoposition (und der Vehikelgeschwindigkeit (?)) resultierende Servogeschwindigkeit.
  • Weder ein Servoteilmodell, noch ein Sensorteilmodell müssen also direkt in das Vehikel-Modell integriert werden, sondern werden von außen berechnet.
  • Zur Verdeutlichung, wie dies in der Simulationsfunktion geschehen soll, dient nachfolgendes Bild.
Einbeziehen aller Modelle in eine geometrische Betrachtung durch die Simulationsfunktion.

Bild 12-4: Einbeziehen aller Modelle in eine geometrische Betrachtung durch die Simulationsfunktion.