Hallo sast,

da kann ich gern mehr drüber schreiben:

Programmiert hab ich das in Object Pascal, sprich Delphi.

Das ganze soll im Lauf der Zeit noch andere Aufgaben bekommen und für die Aufgaben dann auch unterschiedliche Algorithmen.

Der gerade implementierte Algo fragt nur periodisch ab, was das Fahrzeug unter 2 Testpunkten hat. Es werden sozusagen 2 optische Liniensensoren simuliert. Die liegen ca einen halben Achsabstand vor der gelenkten Vorderachse und sind mit dem Fahrgestell verbunden. Sie passen knapp in den Leitstreifen hinein, wenn das Fahrzeug ausgerichtet ist.

Ist ein Sensor draussen, wird um eine Stufe in die andere Richtung gelenkt. Sind beide drinnen,wird um eine Stufe Richtung Neutralstellung gelenkt. Die letzte Vorschrift ist wichtig, damit das Ding nicht übersteuert und wie besoffen herumeiert. Als nächste wird dann noch eine Vorschrift für beide Sensoren draussen hinzugefügt.

Für die Einfachheit lenkt der Algo doch recht geschmeidig und weich. Interessant ist, dass da 3 Stufen für jede Seite ausreichen. -36,-24,-12,0,12,24,36 Grad Lenkausschlag beispielsweise. Wichtig ist aber das häufige Abfragen, und das rechtzeitige Neutralstellen der Lenkung. Hier frage ich die Sensoren ab und lenke nach, wenn er die Wegstrecke von einem Pixelabstand zurückgelegt hat.

Das Reagieren auf die Kreuzungen, hast sicher gesehen: Vorausgesetzt, das Fahrzeug ist ausgerichtet, beeinflusst die Kreuzung die Fahrt überhaupt nicht. Es setzt ja nur für eine kurze Strecke die seitliche Führung aus. Bei der Kreuzung rechts oben, von oben kommend, ist das Fahrzeug nach der Kurvenfahrt noch nicht ganz gerade ausgerichtet. Drum fährt es leicht schräg auf die Kreuzung zu und richtet sich erst aus, wenn die Sensoren die Kreuzug überquert haben.

Am besten gefällt mir an dem Miniprojekt, dass man so schnell zwischendurch was testen kann.

grüsse,
Hannes