parallax_Ping sensor not works as expected

Hello to everyone from another newcomer,

I have bought a ping))) (parallax) ultrasonic sensor, uploaded that example, "Ping Ultrasonic Range Finder" in the arduino web page.

But the values the serial monitor prints, range between 10cm-100cm, and it mostly prints 345cm-344cm.

What can be the problem. I am using no resistors or capacitors. Can that be the reason?

Post the Sketch you're using to test.

*/
created 3 Nov 2008
by David A. Mellis
modified 30 Jun 2009
by Tom Igoe

*/

// this constant won't change. It's the pin number
// of the sensor's output:
const int pingPin = 7;

void setup() {
// initialize serial communication:
Serial.begin(9600);
}

void loop()
{
// establish variables for duration of the ping,
// and the distance result in inches and centimeters:
long duration, inches, cm;

// The PING))) is triggered by a HIGH pulse of 2 or more microseconds.
// Give a short LOW pulse beforehand to ensure a clean HIGH pulse:
pinMode(pingPin, OUTPUT);
digitalWrite(pingPin, LOW);
delayMicroseconds(2);
digitalWrite(pingPin, HIGH);
delayMicroseconds(5);
digitalWrite(pingPin, LOW);

// The same pin is used to read the signal from the PING))): a HIGH
// pulse whose duration is the time (in microseconds) from the sending
// of the ping to the reception of its echo off of an object.
pinMode(pingPin, INPUT);
duration = pulseIn(pingPin, HIGH);

// convert the time into a distance
inches = microsecondsToInches(duration);
cm = microsecondsToCentimeters(duration);

Serial.print(inches);
Serial.print("in, ");
Serial.print(cm);
Serial.print("cm");
Serial.println();

delay(100);
}

long microsecondsToInches(long microseconds)
{
// According to Parallax's datasheet for the PING))), there are
// 73.746 microseconds per inch (i.e. sound travels at 1130 feet per
// second). This gives the distance travelled by the ping, outbound
// and return, so we divide by 2 to get the distance of the obstacle.
// See: http://www.parallax.com/dl/docs/prod/acc/28015-PING-v1.3.pdf
return microseconds / 74 / 2;
}

long microsecondsToCentimeters(long microseconds)
{
// The speed of sound is 340 m/s or 29 microseconds per centimeter.
// The ping travels out and back, so to find the distance of the
// object we take half of the distance travelled.
return microseconds / 29 / 2;
}

I am using no resistors or capacitors. Can that be the reason?

No.

The PING Signal (SIG) is connected to which Arduino pin?

Do the Arduino and PING share ground?

If you place your open hand directly in front of the sensor about 20cm away is a reasonable distance reported?

Does the LED on the PING come on at any time?

-Arduino is connected to digital 2 ( i have changed that in the code too).
-Arduino and ping share ground, yes (if i understood correctly )
-If i place my hand it detects distance correctly up to 80-100cm than lost its way to 345cm.
-The led on the pin always blinks.

I want to add that the sensor is not good at measuring distance of human body ( for example it is good at with my hand or a wooden box ). Is it related with the soft - hard surface thing ?

forgive my bad English pls, i am working on it too...

It sounds like the sensor and Sketch are working correctly.

Does anything here help...
http://www.arduino.cc/cgi-bin/yabb2/YaBB.pl?num=1263964603/0
http://www.arduino.cc/cgi-bin/yabb2/YaBB.pl?num=1263222745/3#3