PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : RP6 ACS Links funktioniert nicht



unimatrix2
02.08.2007, 16:48
Hallo zusammen,

habe mir vor zwei Tagen den RP6 angeschafft. Nun stehe ich vor dem Problem dass die IR Hindernis-Erkennung auf der linken Seite nicht funktioniert.

Ich habe das Selftest Programm hochgeladen und den ACS Test gestartet. Die ACS Hindernis-Erkennung auf der rechten Seite funktioniert richtig (sieht man ja an der Status-LED2 und im Terminal "obstacle: right!")
Aber auf der Linken Seite tut sich gar nichts!

Habe ich etwas übersehen, hat vielleicht noch jemand das Problem oder einen Tipp?

Gruß,
unimatrix2

SlyD
02.08.2007, 18:21
Hallo unimatrix2,

schau Dir mal das Foto in der RP6 Anleitung auf der ersten Seite an (reinzoomen!).
Die kleine Platine vorne am Roboter mit den IR LEDs sollte genau so aussehen wie auf dem Foto.
Sind die IR LEDs evtl. verbogen? Insbesondere natürlich D2 - das ist die IR LED vom linken ACS Kanal.

MfG,
SlyD

unimatrix2
02.08.2007, 19:44
Hi SlyD,

erstmal danke für deine Antwort.

Ich habe mir das Foto angeschaut, es sieht alles richtig aus. Da ACL_L am selben Pin wie MISO hängt, habe ich das Selftest Programm geändert damit der ACS Test direkt startet und ich das auch ohne Prog-Kabel testen kann, hängt aber nicht scheinbar damit zusammen da auch ohne angeschlossenes Prog-Kabel nur der rechte IR Sensor anspricht.

Langsam muss ich davon ausgehen dass das Teil evtl. defekt ist...

SlyD
03.08.2007, 00:08
Hallo unimatrix2,

nein am PROG/UART Anschluss liegen nur RX und TX dran - MISO hat damit nichts zu tun. Das USB Interface kannst Du also dranlassen.


Funktioniert der IRCOMM Test (#7) Problemlos?

Das Selbsttestprogramm brauchst Du für den ACS Test nicht unbedingt, Du kannst auch das Beispielprogramm "Example_04_ACS" verwenden.

Versuch mal bitte die Reichweite in diesem Programm umzustellen nachdem Du es einmal unverändert getestet hast - im "Example_04_ACS" Programm ist das Zeile 168:
setACSPwrMed(); // Set ACS to medium power/range

Das könntest Du mal in
setACSPwrLow();

ändern und dann nochmal mit

setACSPwrHigh();

testen.

Jeweils immer speichern, neu kompilieren und auf den Roboter übertragen.

------------------------------------------------------------------

Hast Du mal die Lötstellen von der IR LED D2 angeschaut?
--> Also bei abgeschraubtem Mainboard und gelöstem Bumper Stecker hinter der Sensor Platine schauen! Auch mal ganz ganz sachte und vorsichtig an der IR LED D2 wackeln - die müsst recht fest sitzen.
Beim wieder anstecken des Bumper Kabels am besten mit einem Finger an der Sensor Platine gegenhalten!


Direkt über der IR LED D2 ist auch die Verbindung zum Mainboard (beschriftet mit SP1) - schau Dir da mal den zweiten Kontakt von aussen an - sehen die Lötstellen OK aus?

Ich habe mal ein paar Stellen die Du Dir ganz genau ansehen könntest im Anhang markiert (der linke ACS Kanal kommt da am zweiten Pin von aussen im markierten Bereich am Mikrocontroller an).
Auf schlechte Lötstellen, Metall- und Lotreste die Kurzschlüsse verursachen könnten etc. achten!


Wenn alles nichts hilft, musst Du den RP6 wohl oder übel umtauschen lassen. Da musst Du Dich natürlich immer zuerst an den Händler, also Conrad wenden.

MfG,
SlyD

unimatrix2
03.08.2007, 10:20
Hallo SlyD,

danke für deine ausführliche Antwort.

Du hast natürlich Recht, der wird ja über den Bootloader programmiert ](*,) Ich progge die AVR's meistens direkt ohne Bootloader und dachte deshalb MISO hat seine Finger im Spiel ;)

Ich habe die Lötstellen geprüft, sieht alles gut aus, keine Lötbrücken, keine Lotreste, die Led D2 sitzt auch fest.

