Control IR de la lámpara Livarno de Lidl

Todo cuanto tiene que ver con la obtención, almacenamiento y proceso de la información digital, sus aplicaciones y el software y hardware utilizado.
Mensaje
Autor
Avatar de Usuario
Anilandro
Mensajes: 4905
Registrado: Dom Feb 11, 2007 10:16 pm
Ubicación: Islas Baleares, España
Contactar:

Re: Control IR de la lámpara Livarno de Lidl

#11 Mensaje por Anilandro »

Al final no era nada de eso, si no un bug de planteamiento con un resultado imprevisto, ya que si la información de 1's y 0's reside en el tiempo entre impulsos, y tenemos 32 bits, debe haber 33 impulsos para delimitarlos, no 32. En mi caso el último lapso de tiempo se quedaba al aire, sin impulso de finalización, y por tanto el algoritmo receptor que comprueba la integridad de los datos conjugando el byte 1 con el 2, y el 3 con el 4, los daba como erróneos.
El porqué a veces interrumpiendo el haz durante la transmisión o interfiriéndolo con otro mando a distancia, los aceptaba como correctos, lo ignoro.

En todo caso, añadiendo en 0 adicional al array "int secuencia[33]" y aumentado de igual forma a 33 el límite del bucle "for" de generación de señal, la cosa se ha puesto a funcionar sin error alguno.

Imagen


Ahora, lo siguiente será ampliar el programa para que pueda ser controlado via serie desde el PC...

Saludos
La VIDA sólo es energía que ha aprendido a defenderse... (Anilandro)

*** La Web de Anilandro *** http://sites.google.com/site/anilandro

Avatar de Usuario
Rovellat
Mensajes: 9610
Registrado: Mar May 26, 2009 9:39 pm
Ubicación: Palma de Mallorca (España)

Re: Control IR de la lámpara Livarno de Lidl

#12 Mensaje por Rovellat »

Buen trabajo Anilandro; te lo voy a copiar para poner un belén dentro de la carcasa de un televisor; con el mando a distancia se producirán el anochecer, el amanecer, truenos, relámpagos; etc.

Para ir bién el mando debería ser de TV.
Cielo azul sobre campo de mieses, ánimo.
Constitución Española:
Todos los españoles tienen el deber de trabajar y el derecho al trabajo.
Todos los españoles tienen derecho a disfrutar de una vivienda digna y adecuada.

Avatar de Usuario
Anilandro
Mensajes: 4905
Registrado: Dom Feb 11, 2007 10:16 pm
Ubicación: Islas Baleares, España
Contactar:

Re: Control IR de la lámpara Livarno de Lidl

#13 Mensaje por Anilandro »

Pues si algo de esto te sirve, me alegro, Rovellat. Tengo a punto el programa de control IR desde el PC. Lo he montado a base de funciones para que el código pueda trasplantarse fácilmente... Esta primera parte de código no tiene secretos, declaración de variables, configuración de pines, activar comunicación serie y configurar Timer 2 para que dé los 38 Khz...

Imagen


El "loop()" es aún más sencillo, llama a función "datoSerie()", y si ésta devuelve un dato válido, llama a función "montarSec()" que con dicho dato crea la secuencia NEC de 32 bits, y luego llama a función "sendData()", que emite dicha secuencia a través del LED de infrarrojos...

Imagen


Continuará...

Saludos
La VIDA sólo es energía que ha aprendido a defenderse... (Anilandro)

*** La Web de Anilandro *** http://sites.google.com/site/anilandro

Avatar de Usuario
Anilandro
Mensajes: 4905
Registrado: Dom Feb 11, 2007 10:16 pm
Ubicación: Islas Baleares, España
Contactar:

Re: Control IR de la lámpara Livarno de Lidl

#14 Mensaje por Anilandro »

La función "datoSerie()" captura uno o dos bytes enviados por el monitor serie del IDE de Arduino en el PC (o de cualquier otro programa monitor serie), y con estos bytes genera un dato de una o dos cifras que carga en la variable global "dato".

Imagen


La función "montarSec()", a partir de "dato" crea la secuencia de 0's y 1's correspondiente al protocolo NEC, de 4 bytes, 1º 00000000, 2º 11111111, 3º dato y 4º inverso de dato. Al final añade un bit adicional de cierre de la secuencia, con valor 0. Estos valores se guardan en el array global "secuencia[]", que luego utilizará la función de envío de datos IR...

Imagen


Debo decir que muchas "funciones" no las utilizo como tales, devolviendo un solo valor, si no como "procedimientos", ya que actúan sobre variables globales que también utilizan otras funciones del programa. Esto no les gusta a los puristas de la programación porque absorbe más memoria y en programas complejos puede dar lugar a resultados inesperados, pero en cosas sencillas como este programa no hay problema alguno, todo está controlado, el programa resulta más simple y se evitan idas y venidas, aparte de no tener que utilizar los famosos punteros de C que siempre me han dado algo de alergia...

Saludos
La VIDA sólo es energía que ha aprendido a defenderse... (Anilandro)

*** La Web de Anilandro *** http://sites.google.com/site/anilandro

Avatar de Usuario
Anilandro
Mensajes: 4905
Registrado: Dom Feb 11, 2007 10:16 pm
Ubicación: Islas Baleares, España
Contactar:

