Microtransat TP5
aus MariaTheresia, der freien Wissensdatenbank
| Microtransat | Organisation | Routing & Weather | DataLink | OnBoardNet & Sensors | Manöver & Logic | Autopilot | Modell |
| Inhaltsverzeichnis |
Links zu Grundbegriffen des Segelns
- Kurse zum Wind (wikipedia.de) (http://de.wikipedia.org/wiki/Kurse_zum_Wind_%28Segeln%29)
- Die wichtigsten Manöver kurz erklärt: http://www.grabner-sports.at/index.php?id=668
Aufgabe
1 und 2 markieren Bojen deren GPS-Koordinaten wir rechtzeitig vor dem Start erhalten werden. Die kleinen Kreise um die Bojen haben 5m Radius, der große Kreis um Boje 2 hat 20 m Radius.
Bei 1 wird gestartet (irgendwo im 5m-Umkreis). Dann wird - voraussichtlich gegen den Wind - zu Boje 2 gesegelt. Es muss auch wieder der 5m-Kreis erreicht werden. Dann muss das Boot 10 Minuten lang innerhalb des 20-m-Kreises um Boje 2 bleiben und anschließend wieder zurücksegeln zu Boje 1.
Ansatz von Ira
Abdrift
Abdrift ist der seitliche Versatz des Bootes im Wasser. Das bedeutet, dass die Richtung, in die das Boot ausgerichtet ist, nicht der wahren Fahrtrichtung entspricht (ausser bei achterlichem Wind = Wind von hinten). Das Boot wird vom Wind seitlich gegen das Wasser gepresst. Das Schwert bzw. der Kiel wirkt diesem Druck entgegen, was zur Folge hat, dass sich das Boot zur Seite neigt (Krängung). Es gibt also einen unmittelbaren Zusammenhang zwischen Krängung und Abdrift. Dieser Zusammenhang ist bootsspezifisch und muss daher experimentell ermittelt werden.
Wenn also das Boot einen bestimmten Kompasskurs fahren soll, muss die Richtung des Rumpfes permanent in Abhängigkeit von der Krängung korrigiert werden um die Abdrift zu kompensieren.
Vorschlag für eine "Layered Control Architecture"
--Stelzerroland 08:22, 10. Feb 2006 (CET)
| Navigation Layer |
| Manoeuvre Layer |
| Reflex Layer |
| Interpretation Layer |
| Communication Layer |
| Hardware Layer |
Navigation Layer: routing strategy; find the next destination to sail to or the next maneuvre to carry out and pass this information on to the Manoeuvre Layer.
Manoeuvre Layer: change to a given compass course (tack/jibe) an keep this course. leeway must be compensated.
Reflex Layer: Ususally, this layer is inactive. It handles exceptions not considered by the layers above, eg. gust of wind.
Interpretation Layer: convert measured sensor values into usable information for sailing. convert sailing instructions into usable data for acutators. (kind of translation between technical values and sailing jargon)
Communication Layer: Protocol for communication with sensors and actuators, eg SSN
Hardware Layer: describes, how sensors and actuators are connected, eg SSN
Implementierung des Interpretation Layers
Es wird ein Java-Daemon am VIA-Board sein, der permanent Daten der Sensoren ausliesst und in eine Form transformiert, wie sie von den anderen Modulen (Skipper, Navigator, ...) benötigt werden.
Überlegungen zur Implementierung:
- welche inputs/outputs am ssn?
- welche inputs direkt am via (seriell oder usb)?
- welche werte sollen wie oft ausgelesen/gesetzt werden?
- welche aufbereiteten werte werden von navigator und skipper benötigt?
- wie sollen sie aufbereitet werden (gemittelt, skaliert, transformiert, ...)?
- über welche kommandos wird mit dem daemon kommuniziert?
Skipper
Das Skipper-Modul ist dafür zuständig, Ruder uns Segel so zu stellen, dass Fahrt in jene Richtung aufgenommen wird, die vom Navigator-Modul vorgegeben ist.
Das übernehmen zwei Fuzzy-Inferentsysteme, nämlich Steuermann und Vorschoter.
Steuermann
Das Steuermann-FIS kümmert sich um das Ruder. Es bekommt folgende Inputs:
- Wunschrichtung (vom Navigator): in Grad, gegen den Uhrzeigersinn, Osten = 0 Grad.
- Fahrtrichtung (vom Boot): in Grad, gegen den Uhrzeigersinn, Osten = 0 Grad.
- Drehung (vom Boot): in Grad pro Zeiteinheit, gegen den Uhrzeigersinn positiv.
float steuermann (float direction, float gradient)
- direction: relative Richtung, in die das Boot fahren soll (Grad von -180 bis +180), errechnet aus der Differenz zwischen Wunschrichtung und Fahrtrichtung.
- gradient: Winkelgeschwindigkeit, mit der sich das boot dreht (Grad pro Zeiteinheit, gegen Uhrzeigersinn positive Werte, mit der Uhr negative Werte)
- return-value: Änderung der Pulsweite für Servoansteuerung
Vorschoter
Der Vorschoter hat die Aufgabe die Segel so zu stellen, dass sie umströmt werden und so dem Boot Vortrieb geben. Auch während der Manöver Wende und Halse muss die Segelstellung ständig angepasst werden.

