PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : Linienverfolger.... leicht gemacht?mmmh weis ja nich



hoer173
18.03.2004, 11:45
ok... meine motoren steuerung läuft!... den etwas zuschnellen motor hab ich per pmw bischen runtergetaktet..bzw jetzt noch per poti.. sie laufen genau gleich...

aber jetzt wollte ich die elektronik für den lichtverfolger baun...jetz kommt das problem..

ich hab bischen im forum rumgeguckt.. viele sagen der bot fährt im zick zack.. oder hat probs die linie zu verfolgen... ih hab mir das so überlegt...

ich brauche wohl mehrere sensoren.. ein paar weiße leds (hauptsache hell oder würde auch gelb gehn?) die das lciht erzeugen damit die linie gesehen werden kann...

hatte überlegt 4 sensoren zu nehmen.. vorne ein hinten ein links und rechts einen..
dann müsste ich doch nur noch der c control sagen das wenn vorne und hinten gesichtet wird er grade aus fährt.. wenn einer der sensoren nix findet soll er sich um die eigene achse drehen bis er auf links oder rechts wieder signal gibt...

theorie ist richtig oder?
aber wird er in der praxis grade aus fahren oder im zick zack?

18.03.2004, 12:22
Naja, bei der Farbe der LEDs kommt es darauf an, welche sensoren du einsetzt... Ich persönlich würde jedoch rot vorschlagen, den z.B bei weissen LEDs kann dir die Sonne oder eine Glühbirne mehr dazwischenfunken...

Deine Theorie ist schon richtig, aber dein Bot wird nur solange korrigieren, bis er die richtige fläche unter sich hat. Wahrscheinlich wird er dann nach wenigen cm wieder korrigieren müssen...

Im allgemeinen finde ich es schwachsinnig 4 sensoren für einen Linienfolger zu verbrauchen, ein Sensor reicht dazu völlig aus...

18.03.2004, 12:39
mmmh ich mach das ja über normale dc motoren.. wird das dann noch schwerer das zu realisieren?nein oder?

wie würdest du das es denn machen?2 sensoren.. vorne ein hinten ein? dazwischen eine rote LED.. das muss dann alles genau auf einer linie sein...?
danke

sbuechne
19.03.2004, 13:25
Mhmmm, ich würd's folgendermaßen realisieren:

2 Sensoren einer rechts und einer Links von der Linie (beide vorn) . Wenn nun ein Sensor meldet er hat eine unter sich, einfach den gegenüberliegenden Motor schrittweise mehr Saft geben bis dieses Signal ausgeht dann wier gleich schalten. Wenn die Sensoren nicht zu dich nebeneinander liegen sollte er auch nicht im ZickZack fahren. (zumin. nicht übermäßig *g)

recycle
19.03.2004, 18:20
2 Sensoren einer rechts und einer Links von der Linie (beide vorn) . Wenn nun ein Sensor meldet er hat eine unter sich, einfach den gegenüberliegenden Motor schrittweise mehr Saft geben bis dieses Signal ausgeht dann wier gleich schalten.


Und was ist, wenn der Roboter ganz neben der Linie steht?
Dann signalisiert der rechte Sensor "alles OK", der linke Sensor signalisiert "Alles OK" und schon hat die nächste Fussleiste ne Delle ;-)

Oder sollen sich die Motoren wirklich nur drehen, wenn der gegenüberliegenden Sensor über der Linie steht? Dann bleibt der Robby stehen, sobald die Linie korrekt zwischen den Sensoren liegt.

Gottfreak
20.03.2004, 01:04
Wenn der Roboter ganz neben der Linie steht, hat er sowieso keine Chance.
Der Vorteil der Lösung mit einem Sensor in der Mitte, der immer über der Linie ist, wäre höchstens, dass er erkennen könnte, dass er nicht in der Nähe einer Linie ist und dann anhalten oder so.

recycle
20.03.2004, 02:01
Wenn der Roboter ganz neben der Linie steht, hat er sowieso keine Chance.

Stimmt, aber trotzdem fände ich es irgendwie sinnvoller, wenn er dann anhält, anstatt einfach weiterzufahren.

In der Praxis baut man so einen Roboter ja nicht zusammen, programmiert ihn, stellt ihn auf die Linie und alles klappt.
Eher wird es wohl erst mal nicht klappen und man muss nachjustieren, programmiieren usw. bis er einer einfachen Linie folgen kann. Wenn das dann klappt versucht man es mit komplizierteren Linien usw.
D.h. der Roboter wird recht häufig neben der Linie landen.
Mir persönlich wäre es lieber, wenn er dann stehen bleibt und ich ihn nicht mit einem Hechtsprung kurz vor der nächsten Wand einfangen muss.
Eventuelle Zuschauer fänden es vermutlich lustiger, wenn man hinterherspringen muss ;-)

Aber man könnte ihn natürlich auch mit nur zwei Sensoren so programmieren, dass er anhält, wenn er x Sekunden oder x Radumdrehungen keinen Kontakt zur Linie mehr hatte.

Was mich nur stutzig macht ist, dass ich schon von mehreren Leuten gelesen habe, die weit mehr als 2 oder 3 Sensoren für die Linienverfolgung verwenden. Die werden sich ja was dabei denken.
Ich vermute mal, spätestens wenn der Roboter am Ende der Linie drehen soll, oder die Linie Kreuzungen und Gabelungen hat kommat man mit nur 2 oder 3 Sensoren nicht mehr weiter.