Re: Control IR de la lámpara Livarno de Lidl

#15 Mensaje por Anilandro »

La función "sendData()", que ha quedado bastante compacta, envía por IR la secuencia NEC, modulando la señal de 38Khz del Timer 2 ...Y no hay más, ya podemos controlar la lamparita de Lidl desde Arduino.

Imagen


Sólo recordar que la señal de 38 Khz sale de forma permanente por el "pin-11", y que la modulación se activa al poner a LOW el "pin-7", guardado en la variable "pinCOM", y se detiene con HIGH...
La primera parte de "sendData()" crea la señal de inicio de 9 mS. seguido por un espacio de 4,5 mS. La segunda parte es un bucle for de 33 pasos (de 0 a 32), que lee el array "secuencia[]" donde antes hemos guardado la secuencia de 32+1 bits a transmitir. En cada paso emite primero una señal de 560 uS, seguida de un espacio variable en tiempo de 560 uS si el bit correspondiente es 0, o de 1690 uS si el bit es 1...

El programa completo lo podéis bajar de mi Drive: https://t.co/zezoyJhHHW

Saludos...
La VIDA sólo es energía que ha aprendido a defenderse... (Anilandro)

*** La Web de Anilandro *** http://sites.google.com/site/anilandro

Avatar de Usuario
Anilandro
Mensajes: 4905
Registrado: Dom Feb 11, 2007 10:16 pm
Ubicación: Islas Baleares, España
Contactar:

Re: Control IR de la lámpara Livarno de Lidl

#16 Mensaje por Anilandro »

Bien, entrando en el monitor serie los valores de las teclas del mando de la lámpara:

Imagen

Ésta va a responder de la misma manera como lo haría con su mando a distancia...

En este caso también aprovecho para rescatar un programita de Visual Basic que hice hace algunos años, que llamé "Arduino Remote Control" (ARC) y que permite configurar 10 pulsadores con los valores que queramos, y que al pulsar envía a través del puerto COM seleccionado, que en este caso deberá ser el del Arduino...

Imagen


...El instalador del programa ARC.exe, contenido en un fichero comprimido .rar, se puede bajar desde: https://drive.google.com/file/d/115cd1G ... u-5THzlPqb

En XP se instalará sin más, y en W7 lo tenéis que ejecutar como Administrador, porque en caso contrario dará errores y no cargará los OCX necesarios. Supongo que en W8 y W10 también funciona, pero no lo he probado...

Saludos
La VIDA sólo es energía que ha aprendido a defenderse... (Anilandro)

*** La Web de Anilandro *** http://sites.google.com/site/anilandro

Avatar de Usuario
Anilandro
Mensajes: 4905
Registrado: Dom Feb 11, 2007 10:16 pm
Ubicación: Islas Baleares, España
Contactar:

Re: Control IR de la lámpara Livarno de Lidl

#17 Mensaje por Anilandro »

Un último añadido a este tema. Me he metido en mi viejo VBasic 6.0 y he programado un mando de IR concreto para lámpara de Lidl. Con todas sus teclas operativas igual que el mando físico. El archivo de instalación para W7-8-10 (que se debe ejecutar como Administrador) se puede bajar en formato .rar desde: https://t.co/YVR6JnAlZi ...

Imagen

Saludos
La VIDA sólo es energía que ha aprendido a defenderse... (Anilandro)

*** La Web de Anilandro *** http://sites.google.com/site/anilandro

Avatar de Usuario
joliva68
Mensajes: 235
Registrado: Jue Dic 03, 2009 3:46 pm
País: España
Ciudad: Sevilla
Contactar:

Re: Control IR de la lámpara Livarno de Lidl

#18 Mensaje por joliva68 »

Muy interesante Anilandro, algo parecido hice yo hace algún tiempo pero usando un receptor de un optoacoplador de barrera.
https://youtu.be/53glcHVtqjs

Avatar de Usuario
Anilandro
Mensajes: 4905
Registrado: Dom Feb 11, 2007 10:16 pm
Ubicación: Islas Baleares, España
Contactar:

Re: Control IR de la lámpara Livarno de Lidl

#19 Mensaje por Anilandro »

Interesante, Joliva68 ¿Utilizas integrados específicos o son uControladores generales? Si es así ¿Cuales son? ¿Puedes colgar el código?...

Saludos
La VIDA sólo es energía que ha aprendido a defenderse... (Anilandro)

*** La Web de Anilandro *** http://sites.google.com/site/anilandro

Avatar de Usuario
joliva68
Mensajes: 235
Registrado: Jue Dic 03, 2009 3:46 pm
País: España
Ciudad: Sevilla
Contactar:

Re: Control IR de la lámpara Livarno de Lidl

#20 Mensaje por joliva68 »

Anilandro escribió:Interesante, Joliva68 ¿Utilizas integrados específicos o son uControladores generales? Si es así ¿Cuales son? ¿Puedes colgar el código?...

Saludos
Hola Anilandro uso microcontroladores el 16f628a.

Aquí te dejo el enlace del proyecto:

http://www.picpc.es/mando_distancia.html

En la web hay un error el último es el emisor es que aparecen dos receptores.

Saludos.

Responder

¿Quién está conectado?

Usuarios navegando por este Foro: No hay usuarios registrados visitando el Foro y 1 invitado