Distande sensor HC-SR04

Hallo,

Ik heb volgende probleem, de distance sensor werkt fijn en nauwkeurig tot ongeveer 160cm, dan slaagt hij tilt. Bij afstanden groter dan 160cm begint hij waarde te tonen van 1 tot 40-50 cm, maar nooit correct. Als ik dan de sensor terug breng tot 160cm begint hij terug goed. Beweeg hem heel traag verder kan het zijn dat hij goed meet tot 170-180 cm, verder niet, dan geeft hij terug waarden aan kleiner dan 100cm.
Als voorbeeld, het voorbeeld uit de library, enkel aangepast naar sensor.ping_cm() maar andere opties geven hetzelfde resultaat.

Wat kan hier verkeerd gaan?

Dank u

// ---------------------------------------------------------------------------
// Example NewPing library sketch that does a ping about 20 times per second.
// ---------------------------------------------------------------------------

#include <NewPing.h>

#define TRIGGER_PIN  9  // Arduino pin tied to trigger pin on the ultrasonic sensor.
#define ECHO_PIN     10  // Arduino pin tied to echo pin on the ultrasonic sensor.
#define MAX_DISTANCE 400 // Maximum distance we want to ping for (in centimeters). Maximum sensor distance is rated at 400-500cm.

NewPing sonar(TRIGGER_PIN, ECHO_PIN, MAX_DISTANCE); // NewPing setup of pins and maximum distance.

void setup() {
  Serial.begin(115200); // Open serial monitor at 115200 baud to see ping results.
  pinMode(8,OUTPUT);
  pinMode(11,OUTPUT);
  digitalWrite(8,HIGH);
  digitalWrite(11,LOW);
}

void loop() {
  delay(1000);                      
  unsigned int cm = sonar.ping_cm(); // Send ping, get ping in cm.
  Serial.print("Ping: ");
  Serial.print(cm); 
  Serial.println("cm");
}

mogelijk kan de sensor niet verder kijken? Heb je een link naar de datasheet?
daar staat meestal een grafiek in van de afstand / pingtijd.

de code zelf lijkt OK.

De grootte van het object waarvan je de aftstand probeert te meten is ook van belang; die hcsr04 stuurt 'n ultrasone pulse uit in 'n hoek van 15 graden (volgens de specs); is 't object te klein, dan zal 't meeste van die pulse 'naast' 't object terecht komen. Zelf heb ik ook weleens met dat dingetje geexperimenteerd en kwam tot niet veel betere resultaten ...

vriendelijke groet,

Jos

er gaat niets verkeerd het werkt zoals het zou moeten.
verbeterpuntebn zijn de tijd dat er gewacht wordt op een puls verlengen.
alle dingen weghalen die de puls verstoren zoals meubels , vloer (dus je ding op tafel zetten) etc.

shooter:
er gaat niets verkeerd het werkt zoals het zou moeten.
verbeterpuntebn zijn de tijd dat er gewacht wordt op een puls verlengen.
alle dingen weghalen die de puls verstoren zoals meubels , vloer (dus je ding op tafel zetten) etc.

De default timeout tijd van de PulseIn functie is 1 seconde en dat is meer dan genoeg (geluid legt dan +- 340 meter af en dat is ver buiten 't bereik van die sensor).

p.s. de vloer weghalen kan 'n tikkeltje gevaarlijk zijn. :wink:

vriendelijke groet,

Jos