{28} Active Tickets by Owner (Full Description) (7 matches)
Alle aktiven Tickets mit Beschreibung anzeigen, gruppiert nach Meilensteinen
Bugfixes (1 match)
| Ticket | Summary | Component | Type | Owner | Status | Created | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Description | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| #118 | solve_maze() sollte bei allen Messungen ADJUST_DISTANCE berücksichtigen | ct-Bot | enhancement | nightwulf | new | 05.05.2007 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
solve_maze() sollte bei allen Messungen ADJUST_DISTANCE berücksichtigen und außerdem ein paar Messwerte der Distanzsensoren abwarten, hierfür bietet sich das neue Verhalten (#115) an. |
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Ideensammlung (5 matches)
| Ticket | Summary | Component | Type | Owner | Status | Created | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Description | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| #137 | Abgrund- / Locherkennung für bot_solve_maze() | ct-Bot | enhancement | somebody | new | 15.08.2007 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
Hi Leute, ich hab heute endlich nachvollziehen können warum bot_solve_maze() Teilweise gegen Wände fährt. Wenn der Bot an einer Wand lang fährt und ein Block ein Loch ist, geht bot_solve_maze() davon aus, das hier die Wand eine 90° Ecke hat, ist der Block dahinter aber ein normales Stück Wand, fährt der Bot ungeprüft und ungebremst hinein. Eine Karte wo das schon sehr früh passiert werde ich anhängen. |
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| #148 | Überarbeitung / Erweiterung der Notfall-Verhalten | ct-Bot | idea/question | somebody | new | 01.10.2007 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
Derzeit löst ein Notfall-Verhalten den Aufruf aller Notfall-Funktionen aus. Dies kann aber manchmal gar nicht so sinnvoll sein: Bsp: (konstruiert) Der Bot folgt einer Wand. Nun sieht er links und vorne eine Wand => dreht nach rechts. Dann will er wieder vorwärts fahren und trifft dabei auf einen Abgrund. Jetzt springt das Notfallverhalten "avoid border" an und danach werden die registrierten Notfall-Funktionen abgearbeitet. Darunter auch "der hang on handler" vom hängenbleiben Verhalten und er fährt rückwärts. Dabei bleibt er an der Wand hängen. Oder: Unload Pillar bleibt an ner Wand hängen => Notfallfunktion border_in_map_handler trägt einen Abgrund in die Map... Mein Vorschlag: Jedes Notfall-Verhalten bekommt eine ID (2er-Potenz). Bei "anspringen" des Verhaltens wird diese ID in eine globale Variable gespeichert. Jede Notfall-Funktion erhält eine Reaktions-Maske. Der Aufruf der Notfall-Funktionen erfolgt wie bisher. Wird nun eine Notfall-Funktion aufgerufen kann diese Funktion die globale Variable mit der eigenen Reaktions-Maske vergleichen und so nur auf bestimmte Notfälle reagieren, beziehungsweise auf Notfälle unterschiedlich reagieren. Sind alle abgearbeitet wird die ID auf 0 gesetzt. void notfallfunktion_XYZ(void) {
if(global_emergency_id & my_reaction_mask == 0)
return;
else {
if(global_emergency_id == AVOID_BORDER_ID) {
// ...
}
else if(global_emergency_id == HANG_ON_ID) {
// ...
}
}
}
|
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| #155 | Bessere Integration der Notfallverhalten | ct-Bot | idea/question | somebody | new | 06.01.2008 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
Aus TODO.txt: Low-Level-Verhalten müssen andere über Gefahren warnen Gut wäre, wenn der Bot derart auf Hindernisse / Löcher reagiert, dass er nach der Notfallbehandlung nicht erneut auf die Gefahr zufährt. |
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| #177 | Erweitertes Verhaltenssystem (mehrere Instanzen eines Verhaltens, feingranulare Blockierung) | ct-Bot | idea/question | somebody | new | 25.09.2008 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
Drei Erweiterungen des Verhaltenssystems könnten eine deutliche Verbesserung bringen:
Eine Lösung für alle o.a. Punkte ist nicht gerade trivial, letztlich läuft das Ganze vermutlich auf Multithreading / ein Mini-OS hinaus.
Insbesondere stellt sich die Frage, inwieweit solch ein Verhaltenssystem (und die Verhalten selbst) zum bisherigen System kompatibel sein kann und muss. Direkt profitieren würden davon das bot_drive_area()-Verhalten (Map-Überwachung), die Notfallverhalten sowie ein Explore-Verhalten, das ähnlich wie ein Notfallverhalten unbekannte Hindernisse umfährt und anschließend weiter die Umgebung erforscht. Weitere Information in der Mailingliste (siehe auch Vorgänger und Nachfolger). |
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| #160 | GUI: Judges dynamisch/konfigurierbar im Menu anzeigen | ct-Sim | idea/question | somebody | new | 08.02.2008 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
Derzeit ist es unmöglichen weitere Judge-Klassen hinzuzufügen, ohne Änderungen am Code vorzunehmen zu müssen. Dies resultiert daraus, das die verfügbaren Judge-Implementationen als String-Konstante innerhalb der Klasse MainWinMenuBar statisch abgelegt sind. Da die Judge-Klassen einen festen Platz haben würde ich vorschlagen, man sammelt alle Klassennamen dynamisch zur Laufzeit ein und zeigt diese ausgegraut im GUI-Menu an. Ausgegraut aus dem Grunde, da sich auch unfertige Implementationen dort befinden könnten. Über Einträge in der Config-Datei, werden dann im Menu die entsprechenden Einträge freigeschaltet. Allerdings kommen somit mehr Einträge hinzu, für jede freigeschaltete Klasse einer, plus einen weiteren Eintrag für die Aktive Klasse, welche dann geladen ist. |
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
ToDo (1 match)
| Ticket | Summary | Component | Type | Owner | Status | Created | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Description | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| #186 | EEPROM-Zugriff vereinfachen | ct-Bot | enhancement | somebody | new | 29.06.2009 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
Vereinfachung beim EEPROM für MCU und PC: Wenn man einfach alle EEPROM-Variablen in ein Struct packt und nur das in die EEPROM-Section legt, hat man eine feste Ordnung und kann die Variablen über ihren Namen ansprechen. |
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
