c't Projekte - c't-Bot und c't-Sim -
Mailinglisten
[Voriger (Datum)]
[Nächster (Datum)]
[Voriger (Thread)]
[Nächster (Thread)]
[Nach Datum][Nach Thread]
Absender: Erich Kohlberger
Datum: Di, 02.05.2006 18:34:09
In-reply-to:
<444F4242.5000206@xxxxxxxx>
Hallo
> Aber genau das ist doch derzeit im Code der Fall. Es gibt 4 Verzeichnisse:
>
> 1x Low-Level-Kram AtMega32 (./mcu/)
> 1x Low-Level-Kram PC (./pc/)
> 1x Sammlung der Schnittstellen (./include/)
> 1x Alles abstrakte und High-Level Routinen (./)
jetzt hat sich das mitlesen für mich gelohnt. Ich habe zwar alles
Installiert aber dann vor lauter Bäumen den Wald nicht mehr gesehen.
> Ich verstehe die ganze Diskussion und auch diesen Vorschlag beim besten
> willen nicht, denn alles was vorgeschlagen wird ist schon von Anfang an
> im Framework drin.
>
> Und ja, es ist modular. Es ist sehr genau nach High-, Middle- und
> Low-Level-Funktionen untergliedert. Wer an Low-level sachen nicts ändern
> will, kann die Verzeichnisse (./pc/ und ./mcu/) ignorieren.
>
> Wer nur ein ganz einfaches verhalten schreiben will, nimmt einfach das
> dafür vorgesehene Skelet bot_simple_behaviour() und füllt es aus. er
> bekommt nicht einmal vom Framework etwas mit. Damit jetzt jeder (ohne
> selbst in den Code zu schauen) sieht, was ich meine, hier ein kleines
> Verhalten, mit dem der Bot in einem Quadrat patrouliert:
>
> void bot_drive_square_behaviour(Behaviour_t *data){
> #define STATE_TURN 1
> #define STATE_FORWARD 0
> #define STATE_INTERRUPTED 2
>
> static uint8 state = STATE_FORWARD;
>
> if (data->subResult == SUBFAIL) // letzter Auftrag schlug fehl?
> state= STATE_INTERRUPTED;
>
> switch (state) {
> case STATE_FORWARD: // Vorwaerts
> bot_goto(100,100,data);
> state = STATE_TURN;
> break;
> case STATE_TURN: // Drehen
> bot_goto(22,-22,data);
> state=STATE_FORWARD;
> break;
> default: // Sind wir fertig, dann Kontrolle zurueck an Aufrufer
> return_from_behaviour(data);
> break;
> }
> }
Was mir jetzt noch fehlt ist eine Schnellbleiche im Umgang mit all den
Installierten Tools.
Gruß
Erich Kohlberger
Erich Kohlberger
Computerclub Waiblingen
<mailto:EKohlberger@xxxxxxx>