PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : IS471 für Hinderniserkennung?



Elektronik303
15.05.2007, 16:25
Hi,

Ich suche grade eine günstige Möglichkeit zur Hinderniserkennung, da bin ich auf den IS471 von Robotikhardware gestoßen, in wie fern taugt der was zur Hinderniserkennung? Wie groß ist der Bereich den der IS471 abdeckt? Und wie kann ich die Daten die ankommen in Bascom auslesen?

Mfg

Elektronik303

Zachso
16.05.2007, 14:05
Der IS471 gibt nur einen high oder low-pegel aus, also es ist etwas da oder es ist nichts da.
du brauchst also am portpin einen pullup-widerstand(oder pulldown?- ich weiß es nicht). der bereich wird mit 10-15cm angegeben, kann aber verstärkt werden durch ultrahelle IR-LED und durch LED-Fassung und einen Transistor in er schaltung der der LEd mehr strom gibt.

mehr dazu hier: https://www.roboternetz.de/wissen/index.php/Sensorarten#Distanzsensor_IS471F

so in bascom musste also nur den pin abfragen. ob er high oder low ist. und deinen bot dementsprechend reagiern lassen. im endeffekt sind die schaltungen also nur ein besserer taster, aber mir gefallen die auch und ich werde sie wohl auch benutzen, denn es ist ein unterschied ob ein bot erstmal mit gegen die wand fährt oder ob er kurz davor ausweicht und woanders hin fährt.

mfg, Zachso

Elektronik303
16.05.2007, 14:12
Ok, danke für die Antwort! Eigentlich sogar genau das was ich gesucht habe, eine günstige Alternative zu den US Sensoren, denn Abstände messen soll er garnicht können, einfach sehen ob er gleich gegen was gegen fährt oder nicht.

Zachso
16.05.2007, 14:18
jo, nur eines hab ich noch vergessen: der öffnungswinkel der IR-sensoren ist sehr klein, also lieber gleich ein paar mehr kaufen, empfindlich gegen tageslicht sind sie übrigens nicht, das IR-Licht ist moduliert aber der IS471 ist extrem empfindlich gegen dunkle flächen, soll heißen er erkennt einen schwarzen gegenstand viel später ein zum beispiel einen weißen. da musst du aufpassen und das evtl. in deine überlgeungen mit einbeziehen, je nachdem wie schnell dein roboter ist.

mfg, zachso

Elektronik303
16.05.2007, 17:00
Joa, das ist aber nicht so schlimm, aber wirklich farbempfindlich ist er nicht oder?

Jon
16.05.2007, 17:19
Nur bei dunklen Flächen (dunkles grau bis schwarz) kann es passieren, dass er nichts "sieht".
Aber vielleicht hilft es, wenn man die Flächen mit ultrahellen roten LEDs anleuchten? Kam mir mal in den Sinn, probiert habe ich es aber noch nie.

jon

Zachso
16.05.2007, 17:28
hm, ka was das bringen soll, denn es macht die flächen zwar für das menschliche auge sichtbar, aber nicht für den IR-empfänger, daher denke ich das bringt nichts, denn der misst nur das refektierte licht. aber ich denke nicht dass es ein großes problem darstellt, ich habe zumindest noch nie gehört dass ein robo irgendwo dagegen gefahren ist und es nicht gemerkt hat, insofern dürfte das okay sein mit den schwarzen flächen. abgesehn davo: wie viele swarze flächen gbt es denn bei dir zu hause? oder vor der haustür? wenn es irgendwie doch stören sollte kann man ja imemrnoch kollisionstaster nachrüsten, dann dürfts aber auf jeden fall funktioniern.

mfg, zachso

Jon
16.05.2007, 17:30
Ich fahre regelmäßig mit IMADEIT gegen Autoreifen!
Wenn du die Reifen mit rotem Licht anstrahlst, habe ich mir überlegt, dann sollte doch mehr IR Licht reflektiert werden. Ist aber auch nur eine rein theoretische Überlegung von mir, die nicht stimmen muss.

jon

Elektronik303
17.05.2007, 18:23
naja stimmt ja eig. so viele schwarze flächen gibts ja garnicht. Ich bedank mich bei allen die mir geholfen haben, ich hab jetzt vor 5 Stück am Roboter zu verteilen, ich denke das wird reichen.

MoeJoeHH
31.05.2007, 20:34
moinsen!

vielleicht ein wenig spät mein beitrag aber naja, hier kommt er:

