Why is distance a global variable? You would be much better off learning how to pass values to, and return values from functions.
#define LED 13
int IRpin = 1;
void setup()
{
pinMode(LED, OUTPUT); //sets the digital pin as output
Serial.begin(9600); // start the serial port
}
float measure()
{
float volts = analogRead(IRpin)*0.0048828125; // value from sensor * (5/1024)
float distance = 65*pow(volts, -1.10); // worked out from graph 65 luckylarry.co.uk
return distance;
}
void loop()
{
float distance = measure();
Serial.println("Dist = ");
Serial.println(distance);
Serial.println("end");
if (distance < 30.00)
{
digitalWrite(LED, HIGH);
}
else
{
digitalWrite(LED, LOW);
}
delay(5000);
digitalWrite(LED, LOW);
delay(5000);
}