Problema de infrarrojo de Arduino con control remoto universal

2

Estoy jugando con Arduino y biblioteca de IR de Arduino y Ken Shirriff. Estoy tratando de controlar el receptor de audio de Sony usando los códigos que encontré en la red.

Todo funciona bien, puedo controlar el dispositivo enviando la señal IR desde Arduino, usando la función sendSony . Sin embargo, tengo problemas para aprender los mismos códigos en un dispositivo de control remoto universal (hasta ahora he probado dos). Simplemente no reconoce los códigos que, repito, funcionan perfectamente con el dispositivo Sony real.

Cualquiera tuvo una idea de dónde podrían salir mal las cosas y con qué parámetros debería jugar. He intentado variar la frecuencia de modulación (36-38-40 kHz) y la frecuencia de envío de códigos individuales (alterando la pausa entre las emisiones sucesivas).

Aquí está el código que estoy usando:

#include <IRremote.h>
IRsend irsend;

void setup()
{
  Serial.begin(9600);
  irsend.enableIROut(40);
}

void sonySend(int code) {
    for (int i = 0; i < 50; i++) {
      irsend.sendSony(code, 12); // Sony TV power code
      delay(30);
    }
}

void loop() {
  sonySend(0x841); // tuner
//  sonySend(0xc41); // tape 1
  delay(1000);
}

Editar: Tengo un control remoto original de Sony (con algunos códigos comunes que funcionan en mi dispositivo). Los controles remotos universales no tienen problemas para aprender de ese control remoto de Sony. Sólo de Arduino.

Los controles remotos universales que estoy usando son del tipo de chinos, sin embargo, funcionaron sin problemas aprendiendo de otros controles remotos.

    

1 respuesta

2

Una forma sencilla de depurar sería usar un osciloscopio para comparar la diferencia entre el control remoto real y la señal de Arduino.

Utilice un receptor de IR y alcance los resultados de Arduino y del control remoto con los mismos datos enviados. O abra el control remoto y alcance las líneas directamente y compárelas con las líneas de conducción de datos de Arduino. Luego ajusta tu código para que los dos sean idénticos. Como dice @mpflaga, el tiempo entre los envíos es un sospechoso probable.

    
respondido por el Oli Glaser

Lea otras preguntas en las etiquetas