also es ist nicht gesagt, dass wenn eine schwarze fläche kein sichtbares licht reflektiert (deswegen ist sie ja schwarz) nicht trotzdem IR-Licht reflektiert. Die Reflektion, bzw. Absorption von Licht ist im Allgemeinen nämlich wellenlängenabhängig (und wohl auch materialabhängig). Ein schwarzes Stück Pappe kann da anders sein als ein schwarzer Autoreifen.

@Jon:
Der Autoreifen sollte auch weniger reflektieren, da der Kohlenstoff darin das infrarote Licht absorbiert. So hab ich das zumindest mal irgendwo aufgeschnappt. Das zusätzliche rote Licht wird da dran auch nichts ändern, denn das ändert die Wellenlänge des IR-Lichtes nicht. Wenn Du Glück hast, wird dein Sensor höchstens auf eben das reflektierte sichtbare Licht reagieren.


So, auf diesen Thread bin ich gestoßen, weil ich für meinen Robi auch die IS417F Variante einzubauen, zusätzlich zum GP2D12. Meine Frage wäre nun: Gibts den nicht bei Reichelt oder Conrad? Ich kann die da nicht finden. Wo bekommt Ihr die denn so her?

Wer besonders viel Hilfe geben will, hier:

https://www.roboternetz.de/phpBB2/zeigebeitrag.php?t=29972&highlight=

habe ich noch ein paar Fragen bezüglich meines Projektes... :D thx

Moe

recycle
31.05.2007, 22:31
So, auf diesen Thread bin ich gestoßen, weil ich für meinen Robi auch die IS417F Variante einzubauen, zusätzlich zum GP2D12. Meine Frage wäre nun: Gibts den nicht bei Reichelt oder Conrad? Ich kann die da nicht finden.



http://www.conrad.de/goto.php?artikel=185094

Stone
01.06.2007, 08:00
Gibts z.B. bei
http://www.micromaus.de/
http://shop.embedit.de/

Da ist man mit Versandkosten noch billiger dran als bein Conrad( zumindestens bei 5 Stück)

MfG Matthias

MoeJoeHH
01.06.2007, 08:06
4,70€ Conrad (ab 10Stk) gegen 2,20€ Micromaus.... da lohnt sich das wohl nicht zu Conrad hinzulatschen.

Und embedit.de ist noch günstiger, wenn man denn den GP2D12 mitbestellen will.

Vielen Dank für die Hilfe!

Moe

Elektronik303
01.06.2007, 16:26
Ok also ich werde wohl ein IS471 verwenden, Danke, habt mir sehr geholfen, und das mit den schwarzen Flächen ist auch nicht so schlimm.

Mfg

Elektronik303

uffi
02.06.2007, 15:22
Ich hab auch mal Detektoren mit IS471 aufgebaut. Meiner Meinung nach haben die einen großen Nachteil: bei Reichweiten von 30 cm relativ hoher Stromverbrauch, da der Duty Cycle bei 6% liegt.

Daher empfehle ich eine andere und billigere Lösung:
SFH5110 (IR-Empfänger) mit einer 38khz gepulsten LD274-3 (über PWM-Ausgang eines Mikrocontrollers). Das ganze über einen Mikrocontroller steuern. Dann kann man den Duty Cycle selbst festlegen und die LD274-3 mit bis zu 3A bei einem Overall-Duty Cycle (38kHz=on-Zeit / Wiederholzeit) 0,1% pulsen (über einen Transistor), was mit dem SFH5110 Reichweiten bis zu 5m erlaubt. Man kann dann beim 38kHz-Signal selbst den Duty Cycle noch variieren (ca. 20-50%) und dadurch auch das Ansprechen des SFH5110 durchfahren. Damit kann man z.B. einen Scan über den 38Khz-Duty-Cycle fahren und sogar die ungefähre Entfernung schätzen (ist allerdings auch abhängig von der Größe und Reflektivität des Objektes).

MoeJoeHH
02.06.2007, 19:14
...und ich hatte gestern gerade ein ähnliches Bauteil (TSOP1136) gesehen und mich gefragt ob das nicht auch verwendbar wäre und es dann doch nicht mit in die Bestellung getan.

Prinzipiell ist die Art der IR-LED aber ja egal, oder nicht? Ich habe nämlich die SFH409 hier, aber senden tut die auch bei 950nm.

Wenn ich das richtig verstehe wrid der Ausgang dann auf HIGH geschaltet, wenn das Signal der (dauerhaft mit 36kHz bzw. 38 kHz modulierten) LED erkannt wird.

Tja, danke dass Du das hier nochmal reinschreibst, manchmal muss man einfach mal auf sich selber hören... ;-) Also werd ich mir den LD274-3 bzw den TSOP1136 mal zulegen und damit rumexperimentieren.

