Barrera infrarroja no hace nada

Buenas estoy intentantdo hacer funcionar una barrera infrarroja como ya he hecho otras veces.
para comprobarlo conencto un LED que luce y se apaga al cortar la barrera (funciona bien).

El problema viene al conectarla al Arduino, que no hace lp que debería.

Las conexiones son:
5V>>Colector>>Emisor>>Pin 11
y el codigo

int b = 11;
int led = 13;

void setup() {

pinMode(led, OUTPUT);
pinMode(b, INPUT);
}

void loop() {

digitalWrite(led, LOW);
int lectura = digitalRead(b);
if (b == HIGH)
{
digitalWrite(led, HIGH);
}

}

Lo que hace el preograma es encender el LED con la barrera cortada o sin cortar, no le afectan los cambios, pero si Cambio el pin por el LED funciona perfectamente.
Alguien sabe por que puede ser??

P.D: He cambiado el pin 11 por el A5 para leer el valor por puerto serie y me sale un 1 siempre, cortada o sin cortar.

El código debería ser así

int b = 11;
int led = 13;

void setup() {

  pinMode(led, OUTPUT);
  pinMode(b, INPUT);
}

void loop() {


  int lectura = digitalRead(b);
  if (lectura == HIGH)   {
    digitalWrite(led, HIGH);
  }
  else {
    digitalWrite(led, LOW);
}

}