Habe auch Example_04_ACS ausprobiert, es tut sich einfach nix.
Ich werden den Robby mal umtauschen, es kann eigentlich nur ein Hardwaredefekt sein.

Gruß,
unimatrix2

unimatrix2
03.08.2007, 20:18
Hi,

so, nun habe ich meinen RP6 umgetauscht.

Der rechte IR Sensor funktioniert wie bei meinem Ex-RP6 problemlos.

Der linke IR Sensor funktioniert nur ab und zu. Ich habe das Example_04_ACS programm upgeloadet und getestet. Sobald ich was vor dem rechten Sensor positioniere geht sofort die LED SL2 an, wenn ich das Hindernis entferne geht es wieder aus, genau wie es sein muss.
Wenn ich dem linken Sensor was vorsetze, geht entweder gar nix oder es wird nur kurz erkannt dann wieder nicht.
Der linke Sensor funktioniert einfach nicht zuverlässig!

Ich habe mal dem Robby ein Hindernis vorgesetzt und stehen lassen ohne es zu Bewegen und folgendes ist im Terminal zu sehen:



[READY]

RP6 ACS - Testprogram
_____________________

ACS state changed L: | R: o
ACS state changed L: o | R: o MIDDLE!
ACS state changed L: | R: o
ACS state changed L: o | R: o MIDDLE!
ACS state changed L: | R: o
ACS state changed L: o | R: o MIDDLE!
ACS state changed L: | R: o
ACS state changed L: o | R: o MIDDLE!
ACS state changed L: | R: o
ACS state changed L: o | R: o MIDDLE!
ACS state changed L: | R: o
ACS state changed L: o | R: o MIDDLE!
ACS state changed L: | R: o
ACS state changed L: o | R: o MIDDLE!
ACS state changed L: | R: o
ACS state changed L: o | R: o MIDDLE!
ACS state changed L: | R: o
ACS state changed L: o | R: o MIDDLE!
ACS state changed L: | R: o
ACS state changed L: o | R: o MIDDLE!
ACS state changed L: | R: o
ACS state changed L: o | R: o MIDDLE!
ACS state changed L: | R: o
ACS state changed L: | R:


Hier sieht man schon dass der linke IR Sensor nicht richtig arbeitet, im Gegensatz zum rechten IR Sensor.
Mich würde mal interresieren ob nur ich das Problem habe...

Ich versuche weiterhin das Problem zu beheben.

Gruß,
unimatrix2

radbruch
03.08.2007, 20:34
Hallo unimatrix2,

herzlich Glückwunsch zum Kauf, auch wenn dich scheinbar das Pech verfolgt. Zwei RP6 mit dem selben Problem halte ich für sehr unwahrscheinlich. Allerdings weiß ich noch nicht, wie die Serien-RPs sind, ich habe ein Testmodel. Aber bisher habe ich noch nichts von ACS-Problemen gelesen.

Könnte es sein, daß dein Versuchsaufbau von außen beinflußt wird? Fremdlicht wie Halogenstrahler oder Sonne von der Seite? IR-Empfänger IC3 verbogen?

Gruß

mic

Jon
03.08.2007, 21:12
Könnte es sein, daß dein Versuchsaufbau von außen beinflußt wird? Fremdlicht wie Halogenstrahler oder Sonne von der Seite?
Eigentlich sollten die IR-LEDs doch gepulst sein. Sonst werden nicht solche Reichweiten erreicht. Wenn die LEDs gepulst sind und der µC diese Pulsfolge auswertet, dann sollte Fremdlicht keine Probleme machen. Ist dies allerdings nicht so, was ich nicht hoffe, dann kann es da Probleme geben. Schon durch normale Deckenlampen.

jon

SlyD
03.08.2007, 22:22
@jon:
natürlich werden die IR LEDs gepulst - sonst würde es mit dem TSOP34836 nicht funktionieren.
Die IR LEDs senden kurze mit 36kHz modulierte Impulse aus.


@unimatrix2:
Also das hört sich aber wirklich seltsam an.

Hast Du verschiedene Gegenstände probiert? Welche Distanz hast Du getestet? Auch verschiedene Einstellungen des ACS getestet wie oben beschrieben? (low, med, high)
Beweg einfach mal die Hände vor den Sensoren hin und her und verändere vor allem auch mal die Distanz (ganz nah dran gehen)!
Wie verhält es sich dann?


