Archiv verlassen und diese Seite im Standarddesign anzeigen : Linienfolgerkonzepte
fulltime
18.08.2014, 21:13
Hallo alle zusammen!
Ich möchte meinem RP6 gerne zum Linienverfolger nachrüsten. Habe mich schon mit einigen Konzepten auseinander gesetzt die ich hier im Forum gefunden habe. Zum Beispiel die Variante mit den LDRs von radbruch. Die Variante mit den CNY70-Sensoren hab ich ebenfalls entdeckt. Leider kann ich mich nicht für eine der beiden Varianten entscheiden. Beide haben sie Vor- und Nachteile.
Für die LDRs wäre:
einfache Auswertung(Spannungsteiler/Messbrücke)
sind vorhanden
dagegen wäre:
Aufbau(Lichtquelle, Reflexion auf LDRs)
Einfluss von Umgebungslicht
Nun zu den CNY70 Vorteile:
Zur Auswertung genügt IO-Pin
PWM an Sendediode(Verminderung des Einflusses des Umgebungslicht
Leider weiß ich nicht ob dass mit der PWM möglich ist, auch habe ich keinen Plan wie ich diese dann Auswerten kann. Kann mir dabei jemand einen Gedankenanstoß geben?
Würde gerne ein paar andere Meinungen dazu hören, bitte danke! ;)
Mfg
fulltime
RoboHolIC
19.08.2014, 12:09
Hallo fulltime.
Auch beim Einsatz von CNY70 sollte man nicht auf eine ADC-Auswertung verzichten. Eine reine ja/nein-Aussage ermöglicht ja lediglich eine Zweipunktregelung, quasi das schleudern zwischen den Leitplanken. Der Linienfolger erkennt stets nur die verbotenen Bereiche. Die analoge Auswertung mehrerer Reflexsensoren hingegen ermöglicht die Erkennung der Spurmitte. Mittels Regelung auf diesen Idealwert ist eine sanftere Fahrt möglich.
Für die Fremdlichtentstörung ist PWM im engeren Sinne eher aufwendig. Vergleichende Messungen mit und ohne Hilfslicht haben anderen Leuten hier schon gute Ergebnisse gebracht.
Hi fulltime,
da muss man sicher unterscheiden zwischen Hardware- und Software-Konzepten zum Linienfolgen.
Bei dir geht es wohl erstmal um die Hardware:
Ich finde die Option mit den CNY70 besser als die mit LDRs. Das Umgebungslicht hat bei den CNY70 deutlich weniger Einfluss, sie "scannen" den Untergrund deutlich kleinflächiger (bei LDRs und LED-Beleuchtung müßte man da schon sehr mit Abschirmungen trixen!). Die Auswertung der CNY70 ist sowohl digital als auch analog möglich. Dadurch kann gut einstellen, welcher Struktur man folgen will.
Also: Mein Votum für die CNY70.
Falls du eine Linienfolger-Einheit nicht selbst aufbauen willst, gibt es hier (http://rn-wissen.de/wiki/index.php/RP6_Multi_IO_Projekt) ja das Projekt der MultiIO Platine von fabqu. Dazu gehört auch eine kleine Linienfolger-Platine mit 5 CNY70 in Reihe (optional auch nur 3), die man einfach vorn am RP6 befestigen kann. Du kannst ja mal fabqu eine PN schicken,- eine Platine müßte noch erhältlich sein.
Besserwessi
19.08.2014, 18:34
Das mit dem kleinen Abtastbereich beim CNY70 hat Vor- und Nachteile: Man bekommt halt einen kleinen Messbereich (z.B. 1-2 mm) um die Linienkante zu erkennen. Weiter weg ist man dann in der Sättigung, also maximaler oder minimaler Helligkeitswert. Der kleine Messbereich erlaubt es auch dünnen Linien zu folgen, und recht genau die Position zu bestimmen, aber wenn es zu größeren Störungen (etwas bei schneller Fahrt) kommen, ist man auch schnell aus dem analogen Bereich raus. Als Ausgleich braucht man ggf. 2 oder 3 der CNY70 um einen LDR (+LED) zu ersetzen.
Wegen des kleineren Arbeitsabstandes ist der CNY70 auch relativ empfindlich auf Änderungen beim Abstand.
Die Differenzmessung mit/ohne Hintergrundlicht geht im Prinzip auch mit dem LDR, nur weil der LDR langsamer ist, muss man ggf. etwas länger warten. Mit dem CNY70 ist eher der ADC begrenzen (etwa 100 µs für 2 Messungen), während der LDR besser etwa 1 ms oder mehr haben will.
Alternativ gäbe es auch noch die Möglichkeit mit getrennten IR LEDs und IR Fototransistoren: da hätte man einen ähnlichen Abstand wie mit dem LDR, aber auch IR Licht und die Geschwindigkeit wie mit dem CNY70.
Ich hab mir aus nem alten Cybot Bausatz den IR Liniensensor unter den RP6 gebaut.
http://www.lpilsley.co.uk/cybot/follower.htm
Im Prinzip ist das eine Bauweise wie mit cny70, welche an die freien AD Ports der Base gelötet werden. Siehe dort:
http://rn-wissen.de/wiki/index.php/RP6#Analoge_Sensoren_an_ADC0.2F1
Funktioniert perfekt.
Viedos zur Leistungsfähigkeit des Sensors gibts zu Hauf bei Youtube.
https://www.youtube.com/watch?v=Xdn9irFsZpk
Auf LDR würde ich verzichten da es halt eben Tages/Umgebungslicht sensitiv ist und damit Störfaktoren einstreuen, die nicht sein müssen.
Da sitzen übrigends kleine 3mm leds/sensoren drin, die per Gehäusekasten etwas seitlich abgeschirmt sind. Die focusieren also nicht so stark wie der cny70, haben aber sonst ähnliche Eigenschaften. Also quasi wie Besserwessi im letzten Satz aufzeigte. Solche ir Bauteile sitzen z.B. auch gern in alten PC-Mäusen mit Kugel.. oder Lichtschranken in Druckern... falls sowas jemand noch zum ausschlachten rumliegen hat. Ich bin ja bekennender Recycle-Elektroniker :)
Gruß
fulltime
19.08.2014, 21:29
Wow, ich bin überwältigt von den Antworten! :) Danke für die super Antworten!
Also ich glaube ich werde die CNY70 wählen oder halt ähnliche Sensoren, weil mein Drucker ist zufälligerweise letzte Woche hops gegangen. Vielleicht finde ich ja passende Sensoren darin! ;)
Die Linie die der RP6 folgen soll wäre dann ein schwarzes Isolierband, das auf eine weiße Holzblatte geklebt wurde. Die CNY70 würde ich dann so montieren, dass sie ungefähr die Breite des Isolierbandes Abstand zu einander haben. Somit erkennt man ja beide Kanten und im Programm würde ich dann 2 P-Regler für den linken und rechten Motor programmieren. So wäre halt mal mein Plan. ;)
Hallo,
die Kombination schwarzes Isolierband und IR-Sensoren kann manchmal ungünstig sein. Es gibt Isolierbänder, die im Infrarotbereich fabelhaft reflektieren und der Sensor nur wenig Unterschied zwischen weißem Untergrund und schwarzer Linie sieht ! Sollte man nicht für möglich halten, habe ich aber schon erlebt ;)
Liniensensoren müssen nicht zwangsläufig mit Infrarotlicht arbeiten, im sichtbaren Bereich funktioniert das genauso. Außerdem kann man so auch schnell einen Ausfall der LED erkennen. Der Sensor würde dann aus einer fast beliebigen superhellen LED und einem passenden Fototransistor http://rn-wissen.de/wiki/index.php/Fototransistor#Vergleich_bekannter_Fototransistore n bestehen. LED und Fototransistor können dann jeweils noch in z.B. ein Messingröhrchen gesteckt werden, um den Einfluss von Fremdlicht zu reduzieren.
Von LDRs würde ich völlig abraten, die reagieren vergleichsweise langsam.
Grüße, Bernhard
fulltime
20.08.2014, 11:04
Danke für den Tipp! :)
Muss ich dann halt herausfinden wenn ich dass Projekt angehe, hab in nächster Zeit leider nicht viel Zeit :/
Jumptime
01.09.2014, 21:12
Hi,
du wirst nicht alle Vorteile eines Systems vereinen können. Ich hatte mich für das Konzept entschieden, dass am PRO-BOT 128 mit einer LED und zwei Fototransistoren verwendet wurde (lagen rum). Wegen des einfachen Aufbaus und ich konnte mich auch an der zugehörigen Testsoftware orientiert. Du brauchst zwei ADC und einen IO-Pin. Mit dem IO kannst du die LED (ich habe nach einigen Tests eine weiße genommen) ein- und ausschalten wenn du sie benötigst (oder auf Dauerlicht). Die Fototransitoren mit Hülsen wie BMS oder (Schrumpf-)Schlauch gegen seitliche Lichteinstrahlung schützen.
http://www.home.datacomm.ch/kieszlingdoering/rp-k2.htm
Übrigens werden in der Testsoftware zum Liniensensor vom PRO-BOT die Werte der ADC über Kreuz an die Antriebe gegeben somit kann der Bot auf unterschiedliche Änderungen der ADC Werte entsprechend reagieren. Er orientiert sich dann an einer hell/dunkel Kante, wass er übrigens dann rechts oder links kann. Das siehst du auf meiner Seite, doch ist das längst nicht ausgefeilt, da ich nicht diekomplette SW kopiert hatte.
29000
Powered by vBulletin® Version 4.2.5 Copyright ©2024 Adduco Digital e.K. und vBulletin Solutions, Inc. Alle Rechte vorbehalten.