PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : CNY70 Analog sinnvoll?



CowZ
03.06.2006, 11:00
Hi, ich habe vor, mehrere CNY70 an meinen Mega8 anzuschließen.

Jetzt stellt sich mir die Frage, ob diese nur sinnvoll Schwarz vs. Weiß erkennen können und man sie folglich über nen Schmitt-Trigger anschließen solle, oder ob man mit ihnen auch die Farbe des Bodens erkennen kann, wenn man sie an einen ADC anschließt.

Ich hoffe, ihr könnt mir wie immer helfen :)

Gruß, CowZ

Florian
03.06.2006, 11:19
Hallo CowZ!
Ich nehme mal an, dass Du Linienverfolgung o.ä. machen möchtest!?
Ich kann Dir empfehlen die CNYs über die ADCs auszuwerten.
Für den Anfang ist es zwar einfacher nur s/w erkennen zu lassen, aber Du wirst es irgendwann zu schätzen wissen.
Du kannst dann nämlich den Roboter selbst über Regler auf die aktuellen Lichtverhältnisse etc. einstellen lassen und auch andere "Unsauberheiten" sind dann nur noch ein programmiertechnisches Problem.

Viele Grüße
Florian

hertzschüler
03.06.2006, 11:20
Die Farbe kann man nicht erkennen, allerdings kann man, wenn AD gewandelt wird, Helligkeitswerte unterscheiden. Da kann man das ganze dan leichter (im Programm) auf verschiede Umgebungsbedingungen (Anbstand zum Boden, Helligkeit, Bodenbeschaffenheut) anpassen.

Edit: mist ne Minute zu langsam

Florian
03.06.2006, 11:28
Edit: mist ne Minute zu langsamMacht nix! ;o)
Doppelt hält besser und außerdem hast Du die Frage mit der Farbe nicht übersehen:
Nein, man kann keine Farben im eigentlichen Sinne erkennen, das musst Du mit "weißem Licht" und Farbfiltern vor Fototransistoren/-dioden machen.
Eine Vereinfachung bieten z.B. www.micromaus.de und www.roboter-teile.de, sie bieten fertige spezielle Bauteile bzw. Module an.

Viele Grüße
Florian

hertzschüler
03.06.2006, 11:32
Der CNY70 arbeitet allerdings mit 950nm Licht (also IR), da kann man dann allerdings keinen Farbfilter vomachen.
Außerdem muss dein Untergrung halt auch IR refektieren können bzw. nicht refektieren.

Florian
03.06.2006, 13:48
Genau!
Da benötigt man Fototransistoren für "normales" bzw. für uns sichtbares Licht.
Aber vielleicht kann uns ja CowZ erklären, was er vor hat! ;o)

Viele Grüße
Florian

CowZ
03.06.2006, 19:22
Hallo,

danke schonmal für die Antworten :) So wie ich das bisher verstanden habe, kann ich ja aber auf jeden Fall Graustufenwerte bekommen, oder?

Fototransistoren (oder Fotowiderstände, warum eigentlich nicht die?) und eigene LEDs... da wäre natürlich auch die Frage, was besser und was billiger ist...

Zu dem was ich vorhabe:
Ich möchte mir ein Modul für meinen Roboter bauen, welches allgemein als Bodenfarben/-helligkeits Sensor funktioniert. Damit soll dann zb. eine Linie verfolgt werden, oder erkannt werden, dass er in der Homebase steht (blauer oder roter Untergrund etc.)

Daher wäre mir Farberkennung (oder eben Helligkeitserkennung (siehe Lichtsensor vom RCX)) doch recht wichtig. Ein Eigenbau aus anderen Bauteilen ist auch gut (oder sogar besser, wenn billiger) , nur keine Ahnung, wie ich das machen soll.

Gruß, CowZ

hertzschüler
03.06.2006, 19:32
Also, die Graustufen sind mit dem CNY70 sehr gut und genau auszulesen.