In normalen Raumbedingungen auch mit Lampen und hellem Tageslicht gibt es normalerweise überhaupt keine Probleme, aber Störlicht kann unter Umständen dennoch eine Ursache sein - nämlich wenn zufällig die Frequenz passt....

Das einzige Störlicht, das während der Tests wirklich etwas beeinflusst hat, kam von einem Flachbildfernseher. Die CCFL Röhren da drin senden wohl Licht auf einer ähnlichen Frequenz aus, und das stört den TSOP34836 Empfänger dann.
Der blockt Störlicht automatisch ab und empfängt dann nichts mehr bzw. nur noch sehr schlecht.
Das hat allerdings nur die Reichweite beeinflusst, funktioniert hat es trotzdem.


Also nur um das als Fehlerquelle auszuschließen:
Schalte mal ALLE Lampen/Leuchtstoffröhren und Flachbildschirme in näherer Umgebung des Roboters aus!
(oder nimm den Roboter mit in einen anderen Raum...)
Dann teste es nochmal mit dem ACS Beispielprogramm bei maximaler Sendeleistung!

MfG,
SlyD

unimatrix2
03.08.2007, 23:47
Hi,

@radbruch
danke, danke :)
Beim ersten RP6 ging ACS links überhaupt nicht! Jetzt beim tausch RP6 geht es wie gesagt nur sporadisch...

Das mit dem Störlicht würde ja kaum nur den linken IR beeinträchtigen und den rechten völlig intakt lassen. Ich habe es trotzdem in einem völlig dunklem Raum probiert, gleiches Ergebnis, rechts funzt es völlig problemlos (Hand ca. 10 cm davor gehalten => LED SL2 an bis Hand weg => dann SL2 wieder aus), linke Seite problematisch wie bisher, SL5 springt dauernd an und aus.

Habe verschiedene Gegenstände probiert, weisses Blatt Papier, Hand, Wand, Möbel, unterschiedliche Abstände von ganz nah bis weit weg.

Gruß,
unimatrix2

SlyD
04.08.2007, 21:00
Hallo unimatrix2,

also wenn das nur alle zwei drei Sekunden mal kurz umspringt, ist das mehr oder weniger normal. Das funktioniert dann trotzdem!
Wenn es allerdings IMMER bei allen gegenständen und allen Sendestärken innerhalb einer Sekunde mehrmals umspringt ist es nicht normal. Was ich sehr seltsam finden würde. Ist mir bisher noch nicht untergekommen.


Sind beide ACS LEDs *leicht* nach aussen gebogen? So etwa 5° nach aussen.

Die Sensorplatine sollte im 90° Winkel zum Mainboard angelötet sein - passt das etwa?
Die IR LEDs sollten die Bumper Platine nicht berühren bzw. nicht verdeckt werden!


Und Du hast auch mal setACSPwrHigh(); probiert? Wie verhält es sich dann?

Lass einfach mal das Beispielprogramm "Example_05_Move_05" laufen!
(Er fährt dann herum und versucht mit dem ACS Hindernissen auszuweichen.)

Wie sich der RP6 da verhalten sollte, sieht man in diesen Videos von radbruch sehr gut:
https://www.roboternetz.de/phpBB2/viewtopic.php?p=301332#301332

MfG,
SlyD

unimatrix2
05.08.2007, 13:15
Hi SlyD,

also, ich habe mal die Ausrichtung der IR LED D2 nach oben korrigiert (geht ja nur mit Lötkoblen). Das Verhalten hat sich deutlich gebessert, ist aber nicht so gut wie bei der rechten IR LED.

Ich lasse mal das Example_05_Move_05 laufen, mal sehen ob das jetzt so passt.

Gruß,
unimatrix2

05.08.2007, 14:17
umtauschen den rp6, bevor das umtauschrecht abgelaufen ist.
dann hast du die pappnase auf.

mfg

05.08.2007, 14:19
und wenn du mit dem lötkolben beigegangen bist , ist die gesamte garantiefrist für dich abgelaufen. so etwas sollte man nicht tun.

mfg

