program help

PaulS:
if(digitalRead(InfraredSensorPin) == LOW);
Rarely a good idea.

What's wrong with that?

Sure, you and I would no doubt write it as if(!digitalRead(InfraredSensorPin)) {...}, but "if(...==LOW)" is easier to understand.