Um Fraben zu erkennen, muss es dann halt ein normaler Fototransistor für weißes Licht sein. Ein Fotowiderstand ist da nihct so geeignet, das er relativ langsam reagiert.
Um die Farbe des Unergrundes zu erkenn, musst du ihn mir weißem Licht anleuchten und dann mit 3 Fototransitoren, jeweils mit einem anderen Farbfilter (rot, grün, blau), die Helligkeit jedes Farbanteils bestimmen. Dabei muss dann allerdings darauf geachtet werden, dass möglichst weing Fremdlichteinfall ist.
Ich glaube allerdings nicht, dass man mit selbstbau billiger kommt als ein CNY70 und genauer wird sehr warscheinlich auch nicht.

CowZ
03.06.2006, 19:35
Ok, danke, das mit den Widerständen ist mir jetzt auf jeden Fall schonmal klar :)

Die Graustufenerkennung reicht mir erstmal, damit kann man ja letztendlich auch auf die Farbe schließen (zumindest ein dunkels Blau von nem hellen Rot unterscheiden :) )

Jetzt müsste ich nur noch wissen, wie ich den CNY70 an meinen ADC-Port anschließe...

Gruß, CowZ
PS: Tut mir Leid, aber ich darf noch nicht studieren, darum meine dummen Fragen *g*

Florian
03.06.2006, 20:05
Hallo CowZ!

PS: Tut mir Leid, aber ich darf noch nicht studieren, darum meine dummen Fragen *g*Macht nichts, jeder fängt mal klein an, der Eine früher, der Andere später! ;o)

Die Graustufenerkennung reicht mir erstmal, damit kann man ja letztendlich auch auf die Farbe schließen (zumindest ein dunkels Blau von nem hellen Rot unterscheiden)Im Prinzip ja, nicht die eleganteste Lösung, aber ... ;o)
Ansonsten einfach mal bei Micromaus.de schauen, die haben eine Reihe von Farbsensoren, haben eine gute Auswahl.
Bei Roboter-Teile.de gibt es auch einen fertiges Farbsensor-Modul.

Jetzt müsste ich nur noch wissen, wie ich den CNY70 an meinen ADC-Port anschließe...Vielleicht hilft Dir das hier weiter:
https://www.roboternetz.de/phpBB2/album_rate.php?pic_id=212

Viele Grüße
Florian

CowZ
03.06.2006, 20:23
Jo, die Farbsensoren habe ich auch schon gesehen, sind mir aber etwas zu teuer... Leide im Moment sowieso unter totalem Geldmangel... Daher sind bisher auch nur virtuelle Bilder von den Platinen vorhanden (=> HP)...

Aber der Link von dir ist echt cool :) Danke schön :)

Gruß, CowZ

Florian
03.06.2006, 20:36
sind mir aber etwas zu teuerNagut, das kann ich verstehen!

Daher sind bisher auch nur virtuelle Bilder von den Platinen vorhanden (=> HP)...Womit hast Du die schicken Bilder gemacht?
Sehen gut aus!

Aber der Link von dir ist echt cool
Danke schönNa, kein Problem! :o)

Viele Grüße
Florian

CowZ
03.06.2006, 20:37
Die schicken Bilder (danke :)) sind mit Eagle3D gemacht :)

Florian
03.06.2006, 20:38
Achso ... ;o)
Aber so eine flache LED-Anzeige hätte ich auch gerne! *lol*

CowZ
03.06.2006, 21:05
hehe ja ^^ leider sind nicht alle Bauteile auch in Eagle3D vorhanden ;)

Florian
03.06.2006, 22:15
hehe ja ^^ leider sind nicht alle Bauteile auch in Eagle3D vorhandenNaja, das kenne ich von Target 3001!, aber mit Eagle konnte ich mich noch nie richtig anfreunden ... ;o)

Gute Nacht
Florian