radbruch
05.08.2007, 14:44
Sich als Gast einlogen sollte man auch nicht tun. 8-[

Falls der Händler nicht umtauschen möchte, kann man den RP6 auch an SlyD (https://www.roboternetz.de/phpBB2/profile.php?mode=viewprofile&u=122) zu senden...

Gruß

mic

unimatrix2
05.08.2007, 20:40
Hi,

@Gast
Ich hab ja schon mal einen umgetauscht, das ist schon der zweite...

Ich habe das Example_05_Move_05 Programm getestet wo der RP6 mit Hilfe des ACS den Hindernissen ausweichen sollte => SEHR SCHWACH !
Ich bin sehr enttäuscht, bei 10 Hindernissen fährt er 8 mal dagegen und 2 mal weicht er mit dem IR ACS aus! Hab die Stellung der IR LED's des Empfänger IC's IC3 geprüft, nix hilft!
Sehr schwach für 129,- Euro.

Seit 3 Tagen probiere und ärgere ich mich nur mit dem ACS des RP6 rum anstatt was sinnvolles für den RP6 zu proggen!

Ich überlege ob ich den RP6 zurückgebe und mich nach einer anderen Roboter-Platform umsehe...

Gruß,
unimatrix2

SlyD
05.08.2007, 22:59
Hallo unimatrix2,

sicher ist das ACS nicht perfekt, es ist weitestgehend identisch zum ACS des Vorgängers RP5, aber da gab es eigentlich wenig Klagen.

In den Videos im oben verlinkten Thread sieht man, wie es normalerweise funktionieren sollte!
Wenn es das nicht tut, stimmt etwas mit den IR LEDs oder dem Empfänger nicht.

Du solltest das move_05 Programm ja genau deshalb ausprobieren - um zu testen ob das ACS richtig funktioniert oder nicht.

Einer der beiden Kanäle scheint Deiner Beschreibung nach schlecht zu funktionieren, was natürlich erklärt warum er einige Hindernisse übersieht.

------------------------------------
Ich habe mal ein paar Fotos angefügt, die zeigen wie die IR LEDs genau ausgerichtet sein müssen - es ist sehr sehr wichtig das die IR LEDs leicht nach aussen geneigt sind - also um etwa 5° bis 10°!


Was für Hindernisse waren es denn genau?
Schwarze/Dunkle oder dünne Objekte werden natürlich schlechter erkannt als helle große Objekte.


> Sehr schwach für 129 Euro

Du musst bedenken, dass das ACS bei weitem nicht die einzigste Komponente des RP6 ist!


Man ist auch nicht auf das ACS beschränkt - über das Erweiterungssystem ist es sehr leicht mehrere zusätzliche Ultraschallsensoren z.B. SRF08 oder alternativ die günstigeren GP2D120 IR Sensoren hinzuzufügen - die sind dem ACS natürlich 100 fach überlegen, kosten aber auch etwa 14 Euro pro Stück.

MfG,
SlyD

PS:
Es gibt auch noch die Möglichkeit, das Verhalten des ACS per Software zu verändern/verbessern.

Jon
06.08.2007, 07:55
Eigentlich wollte ich mich hier raushalten, da ich keinen RP6 habe, aber jetzt muss ich mich doch mal melden.


sicher ist das ACS nicht perfekt, es ist weitestgehend identisch zum ACS des Vorgängers RP5, aber da gab es eigentlich wenig Klagen.
Ich habe den RP5 vier (!) mal umgetauscht, weil das ACS kaputt war. Danach wollte ich keinen neuen RP5 mehr und habe mein Geld in bar zurück bekommen.
Nur so viel zum Thema, es gäbe da wenig Klagen.

jon

SlyD
06.08.2007, 12:32
@jon:
Lies nochmal genau was ich geschrieben habe im Zusammenhang. Nicht nur einen einzelnen Satz.

Ich meinte damit, dass es wenig Klagen gegeben hat, *WENN* es korrekt funktioniert hat! Was anderes habe ich nicht behauptet.
--> Es liegt nicht am ACS selbst, sondern daran, dass beim Zusammenbau irgendetwas schief gegangen ist! Auch die IR LEDs selbst können mal leicht defekt von Hersteller kommen.

MfG,
SlyD

unimatrix2
06.08.2007, 14:16
Hallo,

@SlyD
Danke für die detailierten Bilder. Ich werde nochmal versuchen die LED's anhand der Bilder auszurichten und das ganze mit dem move_05 Programm testen.

Ansonsten meinte ich ja nur dass ich für das Geld einen funktionierenden Robby erwarte. Ich habe ja schon mal einen umgetauscht und weiß nicht ob ich noch ein paar umtauschen möchte bis ich einen habe der funktioniert...

Ich werde heute Abend nochmal testen und mich dann entscheiden ob ich den RP6 behalte, umtausche oder zurückgebe.

Gruß,
unimatrix2

SlyD
06.08.2007, 14:31
Hallo unimatrix2,

mehr als das oben kann ich leider momentan nicht sagen - ist immer schwierig sowas per Ferndiagnose zu machen. Woran es liegt kann ich wohl nur feststellen wenn ich das Teil auf meinem Tisch habe...


Es gäbe aber wie gesagt evtl. auch noch die Möglichkeit es per Software anzupassen - in der Funktion task_ACS() der RP6Library kann man diverse Timings und die Anzahl gesendeter Impulse etc. anpassen falls nötig. Damit kann man sowas vermutlich auch ausgleichen - müsste ich aber erst noch genauer untersuchen.

Ich externalisiere diese Timings aus task_ACS demnächst mal und packe das in die RP6Config.h rein. Dann kann man besser damit experimentieren. Aber dazu habe ich leider erst morgen Zeit.

MfG,
SlyD

unimatrix2
06.08.2007, 22:22
Hi SlyD,

ich habe mal die IR Led's neu ausgerichtet. War zwar viel gefummel aber es hat sich gelohnt, das move_05 Testprogramm läuft jetzt fast gut, er weicht fast allen Hindernissen aus.

Den RP6 werde ich wohl behalten und versuchen die Software noch etwas zu optimieren.

Danke nochmal für deine Hilfe SlyD und die Hilfreichen Tipps, du hast einen RP6 vor dem Umtausch bewahrt ;)

Gruß,
unimatrix2

radbruch
06.08.2007, 22:33
Na prima. Nun wohl endgültig: Willkommen im Club.

mic

SlyD
07.08.2007, 12:33
Freut mich natürlich auch das zu hören.

Ich habe mal die Einstellungen für das ACS externalisiert und noch einen unteren Schwellwert hinzugefügt um das Schwingen bei bestimmten Distanzen zu verringern.

s.
https://www.roboternetz.de/phpBB2/viewtopic.php?p=304868#304868

MfG,
SlyD

unimatrix2
07.08.2007, 18:25
Hi,

@radbruch
Danke :)

