INFO: Dieses Forum nutzt Cookies...
Cookies sind für den Betrieb des Forums unverzichtbar. Mit der Nutzung des Forums erklärst Du dich damit einverstanden, dass wir Cookies verwenden.

Es wird in jedem Fall ein Cookie gesetzt um diesen Hinweis nicht mehr zu erhalten. Desweiteren setzen wir Google Adsense und Google Analytics ein.

Antwort schreiben 
 
Themabewertung:
  • 0 Bewertungen - 0 im Durchschnitt
  • 1
  • 2
  • 3
  • 4
  • 5
Arduino + SRF02 Entfernungsmesser Problem
22.11.2013, 11:44 (Dieser Beitrag wurde zuletzt bearbeitet: 23.11.2013 10:18 von rkuehle.)
Beitrag #9
RE: Arduino + SRF02 Entfernungsmesser Problem
Hallo rik1234,

in der Beschreibung für den Sensor steht folgendes:
Zitat:•Minimum range approx 15cm
•Maximun Range approx 2.5m
Damit erklärt sich das Verhalten des Sensors.

Ich glaube der HC-SR04 http://www.robodino.de/2011/12/ultrascha...-sr04.html ist für die kleinen Distanzen besser geeignet.

Grüße Ricardo
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren
26.11.2013, 12:29
Beitrag #10
RE: Arduino + SRF02 Entfernungsmesser Problem
Peinlich peinlich,

wenn man nicht lesen kann Wink Ok alles klar vielen Dank. Das erklärt warum bei rund 15 cm nur Datenmüll heraus kommt. Smile


(22.11.2013 11:44)rkuehle schrieb:  Hallo rik1234,

in der Beschreibung für den Sensor steht folgendes:
Zitat:•Minimum range approx 15cm
•Maximun Range approx 2.5m
Damit erklärt sich das Verhalten des Sensors.

Ich glaube der HC-SR04 http://www.robodino.de/2011/12/ultrascha...-sr04.html ist für die kleinen Distanzen besser geeignet.

Grüße Ricardo
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren
27.12.2013, 13:36
Beitrag #11
RE: Arduino + SRF02 Entfernungsmesser Problem
Hallo Leute,

ich hoffe ihr habt schöne Weihnachten gehabt Smile

Leider habe ich ein erneutes Problem, was sehr ähnlich ist.
Ich will jetzt 2 Sensoren gleichzeitig laufen lassen.
Dazu habe ich nun den 2. erst einmal eigenständig in Betrieb genommen.
Mein 1. Ergebnis war eine Distanz von -2 cm.
Daraufhin habe ich mich an diesen Beitrag erinnert und den I2C Scanner verwendet.
Dabei kam heraus, dass ich die Adresse anpassen muss von 0x79 auf 0x70. Allerdings werden mir nun 0cm angezeigt.
Ich habe folgenden Code verwendet:

Code:
    #include <Wire.h>
    

    void setup()
    {
    
      Wire.begin();                // join i2c bus (address optional for master)
      Serial.begin(9600);          // start serial communication at 9600bps
      Serial.println("Arduino SRF02 Ultrasonic range finder \n ---------------------------------------");
      delay(2000);
    }
    
    int reading = 0;
    
    void loop()
    {
      // step 1: instruct sensor to read echoes
      Wire.beginTransmission(112); // transmit to device #112 (0x70)
      // the address specified in the datasheet is 224 (0xE0)
      // but i2c adressing uses the high 7 bits so it's 112
      Wire.write(byte(0x00));      // sets register pointer to the command register (0x00)  
      Wire.write(byte(0x51));      // command sensor to measure in "inches" (0x50)
      // use 0x51 for centimeters
      // use 0x52 for ping microseconds
      Wire.endTransmission();      // stop transmitting
    
      // step 2: wait for readings to happen
      delay(70);                   // datasheet suggests at least 65 milliseconds
    
      // step 3: instruct sensor to return a particular echo reading
      Wire.beginTransmission(112); // transmit to device #112
      Wire.write(byte(0x02));      // sets register pointer to echo #1 register (0x02)
      Wire.endTransmission();      // stop transmitting
    
      // step 4: request reading from sensor
      Wire.requestFrom(121, 2);    // request 2 bytes from slave device #112
    
        // step 5: receive reading from sensor
      if(2 <= Wire.available())    // if two bytes were received
      {
        reading = Wire.read();  // receive high byte (overwrites previous reading)
        reading = reading << 8;    // shift high byte to be high 8 bits
        reading |= Wire.read(); // receive low byte as lower 8 bits
        //    Serial.println(reading);   // print the reading
      }
//      if(reading >= 100){            // over 100 cm
//        Serial.println("Target out of Range.");
//      }
//      else{                          // below 100  cm
        Serial.print("Target in Range! (");
        Serial.print(reading);       // print distance
        Serial.println("cm)");
      
      
     // }
    
      delay(250);                  // wait a bit since people have to read the output :)
    }

Weiß jemand woran das jetzt noch liegen kann mit 0cm?
Schonmal vielen Dank im Voraus Smile
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren
Antwort schreiben 


Möglicherweise verwandte Themen...
Thema: Verfasser Antworten: Ansichten: Letzter Beitrag
  Bootloader update mit USBASP Problem sepp01 15 599 12.05.2018 17:23
Letzter Beitrag: sepp01
  C++ Library Datenübergabe Problem jose_ph 9 392 08.05.2018 14:10
Letzter Beitrag: Tommy56
  Problem mit der Textauswertung Franz54 13 486 15.04.2018 18:17
Letzter Beitrag: Tommy56
  Problem mit RIFD UID ParadoxDev 6 307 27.03.2018 12:04
Letzter Beitrag: ParadoxDev
  Problem mit OLED 0.96" Display torsten_156 5 1.811 07.03.2018 23:27
Letzter Beitrag: Tommy56
  Ucglib Library Problem Bully 26 1.186 05.03.2018 18:47
Letzter Beitrag: Tommy56
  Problem mit Wire.available() abfrage avoid 1 381 11.01.2018 13:40
Letzter Beitrag: Tommy56
  SerialComInstruments 4 Problem Darstellung Nextero 35 1.598 15.12.2017 18:51
Letzter Beitrag: ElEspanol
  Problem mit Nema17 und A4988 Philthy 6 536 08.12.2017 12:35
Letzter Beitrag: Tommy56
  Arduino -> Controllino [Problem gelöst] Cyrilsneer 17 1.468 27.11.2017 18:49
Letzter Beitrag: Franz54

Gehe zu:


Benutzer, die gerade dieses Thema anschauen: 1 Gast/Gäste