Manf
20.03.2004, 05:59
Es gibt eine Darstellung von einem Linienfolger, der mit einem Regelalgorithmus stabilisiert wird. Das Einbringen des differenzierten Signals der Abweichung in den Regelkreis führt zur stabilen Spurverfolgung, während der Proportionalteil allein zu Schwingungen führt.
Das sollte man noch genauer erklären, zunächst aber wird es an den beiden kurzen Filmbeispielen demonstriert.
Manfred

Following motion with only P control
http://members.jcom.home.ne.jp/felm/ltc4.mpg
This is a video file of line following motion with only P control. The servo system oscllated.

Following motion with P and D controls
http://members.jcom.home.ne.jp/felm/ltc5.mpg
Adding D control could improve the servo stability. The robot follows the line correctly. Therefore the servo parameter must be optimized for mechanical characterristics to improve the tracking stability.

20.03.2004, 11:48
die zusätzlichen Sensoren sind wohl nur sinnvoll bei komlizierten Strecken ( Kreuzungen, Abzweige, Verdickungen)

groelu
22.03.2004, 12:06
Du kannst auch einen Sensor nehmen, der die Linie Verfolgt.. Wenn er erkennt, das er die Linie verlässt, korrigiert er, bis er wieder auf der linie ist. So hast du auch weniger probleme, wenn Der boden verschiedenfarbig ist(holztisch, teppich), da die Linie meistens nur aus einer farbe besteht...

RG
22.03.2004, 15:28
Wie soll der Bot mit nur einem Sensor erkennen, in welcher Richtung die Linie verloren wurde (und in welche Richtung dementsprechend korrigiert werden muß). Dafür brauch ich doch wohl wenigstens zwei Sensoren zum differenzieren.
RG

groelu
22.03.2004, 15:38
Muss er nicht erkennen...
Sobald er die Linie nicht mehr erkennt, beginnt er zu korrigieren (egal ob nach links oder rechts). Wenn die richtung stimmt, erkennt er die Linie wieder und kann weiterfahren, wenn nicht, muss er nach kurzer zeit in die andere richtung drehen. (ein wenig mehr als bei der ersten korrektur.) Wenn er die linie wieder nicht findet, dreht er nochmals ein wenig mehr auf die andere Seite.... usw.
Mit einem Lego Mindstorm roboter hat das bei mir damals gut funktioniert. Mit kurve und allem....

RG
22.03.2004, 15:44
Das von dir beschriebene Verhalten stelle ich mir bildlich so vor wie auf dem Video von Manfred ohne Diferentialkomponente in der Regelung ( s.o. )
RG

recycle
23.03.2004, 02:49
Das von dir beschriebene Verhalten stelle ich mir bildlich so vor wie auf dem Video von Manfred ohne Diferentialkomponente in der Regelung ( s.o. )


Die Links von Manfred zeigen allerdings auch ganz deutlich, dass viele Sensoren alleine keine gute Linienverfolgung gewährleisten.

Ich glaube schon, dass man sogar mit einem Sensor bessere Ergebnisse erzielen kann als in dem Beispiel mit 6 Sensoren ohne Differenzialkomponente. Kommt natürlich auch auf die Geschwindigkeit an.

Ich muss sagen, dass ich die Disziplin Linienverfolgung bisher irgendwie immer unterschätzt habe, vermutlich weil ich nie gross drüber nachgedacht habe.
Wenn ich mir Manfreds Links ansehe, gibt das Thema doch richtig viel her. Programmiertechnisch ist es vermutlich anspruchsvoller als vieles andere was man so einem Robby beibringen kann, von den Kosten für die Sensoren dürfte es dagegen relativ preiswert sein.
Ich glaube damit werde ich auch anfangen und mich vermutlich höllisch freuen, wenn ich es überhaupt jemals soweit bringe wie in dem Beispiel ohne Differtialkomponente.


Hmm, wie bringt man ein Kleinkind dazu eine grosse 8 auf den Teppich zu malen, ohne dass die Mutter ahnt wer dahintersteckt? ;-)

nif
23.03.2004, 22:15
Hallo
Was haltet ihr von diesem Projekt (http://www.parallax.com/dl/docs/prod/appmod/linefollower.pdf)?
hab es selber noch nicht probiert

Schöne Grüße

Manf
23.03.2004, 22:50
@nif
Das Fahrzeug im Bericht sieht in Form und Fahrwerk genauso aus wie Dein Avatar, ist es das gleiche Fahrzeug oder gibt es diese Kostruktion häufiger?
Manfred

nif
24.03.2004, 20:48
Hallo Manfred
das ist der Boe-Bot (http://www.parallax.com/html_pages/robotics/shop/robo_comparison.asp) von Parallax der im Elektor (http://www.elektronikladen.de/robokurs.html) beschrieben wurde. Und er ist der Ideenträger für meinem Bot (https://www.roboternetz.de/phpBB2/viewtopic.php?t=992&highlight=).

Was für ein linkreicher Beitrag :lol:


Schöne Grüße

Manf
24.03.2004, 21:19
Hallo nif,
das sind wirklich sehr intressante Links, ich habe die lange versucht eine Verbindung zwischen den industriellen Zweibeinern und den Hobby Robotern zu finden und bin dabei auf den Toddler gestoßen, der auch im Boe-Bot link genannt ist. Ich kenne ihn nicht, aber ein funktionierender Zweibeiner für den Preis ist (wäre) wirklich erstaunlich.

Das beantwortet die Frage vom 23.3, 23:15 nicht, aber ich kann es auch nicht sagen, ich habe die Systeme nicht ausprobiert.

Vielen Dank für die Hinweise.
Manfred

nif
24.03.2004, 21:31
Hallo Manfred
dem Toddler kann man event. auch beim deutschem Parallax-Distributor http://www.elektronikladen.de/ bekommen.

Schöne Grüße