Moe

uffi
02.06.2007, 21:27
Ja, es geht auch jede andere IR-LED. Der Vorteil der LD274-3 ist aber die hohe kurzzeitige Strombelastbarkeit bis 3A und die relativ hohe Lichtintensität.

Der Ausgang des TSOP1736 geht auf Low, wenn er ein 36 kHz-Signal empfängt (nicht auf High).

Zachso
02.06.2007, 23:46
die lösung ist ganz gut denke ich, nur hat einen anchteil: den PWM-Port. ich habe ja keien ahnung wie viele davon ein durchschnittlicher AVR hat, aber meine PIC's haben nur 2 und die brauche ich schon um meien motoren anzusteuern. selbst der PIC für meinen großen robbie (PIC18f8722, TQFP80) hat nur 6 PWM-Ports glaube ich, möcht aber auch nciht lügen... und in anbetrahct der tatsache dass man ja sicherlich mehrere sensoren auf einen robby bauen möchte ist das dann doch schon recht wenig.

zu conrad: das ist ja wohl ne pure frechheit, bei dem preis kannste auch getrost beim sponsor kaufen, da kosten die nicht so viel, ungefähr die hälfte mit LED

MoeJoeHH
03.06.2007, 00:53
Die SFH409 kann man auch (für unter 10us) mit 3A belasten. Aber ich möchte auch (noch) nicht eine so große Entfernung abdecken, mir reicht es, wenn so ungefähr ab 20-30cm ein Hinderniss gemeldet wird, damit der Robi dann anhalten und abdrehen kann.

Zum PWM-Port: Man könnte doch sicherlich auch mit nem Timer-Interrupt einen Pin toggeln. Der Pin kann dann ja ruhig alle Sender LEDs gleichzeitig an bzw. aus schalten. Und mit einer entsprechenden booleschen Variable kann man sicher auch ein beliebiges Tastverhältnis einstellen (einfach den Compare-Wert zwischen zwei Werten tauschen). Zumindest stell ich mir das so vor.

Wenn man ein 50% Duty-Cycle haben möchte kann man wahrscheinlich sogar ein NE555 benutzen, fragt sich nur, wie genau man die Frequenz dort einstellen kann (Buteiltoleranzen etc ?!?) Mit nem Oszi und nem Poti an einer der beiden Widerstandsstellen sollte das aber irgendwie möglich sein.

Hier die Beschaltung des NE555 laut Datenblatt:
http://www.streetskatinghh.de/RN/NE555_PWM.JPG

Vorteil wäre ja, dass man sich Kapazitäten auf dem uC frei hält. Der bräuchte sich dann nur noch damit zu beschäftigen, wenn tatsächlich etwas passiert (ein Hindernis auftaucht)

@Uffi: richtig, auf low, deswegen ja auch der optionale Pull-UP :D ... danke hätt wahrscheinlich ewig nach nem Fehler gesucht :-k !

Moe

uffi
03.06.2007, 10:47
@Zachso: nimm doch einen kleinen Controller extra für die ganzen Sensoren und lass ihn über I2C oder SPI mit dem Main-Controller kommunizieren. Ein Atmel ATTiny für 1,37 Euronen bei Elpro ist auch nicht viel teurer als ein NE555 + den OpAmp im Bild oben. Ein PWM-Kanal reicht dann auch für alle IR-Sensoren, am besten kann man bei 5V-Versorgung zwei LEDs sogar jeweils in Reihe an einem Transistor betreiben, dann wird nicht so viel Leistung im Vorwiderstand der LED verbraten.

MoeJoeHH
03.06.2007, 14:46
...naja, der NE555 kostet 0,12€ bei Reichelt und selbst bei Conrad kostet der nur 27ct. Nachteil ist aber ganz klar, dass maneben 50% Duty Cycle hat. Aber bei gringen Reichweiten sollte das mit dem Stromverbrauch dann trotzdem noch akzeptabel sein.

Ich bin jedenfalls noch nicht so fortgeschritten, dass ich mir über Stromverbrauch Gedanken mache, momentan bin ich erstmal froh wenn ich überhaupt nen Roboter zusammenbekomm...

Zusätzlich braucht man nur zwei Widerstände und ein / zwei Kondensatoren für die Beschaltung des NE555. Die OPAs in dem Bild oben sind in dem NE555. Im Endeffekt sollte dann ein Interrupt i/o Port am uC pro Sensor genügen, denke ich. Da ich aus einem früheren Fehlkauf noch nen Haufen NE555 habe, werde ich das wohl damit mal probieren. - Versuch macht kluch!

Moe