@SlyD
Hab ich schon im RP6Lib Thread gelesen, werd's runterladen und versuchen über die Werte das ACS zu optimieren.

Gruß,
unimatrix2

roboterheld
08.08.2007, 10:09
....Sich als Gast einlogen sollte man auch nicht tun. .....

willst du hier vorschriften erteilen.
konzentriere dich lieber auf den umtausch.

radbruch
08.08.2007, 12:56
...willst du hier vorschriften erteilen....

Gerne, allerdings würde sie wohl keiner Beachten 8-[


...konzentriere dich lieber auf den umtausch...

Warum? Mein RP6 schnurrt wie ein Kätzchen (http://www.youtube.com/watch?v=FevOxAcnvUs)...

Gruß

mic

Xtreme
08.08.2007, 17:13
Damit nicht immer nur von der guten Erweiterbarkeit des RP6 gesprochen wird, sondern er auch mal wirklich erweitert wird, werde ich das Problem hier aufgreifen und dem RP6 ein Servo mit einem Sharp Sensor oben drauf verpassen. Bis in ein paar Tagen ;-)

ex535
12.08.2007, 00:05
Ich habe das Example_05_Move_05 Programm getestet wo der RP6 mit Hilfe des ACS den Hindernissen ausweichen sollte => GUT !

Ich bin nicht enttäuscht, der RP6 weicht er mit dem IR ACS aus!
Alles super. Habe den RP6 heute gekauft.

Kurt

radbruch
12.08.2007, 00:27
Hallo Kurt,

herzlichen Glückwunsch zum Kauf und willkommen im RP6-Club.

Mit dem Move5-Demo läuft mein RP6 auch gut:

https://www.roboternetz.de/phpBB2/viewtopic.php?p=301332#301332

Gruß

mic

UnIgor
03.10.2008, 09:57
Hi Leute,

hatte exakt das gleiche Problem. Die rechte IRLED funktionierte einwandfrei, nur die linke nicht!
Habe mir die Bilder von SlyD angeschaut und siehe da: Nicht nur die Empfandgsdioden (beide), sondern auch die Sendedioden (rechte) waren abnormal ausgerichtet. Habe sie - wie auf SlyD's Bildern gezeigt - vorsichtig zurechtgerückt. Nun arbeiten sie tadellos. Thx to SlyD =D>

Gruß
UnIgor