- 12V Akku mit 280 Ah bauen         
Seite 1 von 2 12 LetzteLetzte
Ergebnis 1 bis 10 von 12

Thema: IR-Hinderniserkennung findet Lichtquellen!

  1. #1
    Neuer Benutzer Öfters hier
    Registriert seit
    05.10.2008
    Beiträge
    10

    IR-Hinderniserkennung findet Lichtquellen!

    Anzeige

    Powerstation Test
    Hi an alle^^

    Der Thematitel sollte wohl alles sagen...
    Der ASURO ist mein erster Roboter überhaupt, aber ich hab mir gedacht, wenn schon denn schon und hab die IR-LED und den IR-Empfänger nach der Vorlage von waste umgebaut

    Dann habe ich den example code aus der neusten Lib-Version für den IR-Kollisionstest geflashed.

    Das Ergebnis:
    Sobald der Empfänger im Licht ist leuchtet die Lampe grün, ist er im Schatten leuchtet die Lampe rot. Fröhlich rumdrücken auf den Tastern zeigt keinerlei Wirkung (also ich merke nichts von einer Veränderung der Pulsbreite). Aber mein Ziel war eig. festzustellen ob da ne Wand vor dem ASURO ist.

    Kann mir jemand weiterhelfen?

    Code:
    #include "asuro.h"
    #include <stdlib.h>
    
    static unsigned char ocr2 = 0x91;
    
    void InitIRDetect(void)
    {  
      UCSRB = 0;
      DDRD |= (1 << DDD1);	// Port D1 als Ausgang
      PORTD &= ~(1 << PD1);	// PD1 auf LOW
      OCR2 = ocr2;
    }
    
    void InitUart(void)
    {
      OCR2  = 0x91;         // duty cycle fuer 36kHz
    }
    
    int main(void)
    {
    
      unsigned char sw;
    
      Init();
      
      DDRD |= (1 << DDD1);	// Port D1 als Ausgang
      PORTD &= ~(1 << PD1);	// PD1 auf LOW
    
    //  InitIRDetect();
      while (1)
      {
        UCSRB = 0;
        OCR2 = 0xFE;
    
        if (PIND & (1 << PD0))
          StatusLED(GREEN);
        else
          StatusLED(RED);
    
        sw = PollSwitch();
        if (sw & 0x01)
          ocr2  = 0xFE;	//Pulsbreite 1
        if (sw & 0x02)
          ocr2  = 0xFD;	//Pulsbreite 2
        if (sw & 0x04)
          ocr2  = 0xFB;	//Pulsbreite 4
        if (sw & 0x08)
          ocr2  = 0xF7;	//Pulsbreite 8
        if (sw & 0x10)
          ocr2  = 0xEF;	//Pulsbreite 16
        if (sw & 0x20)
          ocr2  = 0x90;	//Pulsbreite 110
    
        if (sw)
        {  
          OCR2 = 0x91;
          PrintInt(sw); 
          SerPrint(" ");
          PrintInt(ocr2); 
          SerPrint("\r\n");
        }
    //   Msleep(100);
      }
      return 0;
    }

  2. #2
    Erfahrener Benutzer Roboter Genie
    Registriert seit
    29.05.2005
    Beiträge
    1.018
    Hallo Slimpson,

    willkommen im Forum.

    Versuche mal in diesem Thread Abstandsmessung ähnlich wie IR-Schnittstelle des asuro weitere Infos zu bekommen.
    Ist zwar eine 'Menge Holz', aber dies scheint mir der ausführlichste Thread zu dem Thema zu sein.

    Gruß Sternthaler
    Lieber Asuro programieren als arbeiten gehen.

  3. #3
    Neuer Benutzer Öfters hier
    Registriert seit
    05.10.2008
    Beiträge
    10
    Ne Menge Holz ist schon fast untertrieben^^

    Also ich habe gelesen, dass ihr auch schon festgestellt habt, dass LCD-bildschirme stören. Aber warum mein Asuro im Schatten ständig ein IR- Echo anzeigt hab ich immer noch nicht den leisesten Plan...
    Ich habe nun aber herausgefunden, dass das Programm in der Sonne wunderbar funzt, (bis auf die Änderung der Pulsbreite durch das drücken der Taster).

    Ich schreibe mal was das Hyperterminal so auffängt wenn ich eine Taste drücke:

    Taste 1:

    meist "1 254"
    selten "1 054"

    Taste 2:

    meist "2 253"
    selten "2 053"

    usw.: "4 251" , "8 247" , "16 239" , "32 144"

  4. #4
    Erfahrener Benutzer Robotik Visionär Avatar von oberallgeier
    Registriert seit
    01.09.2007
    Ort
    Oberallgäu
    Beiträge
    8.652
    Hi Slimpson,
    ... Ne Menge Holz ist schon fast untertrieben ...
    Steht ja auch jede Menge Unsinn drin *gggggg*.

    Zitat Zitat von Slimpson
    ... warum mein Asuro im Schatten ständig ein IR- Echo anzeigt ...
    Das könnte daran liegen, dass die SendeDiode am asuro den IR-Empfänger (kurz 5110, ist ein SFH5110-36 von Osram) stört bzw. beeinflusst. Gelegentlich werden die IR-Sendedioden (Typ SFH415 von Osram) mit Schrumfschlauch abgedeckt oder hinter einer Leiterplatten-Trennwand aufgebaut. Allerdings gibt es auch die Variante mit Trennwänden aus Blech. Ich hatte festgestellt (steht irgendwo im Thread) dass die Abdeckung mit Schrumpfschlauch, zumindest die von mir verwendete, durchlässig für die IR-Licht-Wellenlänge der 415 ist und daher den 5110 ein "Echo" vorgaukelt. Deshalb hatte ich die Diode mit einem Messingrohr abgedeckt - und wichtig ist dabei der Bord unten an der Diode. Ich kann aber nicht garantieren, dass diese Abdeckungen Dein Problem beseitigen.

    Ich wünsche Dir Erfolg bei Deiner Fehlersuche und viel Spass mit dem asuro.
    Geändert von oberallgeier (26.08.2018 um 13:21 Uhr)
    Ciao sagt der JoeamBerg

  5. #5
    Neuer Benutzer Öfters hier
    Registriert seit
    05.10.2008
    Beiträge
    10
    Tatsache!
    Ich habe anstatt Blech Kunststoff benutzt und das scheint durchlässig für IR-Strahlen zu sein.
    Und warum ist im Licht dann das Echo verschwunden? o.0
    Naja ich glaube ich lege das ganze jetzt mit Alufolie aus, die müsste die IR-Strahlen ja reflektieren.
    Danke für eure Hilfe!

  6. #6
    Erfahrener Benutzer Robotik Visionär Avatar von oberallgeier
    Registriert seit
    01.09.2007
    Ort
    Oberallgäu
    Beiträge
    8.652

    !

    Zitat Zitat von Slimpson
    ... warum ist im Licht dann das Echo verschwunden? o.0 ...
    Stimmt! Oh, oh! *gggggggg*

    Der SFH5110-36 hat neben anderen pfiffigen Steuerinhalten auch eine AGC - eine Automatic gain control, zu deutsch: eine automatische Verstärkungsregelung.

    Der SFH5110-36 wird ja in verschiedenen Geräten der Unterhaltungselektronik in der IR-Fernsteuerung als Emfpänger benutzt (App-note von Osram: "... Nearly all consumer electronic products (audio, video or set top boxes) are using IR remote controls for controlling basic functions of the equipment like power on/off ...). Diese Geräte sollen bei hellem Licht ebenso funktionieren wie im Mondschein oder bei totaler Dunkelheit. Deshalb wird die Verstärkung des Signals intern anhand der einfallenden Helligkeit geregelt - und zwar so, dass die Empfindlichkeit des Sensors für einfallende Signale UNGEFÄHR gleich bleibt. Die AGC läuft aber nicht wirklich perfekt - und daher wird sie vermutlich bei Lichteinwirkung auf Deine Sensorik das Streulicht der Kunststoffabdeckung wegen der verschobenen Sensorempfindlichkeit "ausblenden". War das verständlich?

    ... ich lege das ganze jetzt mit Alufolie aus ...
    Ja, sehr gute Idee. Vielleicht mit doppelseitigem Klebeband fixieren - Alufolie ist ziemlich rissempfindlich. Und beim kleinsten Schaden ist schon wieder ein kleines Lichtlein da . . . .
    Ciao sagt der JoeamBerg

  7. #7
    Neuer Benutzer Öfters hier
    Registriert seit
    05.10.2008
    Beiträge
    10

    Re: !

    Zitat Zitat von oberallgeier
    War das verständlich?
    Ja ich denke schon,
    Die Veränderte Sensorempfindlichkeit ignoriert das schwache Streulicht meiner Kunststoffabdeckung


    Jetz habe ich im Keller ein Metallrohr mit 1cm durchmesser gefunden und nun das als Abdeckung benutzt. Jetzt erkennt mein Asuro Hindernisse im Abstand von 2cm^^ (Pulsbreite 16).

  8. #8
    Neuer Benutzer Öfters hier
    Registriert seit
    05.10.2008
    Beiträge
    10
    Sorry, dass ich nochmal eure Hilfe beanspruche, aber ich habe ein echt seltsames Problem. Die IR-Erkennung bei MotorSpeed(170,170); funktionier einbandfrei wenn ich den Asuro in die Luft halte, wenn ich ihn aber auf dem Boden fahren lasse funktoniert nichts mehr und er bumst voll gegen die Wand^^

    Muss eigentlich ein Hardwareproblem sein, oder?

  9. #9
    Moderator Robotik Einstein Avatar von damaltor
    Registriert seit
    28.09.2006
    Ort
    Milda
    Alter
    37
    Beiträge
    4.063
    könnte sein dass die motoren unter last mehr stören...
    Read... or die.
    ff.mud.de:7600
    Bild hier  

  10. #10
    Neuer Benutzer Öfters hier
    Registriert seit
    05.10.2008
    Beiträge
    10
    inwiefern stören?
    und, wie könnte ich das beheben?


    Edith sagt:
    Ich hab meinen asuro mal auf motordir FREE FREE gestellt und ihn durch mein Zimmer geschoben^^ alle Hindernisse wurden erfolgreich detektiert...

Seite 1 von 2 12 LetzteLetzte

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •  

MultiPlus Wechselrichter Insel und Nulleinspeisung Conrad